導航:首頁 > 編程語言 > php技術路線

php技術路線

發布時間:2022-12-22 11:51:16

1. 成為系統設計工程師或軟體設計工程師,需要什麼知識基礎會C++,MFC,Oracle,SQL,PS,將學javaphp

系統設計工程師的要求比較高。一般是主持總體的架構和風格的。要懂技術和管理。
軟體設計工程師看你走哪一條技術路線。選定技術路線了就知道你要學什麼了。
比如Java、PHP是兩條不同的技術路線。
如果要學B/S程序的話,前端的HTML、CSS和Javascript是要學的。
HTTP的知識也要掌握。
資料庫任選一兩種,大概流行哪些可以問網路。
其它……入行了自己就了解了。

2. php工程師發展方向

php工程師有兩個發展路線,分別是技術路線和領導路線。如果是技術路線,需要對開發有狂熱的興趣,能夠從代碼的編寫中認識到設計與軟體架構的重要性,對軟體設計樂此不疲,可以走技術講階路線,由初級工程師到高級工程師為歸宿。

3. 零基礎學習PHP如何入門

其實學習PHP只要把握好學習路線,能夠在極短的時間里完成從新手到熟練的過程。在這里,小編為大家整理出了學習PHP的路線和具體的課程。

  1. 入門:新人必看的PHP基礎知識視頻教程

    可掌握PHP基礎知識,了解PHP的基本語法、數組、函數、表單驗證、圖像處理,以及MySQL資料庫等PHP開發過程中所遇到的知識點和基本操作。

  2. 進階:PHP如何操作MySQL資料庫視頻教程

    利用PHP操作MySQL資料庫教程,MySQL是PHP最合適的搭配,MYSQL開源、跨平台,PHP擴展包對MySQL的支持比較完善。本課程講解MySQL資料庫的基礎知識,以及如何利用PHP來操作MySQL資料庫,實現對數據的調用和修改。

  3. 實戰:PHP項目實戰_多用戶留言系統視頻教程

    利用PHP基礎課程中的知識,在本課程中創建多用戶留言系統,包括用戶界面設計,注冊,驗證,帖子的寫入、修改等留言系統的必備功能。

  4. 進階:PHP進階之面向對象相關視頻教程

    學習和了解開發獨立的模板引擎技術,學習三層架構及分層思想和原理,然後通過後面的CMS內容管理系統等課程的實踐來掌握以上知識點。

  5. 進階:PHP進階之CMS內容管理系統

    CMS內容管理系統具有許多基於模板的優秀設計,可以加快網站開發速度和開發成本,同時易於使用,可開發性強,可分布式管理,CMS的功能並不只限於文本處理,它也可以處理圖片、Flash動畫、聲像流、圖像、甚至電子郵件檔案等。

  6. ThinkPHP框架講解視頻教程

    ThinkPHP是為了簡化企業級應用開發和敏捷WEB應用開發而誕生的。從誕生以來一直秉承簡潔實用的設計原則,在保持出色的性能和至簡的代碼的同時,也注重易用性,並且擁有眾多原創功能和特性。理解ThinkPHP的框架基礎知識,安裝配置,模型的建立、開發及調試。學習ThinkPHP3.2.1的使用方法。

  7. 作為一個新手,學習PHP語言需要有學習一門新語言的心態,注意不驕不躁,步步為營,按照方法和步驟去學習,由淺入深的接觸。

4. 工程企業用什麼軟體管理好

