1. 程式人生 > >如何成為一名優秀的PHP開發工程師

如何成為一名優秀的PHP開發工程師

精英程式設計師就是傳說中經過10000+小時技術磨練的專業PHP人士,他們通過自己編寫擴充套件來擴充PHP的開發功能,更牛的是,他們只要粗略的瀏覽一下原始檔就能找出bug,對程式碼佈局可以說是相當的細緻。他們能夠創造出最複雜的專案,在別人還沒發現問題之前,他們就已經找出可替代的完美方案了。除此之外,他們還會寫一些比較受歡迎的PHP語言類的書本,參加各式研討會,建立一個非常成功的框架也是不在話下的。

關鍵步驟

一個程式設計師如何從初級者轉變到專業者或者更厲害的角色呢?如果一個人只會基礎的程式設計知識,那基本上是不可能有所提升的,更別說去運用一些更先進的技術方法了。要想成為一個專業的PHP程式設計師,首先要做的就是成為一箇中級PHP程式設計師。接下來的這個列表就是初級者需要經歷的過程——熟練使用PHP的過程。

放棄義大利麵式程式碼

很多人認為使用類就意味著是在編寫面向物件的程式碼,而使用函式就意味著是在編寫過程式程式碼。其實這是大錯特錯了,先來假設一下廣泛的vanilla定義:過程式程式碼就是不需要使用類和目標的程式碼,OOP程式碼就是儘可能多的使用類和目標的程式碼。這裡的建議是完全放棄過程式程式碼,儘可能多的使用面向物件的編碼風格——編寫類,封裝邏輯,考慮真實的術語。建立在類程式碼基礎上的過程式程式碼的效能優勢,在和重實用性的OOP程式碼相比是微不足道的,適當的OOP程式碼可以讓未來的開發者繼承你的專案。

仔細分析現有專案

不管你是在哪裡看到的原始碼,都要仔細鑽研。例如,在Github裡查詢PHP專案

,複製下來,部署在自己的裝置上,試著結合自己的程式碼來執行這一專案。一個檔案接著一個檔案,一行程式碼接著一行程式碼,直到你真正理解每個程式碼的意義。

建立自己的PHP環境

建立自己的PHP環境也是一種很珍貴的技能。這不僅能讓你熟悉PHP的安裝設定,還可以讓你熟悉如何通過修改原始碼來實現功能擴充套件。虛擬機器和虛擬化軟體也可以幫你做實驗——如果出現了錯誤,你可以擦掉重新開始或者做一個回滾。也可以儘可能多的在字面上進行測試實驗,而不用擔心弄的太亂。掌握工具的使用方法是很重要的,但有一個好的工作臺也是同等的重要。

用你自己創建出來的設定做實驗亦可讓你熟悉不同的伺服器——例如什麼時候要用Nginx或Apache,或者是使用

Appserver等等。

儘早應用最佳實踐

在編寫自己程式碼的時候,要確保對自己的文件塊嚴格註釋完美縮排、仔細完成架構。在構建一個類,專案或類庫之後,使用效能優良的文件工具(PHPDocumentorApiGen)來提取文件塊,並在這個文件塊上進行改進。早一點適應最佳實踐能夠幫助你在專案程序裡保持一致,更有助於別人流利的閱讀你的程式碼。找到你的風格並堅持下去——這對你自己和別人都有好處。

嘗試不同的框架

有很長一段時間,PHP是一個具備最多框架的程式語言,不管這一說法在技術社群和語言界的影響力如何,但事實是,選擇一款框架是一個很糾結的事情,尤其是在剛開始的時候。經過對大多數框架的長時間試用,這裡衷心推薦Phalcon作為主力框架,主要源於其在穩健性和質量方面的優秀表現,事實上Phalcon是用C語言編寫的,而且可以當作是PHP擴充套件框架安裝。無論如何,嘗試使用不同的框架絕對是很有必要的。

大量閱讀資料

千萬不要低估了別人給你的暗示和小建議(無論是在書上還是在工作中),儘可能多的閱讀各方面的程式設計知識。閱讀部落格、教程、在StackOverflow上面閱覽問答、訂閱資訊雜誌等等。但是要避免基礎的PHP教程書本,最好是專注於網上有用的、最新程式碼的個別片段和教程。即使是已經讀過的內容也可以再讀幾遍,一定能從別人的觀點裡領悟出新的想法。

