成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

你是優秀的PHP程序員嗎?

企業動態
作為程序員,在一般情況下入職前總要經過面試。如果你是一個面試官,你會問PHP面試者什么問題呢?如果你希望找到一個優秀的PHP程序員,你又將如何去做呢?你又是否知道一個優秀的PHP程序員至少應該了解些什么呢?

前言:

作為程序員,在一般情況下入職前總要經過面試。如果你是一個面試官,你會問PHP面試者什么問題呢?如果你希望找到一個優秀的PHP程序員,你又將如何去做呢?你又是否知道一個優秀的PHP程序員至少應該了解些什么呢?你或許會從本文中得到答案。

我在SitePoint做面試官的時候一定會問的問題是:你認為PHP代碼的優劣體現在哪里?因為這個問題可以讓我大體知道應聘者是哪種類型的程序員,而不是單純地考察他對PHP函數的掌握程度(這一點Zend的PHP認證做得不錯,雅虎的PHP程序員面試題也屬于此類)。重要的是,這個問題可以讓我知道應聘者是否經歷過這樣的事情——從一個懶散程序員手中接過一段凌亂的代碼進行重用,或者要幫助團隊中的其他成員來處理這類事情。

誠然,對于這個問題我自己也沒有一個滿意的答案,不過我知道哪些答案是我想聽到的:

優秀的PHP代碼應該是結構化的。大段的代碼應該被分割整理成一個個函數或方法,而那些不起眼的小段代碼則應該加上注釋,以便日后清楚它們的用途。而且應該盡可能地把前臺代碼如HTML、CSS、Javascript等從程序中分離出來。PHP的面向對象編程特性可以很好地幫助程序員將代碼整理有序。

優秀的PHP代碼應該是規范化的。無論是為變量名和函數名設定命名規則,還是對一些會重復使用的過程如數據庫操作和錯誤處理進行標準化,抑或是簡單到規定好代碼是怎樣縮進的,這些規范化都可以讓代碼的可讀性大大提高。

優良的PHP代碼應該是自適應的。PHP有許多特性如magic quotes和short tags,這些特性的打開和關閉會影響到程序的運行。所以,一個好的程序員應該在他的代碼中加入適當的語句來使程序能夠根據環境進行調整。

優良的PHP代碼應該是安全的。雖然PHP是一種高效、靈活的語言,沒有固定的框架,但卻把安全問題留給了程序員們。對潛在安全漏洞的深刻理解,如跨站腳本攻擊(XSS)、跨站請求偽造(CSRF)、代碼注入漏洞、字符編碼循環漏洞等,對于今天的專業程序員來說是至關重要的。

當應聘者在回答這些問題的時候,我就能清楚地知道是否該錄用他。當然,有時程序員并不能很好地闡明這個問題,這時我們會讓他們做一些PHP測試。測試中的許多問題表面上看起來非常簡單,但這也給了應聘者們一個展現自我的機會,因為只要觀察得仔細,就能找出問題。

下面這一小段“劣質”的PHP代碼是一道簡化了的測試題。這種問題就像在問:你該怎樣優化這段代碼?

echo("

Search results for query:".

     $_GET['query'].".

");?>

這段代碼的主要問題在于它把用戶提交的數據直接顯示到了網頁上,從而產生XSS漏洞。其實有很多方法可以填補這個漏洞。那么,什么代碼是我們想要的呢?

echo("

Search results for query:".

     htmlspecialchars($_GET['query']).".

");

?>

這是最低要求。XSS漏洞用htmlspecialchars函數填補了,從而屏蔽了非法字符。

if(isset($_GET['query']))

{

echo'

Search results for query:',

     htmlspecialchars($_GET['query'],ENT_QUOTES),'.

';

}

?>

能寫出這樣代碼的人應該是我想要錄用的人了:

*

* 在輸出$_GET['query']的值之前先判斷它是否空。

* echo命令中多余的括號被去掉了。

* 字符串用單引號限定,從而節省了PHP從字符串搜索可替換的變量的時間。

* 用逗號代替句號,節省了echo的時間。

* 將ENT_QUOTES標識傳遞給htmlspecialchars函數,從而保證單引號也會被轉義。雖然這并不是最主要的,但也算是一個良好的習慣。

可惜的是,能給出這樣讓人滿意答復的程序員少之又少。我們花了3個月的時間才招聘到讓我們滿意的程序員.

那么,你會怎樣回答文章開頭提出的問題呢?你認為PHP代碼的缺點體現在哪里?你認為一個PHP程序員還應具有哪些品質?

【編輯推薦】

  1. 修煉一名程序員的職業水準
  2. 程序員職業規劃之魔鬼金字塔
  3. 程序員生涯之我見 找到自己的興趣所在
責任編輯:張攀 來源: 百度空間
相關推薦

2009-01-08 09:04:18

2014-12-04 10:02:55

2015-06-30 09:20:09

2012-05-25 10:54:24

程序員

2009-05-21 15:58:12

程序員工作經驗職場

2012-11-09 13:44:48

ScalaJVMJava

2015-04-10 19:37:34

程序員

2015-08-03 09:09:20

程序員腦子快

2015-06-24 10:33:17

程序員擅長數學

2017-11-14 21:30:15

2013-04-15 09:44:01

程序員

2015-04-08 11:09:28

優秀程序員深入理解你的代碼

2009-06-02 13:43:04

程序員定義職場

2014-08-29 11:09:44

程序員

2015-08-31 10:14:30

程序員處理代碼糟糕代碼

2015-09-01 11:20:58

程序員糟糕代碼

2014-11-07 16:57:21

程序員

2012-12-28 09:58:50

程序員代碼編程

2016-03-04 11:06:20

更優秀程序員

2012-08-28 09:15:19

程序員
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 神马久久久久久久久久 | 中文字幕av一区 | 欧产日产国产精品v | 日韩欧美在线不卡 | 久久久久国产一区二区三区 | 国产成人一区二区三区 | 视频在线一区二区 | 一区二区三区视频播放 | 亚州精品天堂中文字幕 | 区一区二在线观看 | 欧美性一区二区三区 | 亚洲精品乱码久久久久久按摩观 | 久久91av | 亚洲 欧美 日韩在线 | 国产麻豆乱码精品一区二区三区 | 中文字幕欧美日韩一区 | 亚洲高清视频在线 | 日韩一级免费观看 | 欧美色999| 亚洲人人 | 精品综合网| 久久成人一区 | 在线观看免费国产 | 欧美中文字幕在线观看 | 中文字幕人成乱码在线观看 | 99精品久久 | 精品一区二区三区视频在线观看 | 中文字幕 欧美 日韩 | 日韩不卡在线 | 欧美一区二区三区久久精品 | 久在线| 日本中文字幕一区 | 91国在线高清视频 | 伊人久久综合 | 91精品国产91久久久久久不卞 | 先锋资源网| 99在线资源| 日韩成人在线播放 | 欧美成人免费在线视频 | 国产性色视频 | 久久九九网站 |