iT邦幫忙

kotlin相關文章
共有 1247 則文章
鐵人賽 Mobile Development DAY 20

技術 Day 20:讓我來為您服務.由Koin管理的Android App

Keyword:Koin,Koin Compent到Day20 使用Koin管理依賴注入顯示在Android上 放在這邊KMMDay20 我們先在Androi...

鐵人賽 DevOps DAY 20

技術 第二十天:在 TeamCity 上執行 Build Scan

昨天介紹了 Gradle 的 Build Scan 功能,讓我們可以清楚的了解 Build 過程中的細節,是使用 Gradle 時的一個強大工具。當然,我們也可...

鐵人賽 Software Development DAY 20

技術 在程式裡避開踩雷:安全引用空虛值、例外處理和延後、惰性初始化 Null Safety, Exception, lateinit, lazy

「哇,原來研究室是這樣的啊。」詩憶東張西望。 「是呀,這裡是大家辦公的地方,實驗的機器不在這裡,所以妳可以放心坐下來。」唯心拉開身邊的椅子,回頭繼續寫報告。 詩...

鐵人賽 Software Development DAY 20
Coroutine 停看聽 系列 第 20

技術 Day20:Flow 想在其他的執行緒執行,可以嗎?

Flow 是屬於 coroutine 範圍項目,coroutine 中一個重要的特點可以輕易的切換執行緒,在 Flow 也有這項功能嗎? 我們知道要在 Coro...

鐵人賽 Modern Web DAY 20

技術 [Day 20] 實作 Logging Plugin 建立系統 Logging 機制

系統的 Log 除了基本的 Request Log 及 Error Log 之外,特定的功能也會有記錄 Log 的需求,例如使用者登入時,需要記錄來源 IP、裝...

鐵人賽 Mobile Development DAY 10

技術 聊聊structure concurrency 結構化併發

前面我們談了,coroutine的coroutineScope、繼承、異常處理和取消,也在文中提到了他們和structure concurrency的特性,想必...

鐵人賽 Mobile Development DAY 10

技術 【Day10】AddInvitationFragment(下) X DatePickerDialog

接下上集!!,我們已經完成layout,還有上傳照片了。那麼接下來我們要做的就是把選取時間的日曆叫出來,好讓我們的user選擇邀約的時間!我們主要是透過 da...

鐵人賽 Mobile Development DAY 10

技術 110/10 - Intent.ACTION_MEDIA_SCANNER_SCAN_FILE棄用

新增相片後,要發送通知給相簿應用程式,這樣才能更新照片清單,這樣才能在相簿看到新增加的照片,使用者體驗才會好。 以前我們會用Intent.ACTION_MEDI...

鐵人賽 Mobile Development DAY 10

技術 Data layer testing (1)

在切回去寫 domain layer 之前,我們先把之前寫好的 data layer class 補回 unit test。在開始寫之前,我們要先加入一些 te...

鐵人賽 Modern Web DAY 20

技術 [Day 20] 調整一下我們的函數架構,談擴充函數和流暢介面

上次我們提到,我們只需要實作 filterAdminTag() filterAuthorTag() filterRegistered() fil...

鐵人賽 Mobile Development DAY 17

技術 [Day17] swift & kotlin 實作篇!(8) Animation - swift

swift 畫面有了~功能也有了~ 接下來我們做個小動畫 我們試著讓小雞在畫面中跳起來 整個APP 感覺就活起來了 關於動畫~swift也不少方法都可以跑動畫...

鐵人賽 Mobile Development DAY 20

技術 Parser Generator (二)

上一篇我們講解怎麼產生目標 parser 的 parse 方法,這篇來講解 generator 的內部結構,這會用到上篇提到的 getParseFuncSpec...

鐵人賽 Mobile Development DAY 19

技術 Day 19: Let's Koin!Koin 實作依賴注入

Keyword: Koin到Day20 使用Koin管理依賴注入顯示在Android上 放在這邊KMMDay20 今天我們就在專案裡面引入Koin進行依賴注入...

鐵人賽 Software Development DAY 19
Gradle 通靈術 系列 第 19

技術 第十九天:初探 Gradle Plugins

