SlideShare a Scribd company logo
Laravel 工作坊
使用 Eloquent ORM
shengyou @ 彰師大資工系學會 (2014.12.07)
階段任務
• 學習 Eloquent ORM 的使用方式,了解
Laravel 操作資料庫的方法
• 學習如何使用 artisan tinker、dd() 等工具
來協助測試 Model 程式碼
使用 Eloquent ORM
什麼是 ORM?
• ORM = Object-relational mapping
• 簡單來說,就是把資料庫裡一筆一筆的資
料變成物件來操作。 些物件透過繼承可
以增加更多的方法,讓資料庫的操作
(CRUD) 更加直覺、方便
為什麼要用 ORM?
• 原本在寫資料庫查詢時,往往需要自行依
照需求 寫 SQL 查詢式,當查詢式變
長、關聯日趨複雜時,很難直覺了解該查
詢式的作用
• 自行處理 SQL 查詢式時,也需確認輸入
的字串是否都有 Escape 以防安全性疑慮
Model 慣例
• Laravel 的相關慣例複習
- 一個 resource 對應到 DB 裡的一個 table
- 一個 model 對應到 table 裡的一個 row
- table 名稱用複數; model 名稱用單數
- 從資料表取出來的東西是 Collection,
可當 陣列(array) 使用
tinker 小幫手
• PHP 本身有內建互動指令 (REPL) 模式,
可用 php -a 進入,可在其中測試程式碼
• tinker 則是 Laravel 提供的 artisan 指令,除
了進入 PHP 的 REPL 模式外,加載 Laravel
所有物件環境,可讓我們在其中測試
Laravel 的程式碼
★ tinker 說明:http://laravel-recipes.com/recipes/280/interacting-with-your-application
artisan tinker
• 進入 PHP 互動模式,並載入 Laravel 環境
- 可以直接在指令模式下操作 Laravel 各元
件,測試程式寫法
- 要結束請用 exit; 指令
• 範例:
$	
  php	
  artisan	
  tinker
[1]	
  >	
  exit;
★ 由於 tinker 相依的 extension pcntl 在 Windows 上沒有實作,因此無
法全功能支援 tinker 功能:http://php.net/manual/en/pcntl.installation.php
dd() 測試工具
• Laravel 內建一個 debug 輔助函式:dd()
- 其實就是把變數丟進 var_dump 後 exit
- 可以在任何地方使用,測試程式碼流
程、邏輯、了解物件內容
• 範例:
$post	
  =	
  Post::find(1);
dd($post);
★ dd() 說明:http://laravel.com/docs/4.2/helpers#miscellaneous
新增資料
• 使用 new 建構式
- 直接使用 new 建構式產生 Model 實體,
再存
• 範例:
$post	
  =	
  new	
  Post;
$post-­‐>title	
  =	
  ‘My	
  Title’;
$post-­‐>save();
新增資料
• create($array);
- 從陣列新增資料,陣列的 key 值自動對
應到資料表的欄位
• 範例:
$post	
  =	
  Post::create($input);
Mass Assignment
• Laravel 的 ORM 可以直接用 Mass
Assignment 的方式直接新增資料,語法簡
潔、快速方便,但有可能會有安全性問題
• 在 generator 產生的 Model 裡,fillable 的
屬性就是在設定 些欄位可以使用 Mass
Assignment 做為防禦手段
★ 官網文件:http://laravel.tw/docs/4.2/eloquent#mass-assignment
Mass Assignment 警示
設定 fillable、guarded
• 在 Model 內設定 fillable 屬性,指定 些欄
位可以透過 Mass Assignment 來寫入/更新
資料
• guarded 則是相反的屬性,設定後可以保
護特定欄位不使用 Mass Assignment
• 範例:
protected	
  $fillable	
  =	
  [‘title’,	
  ‘content’,	
  ‘category_id’];
protected	
  $guarded	
  =	
  [‘id’,	
  ‘password’];