1.九思軟體
1) 技術路線:J2EE標准,純JAVA路線。
2) 主要優勢:
公司是東軟、浪潮、中軟、神碼、聯通、移動等大公司的OA戰略合作商。
產品成功率比較高,獲得「中國管理軟體項目成功率第一品牌」獎項。
定位高端市場,獲得「中國高端協同辦公系統第一品牌」稱號,客戶如:光大銀行、中電廣通、焦煤集團、中國電子器材總公司。
3) 主要劣勢:
各地雖部署了分支機構,但依賴直銷,渠道工作啟動較晚。
2. 慧點科技
1) 技術路線:LOTUS標准,Domino路線。
2) 主要優勢:
作為IBM的LOTUS平台夥伴,公司專注鋼鐵、航空等行業應用整體解決方案。
行業影響力強:2011中國軟體和信息技術服務業最具影響力的行業品牌。
定位高端市場,客戶如:中鋼、首都機場等。
3) 主要劣勢:
只有5個分支機構,項目化方式,完全依賴直銷。
技術路線落後,技術體系封閉,平台費用高。
3. 金和軟體
1) 技術路線:微軟平台,.net路線。
2) 主要優勢:
公司品牌運作能力強,擅長精確管理培訓課程。
行業影響力強:中國管理軟體百強廠商。
定位遷移:從9800元的低端產品,逐步向中高端市場遷移,渠道布局廣泛。
3) 主要劣勢:
產品驗收周期長,產品與理念脫節嚴重。
技術落線適合中小企業,以.NET為主,JAVA新啟動不成熟,公司盈利能力弱。
4. 用友致遠
1) 技術路線:以JAVA路線為主。
2) 主要優勢:
藉助用友品牌、分公司和渠道資源,業務覆蓋面廣。
市場佔有率高:連續六年中國協同應用軟體市場年度成功企業。
定位全覆蓋:從幾千元的A3、幾萬元的A6、十幾萬的A8企業版、到幾十萬的A8集團版全覆蓋。
3) 主要劣勢:
核心功能工作流較弱。
大用戶的支撐能力較弱。
5. 通達科技
1) 技術路線:以PHP為主。
2) 主要優勢:
產品價格低廉。
客戶數量多:網站上宣布已經有上萬個客戶。
定位低端客戶:主要面向幾千元到幾萬元的低端客戶。
3) 主要劣勢:
技術落線落後,產品核心功能薄弱。
具有網路銷售和渠道銷售能力,但各地缺少本地化的服務機構和直銷能力。
6. 泛微網路
1) 技術路線:PHP和JAVA兩條路線。
2) 主要優勢:
界面設計美觀、協同理念強大、功能模塊眾多。
品牌知名度高:中國最具競爭力科技型中小企業100強。
定位模糊:PHP和JAVA產品線多條,從中小客戶到中大型客戶都有對應。
3) 主要劣勢:
易用性很差,很難學習和掌握。
可用性功能少,實施難度大,服務成本高。[8]
7.華天動力
1)技術路線:純JAVA路線。
2)主要優勢:
工作流管理、統計報表、開放平台三大核心技術領先業界。
易用性、實用性在業內非常領先。
性價比極高:高端性能、中低端價格。
所有版本統一服務和升級,可以平滑升級。
3)主要劣勢:
品牌知名度略低,用戶認知度不夠高。
項目管理的功能不夠強大。
OA辦公系統遍地開花,各說各的好,各有各的理。亂花叢中如何慧眼識英雄,明辨高與低,找出最適合自己的那個「高帥富」[9]?
8.協眾軟體
1、技術路線:PHP開發。
2、主要優勢:
產品針對移動端、多客戶端設計了獨立的技術架構,能夠支撐未來的組織運行管控,擁有強大的工作流和引領未來的系統組織發展。是一套成熟穩定、簡單易用、高性能、高性價比的中小企業管理系統。
3、主要劣勢:
公司宣傳力度不大,導致潛在客戶對系統認識度不夠錯過這套系統。
產品研發主要針對中小企業,大型企業使用須拓展一些功能

5. 給創業者的建議:創業公司如何確定技術路線

如果是一個純粹的技術問題,那麼很可能會一直爭論不休,最後的結果就像某個笑話裡面說的,某公司一直到倒閉技術路線還沒統一。因此,本文不會向你推薦任何一個具體的技術方案。 給非技術出身創業者的建議 以前做技術咨詢時,我們經常會遇到一些非技術出身的創業者,他們往往對好的技術人員非常渴求。但對如何找到好的技術人員,如何吸引技術人員加入,他們卻束手無策。在我創業的這兩年,這點得到了充分的印證,我可以輕松地勸喜歡的技術人員加入,但要找到好的設計師並說服他們加盟太難。各種人才都有自己的圈子、文化和行為方式,他人很難融入。 對於非技術出身的創業者,我的建議是,盡量使用開源系統、現成的解決方案。雖然技術人員往往對Discuz!、UcHome甚至WordPress等現成的系統頗有微詞,但對於沒有技術背景的創業者,這些系統是最好的切入點。 我見過一些非常成功的團隊,創始人完全不懂技術,但對產品、運營、營銷非常在行,他們的網站全部採用開源系統,沒有任何的改動,只是找了設計師對樣式做了修改。網站的流量、用戶滿意度都非常不錯。因為沒有任何先行的開發,所以網站可以很快正式上線,而且大多數程序的開源系統,也都有較強的自定義能力,仔細琢磨下就可以玩出很多花樣。 這時就需要考慮引入一個好的技術帶頭人,建立自己的技術路線。通常也會有一番波折,但這也是種甜蜜的煩惱,因為不發展到一定程度,根本不需要考慮。發展到這樣的程度,公司的現金儲備和知名度都有了很大的提升,招人也就會容易一些。 給技術出身的創業者的建議 激進的技術路線 很多人喜歡激進的技術路線,比如用Erlang、Go等語言做項目,而公司全部員工幾乎都是初學者。又或者有人在iOS第一代SDK出現時就投身App Store。 有時,有些功能或產品只有激進的技術路線才能解決,較早使用先進技術可以獲得技術優勢和壁壘,在一般網站都使用SQL Like語句做全文搜索時,如果你率先使用Lucene/Sphinx等開源搜索引擎,那麼就會在性能和效果上有非常明顯的優勢。技術發展非常快,但普及非常慢。在2001年開發出Lucene第一個版本後不久,國內的技術人員就開始寫文章和學習筆記介紹它,但到了2008年,國內很多中型網站的全文搜索仍在使用SQL Like語句,很多技術人員明知這樣耗費伺服器資源很嚴重,甚至會拖垮伺服器,但也不會改用Lucene。 有時,激進的技術路線可以幫助你在新興市場佔領先機。前兩年蘋果App Store剛剛出現,軟體比較缺乏,所以只要產品質量尚可就可以獲得很多用戶,從而獲得不菲的收入。現在開發者想做出被市場認可的產品非常難,而那些進入早的產品則可以靠早期積累下的用戶穩定可靠地發展。 激進的技術路線的另一個好處是,可以作為人才過濾器。如果公司使用的技術剛出現或者剛開始流行,那麼願意嘗試甚至可以用好這種技術的人,往往是善於學習、不怕麻煩的。這是技術團隊裡面最喜歡的一種人。 但激進的技術路線不是誰都可以玩得轉的。如果想採用激進的技術路線,往往需要技術帶頭人是所選技術的專家,可以在技術方面輔導團隊成員。同時不能讓先進技術成為技術帶頭人的獨門絕技,這樣的團隊是不健康的。 沉穩的技術路線 對這樣的團隊來說,我建議採用沉穩的技術路線。簡單地說,就是採用技術帶頭人或者團隊成員都熟悉的技術,一切從實用出發。 首先,招人變得相對容易。到目前為止iOS程序員的價格仍舊是居高不下,且非常難以招到高質量的。與之相對,C#程序員、PHP程序員、Java程序員就相對便宜和好招多了。同時,可以選擇的現成技術解決方案也多了,就PHP、.NET、Java等語言來說,開源的論壇、CMS系統都非常多。 以Java為例,之前是一門新興語言,存在的最大問題是各種第三方庫的匱乏。但這些年發展下來,以Apache基金會、IBM等為代表的機構,積累了大量的開源庫,如Lucene家族等。 再以PHP為例,PHP早期就是以快速開發、簡單易用而聞名的,在大規模計算和性能上並不佔有優勢,特別是腳本的運行方式帶來了一些對象生命周期以及性能的問題。但作為PHP用戶社區的成員,LiveJournal創造了Memcache解決了緩存生命周期,Facebook創建了HipHop for PHP大大提高了性能。 所以我們不僅可以在理論上說,沒有壞的平台,只有壞的架構師,也可以從實踐上說,現在幾乎每個主流開發平台,都有一些世界級的優秀網站背書。而且在互聯網時代,其他公司的經驗很容易借鑒。 因此,採用技術帶頭人或者團隊成員都熟悉的技術路線,積極了解社區動態,大多數公司就可以應對技術上面遇到的問題。對於樂於學習的團隊而言,現在是最好的時代。

