iT邦幫忙

kotlin相關文章
共有 1247 則文章
鐵人賽 Modern Web DAY 18

技術 [Day 18] 轉換 OpenAPI 文件為 Postman Collection 做 Web API 自動化測試

Web API 測試可以是後端工程師使用測試框架撰寫白箱測試,也可以是 QA 使用測試工具進行黑箱測試。對於後端工程師來說,如果 API 有異動,很容易找出對應...

鐵人賽 Modern Web DAY 18

技術 [Day 18] 重構我們的測試程式碼

隨著我們專案功能的增加,雖然目前只有兩個函數,但是我們的測試函數已經增加了不少。 為了減少我們未來閱讀測試程式的痛苦,也為了提升未來整個專案的可維護度,我們可以...

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

技術 Day18:Flow 的中間運算子,資料輸出前還可以做很多事喔

我們在上一篇的文章中,介紹了 Flow 的基本概念,包括如何建立一個 Flow,以及 Flow 是一個 Cold stream,所謂的 cold stream...

鐵人賽 Mobile Development DAY 8

技術 day8 kotlin coroutine的 runBlocking, withContext

runBlocking 中文用戶如我們? 直譯一下就是,跑一個塞住 恩,三小? 他真正的意思是,執行一個程式碼區塊,但他的一個特點就是,他真的會塞住,有別於la...

鐵人賽 Mobile Development DAY 15

技術 [Day15] swift & kotlin 實作篇!(6) Layout排版

swift 這邊我們來玩一下簡單的排版不管是哪種APP開發都有許多 Layout 模式我們這邊先用Auto Layout 做討論 Auto Layout也有很多...

鐵人賽 Mobile Development DAY 8

技術 Data layer implementation (2)

上一篇的 repository 還欠一個 mapper 把 EtaResponse 轉成 EtaResult。我們首先準備一個通用的 interface: in...

鐵人賽 Mobile Development DAY 18

技術 Jetpack Compose - Stateful and Stateless

相較於傳統的 Android View,Jetpack Compose 在 Android 開發上還有一個新的概念,那就是 Stateful (有狀態的) 還有...

鐵人賽 Mobile Development DAY 18

技術 Logger 與 Extension Generator for Kotlin

Logger 在 compile time 的時候,不像我們一般再開發的時候很容易的去 log 一些我們要的資訊,這邊我們必須要透過 processor 提供的...

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

技術 第十七天:該用 implementation 還是 compile?

在定義 Gradle Build Script 裡的 dependencies 時,您是不是也曾跟筆者一樣看著網路上各種教學文件,彼此常有出入,搞不清楚到底該用...

鐵人賽 Mobile Development DAY 17

技術 Day 17: swiftUI與Coroutine強強聯手,迸出新滋味.

Keyword: swiftUI,Coroutine Scope 改寫ObservableObject 既然我們將拉取網路資料的部分下放到了shared中的新...

鐵人賽 DevOps DAY 17

技術 第十七天:TeamCity 通知機制

自從有了 TeamCity 後,很多原本需要人工操作的任務都可以交給 CI 主機做。因為它會在每一次發現變更的時候自動執行,一方面不會漏掉或忘了執行、另一方面在...

鐵人賽 Software Development DAY 17

技術 學校的白色咖啡屋(一):繼承的根基與擴展的自由 Inheritance Implement Any

為了加強記憶,詩憶總會整理前一晚的筆記。 「可是,要怎麼確保每個類別都有toString()函式呢?」窗上映著女孩百思不解的臉。「之前學姐寫的自定義類別也沒看到...

鐵人賽 Modern Web DAY 17

技術 [Day 17] 實作 Ktor OpenAPI Generator

先前有提到整個 OpenAPI 的運作流程是… 開發者為 route 撰寫 OpenAPI definition Generator 根據 OpenAPI S...

鐵人賽 Modern Web DAY 7

技術 自訂 Vaadin 組件 / Grid 擴充功能 -- day07

重複使用程式碼 Vaadin 自訂 Component 各位發現了嗎?在寫完CRUD後,打開CreateStudentView.kt和EditStudent.k...

鐵人賽 Modern Web DAY 17

技術 [Day 17] 新功能的測試,檢驗不應該存在的資料

