SlideShare a Scribd company logo
1 of 53
Download to read offline
開發環境建置
范聖佑 Shengyou Fan
新北市樹林國⼩小 (2015/07/06)
適
⽤用
5.1
版
單元主題
• 了解 PHP 網路應⽤用程式的運作原理
• 了解 Laravel 開發環境需求
• 安裝/設定 wagon 並驗證環境建置成功
• 開發⼯工具簡介
程式運作原理	
  
與開發環境需求
網路應⽤用程式運作原理
HTTP 伺服器
(apache / nginx)
資料庫
(MySQL)
PHP 直譯器
(網路應⽤用程式)
網路主機作業系統
使⽤用者瀏覽
靜態檔案
Laravel 5.1 開發環境需求
• HTTP 伺服器 (需⽀支援 rewrite 才可使⽤用 Pretty URL)
• PHP 最低環境需求
- PHP >= 5.5.9 (官⽅方 Homestead 使⽤用 5.6)
- OpenSSL PHP Extension
- Mbstring PHP Extension
- Tokenizer PHP Extension
• 資料庫 (⽀支援多種資料庫系統)
★ 參考⽂文件:http://laravel.com/docs/5.1/installation#installation
環境建置⽅方案
• 依個⼈人喜好及需求有多種環境建置⽅方式:
- 使⽤用官⽅方提供的虛擬機器 Homestead
- 使⽤用多合⼀一組合包 (*AMP)
- 使⽤用 wagon 可攜式安裝包 (Windows-only)
- ⾃自⾏行⼿手動各別安裝
★ wagon 的故事:https://www.youtube.com/watch?v=O7ynMSd0Tlo
wagon 可攜式懶⼈人包
• 免安裝/設定 cmder,還帶⼀一堆 plugins
• 免安裝/設定 UwAmp (已更新⾄至 PHP 5.6.10)
• 免安裝 Composer 及 Global Packages
• 獨⽴立的環境變數、port
• 指令列 git 版本控制系統
• 已預設好 Laravel 4.2 ~ 5.1 各版本
• 依需求可再加載 Editor/IDE、圖型化 git 軟體…
安裝/設定⽅方式
• 請先⾄至⼯工作坊教學資源下載區下載軟體組合包
• 解壓縮檔案,並把 wagon 放到 C:
• 下載 vcredist 資料夾,安裝Visual C++ 可轉發套件
• 打開 wagon 資料夾
- 執⾏行 cmder/Cmder.exe 啟動指令列⼯工具
- 輸⼊入 php	
  -­‐v 確認 PHP 版本
- 輸⼊入 composer 確認 Composer 可運作
- 執⾏行 uwamp/UwAmp.exe 啟動 UwAmp 確認可運作
開發⼯工具簡介
開發流程及⼯工具
網站預覽
運⾏行環境
版本控制
SourceTree
google chrome
UwAmp
cmder
指令執⾏行
原始碼撰寫及系統開發
Sublime Text
原始碼撰寫 composer
套件管理
Adminer
資料庫操作
cmder 指令列⼯工具
cmder 指令列⼯工具
• 什麼是指令列?
- ⼀一種操作作業系統核⼼心的⽅方式,透過鍵盤輸⼊入指令
的⽅方式完成。早期還沒有圖型化介⾯面時,都是⽤用這
種⽅方式操作電腦
- 在 Linux 主機上,由於⼤大多沒有安裝圖型化介⾯面,
因此都需要透過指令列來遠端操作;⽽而 Laravel 本⾝身
的 artisan 也是指令列⼯工具
• cmder ⼜又是什麼?
- Windows 內建的命令提⽰示字元並不好⽤用,網路上的
神⼈人做了⼀一包更好⽤用的⼯工具來取代它
使⽤用者與系統互動的⽅方式
★ 圖表繪製參考:https://pt.opensuse.org/Conceitos
終端機
(Shell)
應⽤用程式
(GUI Application)
作業系統核⼼心
(Kernel)
電腦硬體
(Hardware)
使⽤用者
(User)
cmder 操作簡介
cmder 操作畫⾯面
從鍵盤輸⼊入指令,輸⼊入完按 Enter 鍵
當前⼯工作⺫⽬目錄
Shell 常⽤用指令
• 列出檔案清單 - ls
• 切換⼯工作⺫⽬目錄 - cd
• 建⽴立資料夾 - mkdir
• 刪除檔案或資料夾 - rm
• 移動/重新命名檔案 - mv
• 清空螢幕 - clear
ls	
  [opt]	
  {path}