Plugin 可以做什麼? 將 Plugin 套用於專案後,可以擴增專案的能力,它可以做到如: 擴充 Gradle model(如增加可以設定的 DSL 元素...

鐵人賽 Software Development DAY 19

技術 想要彈性類別嗎,讓類別當參數吧:泛型 Generics

寬廣的室外網球場上,學生們正在做發球考試的練習。 「嘿!」女孩左手將球向上輕拋,右手握拍奮力用全身的力量擊球。 和羽球重視甩腕的方式不同,網球需要軀幹旋轉的力量...

鐵人賽 DevOps DAY 19

技術 第十九天:用 Gradle 做 Build Scan

對 Kotlin 這種編譯式語言來說,為了方便每次更新後的編譯工作,都會搭配 Gradle 這種自動建置工具使用。而 Gradle 在編譯的過程中會經過很多手續...

鐵人賽 Modern Web DAY 19

技術 [Day 19] 突如其來的需求變更!來聊函數式編程

我們好不容易寫了 userAddTag() 和 updateUsersTags() 的邏輯,突然又出現了新需求! 這次需求單位希望 updateUsersTag...

鐵人賽 Mobile Development DAY 9

技術 110/09 - 把照片儲存在Android/data/packageName/files/

今天來實作使用ActivityResultContracts.TakePicture()開啟相機,拍照後把照片儲存在Android/data/packageNa...

鐵人賽 Modern Web DAY 9

技術 vok-orm 關聯性資料的新增/查詢 (下篇) + Vaadin 自訂樣式 - d09

承上篇 Refactor 上篇實作完成執行結果如上圖所示,藍色區塊為該學生成績,紅色區塊為新增成績編輯畫面,全部程式皆在StudentView.kt裡,接下來我...

鐵人賽 Modern Web DAY 19

技術 [Day 19] 實作 Ktor Request Logging

Request Logging 是非常重要的必備功能,不僅可以用來系統監控、除錯,還可以進一步分析使用者行為…等,存在著廣泛的應用情境,所以每個 Web 框架都...

鐵人賽 Mobile Development DAY 9

技術 【Day9】AddInvitationFragment(上)

好的,接下來我們要新增邀約的Fragment,好讓使用者可以上去PO出自己的邀約,以及讓不同的使用者可以看到目前有的邀約。那我們開始吧! 今天會完成上傳圖片/...

鐵人賽 Mobile Development DAY 9

技術 day9 Kotlin coroutine 的黑魔法 suspend

suspend他並不能切換線程,切換線程的是內部自帶的suspend函數,ex. withContext coroutine只是能用阻塞寫法寫出非阻塞代碼,本質...

鐵人賽 Software Development DAY 19
Coroutine 停看聽 系列 第 19

技術 Day19:Flow 準備好輸出了嗎?使用 Terminal operators 產生結果吧。

Flow 經過 Intermediate operators 將資料經過處理之後,最後一步則是要把資料輸出,而將資料輸出則是要透過 Terminal opera...

鐵人賽 Mobile Development DAY 16

技術 [Day16] swift & kotlin 實作篇!(7) Click Event 綁定

swift 畫面都有了! 接下來我們來完成一個小功能吧 首先 我們點選Main.storyboard上方的 +號按鈕 此時右邊會跑出第二個視窗 這時我們在點選...

鐵人賽 Mobile Development DAY 19

技術 Parser Generator (一)

KotlinParserGenerator 我們先從 kotlin 的 parser 講起,這邊會順便帶到一些 KotlinPoet 的進階用法。我們目標是讀取...

鐵人賽 Mobile Development DAY 9

技術 Date & time

上一篇在實作 EtaResponseMapper 的時候我們用了 Java 8 開始有的 Instant、LocalDateTime 和 ZonedDateTi...

鐵人賽 Mobile Development DAY 18

技術 Day 18: To DI ? Or not DI? 依賴注入的存在意義

Keyword: Dependency Injection到Day20 使用Koin管理依賴注入顯示在Android上 放在這邊KMMDay20 依賴注入(D...

鐵人賽 Software Development DAY 18
Gradle 通靈術 系列 第 18

技術 第十八天:客製化 Gradle Task

雖然 Gradle 內建不少任務,也有眾多 Plugin 可以增加更多常用任務。但畢竟每個專案都是獨一無二的,情境和需求也都不同,因此往往會需要在 Gradle...

鐵人賽 Software Development DAY 18

技術 學校的白色咖啡屋(二):效率的勝利 Collections And Sequences

「既然已經知道了interface,就可以來看Collections三大interface——List、Set、Map。和陣列Array一樣,是放入多筆資料的資...

鐵人賽 Modern Web DAY 8

技術 vok-orm 關聯性資料的新增/查詢 (上篇) -- d08

本節重點 延續先前己建立的學生資料範例,今天加上學生成績。 建立成績資料 在顯示單筆學生資料頁StudentView.kt上加上新增及顯示成績畫面 Ref...