嗨!大家好,我是Teng:
今年的疫情蠻嚴重的,希望大家都過得安好,
希望疫情快點過去,能回到一些線下技術聚會的時光~
不知不覺又到了鐵人賽的時間,經Kotlin讀書會的鼓舞,
想試著藉由鐵人賽讓自己學會一些新的技術且分享給各位。
昨天我提到的三個問題,分別如下:
這幾個問題,我想先回朔到當時的時空背景來看,
當然你也可以拉到最下面直接看我的想法。
歷史沿革
我一開始看到 Compose UI 的時候,第一個想法是原本的 xml UI 用得好好的,為什麼要推出學新的 UI 撰寫方式呢?而且當初剛入門學 Android 的時候,看到的一些技術文章都會提倡 Android 的優秀之處就是強制 UI(xml) 跟程式碼分離,現在怎麼反而要把UI跟程式混在一起了呢?
但這邊要停一下,回頭想想 Android 這個語言從誕生到了現在有多久了?
一查之下發現,快要20年了!所以當時的一些好處,因為現在時空背景的不同,已經不一樣了,譬如:
假設一下,你是要負責重構 View 的工程師,你會怎麼規劃重構 View 這個Class,需要多久時間?
整理一下我目前了解到的優點:
已涵蓋目前所有的基礎UI元件,包括Raw, Cow, Graphics, Grad layout等等。
也有Android UI元件讓你繼續使用現有的UI 元件。
我認為這是一個短期內不學不會怎樣,學了會具備更多開發手段的技術。
同時我也相信接下來 Google 應該會盡量把資源都放在 Compose UI 的發展上,就像以前的 Relative Layout ,在現在的 IDE 上已經慢慢的不支援了一樣。
說完這些,有沒有人有不同的想法?歡迎提出,哈哈!
沒有問題的話,明天就開始進入實作囉!
本文同步發表在 medium 上 文章連結
參考資料: