iT邦幫忙

kotlin相關文章
共有 1296 則文章
鐵人賽 Kotlin DAY 17

技術 Day09#2 經典但不實用的氣泡排序

「但妳好像沒提過要我學這個啊?」勇者困惑的說。 「不學演算法和資料結構也可以寫程式。」蕭凱琪不在意地擺擺手,但勇者還是一臉不相信,所以只好說出來差別:「⋯⋯但如...

鐵人賽 Kotlin DAY 17

技術 Day17 重構 | 使用 MVVM 作為 Kotlin App 的設計架構

今天來將架構由目前的 MVP 調整成 MVVM,並且搭配 LiveData 使用。MVVM 是由 Model、View、ViewModel 組成,Model 和...

鐵人賽 Kotlin DAY 22
Kotlin is all you need 系列 第 22

技術 [Day 22] Greedy Algorithm — Activity Selection Problem / Huffman Coding

Activity Selection Problem Activity Selection Problem 通常用於時間表排程或資源分配。 該問題要求在一組互相...

鐵人賽 Kotlin DAY 16

技術 [小城鎮] 測試 大補帖

前情提要 昨天我們提出了一個疑問,測試code要怎麼證明寫的是好的?又或者,我們要怎麼知道測試的code寫得已經滿足需求了? 案例 假設現在要測試一個funct...

鐵人賽 Kotlin DAY 16

技術 Day16 使用 RecyclerView 顯示 API 資料

今天來告別顯示很醜的文字內容吧~~ 昨天已經將 API 回傳的 Json 字串解析成 Cafe data class 了,可以將資料美美的顯示在畫面上~ 原本只...

鐵人賽 Software Development DAY 16

技術 Day 16:存取第三方 API,HttpClient 和 client.get

時間過了兩週,我們也看了不少 Ktor 可以提供的各種功能。 今天我們來看看 Ktor 框架所提供的另一大塊功能:針對 HTTP Client 開發上所提供的協...

鐵人賽 Kotlin DAY 16

技術 Day09#1 常用的功能通常都已經有人建立好了

既然說可以玩,勇者就大膽的嘗試了重複數字、沒有數字、只有一個數字的組合,結果都很正常。這時他突然想起,蕭凱琪曾經說過,常用的功能通常都已經有人建立好了。於是他就...

鐵人賽 Kotlin DAY 15

技術 [小城鎮] kotlin 單元測試到底要怎麼寫?

前情提要 昨天我們介紹了測試金字塔,加上吃了月餅!,今天我們要從最底部的Unit test寫起,透過撰寫Unit test,來確保我們的程式有符合運作條件。 套...

鐵人賽 Kotlin DAY 21
Kotlin is all you need 系列 第 21

技術 [Day 21] Greedy Algorithm

Greedy Algorithm Greedy Algorithm 是一種常見的演算法設計方法,通常用於求解最佳化問題。 它的基本思想是在每一步都做出當前看起來...

鐵人賽 Software Development DAY 15

技術 Day 15:call.respond 如何轉換回傳內容

昨天我們看過了 val customer = call.receive<Customer>() 這段函數,在 Ktor 裡面是怎麼將 HTML 請...

鐵人賽 Kotlin DAY 15

技術 Day15 解析 Json 字串

昨天才剛把專案調整為 MVP 架構,本來今天想直接改為 MVVM,但突然有點不捨,所以改為解析 Json 字串好了,過幾天在來重構~~ 定義資料結構 Json...

鐵人賽 Kotlin DAY 15

技術 Day08#3 數字陣列組成字串就是這麼簡單

「有些公司內部推薦的話,可以省去部分關卡,不過更簡單的方式就是靠人脈。比如同學或是前同事,他們知道你的實力,只要待遇談攏就能進去。不過你不用擔心入職考試,」蕭凱...

鐵人賽 Kotlin DAY 20
Kotlin is all you need 系列 第 20

技術 [Day 20] Dynamic Programming — Matrix Chain Multiplication / Edit Distance

Matrix Chain Multiplication Matrix Chain Multiplication 通常是在計算機科學和數學中討論的,其目標是找到一...

鐵人賽 Kotlin DAY 14

技術 Day08#2 用求職考試認識公司認識自己

「其實我不這麼覺得呢。」蕭凱琪回來時剛好聽到勇者的話,不由得接話。 「可是妳不是說考試的時候,考官不會讓你用Intellij IDEA嗎?」 其實勇者之前就一直...

鐵人賽 Kotlin DAY 14

技術 Day14 重構 | 使用 MVP 作為 Kotlin App 的設計架構

這篇是設定給已經有 MVC 架構概念的讀者,因為後面想使用 MVVM 作為 APP 的設計架構,為了能無痛轉移,所以從概念比較相似的 MVP 開始著手~ 在專...