• List = 列出檔案清單
- [ -a ] 列出所有(包含隱藏)檔案
- [ -l ] 以列表的⽅方式呈現
• 範例:
$	
  ls	
  -­‐la
cd	
  {path}
• Change Directory = 切換⼯工作⺫⽬目錄
- { . } 當前⺫⽬目錄
- { .. } 回到上⼀一層⺫⽬目錄
• 範例:
$	
  cd	
  ..	
  
$	
  cd	
  Projects/blog
mkdir	
  {directory}
• Make Directory = 建⽴立資料夾
• 範例:
$	
  mkdir	
  blog	
  
$	
  mkdir	
  my_project
rm	
  [opt]	
  {file/dir}
• Remove = 刪除檔案
- [ -r ] 刪除資料夾
- [ -f ] 強制刪除 (不詢問)
• 範例:
$	
  rm	
  test.txt	
  
$	
  rm	
  -­‐r	
  test_folder	
  
$	
  rm	
  -­‐rf	
  *.txt
mv	
  {from}	
  {to}
• Move = 移動/重新命名檔案
- { from } 來源路徑
- { to } ⺫⽬目標路徑
• 範例:
$	
  mv	
  test.txt	
  ../	
  
$	
  mv	
  test.txt	
  test.html
clear
• clear = 清空螢幕
- 當指令打太多,想要有個乾淨的螢幕時可以使⽤用的
指令
• 範例:
$	
  clear
⼩小技巧
• ⾃自動補完
- 在輸⼊入指令時,若⼀一時忘記指令的全名時,可按鍵
盤 Tab 鍵數次,若該指令在系統有設定提⽰示時,會
出現對應的提⽰示,再依提⽰示將指令補完即可送出
UwAmp 多合⼀一組合包
UwAmp 多合⼀一組合包
• 什麼是多合⼀一組合包?
- 在 Windows 上為⽅方便建置 Apache、PHP、MySQL
開發環境⽽而出的多合⼀一組合包,通常以 AMP 結尾
- UwAmp 具備 GUI 圖型介⾯面可協助我們快速的調校
Apache 設定、啟動/關閉 Server、下載/更新 PHP 版
本
wagon 裡的 UwAmp 預設
• 預設 Ports:
- http 8000
• PHP 版本:
- 5.6.10
• 預設 Document Root:
- {WAGON_ROOT}uwampwwwdefault
UwAmp 啟動與關閉
AMP 各項
偏好設定
啟動/停⽌止
HTTP 主機
Virtual Server 設定
設定根⺫⽬目錄
設定port
Apache Modules 設定
開啟 rewrite 模組
設定 PHP extensions
開啟 Laravel 所需
的 PHP extensions
瀏覽 UwAmp ⾸首⾴頁
http://localhost:8000/
Sublime Text 3
⽤用 Editor 還是 IDE?
• 在編寫 PHP/Laravel 原始碼時,我們需要原始碼編輯
軟體來協助我們完成這項⼯工作
• ⼀一般⽽而⾔言,Editor 僅提供單純的⽂文字編輯功能,若需
要更多針對程式語⾔言的進階功能,往往要透過外掛
來完成 (推薦使⽤用 Sublime Text 3)
• 相較於 Editor,IDE 提供更多的整合功能,在編輯原
始碼時,可以有較多的輔助⼯工具可協助我們不出錯
(推薦使⽤用 Netbean 或 Eclipse PDT)
• 在本⼯工作坊裡,可以⾃自由選擇慣⽤用的編輯器,但在
⽰示範過程中,會以 Sublime Text 3 作為⽰示範⽤用編輯器
Sublime Text 3 主畫⾯面
推薦安裝的外掛程式
• Sublime Text 3 ⽀支援透過外掛程式來增強原本的編輯
功能
• ⺫⽬目前已有眾多外掛可增強 Sublime Text 3 在編輯 PHP/
Laravel 時的功能
• 由 Laravel 台灣 社群共筆的「給 artisan 的 Sublime
Text 指南」上,提供完整的 Sublime Tex 3 外掛清單
可供參考
-­‐ https://laraveltw.hackpad.com/-­‐artisan-­‐Sublime-­‐
Text-­‐-­‐Ft2fn8yb40l	
  