刪除資料
• delete();
- 先取出 Model 實體後,再刪除
• 範例:
$post	
  =	
  Post::find(1);
$post-­‐>delete();
刪除資料
• destroy($id);
- 刪除一筆資料,使用 primary key
• destroy([1, 2, 3]);
- 刪除多筆資料,使用 array 傳值
• destroy(1, 2, 3);
- 刪除多筆資料,使用多參數傳值
更新資料
• save();
• 先取出 Model 實體後,再針對屬性更
新,全部完成後再存
• 範例:
$post	
  =	
  Post::find(1);
$post-­‐>title	
  =	
  ‘My	
  New	
  Title’;
$post-­‐>save();
更新資料
• update($array);
- 從陣列更新資料,陣列的 key 值自動對
應到資料表的欄位
• 範例:
$post	
  =	
  Post::find(1);
$post-­‐>update($input);
查尋資料
• all() // 取出全部資料
• find($id); // 使用 primary key
• where(‘欄位’,‘條件’,‘值’);
• orderBy(‘欄位’,‘排序方式’);
• get(); // 回傳 Collection
• first(); // 回傳 Model
Collection 逐筆取出
• 從 Model 查詢的結果,Eloquent 會回傳一
個 Collection,其行為就像陣列一樣,可
以支援用 foreach 取出資料
• 範例:
$posts	
  =	
  Post::all();	
  //	
  $posts	
  是	
  Collection
foreach($posts	
  as	
  $post)
{
	
  	
  	
  	
  echo	
  $post-­‐>title;	
  //	
  $post	
  是	
  Model
}
特異功能
• paginate($per_page);
- 依設定的筆數在 Query 內加 Limit 語
法,在 view 上可自動支援分頁
• random($num);
- 從 Collection 隨機取出 n 筆資料
更多 ORM 操作方式
• 官方文件
- http://laravel.tw/docs/4.2/eloquent#insert-
update-delete
• Collection 用法
- http://jenssegers.be/blog/51/laravel-
collections-are-awesome
存 點
• 試著把現在已經可以運作的程式碼加入版
本控制內
• 流程提醒:
- working directory > staging area > commit
資料表關聯
資料表間的關聯
Model 資料關聯
• 在 Model 內定義其與其他 Model 間的關聯
類型 Eloquent 就會自動將 個關聯變成物
件間的屬性,而無需自行下 SQL 語法
• 範例:
public	
  function	
  {另一個	
  Model	
  的名稱(單/複數)}()
{
	
  	
  	
  	
  return	
  $this-­‐>{關聯類型}(‘{Model	
  名稱}’);
}
關聯類型
• belongsTo(‘Model’);
- 歸屬於另一個 Model
• hasMany(‘Model’);
- 擁有多個 Model
★ 關聯類型詳細說明:http://laravel.tw/docs/4.2/eloquent#relationships
資料關聯設定
Post 關聯設定
資料關聯設定
Category 關聯設定
資料關聯設定
Comment 關聯設定
Model 內取用關聯
• 把資料間的關聯用物件的方式去思考,即
可透過 Model 的屬性值去取得關聯後的資
料內容
• 範例:
$post	
  =	
  Post::find(1);
echo	
  $post-­‐>category-­‐>name;
foreach($post-­‐>comments	
  as	
  $comment)
{
	
  	
  	
  	
  echo	
  $comment-­‐>content;
}
存 點
• 試著把現在已經可以運作的程式碼加入版
本控制內
• 流程提醒:
- working directory > staging area > commit
階段檢查表
• 在 routes.php 內測試 Eloquent ORM 用法
的 get request 規則數個
• 三個 Model 內都有對應的關聯邏輯設定
問與答
學員可開始練習、實作
單元小結
• 在 個單元裡,我們說明學習如何使用
Eloquent ORM 進行資料操作,並從 tinker
及 route 內了解操作結果
• 下一個單元,我們將學習 Laravel 的流程
處理及 Route 設定

