不知道大家灌了Windows Liver Messenger 2011的感想是甚麼? 我身邊的朋友個個都在狀態列表明嚴重的不滿! 新版的雖然在介面上跟社群網站做了很多整合, 但原本的優點都被更換了! 以下列出幾點:

  • 朋友的暱稱因為介面得更換而無法看到大家的暱稱(以前都是一整排, 所以右邊的空間都可以看到大家完整的暱稱), 現在甚麼酸甜苦辣都必須切換到社群介面才能看到了.
  • 很多訊息對方明明是在線上, 卻一直出現"下列訊息無法傳送給所有收訊者:" 讓我一直重複發送訊息都無法傳到朋友的MSN, 這真的讓人很生氣!如果對方不在線上就直接顯示離線阿! 幹嘛要欺騙我對方在線上??!! 還是覺得我傳訊息的速度太快, 認為是垃圾訊息? 那過濾機制也太敏感了吧?
  • 每個視窗都用頁簽的方式並在一起, 有時候會讓我傳錯訊息! 原本是要傳給A卻變成了傳給B!
  • MSN原本都可以自己命名暱稱, 但現在就會直接取你在PROFILE上留的真實姓與名. 變成說如果我要顯示Newtonstudio, 就必須在姓放Newton, 名放Studio. 天~ 怎麼現在都變成這個樣子了.

如果說改版是帶來了更多便利, 我會豎起大拇指讚揚MSN; 但現在是帶來更多麻煩, 尤其是"訊息無法傳送"這個問題頻頻發生! 真的讓我氣炸了!

擷取

1) Go OOP

儘量以物件導向的方式來寫程式. 理由很簡單: 容易維護+擴充+程式重複使用!

2) Stay Away from Anything Ending With _once()

像include_once, require_once的函數儘量不要碰, 因為很耗系統資源

3) Develop With Error Reporting On

開發中記得將所有的ERROR都開啟, error_reporting (E_ALL); 才能知道你的程式在任何環境下都是正常可以RUN的

4) Use A Framework If You Need One

使用別人寫好的framework可以減少你的開發時程, 但相對的你就需要花比較多的時間去研究別人的功能以及怎麼使用. 可能要視情況來做抉擇了.

5) Use PHP’s Inbuilt Functions

儘量使用PHP內建的函數絕對會比你自己去用自己演算法來的划算(當然前提是要符合你的需求)

6) Protect Your Database

The best and safest way is to use mysql_real_escape_string() for all database before it is added to the database. 筆者是建議使用函數mysql_real_escape_string()來防止惡意的SQL INJECTION. 也可以用addslashes() 但聽說還是有漏洞就是了. 另外很重要的是要審核任何POST或GET, 不要使用REQUEST, 以防止不必要的漏洞存在.

7) Use POST Not GET

儘量用POST. 理由很簡單, 因為GET的QUERY STRING在網址列很容易被看到, 增加多一道鎖, 讓有心人士需要花更多時間來破解你的程式是絕對劃得來的.

8) Draw Before You Code

先用張白紙來畫出你的應用程式構圖, 流程, 釐清腦海中的構思.

9) Understand Your Project

這是必然的吧?

10) Code Code Code

多寫自然就會進步了!

參考資料:
給PHP 開發者的10個貼心建議: http://www.htmlgoodies.com/beyond/php/article.php/3907521