2014年2月19日 星期三

前言再前言, 關於看這一系列Scala文章前你可以知道的事

學習Scala也不過是幾個月的事情, 實際上還沒用Scala做過的複雜系統, 只有自己簡單的做一些範例練習
我的Scala觀念主要是來自這本書 Scala in Action
以及部分網路上的教學來補足其他部分
所有的Scala觀念都是以Scala in Action一書為主, 
分享的內文邏輯和部分例子, 都有參考該書,
是經過我腦袋自己重整, 加上自己的想法後才分享出來
想要更仔細了解Scala, 建議親自去看該書
會開始寫這Scala分享文, 主因是讓腦袋整理一遍, 使我所學得更扎實, 邏輯更明確
另一方面也是因為有鑑於網路上, Scala中文方面的資源較少, 多一點分享也好



以下為個人牢騷

不是要講Scala是一個多好的語言,
只是我自己寫JAVA寫到開始覺得有點膩了, 似乎少了一些東西,
加上近年有個氛圍, RoR , Python等, Dynamic 語言興起, 一窩蜂的講求coding的快速與方便
但那一些Dynamic語言過度簡化, 讓我對於邏輯的控制和類型感到很沒安全感
有時候拿到一個變數很難直接推斷它的類型, 導致整個專案不好維護
(以上是過去寫Python的感想, 如果有錯, 請糾正, 感謝)
還是喜歡中規中矩的JAVA, code看起來雖然很多很冗長
但我慢慢循序看可以看出整個Program該有的邏輯 & 脈絡
我是認為 Program 的正確邏輯遠勝於任何東西 比如 速度, 優雅, 熱門
但是漸漸的JAVA 的 for-loop 狂用Iterator , 來取代 變數 i 的傳統寫法
期待 JAVA 8 的 Lambda Expression Feature時候, 就覺得時機點到了, 該去找些東西

因緣巧合下認識Scala, 儘管知道Scala是run 在JVM上面
但初步了解之後, 發現學習曲線是指數成長的難
富有挑戰性, 才能引起Programmer的興趣基因
真的要學好Scala, 重點是觀念要想通, 語法是其次,
Scala in Action一書就是以觀念出發來教導Scala, 
而我的分享則是以OOP的觀念再重新引導一次
如果是一個物件導向Programmer, 或者更是JAVA Programmer, 這是一個很好的下一步
比起去學習各種酷炫Framework, 不如基層的根基打好, 整個軟體邏輯才會正確


繼續閱讀Scala 前言1, 是Java的下一步也是物件導向的下一步


沒有留言:

張貼留言