自動測試時除了檢查加入新資料,有時我們也會希望檢查舊資料是否成功地被移除。 今天我們用一個新的功能,來展示如何針對不應該存在的資料進行檢查。 新功能測試 我們多...

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

技術 Day17:Flow,一個非同步的資料流。 First Look

What is Flow? Flow 是用來處理非同步的資料流的一種方式,它會按照發射 (emit) 的順序來執行。 An asynchronous data...

鐵人賽 Mobile Development DAY 7

技術 110/07 - 建立自己的 ResultContracts

前面講完官方的14種Contracts,但我們也能建立屬於自己的Contracts,以下範例是實作一個跟ActivityResultContracts.Star...

鐵人賽 Mobile Development DAY 7

技術 day7 我不要了,這不是肯德基 cancel

Cancellation is important for avoiding doing more work than needed which can was...

鐵人賽 Mobile Development DAY 14

技術 [Day14] swift & kotlin 實作篇!(5) 基本版面配置

swift 接下來~就讓我們還拉一下版面吧 設定背景首先點選左側 Main.storyboard 我們先來設定個底色 點選中間的view 右側功能選單 切...

鐵人賽 Mobile Development DAY 17

技術 各種 Code Generator 的功能

上一篇我們有提到用 KAPT 參數去呼叫 純 Kotlin 和 Android 的 code generator ,這篇要延續這個主題,繼續來講一下會怎麼樣去呼...

鐵人賽 Mobile Development DAY 7

技術 Data layer implementation (1)

在上一篇,我們把 Ktor client 加到 Dagger 的 object graph 內。現在我們就繼續寫 data layer 部分。 跨 layer...

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

技術 第十六天:複數專案架構

之前在看別人的 JVM 專案時,有時會發現數個不同的 Module 原始碼卻都指向同一個 Repository,這才發現原來 Gradle 支援複數專案架構。也...

鐵人賽 Modern Web DAY 16

技術 [Day 16] 第一個和資料庫互動的測試

知道什麼是自動測試之後,我們來看看怎麼進行和資料庫互動的自動測試。 測試目標 假設我們現有的資料關聯有 user 和 tag 的多對多關聯 object Use...

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

技術 Day16:四種不同的 Channel

在上一篇文章我們建立 Channel 時,使用 Channel<E>() 來建立一個 Channel。這個方法是由 Coroutine 所提供的一個...

鐵人賽 Software Development DAY 16

技術 尋找字串與她的小夥伴:正規式 String Regex Replace

「學姐,這麼多的函式妳都能背起來嗎?」詩憶強撐著困倦的眼皮。 「如果人腦這麼厲害,就不用電腦了呢,而且Kotlin每半年會推出新的版本唷。」唯心用輕快的聲線說出...

鐵人賽 DevOps DAY 16

技術 第十六天:在 TeamCity 上執行靜態分析

昨天我們在專案裡導入了 detekt 靜態分析套件,只要執行 $ gradle detekt 就可以掃描整個程式碼庫,及早找出淺在問題。我們也介紹了如何在 In...

鐵人賽 Modern Web DAY 6

技術 CRUD的UD / ICON / confirmDialog - day06

前情提要 前幾編文章裡,大家已經知道如何利用 Vaadin-on-Kotlin 簡單快速的新增、查詢資料庫並使用Grid顯示,也知道了如何驗證輸入資料的正確性。...

鐵人賽 Modern Web DAY 16

技術 [Day 16] 以 Programmatic 取代 Annotation 的方式撰寫 OpenAPI 文件

Spring Boot 使用 Annotation 撰寫 OpenAPI Definition 我們先來看 spring boot 撰寫 OpenAPI def...

鐵人賽 Mobile Development DAY 16

技術 Day 16:自己動手,豐衣足食.IOS的Coroutine管理

Keyword: Coroutine,Flow 前面說了這麼多有關於Coroutine Leak所帶來的風險,但是iOS不像Android有那麼完善的支援,畢...

鐵人賽 Mobile Development DAY 6

技術 day6 阿伯出事啦 exception

Coroutine支援kotlin一般的Exception處理 try/catch/finally, 或是runningCatch (內部依然使用try/cat...