More Related Content

What's hot

Migrations 與 Schema 操作
Migrations 與 Schema 操作Migrations 與 Schema 操作
Migrations 與 Schema 操作
Shengyou Fan
 
Laravel - 系統全攻略
Laravel - 系統全攻略Laravel - 系統全攻略
Laravel - 系統全攻略
Vincent Chi
 
整合 Open ID
整合 Open ID整合 Open ID
整合 Open ID
Shengyou Fan
 
CRUD 綜合運用
CRUD 綜合運用CRUD 綜合運用
CRUD 綜合運用
Shengyou Fan
 
開發環境建置
開發環境建置開發環境建置
開發環境建置
Shengyou Fan
 
工作坊總結
工作坊總結工作坊總結
工作坊總結
Shengyou Fan
 
CRUD 綜合應用
CRUD 綜合應用CRUD 綜合應用
CRUD 綜合應用
Shengyou Fan
 
Model 設定與 Seeding
Model 設定與 SeedingModel 設定與 Seeding
Model 設定與 Seeding
Shengyou Fan
 
PHP 語法基礎與物件導向
PHP 語法基礎與物件導向PHP 語法基礎與物件導向
PHP 語法基礎與物件導向
Shengyou Fan
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
Shengyou Fan
 
HTML 語法教學
HTML 語法教學HTML 語法教學
HTML 語法教學
Shengyou Fan
 
Package 安裝與使用
Package 安裝與使用Package 安裝與使用
Package 安裝與使用
Shengyou Fan
 
使用 Controller
使用 Controller使用 Controller
使用 Controller
Shengyou Fan
 
Route 路由控制
Route 路由控制Route 路由控制
Route 路由控制
Shengyou Fan
 
Model 設定與 Seeding
Model 設定與 SeedingModel 設定與 Seeding
Model 設定與 Seeding
Shengyou Fan
 
驗證與訊息
驗證與訊息驗證與訊息
驗證與訊息
Shengyou Fan
 
Composer 套件管理
Composer 套件管理Composer 套件管理
Composer 套件管理
Shengyou Fan
 
開發環境建置
開發環境建置開發環境建置
開發環境建置
Shengyou Fan
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
Shengyou Fan
 
Route路由控制
Route路由控制Route路由控制
Route路由控制
Shengyou Fan
 

What's hot (20)

Migrations 與 Schema 操作
Migrations 與 Schema 操作Migrations 與 Schema 操作
Migrations 與 Schema 操作
 
Laravel - 系統全攻略
Laravel - 系統全攻略Laravel - 系統全攻略
Laravel - 系統全攻略
 
整合 Open ID
整合 Open ID整合 Open ID
整合 Open ID
 
CRUD 綜合運用
CRUD 綜合運用CRUD 綜合運用
CRUD 綜合運用
 
開發環境建置
開發環境建置開發環境建置
開發環境建置
 
工作坊總結
工作坊總結工作坊總結
工作坊總結
 
CRUD 綜合應用
CRUD 綜合應用CRUD 綜合應用
CRUD 綜合應用
 
Model 設定與 Seeding
Model 設定與 SeedingModel 設定與 Seeding
Model 設定與 Seeding
 
PHP 語法基礎與物件導向
PHP 語法基礎與物件導向PHP 語法基礎與物件導向
PHP 語法基礎與物件導向
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
 
HTML 語法教學
HTML 語法教學HTML 語法教學
HTML 語法教學
 
Package 安裝與使用
Package 安裝與使用Package 安裝與使用
Package 安裝與使用
 
使用 Controller
使用 Controller使用 Controller
使用 Controller
 
Route 路由控制
Route 路由控制Route 路由控制
Route 路由控制
 
Model 設定與 Seeding
Model 設定與 SeedingModel 設定與 Seeding
Model 設定與 Seeding
 
驗證與訊息
驗證與訊息驗證與訊息
驗證與訊息
 