Adminer 資料庫管理⼯工具
MySQL GUI
• 資料庫本⾝身是⼀一台主機 (server),要操作資料庫的內
容,我們必需透過終端機 (client) 連線後,遠端操作
• 為了⽅方便視覺化地操作 MySQL 資料庫,可搭配如
Adminer 這種圖型化操作介⾯面的軟體
• Adminer 是⽤用 PHP 撰寫的網路應⽤用程式,專⾨門⽤用於
操作 MySQL 資料庫使⽤用。且 Adminer ⽐比知名的
phpMyAdmin 更為輕便,純英⽂文 MySQL 版僅佔 189
kb,且經過整併壓縮只有⼀一個 php 檔案⽽而已
• 在 wagon 裡已內載 Adminer,可直接在瀏覽器裡使
⽤用它來操作 MySQL 資料庫
Adminer 登⼊入畫⾯面
http://localhost:8000/adminer
wagon 的 MySQL 預設值
• 預設 Ports:
- mysql 3306
• MySQL 版本:
- 5.6.20
• 預設帳號/密碼
- 帳號:root
- 密碼:root
Adminer 主畫⾯面
若發⽣生 port 衝突時
• 若因為本機已有其他的 MySQL ⽽而佔⽤用 3306 port
時,可修改 wagon 的 MySQL port 設定
• 設定完成後,記得重新啟動 uwamp 以確認新的設定
被套⽤用。重啟的過程中若有尋問是否解除防⽕火牆封
鎖時,請按確認解除
• 若是修改 wagon 的 port 設定,在後續使⽤用 Laravel
時,也要記得⼀一併調整 port 設定
修改 wagonuwampbindatabasemysql-5.6.20my_uwamp.ini 的 port
[client]	
  
#password	
  =	
  your_password	
  
port	
   	
   =	
  3306	
  
socket	
  	
   =	
  /tmp/mysql.sock
[mysqld]	
  
default-­‐storage-­‐engine	
  =	
  InnoDB	
  
port	
   	
   =	
  3306	
  
socket	
  	
   =	
  /tmp/mysql.sock
登⼊入時指定 port
伺服器輸⼊入	
  
localhost:port
SourceTree 版本控制⼯工具
版本控制系統
• 就像打電動有存檔點⼀一樣。寫程式除了在每個檔案
修改完存檔外,每寫完⼀一個功能、完成⼀一個階段性
任務時,可以將這個階段所有變更的檔案儲存成⼀一
個版本
• 透過版本控制系統,除了可以知道每⼀一個階段完成
哪些功能、修改了哪些檔案外,也可以在多⼈人協同
合作時,彼此交換檔案也不會發⽣生將彼此的⼯工作成
果覆蓋的問題
• 本次⼯工作坊使⽤用的版本控制系統稱做 git,是⺫⽬目前開
放原始碼界主流的版本控制系統。為⽅方便操作,將
搭配 SourceTree 圖型介⾯面軟體來操作
設定 SourceTree
• 在使⽤用 SourceTree 前,先設定 git 的識別資料,這樣
⽇日後在儲存版本時,git 才有辦法紀錄是哪個使⽤用者
儲存的
$	
  git	
  config	
  -­‐-­‐global	
  user.name	
  "{請寫⾃自⼰己的名字}"	
  
$	
  git	
  config	
  -­‐-­‐global	
  user.email	
  "{請改成⾃自⼰己的	
  email	
  }"
開啟書籤管理
操作介⾯面
SourceTree 授權提⽰示
• SourceTree 雖可免費使⽤用,但需註冊才可以取得免
費使⽤用的授權,若之後跳出到期提醒,請先依以下
步驟取得授權後,再匯⼊入⾄至 SourceTree
取得 SourceTree 授權
• 先⾄至 https://my.atlassian.com/ 註冊帳號
• 註冊完畢後,下載授權
匯⼊入 SourceTree 授權
1. 匯⼊入授權
2. 指向剛下載好的授權檔
3. 設定完關閉
⼩小提醒
• ⼯工作坊每⼀一個階段都會將該階段結果輸⼊入⾄至儲存庫
內,當各階段完成後,可以瀏覽各階段程式碼的變
更
• 每當看到投影⽚片裡的存檔點時,請記得在步驟將程
式碼送進版本控制系統裡儲存
單元總結
• 在這個單元裡我們學到了些什麼?
- PHP 網路應⽤用程式的運作原理
- Laravel 的最低環境需求
- 使⽤用 wagon 建置可攜式的 Laravel 開發環境
- 了解開發⼯工具的使⽤用⽅方式
Q & A
歡迎提問討論