6. PHP程序員前途發展方向

PHP程序員前途發展方向

首先你要明白,PHP程序員前途有兩條進階路線。一條是技術路線,由程序員,經系統分析師、系統設計師直到架構設計師為歸宿。而另一條php程序員發展方向是領導路線,由程序員,經開發小組負責人、工程負責人,奮斗到項目經理。
如果你還不是一名程序員,你是否在為是否從事程序員工作而掙扎呢?
如果你已經是一名程序員,你是否在為程序員的前途而感到迷茫呢?
如果是,我可以告訴你,做程序員是有前途的!
從程序員的角度,可以發現更好的方向,IT(IT教育 IT培訓 )業不斷有新東西出現。用J系列語言比用C系列語言更時尚,用面向對象(或構件)的方法比面向過程的方法更先進,還有Delphi、.NET(.NET培訓 )、eLearning等開發工具,更有ERP(企業資源計劃(ERP)培訓 )(企業資源計劃)、CRM(客戶關系管理)、SCM(供應鏈管理)、CPC(協同產品商務)、BIS(商業智能系統)、EAI(企業應用集成)、EIP(企業信息門戶)等層出不窮的新概念。如果你能不斷與時俱進,追著新東西走,可以極大的'鍛煉你的學習能力,分析問題的能力和解決問題的能力。
從社會的角度來講,社會對程序員的定位是滿足技術需求,程序員自身所受的教育和積累的經驗也使自主前程意識局限於技術路線。實際上,我們所看到的在技術方面有建樹的前輩多是綜合型的人才,單純局限於技術思維的多有行為局限,也難看出自身的幸福感。其實,人有多方面的屬性,除非你是極少數的天才,在某一方面特別突出(相應地在其它方面就很脆弱),大多數人是多種屬性綜合發展,而且各屬性間相互促進。所以,在考慮程序員的前程時,有必要分析程序員的主要屬性及其可能產生的影響。
當你把程序當作異物看待時,編程是一種負擔,是勞累的事兒,是極其厭惡的事。如果能把編程當成一種興趣,一種愛好。這樣你就會不斷努力,不斷學習新知識,把程序作為人生奮進的載體,創造性地使用程序,並且能影響到其它領域。
php程序員前途很大,做程序員最需要的就是熬得住找准php程序員發展方向,有時候你努力了很長一段時間可能一點好的結果都沒有這是很正常的。所以就看你的耐心怎麼樣。如果你僅僅是有激情,想進入這個行業嘗試,那做為前輩來說我還是奉勸你打消這個念頭,到IT裡面做程序設計是很辛苦的,很多時候你腦子里想的只有代碼,其他的都不記得了。生活不規律,睡眠不足這些都是家常便飯。所以,如果你想進來,那請你做好充分的思想准備,很多隻有激情的年輕人,最後都是以放棄告終的,千萬要想好,半途而廢只會浪費光陰。最後,做程序員是有前途的,這個前途不是停止在程序員上,而是不斷的往上走,比如成為工程師、架構師、分析師等,這些才是更高的你需要去奮斗的目標,千萬不要只做底層的程序員,不然就停止進步了。

