初次見面, Flutter !(一個月試用報告)
大家好,這是我首次發表關於 Fuchsia 系統開發的相關文章,也是我承諾已久的使用報告。
本文轉自博客 http://ice1000.org/2017/05/16/FlutterFristImpression/
首先
是 Flutter Fuchsia 和 Dart 的關係。
- Fuchsia 是股溝的新操作系統,極有可能被突然甩掉不要
- Flutter 是 Fuchsia 的開發框架,支持導出 Android iOS 和 Fuchsia 三個平台的安裝包
- Dart 是為以上兩者服務的官方編程語言
關於 Dart
語言本身我就不作評價了,我自己的看法是,就拿 Kotlin 來說, Dart 和 Kotlin 的對我的開發流程和思維的影響的區別, 相當於 Eclipse 和 IntelliJ IDEA 的區別。你們自己體會吧。
在這裡我拿 Dart 和全民的大眾語言 Kotlin (想必大家都會了,這兩天可是如火如荼吶)作一個對比。
如何從 Kotlin 轉向 Dart
- 記住, Dart 沒有空安全,不要以為不加問號的地方就一定不是 null
- 凡是你沒有初始化的地方全是 null !
其他基本就是意念編程了。這門語言沒什麼難點,也沒什麼黑點,特性是比較少,但是我覺得這並不影響我使用。
畢竟 Java 都忍的了(在 Java 和 Dart 之間,我站 Java ,但是我客觀覺得 Dart 更好)。
Dart 的平台問題
Dart 的編譯有兩個解決方案:
- 編譯到 JavaScript ,這就和 Kotlin 和 TypeScript 一樣了。
- 編譯為位元組碼放在虛擬機上運行
這其實說白了就是一個 Kotlin ,只不過語言本身比較挫,而且它的虛擬機不是 JVM 。這其實有個好處,就是可以黑魔法優化, 不需要管標準啊規範什麼的,虛擬機也不需要考慮向後兼容,沒有 JVM 那種負擔。
關於環境搭建
是讓你下載源碼自行構建的,雖然會被網速狠狠地坑一波,但是我目前在三台電腦兩個不同的操作系統( Windows10 , Deepin Linux 15.4 )上分別構建過,均沒有遇到問題。
我感覺還是挺靠譜的。目前我使用這個工具進行 Android 開發,大概需要經歷:
- clone
- 編譯它
- 它自己下載最新 Dart SDK
- 尋找 AndroidSDK 及相關工具
- 尋找 Android Studio/IntelliJ IDEA 及他們各自是否已經安裝 Flutter 插件
- 尋找連接的 Android 設備
這其實就是:
flutter doctorn
最後說說感受
原本我是打算寫完一個 Demo 再寫此文的,不過我現在可能做不到了。 Demo 還沒寫完,最近編程時間確實很少。
然後的計劃是,分享一些造過的輪子。因為現在 Fuchsia 社區很不成熟嘛,我作為早期開發者,自然是承擔著踩坑和造輪子的責任的。
在擼這個小玩具的時候造了好多好多輪子啊,我把他們都一一封裝了(其實都是小東西,只是官方沒有,我就去啃他們 UI 框架源碼然後照著寫,結果還行,挺好用的)。以後都會有分享的啦。
最近在 CodeWars 上練 Haskell ,於是 Demo 就做的是 CodeWars 客戶端呢~
而且我還研究出了怎麼把 Fuchsia 應用部署到 Travis CI 上,以後可能會有系列教程。
今天心情煩躁不想寫代碼,寫完這文就睡覺。
補充:這門語言超級反人類, 1/2 居然等於 0.5
推薦閱讀:
※世界上第196個國家要成立了,全球有12萬人簽署公民申請
※98年女孩兒叫我去見她爸媽,我該怎麼辦?
※長遠來看,垃圾填埋和焚燒哪個更好?