More Related Content

What's hot

What's hot (20)

專案啟動與環境設定
專案啟動與環境設定專案啟動與環境設定
專案啟動與環境設定
 
Model 設定與 Seeding
Model 設定與 SeedingModel 設定與 Seeding
Model 設定與 Seeding
 
Laravel - 系統全攻略
Laravel - 系統全攻略Laravel - 系統全攻略
Laravel - 系統全攻略
 
Eloquent ORM
Eloquent ORMEloquent ORM
Eloquent ORM
 
PHP 語法基礎與物件導向
PHP 語法基礎與物件導向PHP 語法基礎與物件導向
PHP 語法基礎與物件導向
 
Route路由控制
Route路由控制Route路由控制
Route路由控制
 
Route 路由控制
Route 路由控制Route 路由控制
Route 路由控制
 
使用者認證
使用者認證使用者認證
使用者認證
 
使用 Controller
使用 Controller使用 Controller
使用 Controller
 
開發環境建置
開發環境建置開發環境建置
開發環境建置
 
Laravel - 系統全攻略(續)
Laravel - 系統全攻略(續)Laravel - 系統全攻略(續)
Laravel - 系統全攻略(續)
 
使用 laravel 的前與後
使用 laravel 的前與後使用 laravel 的前與後
使用 laravel 的前與後
 
課程簡介
課程簡介課程簡介
課程簡介
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
 
使用 Controller
使用 Controller使用 Controller
使用 Controller
 
Composer 套件管理
Composer 套件管理Composer 套件管理
Composer 套件管理
 
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
 
驗證與訊息
驗證與訊息驗證與訊息
驗證與訊息
 
工作坊簡介
工作坊簡介工作坊簡介
工作坊簡介
 
Package安裝與使用
Package安裝與使用Package安裝與使用
Package安裝與使用
 

Viewers also liked

Viewers also liked (17)

Migrations 與 Schema 操作
Migrations 與 Schema 操作Migrations 與 Schema 操作
Migrations 與 Schema 操作
 
工作坊簡介
工作坊簡介工作坊簡介
工作坊簡介
 
CRUD 綜合運用
CRUD 綜合運用CRUD 綜合運用
CRUD 綜合運用
 
整合 Open ID
整合 Open ID整合 Open ID
整合 Open ID
 
工作坊總結
工作坊總結工作坊總結
工作坊總結
 
REST to RESTful Web Service
REST to RESTful Web ServiceREST to RESTful Web Service
REST to RESTful Web Service
 
成為全能 php 攻城獅
成為全能 php 攻城獅成為全能 php 攻城獅
成為全能 php 攻城獅
 
wagon - 免安裝可攜的 Laravel 開發環境
wagon - 免安裝可攜的 Laravel 開發環境wagon - 免安裝可攜的 Laravel 開發環境
wagon - 免安裝可攜的 Laravel 開發環境
 
[PHPConf Taiwan 2015] 跟著 Laravel 5.1 一起成為更好的 PHP 開發者
[PHPConf Taiwan 2015] 跟著 Laravel 5.1 一起成為更好的 PHP 開發者[PHPConf Taiwan 2015] 跟著 Laravel 5.1 一起成為更好的 PHP 開發者
[PHPConf Taiwan 2015] 跟著 Laravel 5.1 一起成為更好的 PHP 開發者
 
選一個框架當好朋友,讓您成為開心攻城獅
選一個框架當好朋友,讓您成為開心攻城獅選一個框架當好朋友,讓您成為開心攻城獅
選一個框架當好朋友,讓您成為開心攻城獅
 
[Modern Web Conf 2015] 給 PHP 開發者的 Composer 錦囊
[Modern Web Conf 2015] 給 PHP 開發者的 Composer 錦囊[Modern Web Conf 2015] 給 PHP 開發者的 Composer 錦囊
[Modern Web Conf 2015] 給 PHP 開發者的 Composer 錦囊
 
DevOps叢林裡的小隊游擊戰術 (@ iThome DevOps 2015)
DevOps叢林裡的小隊游擊戰術 (@ iThome DevOps 2015)DevOps叢林裡的小隊游擊戰術 (@ iThome DevOps 2015)
DevOps叢林裡的小隊游擊戰術 (@ iThome DevOps 2015)
 