;

7. 如何學習php

最簡單的就是網上自學
但是這樣自律性要求很強
而且能力也要強
建議去報一些培訓班之類的
然後找份工作慢慢深造

8. php視頻教程

好的php視頻教程我個人推薦IT學習聯盟的《零基礎php就業班》,它是一套完整的php教程。這套教程從零基礎開始教起,零基礎到就業水平,沒有基礎的人也可以學習這套教程。
………………………………………………………………………………
關於如何學習php,我剛才看到一篇很不錯的文章,是一個專科生介紹自己如何自學php,並找到php的工作,裡面介紹了他的學習方法和學習過程,希望對你有幫助。
先做個自我介紹,我07年考上一所很爛專科民辦的學校,學的是生物專業,具體的學校名稱我就不說出來獻丑了。09年我就輟學了,我在那樣的學校,一年學費要1萬多,但是根本沒有人學習,我實在看不到希望,我就退學了。
退學後我也迷茫,大專都沒有畢業,我真的不知道我能幹什麼,我在糾結著我能做什麼。所以輟學後我一段時間,我想去找工作,因為我比較沉默寡言,不是很會說話,我不適合去應聘做業務。我想應聘做技術的,可是處處碰壁。
一次偶然的機會,我才聽到php這個行業。那天我去新華書店,在計算機分類那邊想找本書學習。後來有個女孩子走過來,問我是不是讀計算機的,有沒有興趣學習php,然後給我介紹了一下php現在的火熱情況,告訴我學php多麼的有前景,給我了一份傳單,php培訓的廣告。聽了她的介紹,我心裡癢癢的,確實我很想去學會一門自己的技術,靠自己的雙手吃飯。
回家後,我就上網查了下php,確實是當今比較熱門的行業,也是比較好找工作的,工資也是相對比較高。我就下決心想學php了。於是我去找php培訓的相關信息,說真的,我也很迷茫,我不知道培訓是否真的能像他們宣傳的那樣好,所以我就想了解一段時間再做打算。
後來,我在網路知道看到一篇讓我很鼓舞的文章是一個php高手介紹沒有基礎的朋友怎麼自學入門學php,文章寫的很好,包含了如何學習,該怎麼學習。他提到一個方法就是看視頻,因為看書實在太枯燥和費解的,很多我們也看不懂。這點我真的很認同,我自己看書往往看不了幾頁。
我在想,為什麼別人都能自學成才,我也可以的!我要相信自己,所以我就想自學,如果實在學不會我再去培訓。
主意一定,我就去搜索php的視頻,雖然零星找到一些php的視頻,但是都不系統,我是想找一個能夠告訴我該怎麼學的視頻,一套從入門到精通的視頻,一個比較完整的資料,最好能有老師教,不懂可以請教的。
後來我又找到一份很好的視頻,是在IT學習聯盟推出的一份視頻《零基礎php就業班》(喜歡《零基礎php就業班》的可以復制 t.cn/8s1Z7Of 粘貼瀏覽器地址欄按回車鍵即打開)。裡面的教程還不錯,很完整,還贈送10個頂級企業項目。
下面介紹下我的學習流程,希望對和我一樣完全沒有基礎的朋友有所幫助。
收到他們寄過來的光碟後,我就開始學習了,由於我沒有什麼基礎,我就從最簡單的Html/css/javascript視頻教程學起,話說簡單,其實我還是很多不懂的,只要重復多看幾遍,就能看懂。Html/css/javascript我差不多學了一個禮拜,接下來我就學了PHP基礎和Mysql資料庫,差不多也就三個禮拜。我每天都在不停的寫一些簡單的代碼,這樣一月後我基本掌握了php的全部基礎。
接下來開始學習php高級課程,老師幽默風趣而又輕松的課堂教課,使我發現原來學習php並不是一件很難的事情。之前我把php基礎學得還不錯,到了到了php高級部分,我覺不又不是很難,可能老師太牛了,他能把復雜的問題講的比較通俗易懂,有些難點的地方我還是連續看了五六次,把他弄懂。每天下午6點下班後,吃了飯,馬上跑回家。看視頻,買了幾本筆記本。當時,為了編程還花幾百元了台二手的台式電腦,配置一般,但編程是足夠的。一邊看視頻,一邊記筆記,把重點都記下來,還一邊跟著老師敲代碼,為了能盡早學會php。每天都堅持學5-6個小時。經常學到晚上一點多才睡覺。星期六,日不用上班,每天7點多起床,學到晚上11,12點。那段時間特別辛苦,特別累。在學習php的三個多月里,除了吃飯睡覺工作,剩餘的時間都在學習,因為我知道自己的計算機基礎不是很好,也沒有學過什麼計算機,相對於那些科班的人來說我要比他們付出更多的努力。我只能咬緊牙關,堅持下去,我不能放棄,我要完成我的夢想,我要讓我的家人過上好日子。終於三個多月後我把php教程里的內容和項目都學完了,在學項目的過程中我發現項目特別重要,他能把你學過的知識全部聯系起來,能更好的理解你所學的知識。還有學習過程中,動手很重要,要經常跟著老師動手敲,動手吧,跟著做,一行一行的跟著敲,再試著加一些自己的功能,按照自己的思路敲一些代碼,收獲遠比干聽大的多。 如果遇到暫時對於一些思路不能理解的,動手寫,先寫代碼,慢慢你就會懂了。這套視頻還贈送了10個頂級企業項目,對於我沒有任何經驗的人來說,這個太重要了,還有在學習項目是提升能力最快的方法。項目能把所有的知識點全都連到一起了,不再是分散的,而是形成一個整體了。那種感覺是僅僅深入鑽研知識點而不寫真實項目的人所不能體會的。一個項目就是一根繩子可以把大片的知識串到一起。 就這樣,我用了兩個月也把項目給學完了。其實學完教程差不錯就達到就業水平,但是我可能覺得自己學歷低還是把那10個頂級企業項目才去找工作。
於是我就到51job瘋狂的投簡歷,因為我學歷的問題,專科沒有畢業,說真的,大公司沒有人會要我,所以我投的都是民營的小公司,我希望自己的努力有所回報。沒有想過幾天過後,就有面試了,但是第一次面試我失敗了,雖然我自認為筆試很好,因為我之前做了准備,但是他們的要求比較嚴格,需要有一年的項目經驗,所以我沒有被選中。
後來陸續面試了幾家公司,終於功夫不負有心人。我終於面試上的,是在閔行的一家民營的企業,公司規模比較小,我的職務是php開發程序員,但我也比較滿足,開的工資是3500一個月,雖然我知道在上海3500隻能過溫飽的生活,但是我想我足夠了。我至少不用每天都要靠父母養,我自己也能養活自己的。我想只要我繼續努力,我工資一定會翻倍的。
把本文寫出來,希望能讓和我一樣的沒有基礎的朋友有信心,其實我們沒有必要自卑,我們不比別人笨,只要我們肯努力,我們一樣會成功。

