送出後不會看到結果, refresh 後才知道送出 (或是其實沒送出)
不過 app 本身也沒改, 就不曉得為什麼會這樣了 (只能猜原程式看 android 6.0 下行為不一樣)
那整個 app 要用 xamarin 重寫, 而且不能用現有所有 anroid 資源 (lib, 人力...etc). xamarin 的 commitment 也是有待考慮.
是說我也跑一次 tutorial 了,kotlin 的確有些地方讓我這 Java 開發者非常的心動。 (例如 builder, data class)
但是沒支援 Java8/Stream 讓人沮喪。然後和 Spring 合用時問題一堆1 。看大家這麼推我還以為所有 Java library/framework 都能無縫接軌咧… 原來扯到 CGLib 這類的東西 kotlin 還是很無力,但偏偏用 CGLib 的 framework 很多啊。kotlin 在這點還待時間的驗證。
另外最讓我意外的是:
fun main(args: Array<String>) {
arrayOf(1, 2, 3).forEach {
print(it);
return;
}
}
closure 裡的 return 會直接跳出 block,所以只會印出 1
。先不論這是好是壞,但這跟其他程式的行為差的有點多,移植 Java 程式時這會有一堆 bug 啊。這不該是一個講求最高 Java 合作的語言該做的選擇。
至於 Android 面,我正在等 async/await 的功能,因為這才會是真正殺手功能。Android 的程式寫起來很繁雜,但靠著 retrolambda 和 butterknife 還算過的去。但 async/await 帶來的優點就不是任何 Java library 可以做到的。
總而言之,現階段我還是選擇先等一下,等 kotlin 1.1,等 spring 支援的更好,等 async/await。
safari 才能開。
Swift3 移掉了一些語言功能,不過 XCode8 可以自動轉換的 (但問題在 3rd party...)
最後,那些 Objective C 遺傳下來的超長變數/方法的命名終於要拿掉了。哎哎,Apple 終於承認那個鬼命名規則是錯的。
比較一下:
Linode 8GB $40
Linode 12GB $80
Linode 24GB $160
Google 8GB ~$70 (不含流量)
Google 16GB ~$150 (不含流量)
Linode 流量免費的量很大,很夠用,大部份的 VPS 都是如此
而 Google 的流量和 AWS 一樣都是很貴的。這種 Cloud 是贏在其他功能,但如果沒用到就是貴了。