結論

除此之外,在無事可做的時候,不妨自己建立一個專案:覺得日常使用的App功能太少了,自己建立一些輔助功能,或者嘗試著重建一個基礎的Facebook。千萬不要放鬆,保持自己的創造力。另外,你還可以找一個同伴/導師,相互學習的進步速度總比閉門造車的速度快很多。

當你真的專注於實踐上面所提到各種方法的時候,你也許就在成為PHP專家的路上。

相關推薦

前端修煉の道 | 如何成為合格前端開發工程師

上期回顧 在上一節我們已瞭解前端開發是做什麼的,現在的問題是,如何才能成為一名合格的前端開發工程師? 相信這個問題是大家比較關心的。 前端開發工程師 如果大家在一些搜尋引擎上搜索“前端開發工程師”需要具備什麼技能?可以看到搜尋結果中會出現許多諸如要掌握: “HTML” “CSS

如何成為全棧開發工程師

我曾經有一個夢想是要成為一名全棧開發工程師,因為我認為一個程式設計師無所不精無所不能是一件很牛逼的事情。 同時當一個程式設計師無所不精的時候,不僅僅自己可以開一家公司自己接活幹,同時即便不辦一家公司,在一家公司好歹可以吃香的喝辣的。 抱著這個理想目標,於是在那段時間我時而學Docker,時而學Nginx,

如何成為大資料開發工程師

1.關於我 本人現在北京某大型網際網路公司高階資料開發工程師一枚,三年工作經驗,一年多面試官經驗。 2.為啥要寫這篇文章? 面試中經常會遇到這種情況:之前專心寫web的Java碼農突然轉型想做大資料了,然後寫幾個大資料的專案經驗跑來面試,結果就

如何通過自學成為 Android 應用開發工程師

其實成為初級android工程師,並不困難,但是目前初級android工程師已趨於飽和,這與前兩年客戶端培訓火爆密不可分,所以呢,這可能會讓一些正在走這條路或者想要走這條路的人感到困難。但是想要脫穎而出也不是很難的。今年參加校招,也拿到bat之一等一線網際網路公司offer. 想說說我的看法,雖然客戶端現在的

成為優秀的Python工程師需要怎麼做?

隨著人工智慧的發展與應用,Python程式語言受到世界各界人士的關注,Python工程師也成為一個熱門職業,就業薪資高,發展前景廣闊。Python是一門簡單的程式語言,學習相對更加輕鬆容易,初學者很容易入門,但想要學好,成為一名優秀的Python工程師就不是那麼容易的事情了,

怎樣成為優秀的演算法工程師

在說完了數學和程式設計基礎之後,下面我來看核心的內容,機器學習和深度學習知識。機器學習是現階段解決很多人工智慧問題的核心方法,尤其是深度學習,因此它們是演算法工程師的核心知識。在這裡有一個問題:是否需要先學機器學習,還是直接學深度學習?如果是一個專業的演算法工程師,我的建議是先學機器學習。至少,你要知道機器學

怎樣成為優秀的嵌入式工程師

在IT應用領域,嵌入式系統的火爆程度恐怕不低於當下的室外溫度,在工業、醫療、家電、通訊等行業中,無所不在的嵌入式系統顯現出巨大的發展潛力,然而,嵌入式系統人才的匱乏,已成為限制這個行業進一步發展的主要瓶徑,無論是在北京、上海、深圳還是內地,嵌入式企業的人力資源經理們最頭痛的

如何成為優秀PHP開發工程師

精英程式設計師就是傳說中經過10000+小時技術磨練的專業PHP人士,他們通過自己編寫擴充套件來擴充PHP的開發功能,更牛的是,他們只要粗略的瀏覽一下原始檔就能找出bug,對程式碼佈局可以說是相當的細緻。他們能夠創造出最複雜的專案,在別人還沒發現問題之前,他們就已經找出可

如何成為優秀的Web前端工程師?

功能 des 更新 高性能 yahoo 建議 策劃 兼容 推薦 何為:前端工程師? 前端工程師,也叫Web前端開發工程師。他是隨著web發展,細分出來的行業。Web前端開發技術主要包括三個要素:HTML、CSS和JavaScript!它要求前端開發工程師不僅要掌握基本的We

