Magento2 入門指南(新手必讀)
說明
本文旨在為新同學的 Magento2 學習之路提供一張清晰的地圖。
1. 先熟悉下 Magento2 的基礎知識
2. Magento2 開發環境和部署
3. 開始學習 Magento2
3.1. 先給自己一個清晰的概念
在開始學習程式設計之前,先要有一些清晰的概念。如果腦子裡的一個概念不準確,或者沒有準確、正確的定義,那麼我們必然沒辦法準確、正確地繼續思考下去。進而產生的連鎖反應是,因為定義不準確,所以思考範圍模糊,選擇依據缺失,進而行動錯誤,進而影響到我們的整個學習的結果。作為新手的你需要永遠刻在腦子裡的概念是:
程式設計技能只可通過編碼練習獲得,而專案實戰是最好的提高程式設計技能的方式。
3.2. 專案實戰
3.2.1. 業餘專案
作為新手,還未參加工作,沒有實戰專案可練手。你可以考慮實現自己的『業餘專案(Side Project)』,想想看有沒有自己想開發的專案,如果有,那就可以從今天開始,不怕寫得不好,慢慢累積慢慢優化,我們都是這麼過來的。
3.2.2. 臨摹專案
在業餘專案上,如果沒有靈感的話,可以考慮『臨摹專案』。從github或者google上找一個類似的免費的外掛來二次開發。
更好的辦法就是閱讀m2的原始碼,因為m2的核心功能基本上都是用外掛來做的,功能和函式都有。
m2封裝了很多有用的function和helper,比如查詢產品/分類/customer/order/分類樹/格式化價格等等拿來用即可。
3.2.3. 實戰教程
實戰專案是對以上『業餘專案』和『臨摹專案』很好的補充,在實戰教程裡你能學到的是前人的經驗、最佳實踐,程式設計的思路等等,新手的話實戰課程可以讓你短時間內高速成長。
目前國內沒有相關的實戰教程,我的實戰教程已經低調發布了。
4. 鞏固知識
開發文件是主心骨
在實戰課程的學習中,或者在你今後的開發中,需要不段折返回來閱讀 開發文件 ,不死記硬背,重在理解。做到當你想查閱一個東西時,能快速定位既可。
5. 如何找工作?
請注意自己的能力培養,優秀的、能獨當一面解決問題的工程師,在任何時候都會有競爭優勢。最好利用作品(擴充套件包、開源專案、業餘專案)來證明自己,切莫做『面試工程師』,推薦閱讀:為什麼很多 IT 公司不喜歡進過培訓機構的人呢?
6. 後續學習之路
作為 PHPer ,在整個職業生涯的學習中,我們不應該只是停留在 PHP 語言層面上。PHP 是高階語言,PHP 解析器和 Magento 等工具鏈為我們封裝了很多複雜度,好處是為我們的開發提供了便利,壞處是對使用者營造出來一種假象 —— 工作中用不上,所以就不必去深入學習更多電腦科學相關知識,如軟體工程、演算法、編譯原理等。尤其是在大部分 PHPer 並沒有讀過計算機專業的情況下,工程師思考維度會很膚淺,不夠專業。這也是程式設計師們經常鄙視 PHPer 的原因之一。對於自身的職業發展而言,很快會發現自己遇到瓶頸,止步不前。
我的建議是,把自己定位為『電腦科學的從業者』,而不是 『PHP 工程師』。PHP 開發原本就涉及到電腦科學分類 中很多分支的知識,例如軟體工程、通訊與網路、資料庫、人機互動等。學習 電腦科學 會讓你係統性、深入地學習到程式設計所需要的所有知識。電腦科學博大精深,雖然分類下每個話題都值得深入研究,但每個話題即使你窮盡畢生精力也無法研究透,所以我們不需要深入研究,只要在整個職業生涯中,明確好自己的定位,然後有意識地、不斷地去學習相關知識即可。這已經足矣讓你保持視野開闊。
全世界各大高校,尤其是四大計算機專業名校斯坦福、哈佛、MIT、CMU 都有很多開放課程可供學習,英語好的同學推薦看原版,網路不好的同學推薦 網易公開課的電腦科學相關課程。
7. 最後關於社群
7.1 關於問答
技術社群有大量的知識沉澱,遇到問題了你需首先找找看有沒有現成的答案,大部分時候,你遇到的問題別人也遇到過。請利用右側的搜尋功能或者 Google 來找到答案。
如果你的問題很特殊(一般情況下不太可能),那麼請你先一字不漏地閱讀此篇文章 提問的智慧。
7.2. 內容分享
如果你想分享內容,請知悉,在這裡我們非常不歡迎低品質、膚淺、浮躁與不友善的內容,拒絕戾氣、拒絕噴子、拒絕負能量,如果你做不到,請保持安靜,否則隨時會被禁言。
7.3. 文章排版佈局
釋出文章時,你需要注意頁面排版。
一是為了尊重讀者,不辣眼睛。
二是,作為一名工程師,寫作是一門必備技能,排版混亂,只會暴露你的 不專業 。
下面的資料請熟讀: