php mvc框架實(shí)戰(zhàn)教程了解基本MVC的運(yùn)行機(jī)制和為什么這么做對(duì)照設(shè)定學(xué)習(xí)成長目標(biāo)php mvc框架
2022-01-25
根據(jù)眾多PHP/LNMP程序員的發(fā)展軌跡,結(jié)合個(gè)人經(jīng)驗(yàn),抽象出很多程序員對(duì)未來的迷茫,尤其是技術(shù)學(xué)習(xí)的盲目和恐慌,簡要梳理了PHP程序員各個(gè)階段的技術(shù)需求. , 幫助許多 PHP 程序進(jìn)行比較以設(shè)定學(xué)習(xí)和成長目標(biāo)。本文根據(jù)目前的主流技術(shù)做了一個(gè)基本的梳理。整體是基于PHP程序員基礎(chǔ)不是很扎實(shí)的假設(shè),所有的設(shè)置都非常具體和清晰,可能會(huì)讓人覺得不舒服。請(qǐng)理解,它僅代表家庭用語。(未來的技術(shù)變化不在討論范圍內(nèi))
第一階段:基礎(chǔ)階段(初級(jí) PHP 程序員)
重點(diǎn):精通LNMP(核心是安裝配置的基本操作)
目標(biāo):能夠完成基本的LNMP系統(tǒng)安裝,簡單的配置和維護(hù);能夠做一個(gè)簡單系統(tǒng)的基本PHP開發(fā);能夠支持PHP中型系統(tǒng)中PHP功能模塊的開發(fā)。
時(shí)間:完成這個(gè)階段的時(shí)間因人而異。有的長到半年一年,有的慢慢長了兩三年。
1.:
基本命令、操作、啟動(dòng)、基本服務(wù)配置(包括rpm安裝文件、各種服務(wù)配置等);可以編寫簡單的腳本和awk/sed腳本命令等。
2.:
能夠安裝和配置+php,了解基本的核心配置選項(xiàng),了解//等基本配置,目標(biāo)是讓+順利運(yùn)行。
3.:
可以自己搭建,了解基本的配置選項(xiàng);了解和之間的區(qū)別,了解和兩個(gè)引擎的不同配置選項(xiàng);了解兩種引擎的基本區(qū)別以及上述選擇的區(qū)別;能夠手工編譯建庫并配置編碼等,運(yùn)行正常穩(wěn)定;核心主題是能夠構(gòu)建一個(gè)可運(yùn)行的數(shù)據(jù)庫。
4.PHP:
基本語法數(shù)組、字符串、數(shù)據(jù)庫、XML、GD/圖像處理等;熟悉與操作相關(guān)的各種api(//PDO),懂得解決各種編碼問題;了解熟悉的 PHP 框架(、、、Yii、Yaf 等);了解基本MVC的運(yùn)行機(jī)制以及為什么要這樣做,對(duì)不同PHP框架之間的區(qū)別有所了解;能夠快速學(xué)習(xí)一個(gè)MVC框架。能夠了解開發(fā)項(xiàng)目中的文件目錄組織,具備基本良好的代碼結(jié)構(gòu)和風(fēng)格,能夠完成小型系統(tǒng)和中型系統(tǒng)的模塊開發(fā)。
5.前端:
如果時(shí)間允許,可以適當(dāng)學(xué)習(xí)HTML/CSS/JS等相關(guān)知識(shí),了解什么web標(biāo)準(zhǔn),div+css的web/wap頁面模式,以及區(qū)別;了解一些基本的前端和JS框架(等);了解一些基本的編程知識(shí);(這個(gè)項(xiàng)目不是必須的,如果你有時(shí)間,稍微了解一下也沒關(guān)系,但不建議作為重點(diǎn),除非你有強(qiáng)烈的興趣)
6.系統(tǒng)設(shè)計(jì):
能夠完成小型系統(tǒng)的基礎(chǔ)設(shè)計(jì),包括簡單的數(shù)據(jù)庫設(shè)計(jì),能夠完成基礎(chǔ)的:瀏覽器->+PHP->數(shù)據(jù)庫架構(gòu)設(shè)計(jì)開發(fā)工作;能夠支持每天幾十萬到幾百萬流量網(wǎng)站的開發(fā)和維護(hù)工作
第 2 階段:改進(jìn)階段(中級(jí) PHP 程序員)
重點(diǎn):提高LNMP的技能,能夠?qū)NMP有更全面、更熟練的應(yīng)用。
目標(biāo):能夠隨時(shí)隨地搭建LNMP環(huán)境,快速完成日常配置;能夠追蹤和解決開發(fā)和在線環(huán)境中遇到的大部分問題;能夠獨(dú)立承擔(dān)中型系統(tǒng)的框架和開發(fā);能夠承擔(dān)一定的大型系統(tǒng)中型模塊的開發(fā);
1. :
在第一階段的基礎(chǔ)上,可以流暢地使用腳本完成很多自動(dòng)化任務(wù);awk/sed/perl 也很好用,可以完成大量的文本處理和數(shù)據(jù)統(tǒng)計(jì);基本上你可以安裝大多數(shù)非特殊程序。(包括各種庫、包、第三方依賴等,如////SVN等);了解基本服務(wù),了解如何查看性能指標(biāo)數(shù)據(jù),了解以下基本問題跟蹤。
2. :
在第一階段的基礎(chǔ)上,了解更復(fù)雜的配置;包括多核配置,,, /tcp_* 配置,了解超時(shí)等相關(guān)配置和性能影響;知道除了web,還可以承接代理服務(wù)器、反向靜態(tài)服務(wù)器等配置;了解基本的配置調(diào)優(yōu);知道如何配置權(quán)限,編譯擴(kuò)展;知道基本的工作原理(/機(jī)制,),知道為什么性能優(yōu)于性能等;
3. /:
在第一階段的基礎(chǔ)上,在開發(fā)方面,掌握很多小技巧,包括常規(guī)SQL優(yōu)化(by/by/rand優(yōu)化等);除了可以構(gòu)建之外,還可以冷熱備份數(shù)據(jù),知道影響/性能的配置選項(xiàng)(如///ize/等),也知道這些選項(xiàng)配置成什么值合適的; 另外,知道一些特殊的配置選項(xiàng),比如知道如何搭建主從同步環(huán)境,知道它們之間的區(qū)別;了解性能跟蹤,包括/等,還可以了解索引建立和處理的基本知識(shí);基本了解基本架構(gòu)(+存儲(chǔ)引擎),了解基本/索引存儲(chǔ)結(jié)構(gòu)及區(qū)別(聚集索引、B-tree);了解基本的事務(wù)處理機(jī)制;知道如何處理大多數(shù)異常(或知道在哪里可以找到它們)。如果條件允許,建議了解一下有代表性的數(shù)據(jù)庫,順便比較一下差異。同事可以在合適的應(yīng)用場景中安全謹(jǐn)慎的使用,了解PHP基礎(chǔ)和PHP開發(fā)的結(jié)合。
4. /:
在大多數(shù)中型系統(tǒng)中,肯定會(huì)涉及到緩存處理,所以必須了解基本的緩存;了解和應(yīng)用場景的異同,能夠獨(dú)立安裝/了解一些基本的特性和限制,比如最大值,了解PHP和它們的結(jié)合使用;了解基本工作原理和使用,了解一般數(shù)據(jù)類型,了解在什么場景下使用什么類型,了解事務(wù)等等。原理部分可以大致了解內(nèi)存結(jié)構(gòu)(slab機(jī)制),了解常見數(shù)據(jù)類型的底層實(shí)現(xiàn)存儲(chǔ)結(jié)構(gòu)(SDS/鏈表//)等,順便了解一下機(jī)制比較好事務(wù)、RDB、AOF 等
5. PHP:
除了第一階段的能力,安裝配置可以自由安裝PHP和各種第三方擴(kuò)展的編譯安裝配置;了解php-fpm的大部分配置選項(xiàng)和含義(如//等影響性能的配置),知道/區(qū)別;在PHP方面,他已經(jīng)能夠精通各種基礎(chǔ)技術(shù),包括各種深入的PHP,包括深入理解PHP面向?qū)ο?SPL/語法層面的反射等特殊特性;閱讀過至少一個(gè)常規(guī)PHP MVC框架的代碼,了解PHP基礎(chǔ)框架的內(nèi)部實(shí)現(xiàn)機(jī)制和設(shè)計(jì)思路;在PHP開發(fā)中,熟練使用常規(guī)設(shè)計(jì)模式進(jìn)行應(yīng)用開發(fā)(抽象工廠/單例/觀察者/命令鏈/策略/適配器等模式);建議開發(fā)自己的PHP MVC框架,全面放開開發(fā),讓自己深入了解MVC模式,讓自己在業(yè)務(wù)項(xiàng)目開發(fā)中快速升級(jí);熟悉PHP中的各種代碼優(yōu)化方法,熟悉大部分PHP安全問題的解決方案;熟悉PHP執(zhí)行的基本機(jī)制(Zend引擎/擴(kuò)展的基本工作機(jī)制);并讓自己在業(yè)務(wù)項(xiàng)目開發(fā)中快速升級(jí);熟悉PHP中的各種代碼優(yōu)化方法,熟悉大部分PHP安全問題的解決方案;熟悉PHP執(zhí)行的基本機(jī)制(Zend引擎/擴(kuò)展的基本工作機(jī)制);并讓自己在業(yè)務(wù)項(xiàng)目開發(fā)中快速升級(jí);熟悉PHP中的各種代碼優(yōu)化方法,熟悉大部分PHP安全問題的解決方案;熟悉PHP執(zhí)行的基本機(jī)制(Zend引擎/擴(kuò)展的基本工作機(jī)制);
6. C/C++:
開始涉足某種C/C++語言,能夠編寫基本的C/C++代碼,熟悉基本的C/C++語法(指針、數(shù)組操作、字符串、常規(guī)標(biāo)準(zhǔn)API)和數(shù)據(jù)結(jié)構(gòu)(鏈表、樹、 hash, ) 有一定的熟悉度;對(duì)以下C語言開發(fā)概念有基本的了解,能編寫簡單的文件,能使用簡單的GCC/GDB程序編譯和簡單的調(diào)試;對(duì)基本的網(wǎng)絡(luò)編程有一個(gè)大致的了解。(此項(xiàng)目是為更高水平打下基礎(chǔ))
7. 前端:
在第一階段的基礎(chǔ)上,熟悉基本的HTTP協(xié)議(協(xié)議代碼200/300/400/500,基本的HTTP交互頭);如果條件允許,可以深入編寫稍微優(yōu)雅的HTML+CSS+,也可以大致簡單使用一些前端框架(/YUI///等);如果條件允許,可以深入學(xué)習(xí)編程,比如閉包機(jī)制、DOM處理;再深入一點(diǎn),可以閱讀源碼進(jìn)行深度學(xué)習(xí)。(本項(xiàng)目不側(cè)重學(xué)習(xí),除非對(duì)前端感興趣)
8. 系統(tǒng)設(shè)計(jì):
能夠設(shè)計(jì)大部分中型系統(tǒng)的網(wǎng)站架構(gòu)、數(shù)據(jù)庫、基礎(chǔ)PHP框架選型;性能測試調(diào)查處理等;能夠完成網(wǎng)站的基本設(shè)計(jì)類似:瀏覽器->CDN()->+PHP->緩存->數(shù)據(jù)庫結(jié)構(gòu)網(wǎng)站的開發(fā)和維護(hù);可支持日百萬至千萬流量基礎(chǔ)網(wǎng)站的開發(fā)和維護(hù)
第 3 階段:高級(jí)階段(高級(jí) PHP 程序員)
重點(diǎn):除了基礎(chǔ)的LNMP程序外,還可以對(duì)某個(gè)方向或領(lǐng)域進(jìn)行深度學(xué)習(xí)。(深維度開發(fā))
目標(biāo):除了能夠完成基礎(chǔ)的PHP業(yè)務(wù)開發(fā)外,還能夠解決最深入復(fù)雜的技術(shù)問題,能夠獨(dú)立設(shè)計(jì)并完成中大型系統(tǒng)的設(shè)計(jì)開發(fā)工作;能夠獨(dú)立持有并深入某個(gè)技術(shù)方向,在這個(gè)比較專業(yè)。(如任一方向的深入研究、、PHP等)
1. :
除了第二階段的能力,除了常規(guī)的操作和性能監(jiān)控跟蹤,還可以使用很多高級(jí)復(fù)雜的命令來完成工作(///ldd/ar等);在腳本方面,編寫了更復(fù)雜的腳本(500多行),以協(xié)助完成包括備份、自動(dòng)化處理、監(jiān)控等在內(nèi)的許多任務(wù);awk/sed/perl等應(yīng)用已經(jīng)如火如荼,可以隨意操作控制文本統(tǒng)計(jì),分析各種復(fù)雜格式的數(shù)據(jù);對(duì)機(jī)制有一定了解,對(duì)內(nèi)核模塊加載、啟動(dòng)錯(cuò)誤處理等有基本的了解;同時(shí),我也了解了一些其他相關(guān)的東西,比如NFS、磁盤管理等;
2. :
在第二階段的基礎(chǔ)上,已經(jīng)能夠非常熟練地操作,可以進(jìn)行更深入的運(yùn)維工作,比如監(jiān)控、性能優(yōu)化、復(fù)雜問題處理等;看個(gè)人興趣,更多方面可以考慮重點(diǎn)研究工作原理的深入研究主要體現(xiàn)在開始閱讀源碼php mvc框架實(shí)戰(zhàn)教程,比如具體/工作機(jī)制、內(nèi)部事件處理、內(nèi)存管理等.; 同時(shí)可以學(xué)習(xí)擴(kuò)展的開發(fā),可以自定義一些自己的私有擴(kuò)展;對(duì)lua有一定的了解,看看能不能結(jié)合應(yīng)用更好的模型;這個(gè)階段的要求是對(duì)原理的深刻理解,
3. /:
在第二階段的基礎(chǔ)上,在應(yīng)用方面,除了之前的基礎(chǔ)SQL優(yōu)化外,還可以完成一些復(fù)雜的操作,比如導(dǎo)入導(dǎo)出大數(shù)據(jù),改變?cè)诰€大數(shù)據(jù)的表結(jié)構(gòu),或添加或刪除索引字段等高風(fēng)險(xiǎn)操作;除了安裝和配置之外,已經(jīng)能夠處理更復(fù)雜的問題,比如排查各種問題,解決主從同步延遲問題,跨機(jī)房同步數(shù)據(jù)解決方案,高可用架構(gòu)等. 所有涉及的理解;應(yīng)用層,熟悉事務(wù)機(jī)制(隔離層、鎖等)等核心關(guān)鍵技術(shù),對(duì)觸發(fā)器有一定的了解和應(yīng)用,分區(qū)和其他技術(shù);性能方面,除了第二階段,還包括磁盤優(yōu)化(SAS遷移到SSD)、服務(wù)器優(yōu)化(內(nèi)存、服務(wù)器配置)、其他核心性能優(yōu)化選項(xiàng)(ze////eout等),連接池軟件選型應(yīng)用,深入了解show*(show /show)類的操作語句,能夠完成大部分性能問題的追溯;深入熟悉備份技術(shù),包括容災(zāi)與恢復(fù),深入理解權(quán)、冷熱備份、多IDC備份等;在原理方面,有更多的了解,比如正確的工作機(jī)制,開始閱讀部分源碼,比如學(xué)習(xí)主從同步(復(fù)制)技術(shù)的源碼,或者學(xué)習(xí)理解某個(gè)存儲(chǔ)引擎的源碼(//)等。如果條件允許,可以參考CSV引擎開發(fā)自己的簡單存儲(chǔ)引擎來保存一些數(shù)據(jù),增強(qiáng)理解;在這個(gè)過程中,如果你有興趣,也可以考慮向DBA方向發(fā)展。層面上可以考慮,比如在少寫多讀的情況下啟動(dòng)在線應(yīng)用,或者做一些在線數(shù)據(jù)分析處理操作。具體的場景可以根據(jù)工作而定,但核心是為了更好的理解區(qū)別對(duì)于場景下的應(yīng)用,如果有條件或者興趣允許,可以開始深入了解工作機(jī)制。可以參考CSV引擎開發(fā)自己的簡單存儲(chǔ)引擎來保存一些數(shù)據(jù),增強(qiáng)理解;在這個(gè)過程中,如果你有興趣,也可以考慮向DBA方向發(fā)展。層面上可以考慮,比如在少寫多讀的情況下啟動(dòng)在線應(yīng)用,或者做一些在線數(shù)據(jù)分析處理操作。具體的場景可以根據(jù)工作而定,但核心是為了更好的理解區(qū)別對(duì)于場景下的應(yīng)用,如果有條件或者興趣允許,可以開始深入了解工作機(jī)制??梢詤⒖糃SV引擎開發(fā)自己的簡單存儲(chǔ)引擎來保存一些數(shù)據(jù),增強(qiáng)理解;在這個(gè)過程中,如果你有興趣,也可以考慮向DBA方向發(fā)展。層面上可以考慮,比如在少寫多讀的情況下啟動(dòng)在線應(yīng)用,或者做一些在線數(shù)據(jù)分析處理操作。具體的場景可以根據(jù)工作而定,但核心是為了更好的理解區(qū)別對(duì)于場景下的應(yīng)用,如果有條件或者興趣允許,可以開始深入了解工作機(jī)制。比如在少寫多讀的情況下啟動(dòng)在線應(yīng)用小程序開發(fā),或者做一些在線數(shù)據(jù)分析和處理操作。具體的場景可以根據(jù)工作而定,但核心是為了更好的理解區(qū)別對(duì)于場景下的應(yīng)用,如果有條件或者興趣允許,可以開始深入了解工作機(jī)制。比如在少寫多讀的情況下啟動(dòng)在線應(yīng)用,或者做一些在線數(shù)據(jù)分析和處理操作。具體的場景可以根據(jù)工作而定,但核心是為了更好的理解區(qū)別對(duì)于場景下的應(yīng)用,如果有條件或者興趣允許,可以開始深入了解工作機(jī)制。
4. /:
在第二階段的基礎(chǔ)上,可以更深入地應(yīng)用和學(xué)習(xí)。因?yàn)椴皇翘貏e復(fù)雜,建議閱讀源碼,尤其是內(nèi)存管理部分,便于深入理解;部分,可以做更多復(fù)雜數(shù)據(jù)結(jié)構(gòu)的應(yīng)用(zset用于排序排序操作/事務(wù)處理用于保證原子性秒殺場景應(yīng)用等使用操作);大部分學(xué)習(xí)應(yīng)用涉及到aof等同步機(jī)制,設(shè)計(jì)了高可用的應(yīng)用架構(gòu)和集群;建議深入研究源碼,利用第二階段積累的知識(shí)??梢詰?yīng)用,特別是可以閱讀核心事件管理、內(nèi)存管理、內(nèi)部核心數(shù)據(jù)結(jié)構(gòu)等。充分學(xué)習(xí)和理解。如果興趣允許,你可以成為一個(gè)非常專業(yè)的用戶。
5. PHP:
作為基本核心技能,我們需要在第二階段的基礎(chǔ)上進(jìn)行更深入的學(xué)習(xí)和應(yīng)用。從基礎(chǔ)代碼應(yīng)用的角度,可以解決PHP開發(fā)中遇到的95%的問題,了解大部分的PHP技巧;大部分PHP框架一天之內(nèi)就能快速上手,了解各種主流PHP框架的優(yōu)勢(shì)。缺點(diǎn)是在項(xiàng)目開發(fā)中可以快速方便地進(jìn)行技術(shù)選擇;配置方面,除了常規(guī)二階段會(huì)的知識(shí)外,還會(huì)了解一些比較局部的配置選項(xiàng)(php/),包括擴(kuò)展中的一些復(fù)雜的高級(jí)配置和原理(如擴(kuò)展配置中的.apc,apc) apc擴(kuò)展配置中的./apc./apc.on等);對(duì)php的工作機(jī)制有了更深入的了解,包括php-fpm的工作機(jī)制(比如php-fpm在不同的配置機(jī)器下我們開始計(jì)算進(jìn)程數(shù)和原理),對(duì)zend引擎(vm/gc/),閱讀基礎(chǔ)PHP內(nèi)核源碼(或閱讀相關(guān)文章),了解PHP內(nèi)部機(jī)制(基礎(chǔ)Type//)實(shí)現(xiàn)的大部分核心數(shù)據(jù)結(jié)構(gòu),深入學(xué)習(xí)理解核心基礎(chǔ)設(shè)施(zval//gc);能夠進(jìn)行基本的PHP擴(kuò)展開發(fā),了解一些擴(kuò)展開發(fā)(/等)的中高級(jí)知識(shí),熟悉php和/的區(qū)別以及通信交互的細(xì)節(jié)(/);除了開發(fā) PHP 擴(kuò)展,
6. C/C++:
在第二階段的基礎(chǔ)上,可以對(duì)C/C++語言有更深入的了解,可以完成中小型C/C++系統(tǒng)的開發(fā);除了第二階段的基本C/C++語法和數(shù)據(jù)結(jié)構(gòu),還可以學(xué)習(xí)一些特殊的數(shù)據(jù)結(jié)構(gòu)(b-tree/rb-tree//lsm-tree/trie-tree等),方便特殊的工作需要;系統(tǒng)編程,熟悉多進(jìn)程、多線程編程;一些多進(jìn)程通信方式可以靈活選擇通信方式(共享內(nèi)存/信號(hào)量/管道等);多線程編程可以很好的解決鎖沖突問題,可以開發(fā)調(diào)試多線程程序;熟悉編程,了解多進(jìn)程模型/多線程模型/異步網(wǎng)絡(luò)IO模型的區(qū)別和選擇,熟悉不同異步網(wǎng)絡(luò)IO模型(/poll//iocp等)的原理和區(qū)別,熟悉常用的異步框架(ACE /ICE////.ASIO等)和使用,有空的話有時(shí)間,也可以看看一些國內(nèi)自研的庫(例如);同時(shí)可以設(shè)計(jì)高并發(fā)程序架構(gòu)(-/-等);了解C++后端開發(fā)中的大部分C/問題(內(nèi)存管理、日志打印、高并發(fā)、前后端通信協(xié)議、服務(wù)監(jiān)控),了解各個(gè)后端服務(wù)的RPC通信問題(/http/ /, 等等。); 比較熟悉使用 GCC 和 GDB 用于開發(fā)、編譯和調(diào)試程序。在線程序的核心掉線后,問題可以快速追蹤解決。在通用模塊開發(fā)方面,
7. 前端:
深入了解HTTP協(xié)議(包括各個(gè)詳細(xì)協(xié)議的特殊協(xié)議代碼及其背后的原因,比如302靜態(tài)文件被緩存,502是后面php掛了等等);除了之前的前端框架應(yīng)用集成能力php mvc框架實(shí)戰(zhàn)教程,前端方面如果有興趣學(xué)習(xí),可以深入了解。形式是可以自己開發(fā)一些類似的前端框架,或者開發(fā)一個(gè)比較瑣碎的技能測試比如富文本編輯器;
8. 其他領(lǐng)域的語言學(xué)習(xí):
我對(duì)基本的PHP/C/C++語言有基本的積累。建議現(xiàn)階段可以嘗試學(xué)習(xí)不同的編程語言,根據(jù)個(gè)人愛好,可以學(xué)習(xí)腳本語言/Ruby等,函數(shù)式編程語言可以嘗試Lisp///諸如此類,靜態(tài)語言可以嘗試Java/,數(shù)據(jù)統(tǒng)計(jì)分析可以學(xué)習(xí)R語言。如果你想從不同的角度做后端業(yè)務(wù),可以試試 Node.js 和前面提到的組合等等。. 學(xué)習(xí)不同的語言主要是為了提高自己的視野和解決問題方法的差異。比如你會(huì)明白,除了進(jìn)程/線程之外,還有輕量級(jí)的協(xié)程;例如,在跨機(jī)通信場景中,解決方案非常簡單;在不想選擇C/C++的情況下,有類似的效率/可用等;主要是改善視力。
9. 其他專業(yè):
在這個(gè)階段,除了基本的LNMP技能外,還會(huì)考慮學(xué)習(xí)一些其他的領(lǐng)域知識(shí)。這些都是可能的,取決于個(gè)人興趣和長期目標(biāo)。目前可供選擇的領(lǐng)域很多網(wǎng)站開發(fā),如云計(jì)算(分布式存儲(chǔ)、分布式計(jì)算、虛擬機(jī)等)、機(jī)器學(xué)習(xí)(數(shù)據(jù)挖掘、模式識(shí)別等,應(yīng)用于統(tǒng)計(jì)、個(gè)性化推薦)、自然語言處理(中文分詞等)、搜索引擎技術(shù)、圖形圖像、語音識(shí)別等。除了這些高級(jí)的,還有很多地方可以學(xué)工程,比如高性能系統(tǒng)、移動(dòng)開發(fā)(/iOS)、計(jì)算機(jī)安全、嵌入式系統(tǒng)、硬件等。
10.系統(tǒng)設(shè)計(jì):
系統(tǒng)設(shè)計(jì)基于第二階段。可以應(yīng)用所學(xué)的經(jīng)驗(yàn)和技能,設(shè)計(jì)一個(gè)比較復(fù)雜的中大型系統(tǒng),可以在線解決各種復(fù)雜系統(tǒng)的大部分問題,完成類似瀏覽器->CDN->負(fù)載均衡->接入層- > +PHP -> 業(yè)務(wù)緩存 -> 數(shù)據(jù)庫 -> 各種復(fù)雜的后端 RPC 交互(存儲(chǔ)后端、邏輯后端、反作弊后端、外部服務(wù)) -> 更多后端江子的復(fù)雜業(yè)務(wù);可以支持每天數(shù)千萬到數(shù)億流量的網(wǎng)站的正常開發(fā)和維護(hù)。
第四階段:架構(gòu)階段(建筑師)
ps:我暫時(shí)不討論,下次會(huì)寫一篇文章來描述和補(bǔ)充這部分的內(nèi)容。
第五階段:專家階段(方向領(lǐng)域的專家)
ps:高大上,這塊就不討論了^_^
第六階段:科學(xué)家階段
ps:高大上,這塊就不討論了^_^