DevOps:建造開發維運的跨界之橋 (@ C.C. Agile #37)
DevOps:建造開發維運的跨界之橋 (@ C.C. Agile #37)DevOps:建造開發維運的跨界之橋 (@ C.C. Agile #37)
DevOps:建造開發維運的跨界之橋 (@ C.C. Agile #37)
 
Route 機制
Route 機制Route 機制
Route 機制
 
Model & Seeding整合
Model & Seeding整合Model & Seeding整合
Model & Seeding整合
 
CRUD 綜合應用
CRUD 綜合應用CRUD 綜合應用
CRUD 綜合應用
 
應用程式部署
應用程式部署應用程式部署
應用程式部署
 

Similar to 開發環境建置

lua & ngx_lua 的介绍与应用
lua & ngx_lua 的介绍与应用lua & ngx_lua 的介绍与应用
lua & ngx_lua 的介绍与应用
hugo
 
Mysql proxy cluster
Mysql proxy clusterMysql proxy cluster
Mysql proxy cluster
Yiwei Ma
 
Bypat博客出品-服务器运维集群方法总结
Bypat博客出品-服务器运维集群方法总结Bypat博客出品-服务器运维集群方法总结
Bypat博客出品-服务器运维集群方法总结
redhat9
 
Bypat博客出品-服务器运维集群方法总结3
Bypat博客出品-服务器运维集群方法总结3Bypat博客出品-服务器运维集群方法总结3
Bypat博客出品-服务器运维集群方法总结3
redhat9
 

Similar to 開發環境建置 (20)

開發流程與工具介紹
開發流程與工具介紹開發流程與工具介紹
開發流程與工具介紹
 
Schema & Migration操作
Schema & Migration操作Schema & Migration操作
Schema & Migration操作
 
Migrations 與 Schema操作
Migrations 與 Schema操作Migrations 與 Schema操作
Migrations 與 Schema操作
 
lua & ngx_lua 的介绍与应用
lua & ngx_lua 的介绍与应用lua & ngx_lua 的介绍与应用
lua & ngx_lua 的介绍与应用
 
Bypat博客出品-服务器运维集群方法总结2
Bypat博客出品-服务器运维集群方法总结2Bypat博客出品-服务器运维集群方法总结2
Bypat博客出品-服务器运维集群方法总结2
 
Mysql proxy cluster
Mysql proxy clusterMysql proxy cluster
Mysql proxy cluster
 
SQL Server 資料庫版本控管
SQL Server 資料庫版本控管SQL Server 資料庫版本控管
SQL Server 資料庫版本控管
 
Bypat博客出品-服务器运维集群方法总结
Bypat博客出品-服务器运维集群方法总结Bypat博客出品-服务器运维集群方法总结
Bypat博客出品-服务器运维集群方法总结
 
云梯的多Namenode和跨机房之路
云梯的多Namenode和跨机房之路云梯的多Namenode和跨机房之路
云梯的多Namenode和跨机房之路
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
 
Cloudstack dev/user sharing
Cloudstack dev/user sharingCloudstack dev/user sharing
Cloudstack dev/user sharing
 
2, OCP - installing and creating a database
2, OCP - installing and creating a database2, OCP - installing and creating a database
2, OCP - installing and creating a database
 
8, lamp
8, lamp8, lamp
8, lamp
 
Servlet & JSP 教學手冊第二版 - 第 2 章:撰寫與設定 Servlet
Servlet & JSP 教學手冊第二版 - 第 2 章:撰寫與設定 ServletServlet & JSP 教學手冊第二版 - 第 2 章:撰寫與設定 Servlet
Servlet & JSP 教學手冊第二版 - 第 2 章:撰寫與設定 Servlet
 
Why use MySQL
Why use MySQLWhy use MySQL
Why use MySQL
 
Nosql三步曲
Nosql三步曲Nosql三步曲
Nosql三步曲
 
Bypat博客出品-服务器运维集群方法总结3
Bypat博客出品-服务器运维集群方法总结3Bypat博客出品-服务器运维集群方法总结3
Bypat博客出品-服务器运维集群方法总结3
 
開發環境建置
開發環境建置開發環境建置
開發環境建置
 
FHIR Server 安裝與使用
FHIR Server 安裝與使用FHIR Server 安裝與使用
FHIR Server 安裝與使用
 
高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践
 

More from 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
 

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
 

開發環境建置