Re: [請益] php學習路線的規劃
原文恕刪。
先說結論:丟掉 Dreamweaver,你會看到更好的世界。
Dreamweaver 那樣的所見即得編輯模式,外加一大堆的插件,會讓初學者很有成就感。
我大概小學四年級的時候有用過 Namo Web Editor,當時也是帶給我很深的震憾。
「原來寫網頁這麼簡單」
然而事實上,Dreamweaver 會讓團隊合作變得艱難。
這裡的「團隊合作」不單單指你與他人之間的 Team Work,還包括你與未來的自己的 Team Work。
我會建議你打開 Visual Studio Code、Sublime 或任何一個純文字編輯器,然後親自寫下 <!DOCTYPE html>
瞭解基礎 template 中代表什麼意義(例如為何要加上 <meta charset="utf-8">)
然後我假定你想要往後端(PHP)學習,所以這邊不多提前端相關的事。
很多書上會教你說:先安裝 AppServ、MAMP、XAMPP 之類的環境整合包,它才有結合 PHP、網頁伺服器跟資料庫。
事實上,你根本就不需要這些。
你只需要到你寫 php 的資料夾下,執行 php -S localhost:{port} 即可。({port} 表示指定一個本機的 port,我習慣是 9000)
PHP 官方有提供專為開發使用的內建網頁伺服器(Built-in Web Server)
記住,這是「專為開發使用」,請絕對不要拿它來放在可能有任何你不知道的人存取的地方(例如自己的 VPS 上)
下一步,你可以嘗試寫個公布欄系統,在不需要 Database 的情況下,用純文字檔或 json 檔發表公告,然後顯示於頁面。
再進一步地,改善這個公布欄系統,利用 SQLite 當作基礎的 Database,發表公告。
再進一步,加入檔案上傳的功能,建立圖文公佈欄系統。
最後,加入訪客留言功能,這時就跟簡易的 Blog 很相似了。
到這一步,你大概已經掌握基礎的 PHP 語法。
如果你到這裡還沒有放棄,就表示我們可以進到下一階段:使用套件管理器 composer。
Modern PHP 與傳統 PHP 最大的差異在於它擁有與世界接軌的能力:套件管理。
以往,我們可能會到 Google 上搜尋「DB 連接 PHP」,然後 copy and paste,也不管那個程式是不是漏洞百出,反正能動就好。
現在,我們會用 Doctrine 之類的 Database 套件,甚至是 ORM 下去簡化我們對資料庫的操作。
有一些 composer 使用經驗之後(不用精通,只要知道怎麼用就好),我們開始可能進階到 Framework 的世界。
挑選 Framework 有幾個重點:
1. 不支援 composer 的,請直接當成歷史的塵埃。
2. 不支援 PHP 7 以上的,請直接把它丟進棺材裡。
3. 需要另外安裝擴充套件的(例如 phalcon),對初學者來說學習曲線過高,先放在一旁。
我比較推薦使用 Slim,尤其是你打算做 API Server(缺乏 view 的層級的應用程式)
我另外推薦 Laravel,如果你打算做完整的 Application,但它的入門門檻有些稍高。
在此,特別提一下 Symfony,它有完整的文件、龐大的開發群及功能性,但是對於初學者而言它太過於眼花瞭亂,容易讓人迷失。
不過,Symfony 有個很棒的官方教學系列,若你熟悉 composer 之後就可以參考,它對於你理解 Modern PHP 很有幫助。
https://symfony.com/doc/current/create_framework/index.html
事實上,這東西做出來也沒辦法實際應用,但是作為學習它對於初學者是非常有幫助的。
最後提醒一下,一個人學習是件孤獨的事,若能找到一起努力的夥伴,可能會讓學習更有效率。
推薦如果你家附近有任何程式的讀書會(不限於 PHP)、社群聚或 Conf 都可以參加。
有任何問題也歡迎站內信我,如果我有時間的話都會回覆 ^_^
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.130.128.83
※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1531020464.A.32A.html
→
07/08 11:29,
6年前
, 1F
07/08 11:29, 1F
推
07/08 12:00,
6年前
, 2F
07/08 12:00, 2F
推
07/08 12:00,
6年前
, 3F
07/08 12:00, 3F
→
07/08 12:50,
6年前
, 4F
07/08 12:50, 4F
推
07/08 13:04,
6年前
, 5F
07/08 13:04, 5F
→
07/08 13:10,
6年前
, 6F
07/08 13:10, 6F
推
07/08 13:35,
6年前
, 7F
07/08 13:35, 7F
→
07/08 13:35,
6年前
, 8F
07/08 13:35, 8F
推
07/10 02:03,
6年前
, 9F
07/10 02:03, 9F
→
07/10 02:03,
6年前
, 10F
07/10 02:03, 10F
→
07/10 02:03,
6年前
, 11F
07/10 02:03, 11F
推
07/10 11:17,
6年前
, 12F
07/10 11:17, 12F
推
07/16 13:19,
6年前
, 13F
07/16 13:19, 13F
討論串 (同標題文章)
PHP 近期熱門文章
PTT數位生活區 即時熱門文章
0
18