Composer 套件管理
Composer 套件管理Composer 套件管理
Composer 套件管理
 
開發環境建置
開發環境建置開發環境建置
開發環境建置
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
 
Route路由控制
Route路由控制Route路由控制
Route路由控制
 

Viewers also liked

專案啟動與設定
專案啟動與設定專案啟動與設定
專案啟動與設定
Shengyou Fan
 
Route 機制
Route 機制Route 機制
Route 機制
Shengyou Fan
 
開發環境建置
開發環境建置開發環境建置
開發環境建置
Shengyou Fan
 
課程簡介
課程簡介課程簡介
課程簡介
Shengyou Fan
 
使用者認證
使用者認證使用者認證
使用者認證
Shengyou Fan
 
應用程式佈署
應用程式佈署應用程式佈署
應用程式佈署
Shengyou Fan
 
啟動 Laravel 與環境設定
啟動 Laravel 與環境設定啟動 Laravel 與環境設定
啟動 Laravel 與環境設定
Shengyou Fan
 
使用 Controller
使用 Controller使用 Controller
使用 Controller
Shengyou Fan
 
應用程式部署
應用程式部署應用程式部署
應用程式部署
Shengyou Fan
 
工作坊簡介
工作坊簡介工作坊簡介
工作坊簡介
Shengyou Fan
 
專案啟動與環境設定
專案啟動與環境設定專案啟動與環境設定
專案啟動與環境設定
Shengyou Fan
 
工作坊總結
工作坊總結工作坊總結
工作坊總結
Shengyou Fan
 

Viewers also liked (12)

專案啟動與設定
專案啟動與設定專案啟動與設定
專案啟動與設定
 
Route 機制
Route 機制Route 機制
Route 機制
 
開發環境建置
開發環境建置開發環境建置
開發環境建置
 
課程簡介
課程簡介課程簡介
課程簡介
 
使用者認證
使用者認證使用者認證
使用者認證
 
應用程式佈署
應用程式佈署應用程式佈署
應用程式佈署
 
啟動 Laravel 與環境設定
啟動 Laravel 與環境設定啟動 Laravel 與環境設定
啟動 Laravel 與環境設定
 
使用 Controller
使用 Controller使用 Controller
使用 Controller
 
應用程式部署
應用程式部署應用程式部署
應用程式部署
 
工作坊簡介
工作坊簡介工作坊簡介
工作坊簡介
 
專案啟動與環境設定
專案啟動與環境設定專案啟動與環境設定
專案啟動與環境設定
 
工作坊總結
工作坊總結工作坊總結
工作坊總結
 

Similar to 使用 Eloquent ORM

Power shell – object 篇
Power shell – object 篇Power shell – object 篇
Power shell – object 篇LearningTech
 
Python面向对象开发基础篇
Python面向对象开发基础篇Python面向对象开发基础篇
Python面向对象开发基础篇modou li
 
2, object oriented programming
2, object oriented programming2, object oriented programming
2, object oriented programming
ted-xu
 
My scala learning note for TWJUG
My scala learning note for TWJUGMy scala learning note for TWJUG
My scala learning note for TWJUG
Ian Tsai
 
搜索技术分享
搜索技术分享搜索技术分享
搜索技术分享endless_yy
 
從模組到類別
從模組到類別從模組到類別
從模組到類別
Justin Lin
 
Java SE 7 技術手冊投影片第 12 章 - 通用API
Java SE 7 技術手冊投影片第 12 章  - 通用APIJava SE 7 技術手冊投影片第 12 章  - 通用API
Java SE 7 技術手冊投影片第 12 章 - 通用API
Justin Lin
 
Pytables
PytablesPytables
Pytables
gowell
 
5, initialization & cleanup
5, initialization & cleanup5, initialization & cleanup
5, initialization & cleanup
ted-xu
 
02 Objective-C
02 Objective-C02 Objective-C
02 Objective-C
Tom Fan
 
