iT邦幫忙

鐵人檔案

2023 iThome 鐵人賽
回列表
DevOps

嘿,稍等一下!別急著開發功能,先來打造 Walking Skeleton 吧! 系列

在這個高速發展的時代,我們常常急於開發新功能,但有時候卻忽略了建立穩固的基礎結構。這個系列文將帶你深入探索 Walking Skeleton 的概念,這是一種最小可行的產品架構,能夠讓你快速建立起測試、部署、監控等基本環境。不論你是否熟悉 Laravel、DevOps、CI/CD,我們都將從頭開始,以通俗易懂的方式,一步步引導你打造 Walking Skeleton。讓我們暫時放下功能開發,先確保我們的基礎穩固,未來的開發才能更順利地前進!

鐵人鍊成 | 共 34 篇文章 | 9 人訂閱 訂閱系列文 RSS系列文
DAY 21

【Walking Skeleton】Day21 - 命名空間 namespace 和 use 是做什麼用的?

沒有 namespace 的時候 有一個專案 school 和兩個函式庫 lib_a、lib_b,好死不死這兩個函式庫中的 class 名稱是一樣的,都叫做 S...

2023-10-06 ‧ 由 miku3920 分享
DAY 22

【Walking Skeleton】Day22 - 安裝 Composer 讓 autoload 來幫你自動 require 函式庫吧!

在安裝 Composer 之前需要安裝過 PHP,因為 Composer 本身就是用 PHP 寫的,可以使用 php -v 來檢查有沒有安裝,如果沒有安裝的話,...

2023-10-07 ‧ 由 miku3920 分享
DAY 23

【Walking Skeleton】Day23 - 用 PHPUnit 來自動測試程式是否有按照預期運作

PHPUnit 是 php 的單元測試工具,它可以幫我們檢查程式是否有錯誤,不過驗證有沒有錯的程式還是需要自己寫,但是可以重複使用,也就是說不用再一直手動把變數...

2023-10-08 ‧ 由 miku3920 分享
DAY 24

【Walking Skeleton】Day24 - PHP_CodeSniffer:使用 Linter 來提升 PHP 程式碼品質吧!

PHP_CodeSniffer 簡稱 PHPCS,是 PHP 的 Linter 工具,它可以設定程式排版規則,讓大家有一致的 Coding Style,減少讓...

2023-10-09 ‧ 由 miku3920 分享
DAY 25

【Walking Skeleton】Day25 - 在 Github Actions 中加入自動測試和 Linter

調整 Nginx 設定 一開始先來搬家一下,因為網站放在 /var 其實很怪,這是放 log 的地方,所以先在 /srv 中 git clone 把程式抓下來,...

2023-10-10 ‧ 由 miku3920 分享
DAY 26

【Walking Skeleton】Day26 - 安裝與介紹 Laravel

Laravel 是個非常受到歡迎的 PHP 框架,它將網站的各個功能都變得更加方便,大量的簡化了開發的工作,不過也因此需要理解它的用法,對新手來說不是件很容易的...

2023-10-11 ‧ 由 miku3920 分享
DAY 27

【Walking Skeleton】Day27 - Laravel 中的自動測試

建立測試 Laravel 的 API 測試會放在 tests/Feature 資料夾中,並且可以用 php artisan make:test {測試名} 來建...

2023-10-12 ‧ 由 miku3920 分享
DAY 28

【Walking Skeleton】Day28 - 在正式環境部屬 Laravel,並且加上 CI/CD

安裝 PHP extensions https://laravel.com/docs/10.x/deployment#server-requirements L...

2023-10-13 ‧ 由 miku3920 分享
DAY 29

【Walking Skeleton】Day29 - 安裝與介紹 Docker

為什麼需要容器化技術 當我們在不同電腦安裝環境時,也就是安裝 Nginx、PHP、MySQL 時,時常會遇到一個問題,在不同電腦會裝到不同的版本,這也導致了在測...

2023-10-14 ‧ 由 miku3920 分享
DAY 30

【Walking Skeleton】Day30 - 使用 Docker 建立開發環境

圖片來源:Haufe Docker Style Guide Image 和 Container 與其說 Image(映像檔)是 ISO 系統安裝檔或虛擬機快照,...

2023-10-15 ‧ 由 miku3920 分享