F#在企業和老開發者中仍有不錯的地位
英文原文:F# makes headway in the enterprise and with older developers
最近有一項調查闡明了開發者目前使用F#的現狀和什么阻礙了F#的發展。以下為來自國外科技網站 ITworld 的整理報道,我們進行了摘譯:
當你思考企業所使用的編程語言時,例如 Java、C和 C++ 等的名字就會首先出現在你的腦海里。絕對不會出現F#,它是由微軟創建和支持的開源函數式編程語言, 是基于 Ocaml 的,而 Ocaml 是基于 ML 函數程序設計語言的。你可能會認為F#是一個邊緣的語言,被用于一些探索和冒險類型的實驗,或者是特定的編程,比如金融和數據科學等。然而,一份最近的 F#用戶調查表示,該語言在企業的使用情況要可能你想象的要好得多。
這項調查是由 fsharpWorks 主導的,一家總部位于英國的公司,提供F#培訓、咨詢和開發服務,以及吸引了超過 500 名的F#用戶。我最近通過電子郵件聯系上了 fsharpWorks 的合伙人之一 Scott Wlaschin,就該調查結果和相關的數據進行了探討和交流。
正在使用F#的老開發者
雖然有些人會認為一個像F#這樣的語言,那些經驗豐富的開發者會回避它,可調查結果表明并非如此,因為報告中有 67% 的被調查者的編程經歷是 10 年或 10 年以上的,所以這表明老開發者沒你想象的那么保守。Wlaschin 在信中說到。
用于企業的F#
有 62% 的被調查者,他們從事企業開發的工作,有 42% 的人表示他們在企業內部項目中使用F#。這一結果亮瞎了我的眼睛,也是讓 Wlashcin 非常吃驚的地方,“由于函數式編程往往被認為是深奧和不切實際的,我很高興地看到,幾乎有2/3 的被調查者在從事企業開發工作。”此外,他還告訴我,“我也很高興的看到,幾乎一半的受訪者在真實的項目中積極地使用F#,并且在這些情況下,大多數是被 官方支持的。”
F#不僅被用于 Windows
有 37% 的被調查者表示,他們在 Mac 或 Linux 上開發F#應用,也有一個相似比例的是:有 35% 比例的人在那些平臺上正在部署F#代碼。Wlaschin 指出這可能會讓一些人吃驚但他不會。“F#社區會努力工作以確保F#成為更好的跨平臺語言,而且我們也希望看到這一數字在未來有所增長。”
代碼、文檔和工作的缺乏是F#最大的問題
當被問及在學習F#時最令人沮喪的事情時,受訪者的最高回答是沒有足夠的用于學習的現實世界代碼(53%),沒有一個好的教程/文檔 (35%),而且他們也不理解編譯器錯誤(20%)。同樣,在用F#開發應用時最令人傷心的事情的前三名是:減少重構工具的復雜性(49%),不得不使用 C#-centric 工具(47%),以及很難實現故障排除(21%)。
為了增強這些研究結果的說服力,還有來自各個在線討論社區的開發者提出了補充建議:
“……我發現文檔的數量是一個問題。總而言之,這讓人很難受……”來自 Hacker News 的 saosebastiao
“我只能在互聯網上從字面上去理解單一的純粹的F#應用教程(Scott W. 的 Calculator),它的風格讀起來更像是 Java,且是我從未見過的任何符合語言習慣的 FP 代碼。此外,bits 到處都是,實際上也沒有完整的過程進展圖。他們風格頗像,好比以前畫貓頭鷹的方法,先畫眼睛,再干嘛干嘛的。”來自 Hacker News 的 jarcane
“網絡上充斥著的F#代碼幾乎都是玩具代碼,給人留下一個不好的印象就是,F#只可以解決玩具問題。”來自 Google Groups 的 Warren Young
Wlaschin 表示,F#社區已經意識到這些問題,并在積極努力解決。總而言之,Wlaschin 對于調查結果非常滿意,對于推動F#的未來發展的人也很受鼓舞。他還認為,基于他的觀察,對F#感興趣的人也在增加。“F#博客的流量、F#的大會論壇的 參與人員等都在增加,可以看出感興趣的人在持續地增多。”
Wlaschin 也擔心F#在企業層面有消失的風險,即使F#有相當明顯的好處——更正確的代碼和更快的開發時間等。
調查地址:F# Survey 2015(由于是谷歌文檔,請用梯子。)