我一生的文章都會放在這裡,我的部落格,我希望每一行程式碼,每一段文字都能幫助你。github.com/CrazyCodes/…
前言
新的一年,新氣象。在2012年我參加LAMP兄弟連的培訓,成為一名PHP程式設計師。那個時候PHP盛行,簡直有稱霸世界的跡象。當然現在我大PHP也不差。我認為成為PHP程式設計師的有以下三種途徑。
- 科班出身,找了一份PHP開發相關的工作
- 自學成才 (畢竟在當時PHP入門是所有語言裡最簡單的)
- 培訓班出身 (就像我,不是科班,自學能力也不強,所以參加的培訓學校 注:2012年的LAMP兄弟連其實不錯的,現在的就不評論了)
就我這近六年的職業生涯。為大家準備了一份2019年程式設計師發展路線。
跟上潮流
2012年的PHP是web開發的強者,我記得當年的PHP微信開發簡直是火到不行,經過這幾年的不斷髮展,PHP實際更偏向後端了。我已經很久沒有動過前端的東西了,當年都是混合開發亂的不行,所以作為一個PHP程式設計師不要太計較前端的那些技能,注重後端該會的東西。
框架
- Laravel 一款過度設計的,優雅的,複雜的 PHP開發框架 , 這個框架在我多年實踐中證明只適合寫後臺,如果用他寫介面你會發現效能與原生PHP差距很大,具體比對資料可自行Google。建議把Laravel的設計方式認真學習一下,並非必須去學習使用這款框架
- Lumen 這是一款Laravel的Api框架,其速度要比Laravel快很多,是一款精簡的Laravel
- Symfony 沒怎麼看過這款框架,Symfony即是一款框架,也是一組PHP元件庫,要知道Laravel的DB,Dump,Route,Response其實都是在Symfony元件基礎上做的。可見laravel composer.json github.com/laravel/fra…
- CodeIgniter 也可以關注下上個時代框架霸主,CodeIgniter 他的新版本可能會有奇蹟發生
擴充套件
- swoole PHP非同步程式設計框架,這個就不必多說了。自4.1.0 Swoole加入Coroutine,使併發開發更簡單。語法非常類似Goroutine
- rabbitmq 訊息佇列,資料過多的時候就知道有什麼用了
- docker 不要告訴我2019年你還不聽過docker,容器技術氾濫,該看下了老鐵,segmentfault.com/a/119000001… , segmentfault.com/a/119000001…
DevOps
這是一個看起來高階但很切合實際的話題。如何做到DevOps? 可以先了解下下面的知識
- travisCi 一款基於Github的自動釋出,自動整合,自動測試的平臺 ,segmentfault.com/a/119000001…
- teamcity jetbrains推出的一款自動釋出、整合、測試的平臺,segmentfault.com/a/119000001…
- phpunit 當然做前面兩個之前你必須學會如何有效的寫測試
- composer 學習強有力的搬磚技巧,板巧磚,要學會找各種元件包去實現自己的應用
演算法
演算法是程式開發的基礎,(大廠更看重基礎),可以適當在下方平臺去聯絡
什麼?上面的題根本做不出來?沒思路?亂七八糟的一些演算法書我就不推薦的,首先判定你與我當年一樣 (我們數學就沒學好),雖然計算機演算法與數學有些許出入,不過還是建議繼續看我下面的建議。
基礎
從小就不愛學習的我,選擇了這個職業,無奈基礎沒打牢(實際就是沒打),我選擇這樣強補知識。作為山東人(北方人),我選擇了人教版《數學》,如果你有這樣的勇氣,那麼跟我一起來補基礎吧。
我是從初中數學開始到高中數學。在學習的過程中買很多試卷做,鞏固練習。在這之後再考慮大學期間學習的知識吧。其他相關閱讀書籍可參考下方
除了數學外,則應該是計算機相關的執行緒,通訊協議等等....
語言
之所以把學習其他語言放到這裡,是感覺並不是太重要,如果是一位長期戰鬥的程式設計師,我相信他的學習另外一門語言是手到擒來的。不過你也可以選擇幾門當做業餘愛好。
- Go
- Java
- C+
- Python
隨意選擇,學什麼語言都一樣,不過只是學學語法而已(至少大多人都是這樣)
致謝
感謝你看到這裡,希望2019年的你比2018年更上一層樓,希望我的文章可以從根本上幫助到你。謝謝