June 19, 2015

2015年我的 PHP Web 開發環境

以前一直都在用 CodeIngiter Framework,當年其實都幾順手。不過始終係老 Framework,好多嘢都跟唔上時代步伐。而家 PHP 開發者都講緊 PSR-0/4 Autoload,PSR-2 Coding Style,Composer 管理組件等等,CodeIngiter 依然欠奉。然而,我經驗所得,CodeIngiter 限制太多,基本上 OOP 係唔用得,MY_Controller 只可以整一個,另外難以載入非 CodeIngiter Libraries,仲有奇怪嘅 Database Active Record等等。

而最近我先真係開始接觸最新一代嘅 PHP 開發模式。以下係我目前所用嘅 Libraries 同埋工具:

PSR-2 Coding Style (http://www.php-fig.org/psr/psr-2/)
呢套 Coding Style 其實幾似 Java,幾好睇,好睇過底線好多。但係我就一直鍾意用 Tab 做 Indentation,而佢建議用 4 個空白鍵取替,要習慣一下了。

管理 Libraries:
Composer (
https://getcomposer.org/)
開頭我覺得 Composer 好煩,因為覺得上網下載個 php file 返嚟咪得,require/include 咪得囉。但用落其實 Composer 個 autoload 只要 require ‘vendor/autoload.php’ 一句,就可以載入所有 Libraries, 非常方便。另外佢都會自動載入你所有 Class File,以前可能要打好多 require xxxx.php,而家佢會自動載入,好方便。

RESTful Framework:
Slim Framework
雖然而家主流係 Laravel,但我決定主攻Slim Framework,因為比較上輕量。

Database:
RedbeanPHP
支援 MySQL, SQLite 等等多個 Database,可以用ORM,或者基本 SQL,一直都在用!

Javascript:
Typescript
Frontend OOP 方便得多。2013年我曾經分享過 Typescript。可以參考下該篇文章

CSS:
LESS
可以睇成啲 CSS 可以落 Variables,可以加 Functions,都係好方便。

Version Control:
Git
就算 one man band 都應該要用,幫你留住舊 Source Code,可以落版本。

IDE:
JetBrains PhpStorm
實在好Eclipse/Netbeans太多,單係打 Code 提示已經冇得比。

Database GUI:
HeidiSQL
曾經有人講過,一個有用少少嘅程式都會連接 Database,phpMyAdmin基本上係太慢,如 MySQL 係可以外連,用返 Desktop Application 係快好多。

 

暫時係咁多先,有機會先再每項詳細介紹返。