序
讀著杜江先生的新作,讓我想起了十幾年前,在我所服務的公司——美國Yahoo!總部的一些經(jīng)歷。那時候,還是互聯(lián)網(wǎng)的迅速發(fā)展階段,Yahoo!還是個不到一千人的新興公司,正從各地招兵買馬,壯大充實,以和當時的勁敵美國在線、Lycos等力拼。在早期互聯(lián)網(wǎng)公司松散的管理下,各個部門各自為政,除了操作系統(tǒng)基本上是FreeBSD,Web Server主要是Apache以外,其他就要看各部門主力工程師的個人偏好了,于是百花齊放,Perl、C/C++、Java都有人用,更有Yahoo!內(nèi)部開發(fā)的所謂HTML Forms和HF2K的腳本語言。我那時候負責Yahoo Everywhere部分開發(fā)及全球部署工作,職責就是把Yahoo!的各種服務WML化,讓人們在世界各地用手機上網(wǎng)也能輕松享用Yahoo!的各項產(chǎn)品。那時,除了和電信運營商、手機廠商打交道,最多的時間就是花在和Yahoo!內(nèi)各部門的工程師協(xié)調(diào)、合作,以及了解、銜接他們的系統(tǒng)。
相比之下,現(xiàn)時的互聯(lián)網(wǎng)工程師是比較幸運的。基本上,開發(fā)一個網(wǎng)站項目,在工具、架構(gòu)的選擇上已是沒有什么懸念,除了微軟或Java那一套,就是所謂的LAMP(Linux、Apache、MySQL、PHP)模式了。畢竟這個模式不但完全免費,而且身經(jīng)百戰(zhàn),被Yahoo!、新浪等大型網(wǎng)站廣為采用。還記得當年(應該是2001年吧),雅虎美國總部為了整治公司內(nèi)部系統(tǒng)的混亂,彌補自身腳本語言的不足,為長期持續(xù)的發(fā)展建立可以持續(xù)的基礎(chǔ),很明智地在公司各部門統(tǒng)一推廣使用PHP。這一舉措也為PHP日后的壯大起到了一定的推動作用。
不過,也因為這樣,在前人的努力累積的碩果上,再加上互聯(lián)網(wǎng)搜索信息快速方便,養(yǎng)成了許多工程師的惰性。這個現(xiàn)象在中國感覺尤為嚴重。有了LAMP的架構(gòu),又隨時可以搜到各種問題的開源解答,許多工程師或管理人員就把網(wǎng)站建設(shè)不當回事,也不深究,不求甚解。要知道,要把一個網(wǎng)站搭建起來,的確可以是一個很簡單的事,但是,要做大,要做好,要做到英文里各種所謂“bilities”(maintainability、flexibility、extensibility、availability、reliability、scalability)的境界,很多東西是要深入了解、細細琢磨的。這就是為什么我常強調(diào),希望我的合作伙伴都是“工程師”,而非簡單的“程序員”。
杜江先生就是我曾共事過的高級工程師之一。他寫的這本《PHP 5完全攻略》可以說同時兼顧到了“工程師”和“程序員”兩種讀者的需求。
這本600多頁的參考書既有許多針對日常會遇到的問題、案例,提供可直接應用的答案,又有深入、循序漸進的描述,解析了PHP 5及MySQL 5的技術(shù)細節(jié),是一本值得推薦給所有以PHP、MySQL為基礎(chǔ)搭建網(wǎng)站的工程師與程序員的好書。
孫至俊
——寶寶樹首席技術(shù)官(前雅虎一拍網(wǎng)CTO/愛康網(wǎng)CTO)
Babytree.com Inc. CTO Jonathan Sun
- 多媒體CAI課件設(shè)計與制作導論(第二版)
- Microsoft Application Virtualization Cookbook
- Java Web基礎(chǔ)與實例教程(第2版·微課版)
- Mastering C# Concurrency
- 零基礎(chǔ)學MQL:基于EA的自動化交易編程
- 飛槳PaddlePaddle深度學習實戰(zhàn)
- UML 基礎(chǔ)與 Rose 建模案例(第3版)
- Learning jQuery(Fourth Edition)
- 深入實踐Kotlin元編程
- OpenCV 3.0 Computer Vision with Java
- Java核心技術(shù)速學版(第3版)
- 趣學數(shù)據(jù)結(jié)構(gòu)
- Mastering Magento Theme Design
- Internet of Things with Arduino Cookbook
- Java EE框架開發(fā)技術(shù)與案例教程