Java SE 7 技術手冊投影片第 04 章 - 認識物件
Java SE 7 技術手冊投影片第 04 章 - 認識物件Java SE 7 技術手冊投影片第 04 章 - 認識物件
Java SE 7 技術手冊投影片第 04 章 - 認識物件
Justin Lin
 
Web scraping入門1
Web scraping入門1Web scraping入門1
Web scraping入門1兆欽 丘
 
Java SE 8 技術手冊第 4 章 - 認識物件
Java SE 8 技術手冊第 4 章 - 認識物件Java SE 8 技術手冊第 4 章 - 認識物件
Java SE 8 技術手冊第 4 章 - 認識物件
Justin Lin
 
Javascript 培训第四节 深入了解
Javascript 培训第四节 深入了解Javascript 培训第四节 深入了解
Javascript 培训第四节 深入了解liziqi7
 
Apache solr教學介紹 20150501
Apache solr教學介紹 20150501Apache solr教學介紹 20150501
Apache solr教學介紹 20150501
Yung-Ting Chen
 
型態與運算子
型態與運算子型態與運算子
型態與運算子
Justin Lin
 
Ruby Rails 老司機帶飛
Ruby Rails 老司機帶飛Ruby Rails 老司機帶飛
Ruby Rails 老司機帶飛
Wen-Tien Chang
 
使用 laravel 的前與後
使用 laravel 的前與後使用 laravel 的前與後
使用 laravel 的前與後
Shengyou Fan
 
Php study.20130110
Php study.20130110Php study.20130110
Php study.20130110
bngoogle
 

Similar to 使用 Eloquent ORM (20)

Power shell – object 篇
Power shell – object 篇Power shell – object 篇
Power shell – object 篇
 
Python面向对象开发基础篇
Python面向对象开发基础篇Python面向对象开发基础篇
Python面向对象开发基础篇
 
2, object oriented programming
2, object oriented programming2, object oriented programming
2, object oriented programming
 
My scala learning note for TWJUG
My scala learning note for TWJUGMy scala learning note for TWJUG
My scala learning note for TWJUG
 
搜索技术分享
搜索技术分享搜索技术分享
搜索技术分享
 
從模組到類別
從模組到類別從模組到類別
從模組到類別
 
Java SE 7 技術手冊投影片第 12 章 - 通用API
Java SE 7 技術手冊投影片第 12 章  - 通用APIJava SE 7 技術手冊投影片第 12 章  - 通用API
Java SE 7 技術手冊投影片第 12 章 - 通用API
 
Pytables
PytablesPytables
Pytables
 
5, initialization & cleanup
5, initialization & cleanup5, initialization & cleanup
5, initialization & cleanup
 
02 Objective-C
02 Objective-C02 Objective-C
02 Objective-C
 
Java SE 7 技術手冊投影片第 04 章 - 認識物件
Java SE 7 技術手冊投影片第 04 章 - 認識物件Java SE 7 技術手冊投影片第 04 章 - 認識物件
Java SE 7 技術手冊投影片第 04 章 - 認識物件
 
Web scraping入門1
Web scraping入門1Web scraping入門1
Web scraping入門1
 
Java SE 8 技術手冊第 4 章 - 認識物件
Java SE 8 技術手冊第 4 章 - 認識物件Java SE 8 技術手冊第 4 章 - 認識物件
Java SE 8 技術手冊第 4 章 - 認識物件
 
Javascript 培训第四节 深入了解
Javascript 培训第四节 深入了解Javascript 培训第四节 深入了解
Javascript 培训第四节 深入了解
 
Apache solr教學介紹 20150501
Apache solr教學介紹 20150501Apache solr教學介紹 20150501
Apache solr教學介紹 20150501
 
型態與運算子
型態與運算子型態與運算子
型態與運算子
 
Ruby Rails 老司機帶飛
Ruby Rails 老司機帶飛Ruby Rails 老司機帶飛
Ruby Rails 老司機帶飛
 
