最近在作一項目,是基於laravel的後臺api,用於與手機交互的,數據採用json格式。下面說下怎樣在兩週內把一個新框架或者語言用的駕輕就熟。php
項目採用laravel5.4+dingoapi+jwt,數據庫使用model(orm)方式。laravel
一、熟練使用工具,我日常看代碼用sublime,很輕巧的工具。斷點調試用phpstorm,api測試用postman(google瀏覽器插件),本地用phpstudy搭建環境web
二、sublime就不說了,用起來比較簡單。phpstorm配置調試,費了很多時間,按照網上的方法能配置,使用上遇到難題,最後發現是點擊監聽便可(配置完調試後),就是那個右上角的小電話,就這麼簡單,而後使用postman發送數據,phpstorm會停在斷點處,很是方便。sql
三、postman也費了很多時間,主要是下載的postman與網上的教程中版本不一致,看起來比較彆扭,會用了,很方便。數據庫
四、phpstudy搭建laravel環境,也進行了一番周折,問題主要出在php版本以及laravel須要開啓的動態庫上,最後使用php7,動態庫出現問題通常是缺乏dll文件,下載相關dll便可。json
五、jwt須要注意下,項目使用student、teacher兩個表認證,可是jwt默認是user表認證。剛開始作使用的是在user表中加老師、學生標誌,這樣也能達到效果。最後團隊內商量仍是使用jwt直接在student、teacher兩個表認證。最後發jwt須要升級到1.0版本才能支持,由於網上的教程都是用的jwt0.5版本,因此這個要升級。api
上面說的都是工具的使用,工具用熟練了,才能高歌猛進。瀏覽器
六、laravel框,看看手冊,基本就是配置各類文件,若是想對laravel原理了解下,可使用phpstorm調試下代碼,知道是怎麼個流程。網絡
七、api實現,網上的教程都比較老了,都不是laravel5.4的教程,網上的路由配置jwt都是寫在web.php配置文件中(老版本沒有api.php,只有web.php),通過摸索5.4版本jwt應該寫在api.php。php7
八、dingoapi很簡單,使用的就幾個函數,我就用了兩個collection paginator,這兩個函數配合transform,至關好用,transform使用model關聯獲取幾個表的數據。
九、數據表的聯合查詢,這裏出了點麻煩,原本想用model的表關聯搞定這個(with),最後用with實現了,由於要跟paginator結合,最後得到的數據會多出無用的數據。最後回到使用leftjoin函數實現。
十、sql語句,laravel作了封裝,不知道最後執行的是什麼sql,能夠經過配置sql監聽,將sql打印到log日誌中。配置也比較簡單。
十一、能夠經過seed設置一些測試數據,是很方便的。
十二、剛開始數據庫常常改動,使用migrations,每次回滾,數據就沒了,這個是比較頭疼的事。用seed自動填充測試數據能夠方便一些。
上面說了這個項目全部用到的東西,兩週時間可從學習到搭建完這個後臺。
後面等這個項目作完,準備作個php項目培訓課程,經過網絡遠程授課,能夠遠程手把手指導的方式。團購價500元,介紹一個能夠減50元,能夠到羣277304970報名。培訓的內容是使用laravel框架開發一個完整的項目,這個項目是以目前作的項目爲基礎改進的。經過這個增長項目經驗,爲找工做作鋪墊,但願這裏是個良好的開始。