iT邦幫忙

kotlin相關文章
共有 1296 則文章
鐵人賽 DevOps DAY 9

技術 第九天:建立練習專案

接下來我們建立後續章節要使用的練習專案,我預想了一個「購物車及運費計算機」做為情境,整個流程會示範如何用 IntelliJ IDEA 寫程式並用 TeamCit...

鐵人賽 Modern Web DAY 9

技術 [Day 09] 資料和資料之間的一對多關聯

透過 DAO 方式存取資料,除了用傳統的 join 方式處理資料表之間的關聯外,也可以直接從物件之間的關聯來思考。 下面我們來介紹 DAO 物件之間的關聯如何設...

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

技術 第九天:使用 Gradle Wrapper

在開發 JVM 專案時,有時會遇到這些實務問題: 專案使用的 Gradle 版本跟自己本機安裝的不同 參與專案開發的每位成員使用的 Gradle 版本都不同...

鐵人賽 Mobile Development DAY 10

技術 Annotation 處理時機

處理 Annotation 的時機 一般來說,annotation 可以在 compile time 或是 runtime 的時候做處理。 Compile t...

鐵人賽 Mobile Development DAY 1

技術 Intro

屯馬開通真的很興奮 早陣子(2021 年 6 月 27 日)港鐵屯馬綫全綫通車,當日有電視台訪問了一名鐵路迷,他受訪時調寄家傳戶曉的英國民謠《綠䄂子》即興唱了一...

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

技術 Day9:Job vs SupervisorJob

還記得launch 的回傳值是 Job 嗎?我們可以使用 job 的 cancel() 來取消該 Coroutine。不知道你有沒有想過 Job 是什麼東西呢?...

鐵人賽 Software Development DAY 9

技術 週末雨會(三):用迴圈跑陣列再加上條件式 Array Loops And Conditions

從宿舍走到餐廳的路上可以看到颱風肆掠的痕跡,詩憶一個不留神踩到樹枝,往後滑倒,幸好旁邊的唯心馬上扶住她。 「今天學校保健組可沒有開唷。」唯心鬆開詩憶的肩膀,低下...

鐵人賽 Mobile Development DAY 9

技術 MultiThreading and Custom extension function.

除了方便好用的 operator 之外,RxJava 還有一個非常重要的機制:非同步處理。 RxJava 的非同步處理機制可以讓我們很輕鬆的切換不同的執行緒,但...

鐵人賽 Modern Web DAY 9

技術 [Day 9] 使用 Config4k 以 Typesafe 及 Validatable 的方式讀取 Ktor 設定檔

Web 框架提供 API 讓開發者讀取設定檔是基本的必備功能,以 Spring 框架為例,從最早只支援 XML 格式,到現在可以使用 java-based co...

鐵人賽 Mobile Development DAY 6

技術 [Day06] swift & kotlin 入門篇!(4) 基礎語法-轉型與合併使用