使用 laravel 的前與後
使用 laravel 的前與後使用 laravel 的前與後
使用 laravel 的前與後
 
Excel VBA
Excel VBAExcel VBA
Excel VBA
 
Php study.20130110
Php study.20130110Php study.20130110
Php study.20130110
 

More from Shengyou Fan

[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
Shengyou Fan
 
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
Shengyou Fan
 
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
Shengyou Fan
 
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
Shengyou Fan
 
How I make a podcast website using serverless technology in 2023
How I make a podcast website using serverless technology in 2023How I make a podcast website using serverless technology in 2023
How I make a podcast website using serverless technology in 2023
Shengyou Fan
 
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
Shengyou Fan
 
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
Shengyou Fan
 
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
Shengyou Fan
 
Using the Exposed SQL Framework to Manage Your Database
Using the Exposed SQL Framework to Manage Your DatabaseUsing the Exposed SQL Framework to Manage Your Database
Using the Exposed SQL Framework to Manage Your Database
Shengyou Fan
 
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
Shengyou Fan
 
[COSCUP 2022] Kotlin Collection 遊樂園
[COSCUP 2022] Kotlin Collection 遊樂園[COSCUP 2022] Kotlin Collection 遊樂園
[COSCUP 2022] Kotlin Collection 遊樂園
Shengyou Fan
 
初探 Kotlin Multiplatform
初探 Kotlin Multiplatform初探 Kotlin Multiplatform
初探 Kotlin Multiplatform
Shengyou Fan
 
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
Shengyou Fan
 
[PHP 也有 Day #64] PHP 升級指南
[PHP 也有 Day #64] PHP 升級指南[PHP 也有 Day #64] PHP 升級指南
[PHP 也有 Day #64] PHP 升級指南
Shengyou Fan
 
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
Shengyou Fan
 
Composer 經典食譜
Composer 經典食譜Composer 經典食譜
Composer 經典食譜
Shengyou Fan
 
老派浪漫:用 Kotlin 寫 Command Line 工具
老派浪漫:用 Kotlin 寫 Command Line 工具老派浪漫:用 Kotlin 寫 Command Line 工具
老派浪漫:用 Kotlin 寫 Command Line 工具
Shengyou Fan
 
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
Shengyou Fan
 
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
Shengyou Fan
 
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
Shengyou Fan
 

More from Shengyou Fan (20)

[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
 
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
 
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
 
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
 
How I make a podcast website using serverless technology in 2023
How I make a podcast website using serverless technology in 2023How I make a podcast website using serverless technology in 2023
How I make a podcast website using serverless technology in 2023
 
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
 
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
 
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
 
Using the Exposed SQL Framework to Manage Your Database
Using the Exposed SQL Framework to Manage Your DatabaseUsing the Exposed SQL Framework to Manage Your Database
Using the Exposed SQL Framework to Manage Your Database
 
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
 
[COSCUP 2022] Kotlin Collection 遊樂園
[COSCUP 2022] Kotlin Collection 遊樂園[COSCUP 2022] Kotlin Collection 遊樂園
[COSCUP 2022] Kotlin Collection 遊樂園
 
初探 Kotlin Multiplatform
初探 Kotlin Multiplatform初探 Kotlin Multiplatform
初探 Kotlin Multiplatform
 
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
 
[PHP 也有 Day #64] PHP 升級指南
[PHP 也有 Day #64] PHP 升級指南[PHP 也有 Day #64] PHP 升級指南
[PHP 也有 Day #64] PHP 升級指南
 
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
 
Composer 經典食譜
Composer 經典食譜Composer 經典食譜
Composer 經典食譜
 
老派浪漫:用 Kotlin 寫 Command Line 工具
老派浪漫:用 Kotlin 寫 Command Line 工具老派浪漫:用 Kotlin 寫 Command Line 工具
老派浪漫:用 Kotlin 寫 Command Line 工具
 
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
 
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
 
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
 

使用 Eloquent ORM