……………………………………………………………………

希望你未來成為出色的php工程師。

9. php新手學習路線是怎樣的

第一階段:基礎階段(基礎PHP程序員)

重點:把LNMP搞熟練(核心是安裝配置基本操作) 目標:能夠完成基本的LNMP系統安裝,簡單配置維護;能夠做基本的簡單系統的PHP開發;能夠在PHP中型系統中支持某個PHP功能模塊的開發。

時間:完成本階段的時間因人而異,有的成長快半年一年就過了,成長慢的兩三年也有。

  1. Linux

    基本命令、操作、啟動、基本服務配置(包括rpm安裝文件,各種服務配置等);會寫簡單的shell腳本和awk/sed 腳本命令等。

  2. Nginx

    做到能夠安裝配置nginx+php,知道基本的nginx核心配置選項,知道 server/fastcgi_pass/access_log 等基礎配置,目標是能夠讓nginx+php_fpm順利工作。

  3. MySQL

    會自己搭建mysql,知道基本的mysql配置選項;知道innodb和myisam的區別,知道針對InnoDB和MyISAM兩個引擎的不同配置選項;知道基本的兩個引擎的差異和選擇上面的區別;能夠純手工編譯搭建一個MySQL資料庫並且配置好編碼等正常穩定運行;核心主旨是能夠搭建一個可運行的MySQL資料庫。

  4. PHP

    基本語法數組、字元串、資料庫、XML、Socket、GD/ImageMgk圖片處理等等;熟悉各種跟MySQL操作鏈接的api(mysql/mysqli/PDO),知道各種編碼問題的解決;知道常規熟練使用的PHP框架(ThinkPHP、Zendframework、Yii、Yaf等);了解基本MVC的運行機制和為什麼這么做,稍微知道不同的PHP框架之間的區別;能夠快速學習一個MVC框架。能夠知道開發工程中的文件目錄組織,有基本的良好的代碼結構和風格,能夠完成小系統的開發和中型系統中某個模塊的開發工作。

  5. 前端

    如果條件時間允許,可以適當學習下 HTML/CSS/JS 等相關知識,知道什麼web標准,div+css的web/wap頁面模式,知道HTML5和HTML4的區別;了解一些基本的前端只是和JS框架(jQuery之類的);了解一些基本的JavaScript編程知識;(本項不是必須項,如果有時間,稍微了解一下是可以的,不過不建議作為重點,除非個人有強烈興趣)。

  6. 系統設計

    能夠完成小型系統的基本設計,包括簡單的資料庫設計,能夠完成基本的:瀏覽器 -> Nginx+PHP -> 資料庫 架構的設計開發工作;能夠支撐每天幾十萬到數百萬流量網站的開發維護工作;

    第二階段:提高階段 (中級PHP程序員)

    重點:提高針對LNMP的技能,能夠更全面的對LNMP有熟練的應用。 目標:能夠隨時隨地搭建好LNMP環境,快速完成常規配置;能夠追查解決大部分遇到的開發和線上環境的問題;能夠獨立承擔中型系統的構架和開發工作;能夠在大型系統中承擔某個中型模塊的開發工作。

    1. Linux

    在第一階段的基礎上面,能夠流暢的使用Shell腳本來完成很多自動化的工作;awk/sed/perl 也操作的不錯,能夠完成很多文本處理和數據統計等工作;基本能夠安裝大部分非特殊的Linux程序(包括各種庫、包、第三方依賴等等,比如MongoDB/Redis/Sphinx/Luncene/SVN之類的);了解基本的Linux服務,知道如何查看Linux的性能指標數據,知道基本的Linux下面的問題跟蹤等。

    2. Nginx

    在第一階段的基礎上面,了解復雜一些的Nginx配置;包括 多核配置、events、proxy_pass,sendfile/tcp_*配置,知道超時等相關配置和性能影響;知道nginx除了web server,還能夠承擔代理伺服器、反向靜態伺服器等配置;知道基本的nginx配置調優;知道如何配置許可權、編譯一個nginx擴展到nginx;知道基本的nginx運行原理(master/worker機制,epoll),知道為什麼nginx性能比apache性能好等知識。

    3. MySQL/MongoDB

    在第一階段的基礎上面,在MySQL開發方面,掌握很多小技巧,包括常規SQL優化(group by/order by/rand優化等);除了能夠搭建MySQL,還能夠冷熱備份MySQL數據,還知道影響innodb/myisam性能的配置選項(比如key_buffer/query_cache/sort_buffer/innodb_buffer_pool_size/innodb_flush_log_at_trx_commit等),也知道這些選項配置成為多少值合適;另外也了解一些特殊的配置選項,比如 知道如何搭建mysql主從同步的環境,知道各個binlog_format的區別;知道MySQL的性能追查,包括slow_log/explain等,還能夠知道基本的索引建立處理等知識;原理方面了解基本的MySQL的架構(Server+存儲引擎),知道基本的InnoDB/MyISAM索引存儲結構和不同(聚簇索引,B樹);知道基本的InnoDB事務處理機制;了解大部分MySQL異常情況的處理方案(或者知道哪兒找到處理方案)。條件允許的情況,建議了解一下NoSQL的代表MongoDB資料庫,順便對比跟MySQL的差別,同事能夠在合適的應用場景安全謹慎的使用MongoDB,知道基本的PHP與MongoDB的結合開發。

    4. Redis/Memcached

    在大部分中型系統裡面一定會涉及到緩存處理,所以一定要了解基本的緩存;知道Memcached和Redis的異同和應用場景,能夠獨立安裝 Redis/Memcached,了解Memcahed的一些基本特性和限制,比如最大的value值,知道PHP跟他們的使用結合;Redis了解基本工作原理和使用,了解常規的數據類型,知道什麼場景應用什麼類型,了解Redis的事務等等。原理部分,能夠大概了解Memcached的內存結構(slab機制),redis就了解常用數據類型底層實現存儲結構(SDS/鏈表/SkipList/HashTable)等等,順便了解一下Redis的事務、RDB、AOF等機制更好。

    5. PHP

    除了第一階段的能力,安裝配置方面能夠隨意安裝PHP和各種第三方擴展的編譯安裝配置;了解php-fpm的大部分配置選項和含義(如max_requests/max_children/request_terminate_timeout之類的影響性能的配置),知道mod_php/fastcgi的區別;在PHP方面已經能夠熟練各種基礎技術,還包括各種深入些的PHP,包括對PHP面向對象的深入理解/SPL/語法層面的特殊特性比如反射之類的;在框架方面已經閱讀過最少一個以上常規PHP MVC框架的代碼了,知道基本PHP框架內部實現機制和設計思想;在PHP開發中已經能夠熟練使用常規的設計模式來應用開發(抽象工廠/單例/觀察者/命令鏈/策略/適配器 等模式);建議開發自己的PHP MVC框架來充分讓開發自由化,讓自己深入理解MVC模式,也讓自己能夠在業務項目開發里快速升級;熟悉PHP的各種代碼優化方法,熟悉大部分PHP安全方面問題的解決處理;熟悉基本的PHP執行的機制原理(Zend引擎/擴展基本工作機制)。

    6. C/C++

    開始涉獵一定的C/C++語言,能夠寫基本的C/C++代碼,對基本的C/C++語法熟悉(指針、數組操作、字元串、常規標准API)和數據結構(鏈表、樹、哈希、隊列)有一定的熟悉下;對Linux下面的C語言開發有基本的了解概念,會簡單的makefile文件編寫,能夠使用簡單的GCC/GDB的程序編譯簡單調試工作;對基本的網路編程有大概了解。(本項是為了向更高層次打下基礎)。

    7. 前端

    在第一階段的基礎上面,熟悉基本的HTTP協議(協議代碼200/300/400/500,基本的HTTP交互頭);條件允許,可以在深入寫出稍微優雅的HTML+CSS+JavaScript,或者能夠大致簡單使用某些前端框架(jQuery/YUI/ExtJS/RequireJS/BootStrap之類);如果條件允許,可以深入學習JavaScript編程,比如閉包機制、DOM處理;再深入些可以讀讀jQuery源碼做深入學習。(本項不做重點學習,除非對前端有興趣)。

    8. 系統設計

    能夠設計大部分中型系統的網站架構、資料庫、基本PHP框架選型;性能測試排查處理等;能夠完成類似:瀏覽器 -> CDN(Squid) -> Nginx+PHP -> 緩存 -> 資料庫 結構網站的基本設計開發維護;能夠支撐每天數百萬到千萬流量基本網站的開發維護工作;

    第三階段:高級階段 (高級PHP程序員)

    重點:除了基本的LNMP程序,還能夠在某個方向或領域有深入學習。(縱深維度發展) 目標:除了能夠完成基本的PHP業務開發,還能夠解決大部分深入復雜的技術問題,並且可以獨立設計完成中大型的系統設計和開發工作;自己能夠獨立hold深入某個技術方向,在這塊比較專業。(比如在MySQL、Nginx、PHP、Redis等等任一方向深入研究)

    1. Linux

    除了第二階段的能力,在Linux下面除了常規的操作和性能監控跟蹤,還能夠使用很多高級復雜的命令完成工作(watch/tcpmp/starce/ldd/ar等);在shell腳本方面,已經能夠編寫比較復雜的shell腳本(超過500行)來協助完成很多包括備份、自動化處理、監控等工作的shell;對awk/sed/perl 等應用已經如火純青,能夠隨意操作控制處理文本統計分析各種復雜格式的數據;對Linux內部機制有一些了解,對內核模塊載入,啟動錯誤處理等等有個基本的處理;同時對一些其他相關的東西也了解,比如NFS、磁碟管理等等;

    2. Nginx

    在第二階段的基礎上面,已經能夠把Nginx操作的很熟練,能夠對Nginx進行更深入的運維工作,比如監控、性能優化,復雜問題處理等等;看個人興趣,更多方面可以考慮側重在關於Nginx工作原理部分的深入學習,主要表現在閱讀源碼開始,比如具體的master/worker工作機制,Nginx內部的事件處理,內存管理等等;同時可以學習Nginx擴展的開發,可以定製一些自己私有的擴展;同時可以對Nginx+Lua有一定程度的了解,看看是否可以結合應用出更好模式;這個階段的要求是對Nginx原理的深入理解,可以考慮成為Nginx方向的深入專業者。

    3. MySQL/MongoDB

    在第二階段的基礎上面,在MySQL應用方面,除了之前的基本SQL優化,還能夠在完成一些復雜操作,比如大批量數據的導入導出,線上大批量數據的更改表結構或者增刪索引欄位等等高危操作;除了安裝配置,已經能夠處理更多復雜的MySQL的問題,比如各種問題的追查,主從同步延遲問題的解決、跨機房同步數據方案、MySQL高可用架構等都有涉及了解;對MySQL應用層面,對MySQL的核心關鍵技術比較熟悉,比如事務機制(隔離級別、鎖等)、對觸發器、分區等技術有一定了解和應用;對MySQL性能方面,有包括磁碟優化(SAS遷移到SSD)、伺服器優化(內存、伺服器本身配置)、除了二階段的其他核心性能優化選項(innodb_log_buffer_size/back_log/table_open_cache/thread_cache_size/innodb_lock_wait_timeout等)、連接池軟體選擇應用,對show *(show status/show profile)類的操作語句有深入了解,能夠完成大部分的性能問題追查;MySQL備份技術的深入熟悉,包括災備還原、對Binlog的深入理解,冷熱備份,多IDC備份等;在MySQL原理方面,有更多了解,比如對MySQL的工作機制開始閱讀部分源碼,比如對主從同步(復制)技術的源碼學習,或者對某個存儲引擎(MyISAM/Innodb/TokuDB)等等的源碼學習理解,如果條件允許,可以參考CSV引擎開發自己簡單的存儲引擎來保存一些數據,增強對MySQL的理解;在這個過程,如果自己有興趣,也可以考慮往DBA方向發展。MongoDB層面,可以考慮比如說在寫少讀多的情況開始在線上應用MongoDB,或者是做一些線上的數據分析處理的操作,具體場景可以按照工作來,不過核心是要更好的深入理解RMDBS和NoSQL的不同場景下面的應用,如果條件或者興趣允許,可以開始深入學習一下MongoDB的工作機制。

    4. Redis/Memcached

    在第二階段的基礎上面,能夠更深入的應用和學習。因為Memcached不是特別復雜,建議可以把源碼進行閱讀,特別是內存管理部分,方便深入理解;Redis部分,可以多做一些復雜的數據結構的應用(zset來做排行榜排序操作/事務處理用來保證原子性在秒殺類場景應用之類的使用操作);多涉及aof等同步機制的學習應用,設計一個高可用的Redis應用架構和集群;建議可以深入的學習一下Redis的源碼,把在第二階段積累的知識都可以應用上,特別可以閱讀一下包括核心事件管理、內存管理、內部核心數據結構等充分學習了解一下。如果興趣允許,可以成為一個Redis方面非常專業的使用者。

    5. PHP

    作為基礎核心技能,我們在第二階段的基礎上面,需要有更深入的學習和應用。從基本代碼應用上面來說,能夠解決在PHP開發中遇到95%的問題,了解大部分PHP的技巧;對大部分的PHP框架能夠迅速在一天內上手使用,並且了解各個主流PHP框架的優缺點,能夠迅速方便項目開發中做技術選型;在配置方面,除了常規第二階段會的知識,會了解一些比較偏門的配置選項(php auto_prepend_file/auto_append_file),包括擴展中的一些復雜高級配置和原理(比如memcached擴展配置中的memcache.hash_strategy、apc擴展配置中的apc.mmap_file_mask/apc.slam_defense/apc.file_update_protection之類的);對php的工作機制比較了解,包括php-fpm工作機制(比如php-fpm在不同配置機器下面開啟進程數量計算以及原理),對zend引擎有基本熟悉(vm/gc/stream處理),閱讀過基本的PHP內核源碼(或者閱讀過相關文章),對PHP內部機制的大部分核心數據結構(基礎類型/Array/Object)實現有了解,對於核心基礎結構(zval/hashtable/gc)有深入學習了解;能夠進行基本的PHP擴展開發,了解一些擴展開發的中高級知識(minit/rinit等),熟悉php跟apache/nginx不同的通信交互方式細節(mod_php/fastcgi);除了開發PHP擴展,可以考慮學習開發Zend擴展,從更底層去了解PHP。

    6. C/C++

    在第二階段基礎上面,能夠在C/C++語言方面有更深入的學習了解,能夠完成中小型C/C++系統的開發工作;除了基本第二階段的基礎C/C++語法和數據結構,也能夠學習一些特殊數據結構(b-tree/rb-tree/skiplist/lsm-tree/trie-tree等)方便在特殊工作中需求;在系統編程方面,熟悉多進程、多線程編程;多進程情況下面了解大部分多進程之間的通信方式,能夠靈活選擇通信方式(共享內存/信號量/管道等);多線程編程能夠良好的解決鎖沖突問題,並且能夠進行多線程程序的開發調試工作;同時對網路編程比較熟悉,了解多進程模型/多線程模型/非同步網路IO模型的差別和選型,熟悉不同非同步網路IO模型的原理和差異(select/poll/epoll/iocp等),並且熟悉常見的非同步框架(ACE/ICE/libev/libevent/libuv/Boost.ASIO等)和使用,如果閑暇也可以看看一些國產自己開發的庫(比如muo);同時能夠設計好的高並發程序架構(leader-follow/master-worker等);了解大部分C/C++後端Server開發中的問題(內存管理、日誌列印、高並發、前後端通信協議、服務監控),知道各個後端服務RPC通信問題(struct/http/thirft/protobuf等);能夠更熟絡的使用GCC和GDB來開發編譯調試程序,在線上程序core掉後能夠迅速追查跟蹤解決問題;通用模塊開發方面,可以積累或者開發一些通用的工具或庫(比如非同步網路框架、日誌庫、內存池、線程池等),不過開發後是否應用要謹慎,省的埋坑去追bug。

    7. 前端

    深入了解HTTP協議(包括各個細致協議特殊協議代碼和背後原因,比如302靜態文件緩存了,502是nginx後面php掛了之類的);除了之前的前端方面的各種框架應用整合能力,前端方面的學習如果有興趣可以更深入,表現形式是,可以自己開發一些類似jQuery的前端框架,或者開發一個富文本編輯器之類的比較瑣碎考驗JavaScript功力。

    8. 其他領域語言學習

    在基礎的PHP/C/C++語言方面有基本積累,建議在當前階段可以嘗試學習不同的編程語言,看個人興趣愛好,腳本類語言可以學學 Python/Ruby 之類的,函數式編程語言可以試試 Lisp/Haskell/Scala/Erlang 之類的,靜態語言可以試試 Java/Golang,數據統計分析可以了解了解R語言,如果想換個視角做後端業務,可以試試 Node.js還有前面提到的跟Nginx結合的Nginx_Lua等。學習不同的語言主要是提升自己的視野和解決問題手段的差異,比如會了解除了進程/線程,還有輕量級協程;比如在跨機器通信場景下面,Erlang的解決方案簡單的驚人;比如在不想選擇C/C++的情況下,還有類似高效的Erlang/Golang可用等等;主要是提升視野。

    9. 其他專業方向學習

    在本階段裡面,會除了基本的LNMP技能之外,會考慮一些其他領域知識的學習,這些都是可以的,看個人興趣和長期的目標方向。目前情況能夠選擇的領域比較多,比如、雲計算(分布式存儲、分布式計算、虛擬機等),機器學習(數據挖掘、模式識別等,應用到統計、個性化推薦),自然語言處理(中文分詞等),搜索引擎技術、圖形圖像、語音識別等等。除了這些高大上的,也有很多偏工程方面可以學習的地方,比如高性能系統、移動開發(Android/IOS)、計算機安全、嵌入式系統、硬體等方向。

    10. 系統設計

    系統設計在第二階段的基礎之上,能夠應用掌握的經驗技能,設計出比較復雜的中大型系統,能夠解決大部分線上的各種復雜系統的問題,完成類似 瀏覽器 -> CDN -> 負載均衡 ->接入層 -> Nginx+PHP -> 業務緩存 -> 資料庫 -> 各路復雜後端RPC交互(存儲後端、邏輯後端、反作弊後端、外部服務) -> 更多後端 醬紫的復雜業務;能夠支撐每天數千萬到數億流量網站的正常開發維護工作。

閱讀全文

與php技術路線相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:757
蘋果郵件無法連接伺服器地址 瀏覽:963
phpffmpeg轉碼 瀏覽:671
長沙好玩的解壓項目 瀏覽:145
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:737
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:485
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:382
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:349
風翼app為什麼進不去了 瀏覽:778
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:150
伊克塞爾文檔怎麼進行加密 瀏覽:892
app轉賬是什麼 瀏覽:163