我們在開發軟體時,會用到一些常見的第三方套件,如快取功能或圖片處理等,在網路上都能找得到很棒的開源實作。它們都具備良好的設計,讓開發者能方便地使用或是擴展,因此大家才會願意推廣這些套件。未來三十天裡,讓我們一起來探索這些輪子的奧妙吧!
大家在使用 Laravel 或是其他套件時,相信都用的非常開心。 但是否有想過,為何這些套件會這麼好用?新增功能,加個檔案就行了;修改功能,加個檔案就行了;移除...
時間旅行一直以來都是電影或動漫的經典主題;時間處理也是--它是程式語言的經典卡關問題。 Carbon 是 PHP 的第三方時間處理套件。它繼承了原生的 Data...
Carbon 本身並不複雜,它使用兩個物件,分別繼承了原生 PHP [DateTime][] 與 [DateInterval][] 類別,並實作了新的行為,讓它...
昨天了解 Carbon 套件是利用繼承來擴充物件的行為,我們今天一起來看看它是怎麼設計的。 首先原始碼註解很明確的分很多實作區塊,如 GETTERS AND S...
今天來繼續看 Carbon 還有擴充哪些功能 COMPARISONS Carbon 提供許多比較的方法,讓我們在判斷時間會方便很多。 eq() lt() gt(...
在開發階段時,取名是讓開發者覺得非常困擾的任務之一。 當然,變數或函式命名必須得好好想想,不然容易造成別人看不懂的技術債。但有一種很想亂打就好,但系統會要求你不...
Faker 套件使用方法非常單純--使用工廠(Factory)建構產生器(Generator),然後把產生器拿來用就對了。 如果有認真翻原始碼的話,會發現它是有...
昨天有提到 Generator 有 addProvider() 方法,可以把各式各樣的 Provider 加入 Generator 。而也有提到 Generat...
如果有認真看前兩天的文章,應該會發現一個很奇怪的事: Day 7 提到: Factory 產生 Generator 物件時,會使用 addProvider(...
Faker 提供的 Provider 非常多,除了預設之外,還有不同語系實作。 不過我們先來解決昨天的疑惑:這些 Provider 到底是如何使用 Genera...