2018年12月30日

單一職責原則。到底什麼是改變的理由?

Single responsibility principle(SRP). What defines a reason to change?

在物件導向開發中大家或多或少聽過SOLID,SOLID的每個字母分別代表了物件導向開發中的五個原則,本篇的重點是其中的S,也就是Single responsibility principle(SRP),單一職責原則。

什麼是單一職責原則呢?最廣泛也最常聽到的的定義是Robert C. Martin所說的:

A class should have only one reason to change.

翻譯成:一個類別只能有一個改變的理由(原因)。

那麼問題來了,到底什麼改變的理由(原因)?

2018年12月25日

PHP如何衡量程式記憶體用量 - memory_get_usage 與 real_usage

How to measure memory usage in PHP script

前言

PHP主要有兩個內建函式可以用來取得程式的記憶體用量,它們分別是 memory_get_usagememory_get_peak_usage

本篇將會介紹 memory_get_usage 的用法,以及簡述何謂 real usage。

2018年12月21日

PHP例外處理在商業邏輯上的應用(一)使用繼承

PHP exception handling in business logic - using Inheritance

前言

開發人員開發時經常會遇到一個狀況是,某支程式隨著需求不斷變更與增加,條件判斷越來越多、越來越複雜,程式的流程越來越混亂,閱讀程式時必須跳來跳去,程式漸漸變得難以理解,令人頭痛不已。

這種時候例外處理就可以派上用場了!

簡介

所謂的例外處理(Exception Handling),不外乎就是專門處理例外情況的發生,異常、錯誤等例外,這是現代程式語言常見的功能,隨著PHP版本的更新,PHP對例外處理的支援度及彈性也是越來越高。對開發人員來說,我們可以在程式中藉由妥善地利用例外處理機制,來增加程式的可讀性以及可維護性。

2018年12月16日

認識PHP魔術方法: __call(應用篇)

Introduce to php magic method: __call (Application)

本篇為PHP系列

上一篇:認識PHP魔術方法: __call

前言

在上一篇文章中,我們說明了 PHP 魔術方法:__call(),還不熟悉或想要複習的朋友可以閱讀上一篇,而本篇會接著討論 __call() 的一些應用方式,給大家參考。

2018年12月15日

認識PHP魔術方法: __call

Introduce to php magic method: __call

本篇為PHP系列

下一篇:認識PHP魔術方法: __call(應用篇)


前言

PHP 提供了一些懶人方法,這些懶人方法在特殊的情況下會自動觸發,可以省去開發人員自己攥寫程式的麻煩,相當方便。而這些懶人方法就是所謂的 Magic Method,也就是魔術方法。

本篇將會介紹其中一種魔術方法:__call。