→ EQQD: 那熟了開發速度真的跟傳說中的一樣快嗎? 02/20 00:30
→ lovdkkkk: 個人覺得還好, 沒有明顯快多少, 語法確實簡潔也免編譯 02/20 00:33
→ lovdkkkk: 是有快那麼一些些 02/20 00:34
推 EQQD: 最近在爬node.js跟RoR不知道有沒有分析比較文? 02/20 00:34
→ lovdkkkk: nodeJS JS 要很熟再考慮, 個人覺得 JS 比 ruby 難學 02/20 00:37
→ lovdkkkk: 不是比較, 而是批 nodeJS, 可以看看 02/20 00:43
標重點
JavaScript was already painful enough in the browser,
why on earth anyone ever thought it was a good idea to
use it on the server boggles the mind.
XDD
※ 編輯: lovdkkkk (36.226.164.214), 02/20/2016 00:44:12
推 chargo: 那篇文章是....1258 days ago 現在的JS有這麼慘嗎 02/20 00:59
→ lovdkkkk: 就個人印象中 JS 目前為止沒有變簡單 02/20 01:07
→ superpai: JS比ruby簡單多了吧,光沒有 mixin 沒有 block 就大勝 02/20 01:13
推 sp063439: ruby 不太用括號, 也有有趣的小 api 像 upto 02/20 01:17
推 GoalBased: 從強型別開始的我,寫js和nodejs真的覺得有點難 02/20 01:18
→ GoalBased: 主要還要熟悉很多弱型別和functional language的 02/20 01:18
→ GoalBased: 一些寫法和技巧,再來就是因為弱型別超靈活可以玩的 02/20 01:19
→ GoalBased: 技巧有點多,相對就複雜,也可以說是難吧 02/20 01:19
推 johnny9144: nodejs 入門很痛苦,JavaScript 結構很鬆散加上弱形態 02/20 01:21
→ johnny9144: 語言,常常怎麼寫都可以run ,但是等出問題的時候, 02/20 01:21
→ johnny9144: 怎麼死的都不知道,可是養成良好的coding 習慣以及cod 02/20 01:21
→ johnny9144: ing style 還有遵循一定的設計模式後,是個強大的語 02/20 01:21
→ johnny9144: 言,不過新手還是不要想不開好 02/20 01:21
→ superpai: 怎麼寫都可以run就是簡單的意思啊.. 02/20 01:22
→ GoalBased: 我覺得你到了無招勝有招的境界就會覺得靈活的比較簡單 02/20 01:23
→ GoalBased: 新手還是覺得有個標準跟隨會比較簡單 02/20 01:24
→ Argos: 我必須說那篇文章把實話說出來了....就連才出兩三年的Swift 02/20 01:24
→ superpai: 只學會JavaScript的我連PHP 都覺得比JS 難很多 02/20 01:25
→ Argos: 我都覺得屌打已經發展好幾年的JS 02/20 01:25
→ Argos: 雖然兩個沒辦法真正意義上的比較 02/20 01:25
→ johnny9144: 可以run 不代表沒問題呀! 只是還沒發生問題而已,相 02/20 01:26
→ johnny9144: 對的強行態語言,在編譯的時候,要求比較嚴謹,比較 02/20 01:26
→ johnny9144: 不會發生這種錯誤 02/20 01:26
→ johnny9144: 講js簡單的人,我相信根本沒體會到js的奧義,越沒有規 02/20 01:29
→ johnny9144: 定反而是最困難的 02/20 01:29
→ superpai: 要求比較嚴謹,換句話說就是比較難學的意思了 02/20 01:32
→ superpai: 老手看到編譯不過跟新手看到編譯不過的感覺完全相反 02/20 01:35
推 johnny9144: 那我應該改成說 js的學習曲線會突然驟升,這樣好像比 02/20 01:36
→ johnny9144: 較貼切,畢竟一開始真的是隨便寫隨便跑,到後面面就是 02/20 01:36
→ johnny9144: ,無處不是bug 02/20 01:36
→ superpai: 老手:錯誤自動被抓出來,簡單 新手:一直掛,好難 02/20 01:36
→ johnny9144: 寫完程式一次編譯過了 會很心虛XD 02/20 01:37
推 superpai: 我亂猜的,我沒用過做過編譯這種事 02/20 01:38
→ GoalBased: IDE太強了..導致很少編譯不過,打錯就跟你講了 02/20 01:39
→ GoalBased: 不會等到你去編譯他才失敗0.0 02/20 01:40
推 johnny9144: js可怕的就是因為沒什麼規定,所以錯都是邏輯錯誤,ID 02/20 01:41
→ johnny9144: E愛莫能助 02/20 01:41
推 vn509942: 守破離 02/20 07:59
推 CRPKT: 新手寫 JS 沒 syntax error 卻跑不出來挫折更大吧 02/20 08:52
個人判斷難易標準是,
有沒有一套 小量 單純易理解 一致性高 的知識,
能讓人快速入門並順利使用,
且不易因粗心造成錯誤
ruby 簡單在它提供了一套組織 code 的方式,
就是它的 class / module 系統,
這讓新手比較 "好理解"
JS 的 prototype 系統在稍微熟一點後很好用,
也可以用它實做 class / module 系統,
但是一開始比較不好理解
新手一開始立刻要半自立 (?) 地設法組織自己的 code,
難度會比較高,
更怕的是到處估狗來一堆不同風格的 code 混在一起,
埋地雷將來踩踩樂科科
然後像 scope chain, 一不小心漏個逗號自動變成全域變數,
或者 prototype chain 一不小心共用了一個 array,
再或者 strict mode 導致某些第三方 lib 不能動,
debug 就很有得搞了
另一個難點在它跟 server 濃在一起的時候,
client side 跟 server side 溝通再做事情,
或者 server 端連個 mongodb 要非同步,
有可能因時間差造成 bug
都蠻難追的,
ruby 這部份就單純多了, 不用 callback 來 callback 去,
平舖直敘寫下來就好
※ 編輯: lovdkkkk (36.226.164.214), 02/20/2016 10:20:31
→ lovdkkkk: BTW 我也覺得 PHP 看起來就好難 囧" 02/20 10:21
推 cookie1115: 無基礎rails起手難度真的很高 02/20 10:45
→ superpai: 你那個難度判斷是中手標準了啦 02/20 11:16
→ superpai: 新手的難度標準是 從跑不起來-> 到成功跑起來的難易度 02/20 11:16
推 johnny9144: 推原po,js在後端,異步/同步 真的是很難搞,而且一 02/20 11:26
→ johnny9144: 不小心弄個全域變數出來,造成第三方模組崩潰,真的是 02/20 11:26
→ johnny9144: 怎麼死的都不知道XD 02/20 11:26
→ lovdkkkk: 如果是從零到環境起來能跑 JS 的確最簡單 02/20 11:30
→ lovdkkkk: 有 Browser 環境就好了 XD 02/20 11:31
→ dreamnook: 我是覺得js非常簡單 只是沒有保護措施XD 02/20 11:44
推 a47135: 應該說玩js要會人肉編譯XD 02/20 16:00
→ xtxml: js現在都走向es6了,有明確的class,不用再用prototype搞 02/20 21:07
→ lovdkkkk: 那個基本上還是一樣的東西, 算一種語法糖吧 02/20 22:00
→ lovdkkkk: 不過有明確 constructor, 較不會有共用到 array 的問題 02/20 22:20
→ xtxml: 意義上不是語法糖這麼簡單,而是有一個正規的標準 02/21 11:53
→ xtxml: 就很像C++你時常可以用既有個功能模擬新的spec 02/21 11:55
→ xtxml: 可大家真正願意follow這些spec,往往是編譯器正式支援時 02/21 11:56
→ lovdkkkk: 嗯嗯, 只是要說不是個有什麼新特性的新東西而已 02/21 12:34
→ lovdkkkk: (就是說, 用了它本來要注意的還是要注意這樣) 02/21 12:37