Re: [討論] scala未來的發展性

看板Soft_Job作者 (墳墓)時間9年前 (2015/01/02 12:22), 編輯推噓9(1012)
留言13則, 12人參與, 最新討論串3/6 (看更多)
※ 引述《saieva (春江花朝秋月夜)》之銘言: : 各位好: : 小妹最近拿到一份offer, 工作內容以寫scala為主 : 由於是畢業後的第一份工作,擔心未來出路會被侷限住 : 畢竟scala還算稀有語言,寫法跟主流也不太一樣 : 公司福利薪資還算中上,有點難為要不要試試看 : 請問有人有不同見解可以讓我參考嗎?謝謝! 被某人點名,來說一下我自己的經驗好了。 我也覺得不會有什麼侷限,反而認為這是好處。 別人怎樣我不知道,不過我自己的狀況是研究所論文用 PHP,出社會第一 份工作用 C,第二份工作用 Java / JSP 和 jQuery,現在第三份工作則是 Scala / Node.js 和 C++ 全都要用到。 喔,順便一提,C++ 我只在高中時看過一本什麼自學手冊,而且還沒看完。 所以我自己是覺得,工作上要用到自己沒碰過的程式語言還滿常見的,而且 有基礎的話轉換也不是那麼的痛苦。 所以擔心自己之後的工作我反而覺得沒太大的必要(特別是妳有實績的話), 像我之前也是去應徵 Java / Android 的工作,雖然我所有上架到 Play 的 Android 的作品都是用 Scala 寫的,但最後也是有拿到 Offer,只是後來 決定在離家近的地方工作而婉拒了。 還記得很久以前我寫了一篇【其實我是氣宗的。】[0] 的文章,我現在的想 法還是差不多,如果不是有其他語言和計算機科學的基礎,我可能沒辦法在 指定的時間內用 C++ 完成指定的作業。 當然成果一定比並上熟悉 C++ 的老手,裡面也肯定有很多和 C++ 裡公認的 最佳做法不一樣的爛寫法,但至少東西是能夠動的,是可以完成任務的。 [0]: http://brianhsu.moe/blog/2013-05-31-BasicIsImportant.html 不過那篇裡面沒提到的是,「氣/道」除了是別人傳授的心法之外,當然 也可以是自己從「劍招」裡練出來的或悟出來的,而就我自己的經驗, Scala 是幫助自己練氣和悟道的很好的工具,特別是讓你悟懂另一個派別 的道理。 而「道/氣」最吸引人的地方就在於僅管你沒見過那派的劍招,也能依理 推循,得出一些基本的概念,而有了這些概念,學劍招就快多了。 舉個例子,我唸書的時候,雖然學校教的 C / Java 等程序式導向和物件導 向的概念算是扎實,不過對於 Functional Programming 的東西卻是付之闕 如。後來我對這部份有點興趣,就跑去圖書館借了一些純 Functional Programming 的 Haskell 的書來看,不過失敗了,完全看不懂。 後來隔一陣子後又跑去網站上找相關的教學,但是又失敗了,也曾看過 Ruby 和 Python 的東西,但還是根本無法理解 high order function 是啥鬼, 還是搞不懂 Functional Programming 是怎麼一回事,直到我遇見了 Scala, 忽然之間就變聰明了,考試也都考一百分了!(喂 好啦,說正格的。Scala 因為是架構在 JVM 上的東西,而且他一開始就想要 把 OO 和 Functional Programming 融在一起,所以他看來有點像四不像,不 過這是他的缺點也是他的優點。 而且目前很多 Scala 的教學資源,也都會告訴你某個 Scala 裡有,但 Java 沒有的東西,在底層是怎麼實作的。 例如你寫 x => x + 1 的時候其實不過是產生個 Function 類別的物件,然後 當執行的時候只是去呼叫他的 apply 方法。又或者是 Pattern Matching 不 過就是編譯器幫你翻成一堆 if / else 區塊而已。如果需要,你甚至可以用 scalac -print 或反組譯器幫你看底層的實作細節。 換句話說,你可以用熟悉的觀點來看另一個門派,也許不能真的掌握那個門派 的精髓,但至少也能初窺門徑,讓你真的接觸另一個門派的時候不至於心底完 全沒有個底,連他們在講什麼都沒概念。 所以,我是覺得不用想那麼多,特別是如果你本身就有其他主流程式語言的底 子的話,那更不用擔心了,而且 Scala 本身就是多種典範混在一起的大雜燴, 就算劍招不相通,和其他像 C / Java / Ruby / Python 這些程式語言,大部 份的劍理還是相同的。 真正麻煩的反而是切換到劍理完全不同的領域,像 Node.js……雖然他用的程 式語言是 JavaScript,但因為是走 Single-Thread / non-blocking 的典範, 所以很多在別的程式語言理所當然的做法在 Node.js 裡反而會死得很慘。 這種類型的轉換才真的比較需要擔心,不過在這個領域裡工作,好像一直學一 直學一直學也已經算是必備技能了,根本不知道明天又會有什麼東西紅得發紫 然後大家都想轉過去或突然工作上要用到啊。XD -- ~ 白馬帶著她一步步地回到中原。白馬已經老了,只能慢慢地走, 'v' Brian Hsu 但終是能回到中原的。江南有楊柳、桃花,有燕子、金魚…… // \\ ( 墳 墓 ) /( )\ 但這個美麗的姑娘就像古高昌國人那樣固執。 【白馬嘯西風】 ^`~'^ http://bone.twbbs.org.tw/blog 『那都是很好很好的,可我偏不喜歡。』 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 175.180.181.177 ※ 文章網址: http://www.ptt.cc/bbs/Soft_Job/M.1420172524.A.8D5.html

01/02 13:10, , 1F
中間那段有點不知所云 小說看太多
01/02 13:10, 1F

01/02 13:46, , 2F
[討論]電腦軟體的教學與研究--劍宗與氣宗?!<==樓上參考一下
01/02 13:46, 2F

01/02 16:53, , 3F
明明就蠻易懂的,哪裡不知所云...
01/02 16:53, 3F

01/02 17:43, , 4F
謝謝大大分享:)
01/02 17:43, 4F

01/02 18:37, , 5F
好文推,氣宗劍宗的比喻好傳神
01/02 18:37, 5F

01/02 20:25, , 6F
難得有喜歡金庸的
01/02 20:25, 6F

01/02 23:44, , 7F
金庸迷推~
01/02 23:44, 7F

01/03 05:02, , 8F
推 不過Java應該以後自己就會放一些funtional的東西
01/03 05:02, 8F

01/03 05:02, , 9F
Java 8 就有lambda了
01/03 05:02, 9F

01/04 08:45, , 10F
不知所云XDD
01/04 08:45, 10F

01/05 20:32, , 11F
推好文與比喻~
01/05 20:32, 11F

01/06 09:09, , 12F
大大好神
01/06 09:09, 12F

01/09 12:43, , 13F
以前看過這篇比喻,本人出現啦!
01/09 12:43, 13F
文章代碼(AID): #1KfXpiZL (Soft_Job)
討論串 (同標題文章)
文章代碼(AID): #1KfXpiZL (Soft_Job)