成為優秀的軟體測師工程師

時間:2018-09-22        不管是在怎樣的境遇下進入軟體測試這個行業,從投入這個行業開始,你必須對這個職業充滿敬畏,要不斷的充實自己。        成為一名真正意義上的軟體測試工程師,我的測師齡才剛滿5個月,不管我當初是抱著怎樣的心態進入這個行業,我現在只

如何成為優秀的全棧工程師

寫在最前 我的前一篇文章《給職場新人的10點職涯建議》發表後,得到了很多簡友,特別是年輕程式設計師朋友們的喜愛,這令我頗感意外,但又很受鼓舞。同時,我也收到了一些簡信,大多來自那些畢業不久,剛步入工作崗位的職場新人。詢問的內容也大多是如何選擇職業方向,如何成為一名優秀的

阿里P7工程師封遲到的年終總結:告訴你如何成為優秀軟體工程師

文 / 阿里P7資深工程師   嚴明明在收到嚴明明這封總結信的時候,此時已是櫻花飄盡的四月天。這封總結信的標題是:二零一七年,我的失敗與偉大當我認真讀完這篇來自阿里P7資深工程師的2017年度總結後,我

測試職業思考:如何成為優秀的軟體測試工程師

                                                如何成為一名優秀的軟體測試工程師                                                                                           

成為優秀的高階JAVA工程師必備的知識總結

1.Core Java,就是Java基礎、JDK的類庫,很多童鞋都會說,JDK我懂,但是懂還不足夠,知其然還要知其所以然,JDK的原始碼寫的非常好,要經常檢視,對使用頻繁的類,比如String,集合類(List,Map,Set)等資料結構要知道它們的實現,不同的集合類有什麼

如何快速成為Linux運維工程師

linux 安全 如今的互聯網,絕大多數的網站、服務、遊戲均是跑在Linux上面的,雖說Linux發行版眾多,只要玩熟了一種發行版,了解了Linux精髓、基本架構、設計原理,其他都是觸類旁通的,千萬不要在選擇哪一發行版而浪費很多時間,不值當的,這就如同我是上清華好,還是上北大好呢?統稱為[清北謎題]了

怎樣才幹成為優秀的軟件測試人員

popu 成功 優先 content 時間 下一步 溝通 變化 ont 近期在和一些公司的軟件project師和管理人員交流時,發現他們常常發出這種感慨:尋找一名優秀的測試人員這是太難了。那麽。具備哪些要素才成成就一名優秀的測試人員,以下是我覺得比較重

(轉)如何成為優秀的程序員?

浪費 靈感 雙向 健身 在線 數據結構 car 轉發 屬於 前幾天有人分享的一篇文章,看著不錯,轉發一下,也算是對自己的一些建議吧,在這裏感謝原作者的分享。 作為一個從業快10年的程序員,我想給新入行的程序員們一些建議。這些建議是我希望自己可以在畢業的時候就讀到的,也希望它

如何成為優秀的程序員?

uml data- 普通 targe 關註 時也 命名 mea 基本 1、理解技術債務 技術債務就像信用卡一樣,會有很高的利息率,時間越長,修復所花的代價就越大,程序員對這個要有深刻的認識。同時團隊應該培養一種保證設計質量的文化,應當鼓勵重構、同時也應當鼓勵其它

如何成為優秀的java程序員

學java 保持 安排 ava 進行 是你 調整 次數 新的   不想當將軍的士兵不是好士兵,同理每個java程序員都應該讓自己變得更加優秀,來增加自己的核心競爭力,一個不思進取的java程序員是容易被社會淘汰的。那麽如何成為一名優秀的java程序員呢?   如何成為一名優

九個步驟成為優秀的程式化交易者

想擠身於一流程式化交易者的行列,不妨從古今中外市場大鱷們的成功九大因素上來總結,一個初學者想要成功,必然是要闖過這九大難關的。 一、基本分析 基本分析主要就是在大學裡學的那些相關知識;當然,也要針對具體的品種進行學習,不能光靠那些知識。比如,做麥子的人,國內外麥子市場的基本知識是需要了