鐵人賽 Software Development DAY 14

技術 Day 14:call.receive 如何將請求轉換成自定義類別

看過了 Ktor 怎麼安裝 json 相關的套件,今天,我們要來看看實際使用的情況,以及套件會怎麼處理我們撰寫的程式內容。 首先我們定義 com.example...

鐵人賽 Kotlin DAY 14

技術 [小城鎮] 笨蛋,測試,召喚獸 - 自動化測試是甚麼?

前情提要 昨天我們將MongoDB給建立起來了,今天我們來統整一下測試是甚麼? 很重要嗎? 測試金字塔 在Mike Cohn 的測試金字塔中,它是由三層組成,我...

鐵人賽 Kotlin DAY 19
Kotlin is all you need 系列 第 19

技術 [Day 19] Dynamic Programming — Coin Change Problem / Rod Cutting Problem

Coin Change Problem 如何以最少的硬幣數量來湊出特定金額的錢。 這個問題可以用簡單的方式描述如下: 假設我們有一些不同面額的硬幣,每種面額的硬...

鐵人賽 Software Development DAY 13

技術 Day 13:json() 如何註冊一個 Json 格式的處理器

昨天我們看過了 ContentNegotiation 的實作。今天,我們來看看 fun Application.configureSerialization()...

鐵人賽 Kotlin DAY 13

技術 Day08#1 小心被IDE養廢

勇者今天早上有些精神不濟,一不留神,在程式碼上留下了一連串亂碼,他匆匆忙忙地想要清除掉錯誤,卻發現IDE並沒有紅色的錯誤提示。這才發現剛好都打在註解那行了。 「...

鐵人賽 Kotlin DAY 13

技術 Day13 使用 Async 啟動 Coroutine 取得網路請求 (下)

為了今天要用 async 執行非同步取得咖啡廳資料,所以昨天先做了簡單的實驗,現在直接來改寫程式碼吧~~ 改寫 - 使用 async 取得 API 資料 b...

鐵人賽 Kotlin DAY 18
Kotlin is all you need 系列 第 18

技術 [Day 18] Dynamic Programming — Longest Increasing Subsequence / 0-1 Knapsack Problem

Longest Increasing Subsequence Longest Increasing Subsequence 是在一個數字序列中找到一個具有最大長...

鐵人賽 Software Development DAY 12

技術 Day 12:處理 API 輸入輸出格式的 ContentNegotiation

前面幾天,我們看過了 Ktor 的啟動,路由,以及靜態內容和 HTML 畫面的生成。 今天我們來看看另一個後端框架非常基礎的功能:生成 json 格式的 API...

鐵人賽 Kotlin DAY 12

技術 Day07#2 懂的越多越省力

蕭凱琪對勇者知道九九乘法表毫不意外,畢竟那也算是基礎知識,應該會在系統灌進去的生活知識包裏面。但居然對閱讀方向有執著?這就有點意思了。 「妳說『for』也是迴圈...

鐵人賽 Kotlin DAY 17
Kotlin is all you need 系列 第 17

技術 [Day 17] Dynamic Programming — Fibonacci Sequence / Longest Common Subsequence

Dynamic Programming Dynamic Programming 是一種在計算機科學和數學中常用的問題解決方法。 它的主要策略是將一個複雜的問題拆...

鐵人賽 Kotlin DAY 11

技術 [小鎮] 實作三層架構 - 拆拆拆

前情提要 今天我們把三層式架構給做了出來,Service層放業務邏輯,Repo層放與外部接觸如資料庫、外部系統的地方,Controller層專心做User打過來...

鐵人賽 Kotlin DAY 12

技術 [小城鎮] 實際儲存資料 - Mongodb

前情提要 今天我們要將memory的list,換成實際的DB,讓我們的資料可以正確的被保存起來。 為什麼選擇MongoDB呢? MongoDB具有以下優點:...

鐵人賽 Kotlin DAY 13

技術 [小城鎮] 實作吧! MongoDB

前情提要 今天我們要將MongoDB給串上我們的專案! 有了DB以後,我們關閉程式就不會遇到資料不見的問題了,並且外來也可以水平擴充之類的,增加我們資料的安全性...

鐵人賽 Kotlin DAY 12

技術 Day12 使用 Async 啟動 Coroutine 取得網路請求 (上)

加入 LifecycleScope 管理 Coroutine 經友人 L 建議,可以透過 LifecycleScope 管理 coroutine 的生命週期。因...

鐵人賽 Kotlin DAY 11

技術 Day11 二戰 Coroutine ! 使用 OKHttp 串接全台咖啡廳資料的 API-5

今天來實戰,將前三天學習到關於 coroutine 的基本概念和用法在我們的專案內實作! 使用 launch 搭配 LiveData 因為我們學到的是用 lau...