轉型與連結 在JS中, 所有的轉型與連結都是無感的 也因為太方便太無感 常常會跑出意外的結果 例如 console.log(+"1" +...

鐵人賽 Mobile Development DAY 9

技術 Annotation 介紹

Annotation 很常寫 Java 或是 Kotlin 的朋友對 annotation 大概不陌生,它其實就是在程式碼裡面做標記,而這個標記做什麼或者背後隱...

鐵人賽 DevOps DAY 8

技術 第八天:安裝 IntelliJ IDEA

為了在後續章節裡示範 TeamCity 可以怎麼協助我們建置專案及一系列的自動化,我們需要有一個可以建置、可以跑測試、可以產生覆蓋率報告、可以產生 API 文件...

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

技術 第八天:用 Docker 運行 Gradle

昨天介紹的全手動安裝是對系統掌控的一種極端,而今天要介紹的,是對系統潔癖的另一種極端。假如你受夠了要跟作業系統的套件管理工具奮戰、也討厭在自己的工作機上裝一堆開...

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

技術 Day8:結構化併發 (Structured Concurrency)

還記得我們第一個 Coroutine 程式嗎? suspend fun showContents() = coroutineScope { launch...

鐵人賽 Modern Web DAY 8

技術 [Day 08] Kotlin DAO 其他和資料庫互動的方式

昨天我們看過了使用 Kotlin DAO 進行資料庫 CRUD 的方式。 今天我們來看看,除了基本的 CRUD,我們透過 DAO 還有什麼操作資料庫的方式。 排...

鐵人賽 Software Development DAY 8

技術 週末雨會(二):變數基本型態 Basic Types

「強硬的將變數改變型態會發生什麼問題?」詩憶好奇地發問。 「什麼都可能發生。」 唯心從包裡掏出一張紙,展開後放在詩憶桌上,這是一張因為放歪而印壞的A4紙。 「好...

鐵人賽 Mobile Development DAY 9

技術 Day 9: Kotlin DSL 管理雜亂依賴的好幫手

Keyword: Kotlin DSL到Day9使用Kotlin DSL 管理依賴的Code放在KMMDay9 集中管理依賴版本 在使用第三方庫的時候,有時候...

鐵人賽 Modern Web DAY 8

技術 [Day 8] 整合 Koin DI 實作 Ktor Plugin

Ktor Plugin & DSL Ktor 的架構設計是讓開發者透過實作 plugin,把 intercepting function 註冊到 req...

鐵人賽 Mobile Development DAY 5

技術 [Day05] swift & kotlin 入門篇!(3) 基礎語法-字串

字串 想當初剛在學習JAVA時 一段 new String("ami") != new String("ami") 輸出...

鐵人賽 Mobile Development DAY 8

技術 RxJava operators && Java.Optional as a type class

本篇是用來補充 RxJava 的基礎知識跟 functional programming 的應用,最後將會說明上一篇沒有解釋到的實作細節。 Observable...

鐵人賽 Mobile Development DAY 8

技術 使用 XmlPullParser (三)

我們現在有了許多的基礎的 parser function 了,我們直接來看怎麼樣組合這些 function 來 parse 一些東西吧!以 library 裡面...

鐵人賽 DevOps DAY 7

技術 第七天:加裝 Build Agent

簡單來說,TeamCity 的運作方式是 Server + Agent 的架構。平常我們看到的 TeamCity 操作畫面是 Server 端,它負責提供 UI...

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

技術 第七天:手動安裝 Gradle

前面三天已經介紹過在三大主流作業系統上安裝 Gradle 的方式,基本上應該已經能夠滿足 90% 讀者的需求。但假如您不喜歡用套件管理工具、也偏好自己手動安裝...

鐵人賽 Software Development DAY 7

技術 週末雨會(一):變數的兩種狀態 val vs var

台灣的特殊位置,使她在夏秋之間常遭受颱風襲擊,但偶爾也會有搞錯季節的晚颱。 詩憶望著窗外灰暗的天空,狂風暴雨絲毫沒有停歇之勢。 週末其他人都不在,於是唯心提議在...

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

技術 Day7:CoroutineScope:launch() 以及 async()

在前一篇文章我們知道 suspend 函式必須要在 Coroutine scope 裏面才能執行,本篇文章我們來了解一下兩個 Coroutine Builder...

鐵人賽 Modern Web DAY 7

技術 [Day 7] 實作 Request Data Validation 及 Global Exception Handler

昨天提到如何使用 kotlinx.serialization 處理 request/response json data,今天進一步延伸說明如何在 deseri...

鐵人賽 Mobile Development DAY 7

技術 便利貼中的手勢操作

在 Jetpack Compose 的官方文件中,拖曳手勢操作是這樣子使用的: Box(modifier = Modifier.fillMaxSize()) {...

鐵人賽 Mobile Development DAY 4

技術 [Day04] swift & kotlin 入門篇!(2) 基礎語法-型別

swift型別 swift在類別上是蠻強硬的語言 來看看型別上的使用吧 // 整數 let intA = 10 // 自動判斷型別 let int_b: Int...

鐵人賽 Mobile Development DAY 7

技術 Day 7:How do you turn this on? KMM是如何做到的?

Keyword: KMM shared module, Expect/Actual 今天我們來看看範例專案內容,先切換到Project顯示,展示整個專案的內容...