4
Angular: Angular 4.0.0 Now Available (angularjs.blogspot.tw)
IngramChen 積分 6 編輯於

雖然不太相關... 不過最近才寫了個六千行的 angular dart 2 的後台。

angulardart2 的功能追不上 angularjs,大概還停在 angularjs 2.0.0 那個時期的功能,尤其是 routing 方面很弱…

不過寫個小後台是夠用了。第二代 angular 的語法很怪,但要學的東西其實很少,過了幾個門檻後就是一直寫 component 兜網站,一整個滿滿的 component 啊。相較於angularjs1 簡單太多了,維護/學習曲線都蠻容易的。

angular 連目錄/檔名什麼的都規定的死死的,你就一直照著無腦寫就好了,component 一旦太大就拆小一點,這樣維護性就不會太差。不用強求什麼進階的 immutable 啦,redux 啦那種硬要掰成 functional 思維來寫程式。

雖然我是寫 angular dart,但我猜 typescript 也差不了多少,ts 行數可能多個一兩千行而已吧?dart 的 async/await 真是用太爽了,我整個程式沒有半行 .then({ .... }) 這種 callback chain 。

儘管如此,一般專案還是老實的用 angular2 吧,dart 版實在不推,雖然 angulardart 的文件很難得的非常完整 (god send!),但其他資源少的可憐… 不論是人力資源上還是元件庫資源都是,這會造成企業後續支援/擴充很麻煩,有違採用 angular 的本意。

我個人覺得 angular2 很適合企業用來開發工具或後台,它有點死版,也不夠潮,但想到人員訓練和較短的學習期,加上採用的人又多。即使原開發者離職流動,後續的人也不會太難銜接,這不是企業最需要的嗎?

ps. 我的angular dart 小後台的程式 gzip 後的 js 要 1.1MB (unzip 4MB),握槽!

IngramChen 積分 5

啊,忘了提,這個 angular dart 2 後台程式是從一個 angular dart 1 重寫而成的。

angular dart 1 是 2 的實驗先行版,因為是實驗性質,所以是個孤兒…

angularjs1 可以和 angularjs2 共存,然後慢慢轉移,這是因為 js 用戶強烈的需求,才讓 angularjs 的開發者做這些共存的功能。

angular dart 1 就沒這麼好了,它直接死掉,原用戶也只能重寫了 (反正我猜全世界用戶不到 100 個...)

我這個後台大概花二、三個禮拜重寫完,不過其中也包含了追加新功能,所以也很難說到底花多少時間。嘛… 這就是用 dart 的技術債,你沒有平順轉移的選擇,只能重寫... 我現在又是掉了 angular dart 2 的坑了,什麼時候還要重寫一次就不知道了。

感覺用 dart 很危險啊?!但我覺得用 js 某方面來說更兇險,資源很多沒錯啦,但每幾週就來個全新的 framework/library 是另類痛苦...