不用 static import 啊。
static import 那些小工具 method, IDE 是會幫忙,但其實寫起來不順手 (太多個了)
我現在 fixture 已經開始這樣用 mix-in 的寫法了
你的 link 裡面的寫法,類似 TDD 開發流程了 (先從一個無用的結果開始,然後漸漸長大… etc)
OTV 的話,有時候是為了 debug 方便,有中間變數 breakpoint 比較好設。
OTV 多起來命名也是有點討厭就是,本文的範例裡,它說宣告和使用位置相近的話,可以縮到剩一個字:
List<Host> hs = s.fetchHostsWithPackage(obsoleteVersions);
Workflow w = startUpdateWorkflow(hs);
雖然作者這樣說,但我個人的經驗還是不會去寫 hs
, w
,最少還是會寫個單字
List<Host> hosts = s.fetchHostsWithPackage(obsoleteVersions);
Workflow flow = startUpdateWorkflow(hosts);
沒差幾個字,卻比較好懂,在 IDE 裡通常也是打個字頭就 auto complete 了,沒有必要省成這樣…
MV performance 詳解:
- read 效能與一般 table 無異,比 index 好很多
- write 效能會下降,經驗法則是多加一個 MV,效能掉 10%
這是可以接受效能差。不錯不錯。
相比自己管理 reverse index 真是會要人命,我們之前的專案就是有很多 corrupt 的資料…
大部份的開發者都不會到達需要 advanced tuning GC 問題的 scale (不然那些用 ruby 的人不都去死了?)。
等到大到某個地步,GC 調到死都調不好,該公司通常已經到了要自己開發/修改 runtime 的 scale。例如 twitter, FB, alibaba....etc
原推文是在抱怨 zookeeper 有 GC pause 的問題,在這個領域裡,她推得這句話是有點道理,畢竟 zookeeper 是底層的 database,不是一般的 application。但如果無限上綱到所有軟體都不該用 GC 那就大錯特錯了
Angular Universal1 可以在 server render angular js。這 overview 很有意思。server pre-render 送給 browser 後,會開始記錄用戶的互動,等到 js 整個 render 完之後,會 replay 剛剛用戶的互動,整個 web app 才正式 load 完
FAQ1
"基本上不限流量和同時連線數,但當用量變大時,cloudflare 再做任何變更前會先通知客戶"
websocket 其實很難 scale 因為是 stateful,虧 cloudflare 敢推給所有用戶
yet another js XXX...
不過作者清楚地列出了一條條血淋淋的開發史,js 支持者也許會說這些問題都解決了,或說他不會寫 js 什麼的... 但 js ecosystem 存在著一些根本上的問題,讓這平台不斷的變遷搖盪,最後讓作者感受到 "無助"…