慶祝 Ktor 1.0 釋出,分享 JetBrains 日講稿及程式碼
本文原發於我的個人部落格:https://hltj.me/kotlin/2018/11/22/ktorcn-update-jetbrains-day-slides.html。本副本只用於圖靈社群,禁止第三方轉載。
非常值得慶祝的是,Ktor 1.0 正式釋出了,Ktor 中文站也已更新。
Ktor 是 JetBrains 官方出品的互聯應用框架。 使用該框架非常易於開發非同步的伺服器與客戶端,並且能夠充分利用 Kotlin 以及協程的優勢。
Ktor 中文站是官方英文站的中文翻譯(目前還在翻譯中,歡迎組團一起)。 初學者可以從快速入門入手來學習與瞭解 Ktor,這一章大多數內容均已翻譯。
上週六,有幸在 JetBrains 開發者日上分享了《Ktor——Kotlin 多平臺非同步 Web 框架實踐》 ,這兩天也把講稿及相關 demo 整理了下。
講稿可在這裡下載:
連結: https://share.weiyun.com/5UqjtTc
密碼: eauq37我猜你還想看 Benny 分享的講稿,傳送門在這裡:2018 JetBrains 開發者大會見聞
這份講稿比當天用的那份要新一些(其中的截圖也能看出是 11 月 20 日的),補充了當場提到但沒有在講稿中列出的 Ktor 適用場景: 多平臺專案,同時開發客戶端與服務端,比如同時開發 WebSocket 或者直接套接字通訊的客戶端與伺服器。
CallID 與 Call Logging MDC 的 demo 在這裡:
https://github.com/hltj/ktor-callid-demo
介面聚合服務 demo 在這裡:
https://github.com/hltj/kaggregator-demo
最後出場的這個是原打算在分享中講的開源縮圖服務 Kthumbor,終於完成了第一個可用版。服務框架使用 Ktor,100% Kotlin 開發,見下圖:
另外,在 Kthumbor 專案中採用了測試驅動開發的方式(其中測試框架使用的是 KotlinTest),先寫測試用例後寫實現。 目前只實現了最簡單的生成指定寬高內的縮圖的功能,後續還會實現放大、剪裁等功能,最終會實現一個生產級可用的縮圖服務。
Kthumbor 的原始碼在這裡:
https://github.com/hltj/kthumbor
歡迎反饋與交流。 需要說明的一點是,我並不想做純雷鋒,該專案採用 AGPL-3.0 協議釋出,因此可以用於商業目的,但是任何修改都需要以同樣協議(AGPL-3.0)開源出來。
關於分享中講到的點以及 Kthumbor 專案,有機會再展開來看。
相關文章
- Ktor 1.0 正式釋出:JetBrains 出品的互聯應用框架AI框架
- 迎元旦,慶surging 1.0釋出
- LinuxCon 2017(北京) Linus 專訪影片及部分演講稿釋出Linux
- 前端慶祝節日的方法前端
- 《尼爾》手游下載量突破1000萬 官方釋出賀圖慶祝
- 新聞稿釋出渠道分析 如何選擇新聞稿釋出公司
- JetBrains釋出程式碼質量檢測工具Qodana早期預覽版AI
- AsteroidOS 1.0 釋出AST
- 重大更新!開源無程式碼 / 低程式碼平臺 NocoBase v1.0 正式釋出!
- UMind1.0釋出
- 正式釋出Android Things 1.0Android
- .NET 誕生 20 週年紀念日!微軟發文慶祝微軟
- Westore 1.0 正式釋出 - 小程式框架一個就夠框架
- 活動演講稿
- Flutter Live 2018 Flutter 1.0 釋出Flutter
- JPressv1.0-rc2釋出,新增微信小程式SDK微信小程式
- 為什麼要釋出新聞稿?新聞稿釋出推廣宣傳價值幾何?
- 使用你的 Linux 終端慶祝新年Linux
- [慶祝建黨]2021GKCTF-WP(NAN)NaN
- 慶祝dotnet6,fastgithub送給你ASTGithub
- surging 微服務引擎 1.0 正式釋出微服務
- imi-admin V1.0釋出
- 盤點新聞稿釋出中策略和技巧
- 新聞稿釋出效果的三個層次
- 新聞稿釋出中的SEO優化技巧優化
- 為慶祝週年紀念日,Win10版《我的世界》將支援OculusRiftWin10
- runc 1.0-rc6 釋出之際
- runc 1.0-rc7 釋出之際
- 谷歌Flutter1.0正式版釋出谷歌Flutter
- PaddleHub 1.0正式釋出: 一鍵模型載入,十行程式碼完成遷移學習模型行程遷移學習
- VS Code Java 更新 – 全新Gradle for Java外掛,更方便的程式碼操作, 1.0 語言支援釋出JavaGradle
- 為什麼選擇新聞稿釋出推廣?
- SHEIN慶祝其2022年秋冬系列時裝秀
- Meta3D 1.0正式版釋出-----開源的Web3D低程式碼平臺Web3D
- Flutter http請求庫dio 1.0正式釋出FlutterHTTP
- NG-ZORRO(Ant Design + Angular) 1.0 版本釋出Angular
- 重磅!滴滴跨端框架Chameleon 1.0正式釋出跨端框架Chameleon
- PHP框架Raxan1.0最終版釋出PHP框架