Vue 前端工程師與 Laravel 後端工程師的權責分配問題
今天收到一則有趣的問題,問題大概是這樣子的:
我是住在 Japari Park 的 COBOL,剛從大學畢業,之前就是讀資工系,但對前端比較有興趣,所以就在網路上購買了線上教學的課程,現在找到工作了,找的工作是 Vue 前端工程師,而面試時都是回覆我寫 Vue 等等都沒問題,但開始上班後發現並不是很純粹的前後端分離,而是前端人員在 Laravel 5.3 的 PHP 框架下面寫 Vue,這讓我壓力很大,因為完全是不同生態系的東西,而且前人也沒有留下交接文件!想詢問,我不想逃避問題,而是從中去成長,但是我應該怎麼做呢?能給予一些建議或分享一些建構的文章嗎?我翻遍網路上的範例,照著做卻遇到很多問題,實在是QQ
首先我們要釐清這個壓力很大的問題來源,從你的情境描述我們發現很有可能是對於權責的界線模糊不清,導致誤以為自己要負責、要學習的內容可能非常龐大,而且前人就算有留下交接文件,這份交接文件對你來說可能並沒有什麼實質幫助,事實上並沒有那麼複雜,單純分工不清楚而已,有許多種解決方案,以下我列舉各種情境:
如果是前後端分離,那基本上你不會碰到這些問題,但顯然今天這個解決方案是被 disabl ...
在 HeroKu 上的 Laravel 專案突然爆掉 419 page expired 的解決方案
可憐的案例
大大救命啊啊啊啊啊啊!我的網站剛剛明明是好的,現在卻壞了,但我都沒有做任何事情,他就突然壞了!我把 Session 清掉,把 Cache 也清掉,把所有暫存都清掉,他終究告訴我 419 Page Expired,我把整個 HeroKu 都重啟,甚至整個專案都回滾到最初始的狀態,他都沒辦法救活,結果在本機端、開測試機卻正常運行,明明一模一樣的程式碼、一模一樣的所有配置啊!為什麼只有正式機會掛掉?跪求解答 20 點,急急急急急急。
資料來源來自我的案發經歷
最近在部署專案到 HeroKu 上的時候,發生這樣莫名其妙的案例,於是將整個案例寫成文檔紀錄,之前介紹過把 Laravel 專案部署到 HeroKu 上的方法,這次要來分享在 HeroKu 上維護專案時,所發生的離奇案件。
將 Laravel 部署到 HeroKu 上的教學: 如何將你的 Laravel boilerplate 專案成功部署到 HeroKu · 乾太 Kantai
419 Page Expired
基本上有學過 Laravel 的大家們,都知道 419 這個錯誤跟 CSRF 有關,我們正常會認為這 ...
如何將你的 Laravel boilerplate 專案成功部署到 HeroKu
研究背景事情是這樣的,最近在研究 HeroKu 這家雲端平台,想要嘗試將一些服務部署到 HeroKu 上頭,但卻遇到一些問題,因此將一系列的問題解決過程記錄下來。
HeroKu 是什麼?
Heroku是一個支援多種 程式語言 的雲 平台即服務 。在2010年被 Salesforce.com 收購。Heroku作為最開始的 雲平台 之一[1],從 2007年6月 起開發,當時它僅支援 Ruby ,但後來增加了對 Java 、 Node.js 、 Scala 、 Clojure 、 Python 以及(未記錄在正式檔案上) PHP 和 Perl 的支援。基礎作業系統是 Debian ,在最新的堆疊則是基於Debian的 Ubuntu [2]。
資料來源:Heroku - 維基百科,自由的百科全書
簡單來說,它就是提供一個平台讓你架設專案的服務,你只需要一個帳號,你就可以將你的 Laravel、MariaDB、Redis 一起架設上去,而且完全不收費,只是機器會睡覺而已,是個相當不錯的服務。
我應該怎麼開始?首先你會需要申請一個 HeroKu 的帳號,HeroKu 會需要你的 Firs ...
EP1. 我要怎麼申請 Facebook API?好像很難又好像很簡單欸!
在先前我們討論了如何透過 API 來將文章發表到社群平台當中、如何透過 API 來將社群平台的文章刪除,但我們中間略過了申請 API 的部分,所以接下來我們將要介紹如何申請相關社群的 API、申請經驗談、常用工具。
EP1. 我要怎麼申請 Facebook API?好像很難又好像很簡單欸!(本篇)
EP2. 我要怎麼申請 Twitter API?好像很難又好像很簡單欸!
EP3. 我要怎麼申請 Plurk API?好像很難又好像很簡單欸!
簡介本篇以 Facebook 為主,你需要先擁有 Facebook 的帳號,相信這部分大家都很熟悉,知道如何申請帳號,所以整篇文章會著重在如何申請應用程式、測試 API、提交應用程式審查,總共三個環節。
Facebook 應用程式 - 申請
Facebook 應用程式 - 測試
Facebook 應用程式 - 審查
Facebook 應用程式 - 申請我們直接透過 Facebook 開發者網站(連結如下)進入 Facebook 專給開發者的「我的應用程式」,去申請一個 Facebook 的應用程式。
網站連結:所有應用程式 - Fac ...
P5. 純靠北工程師怎麼做的?一顆按鈕就把你的文章 BANG 不見!
既然是社群匿名發文平台,那主要核心當然是發廢文、講幹話啦!可是這要怎麼做呢?文章管理三步驟:繪圖、發表文章、刪除文章。
P3. 純靠北工程師怎麼做的?一顆按鈕就把你的文章發到世界各地了呢!(1/2)
P4. 純靠北工程師怎麼做的?一顆按鈕就把你的文章發到世界各地了呢!(2/2)
P5. 純靠北工程師怎麼做的?一顆按鈕就把你的文章 BANG 不見! (本篇)
P6. 純靠北工程師怎麼做的?自幹前端一個繪圖、後端一個繪圖!前端篇
P7. 純靠北工程師怎麼做的?自幹前端一個繪圖、後端一個繪圖!後端篇
簡介當我們完成社群平台發表文章之後,如果你只有在管理一個社群平台,那很輕鬆、很簡單,看到廢文直接手動刪掉就好了!可是如果今天你有兩個 Facebook 粉絲團要管理,以及 Twitter、Plurk 需要管理,使用者發表一篇廢文,你總共有四個社群平台帳號要切換,你可能就會覺得真心很累,所以接下來我們要做的就是把刪除文章這件事情給簡單化,當然整篇文章會聚焦在 API 的應用當中。
Facebook API - delete/{post_id} 串接
Twitt ...
P4. 純靠北工程師怎麼做的?一顆按鈕就把你的文章發到世界各地了呢!(2/2)
既然是社群匿名發文平台,那主要核心當然是發廢文、講幹話啦!可是這要怎麼做呢?文章管理三步驟:繪圖、發表文章、刪除文章。
P3. 純靠北工程師怎麼做的?一顆按鈕就把你的文章發到世界各地了呢!(1/2)
P4. 純靠北工程師怎麼做的?一顆按鈕就把你的文章發到世界各地了呢!(2/2)(本篇)
P5. 純靠北工程師怎麼做的?一顆按鈕就把你的文章 BANG 不見!
P6. 純靠北工程師怎麼做的?自幹前端一個繪圖、後端一個繪圖!前端篇
P7. 純靠北工程師怎麼做的?自幹前端一個繪圖、後端一個繪圖!後端篇
簡介這篇文章的主軸會環繞於 Facebook、Twitter、Plurk 這三個平台的 API 串接,
Twitter API - uploadMedia/postTweet 串接
Plurk API - /APP/Timeline/uploadPicture、/APP/Timeline/plurkAdd 串接
延續上篇 [P3. 純靠北工程師怎麼做的?一顆按鈕就把你的文章發到世界各地了呢!(1/2)] 的內 ...
P3. 純靠北工程師怎麼做的?一顆按鈕就把你的文章發到世界各地了呢!(1/2)
既然是社群匿名發文平台,那主要核心當然是發廢文、講幹話啦!可是這要怎麼做呢?文章管理三步驟:繪圖、發表文章、刪除文章。
P3. 純靠北工程師怎麼做的?一顆按鈕就把你的文章發到世界各地了呢!(1/2)(本篇)
P4. 純靠北工程師怎麼做的?一顆按鈕就把你的文章發到世界各地了呢!(2/2)
P5. 純靠北工程師怎麼做的?一顆按鈕就把你的文章 BANG 不見!
P6. 純靠北工程師怎麼做的?自幹前端一個繪圖、後端一個繪圖!前端篇
P7. 純靠北工程師怎麼做的?自幹前端一個繪圖、後端一個繪圖!後端篇
簡介這篇文章的主軸會環繞於 Facebook、Twitter、Plurk 這三個平台的 API 串接,
流程圖(Flowchart)
Facebook API - fileToUpload/post/photo 串接
我應該怎麼開始?首先我們需要先思考這整個流程,使用者情境大概是首先我們會有一個頁面(如圖一)提供使用者寫文章、選擇主題、選擇字型或上傳圖片,使用者做完這些事情後,按下按鈕直接送出,後端開始會處理圖片、將文章發佈至各平台當中,最後將顯示畫面結果 ...
P2. 純靠北工程師怎麼做的?就只是個簡單的資料庫模型而已。
既然是工程師,那網站當然要自幹啊!在開始介紹如何寫功能以前,要先通過兩項前置任務(如果已經有點軟體架構概念、資料庫基本知識,則可以直接跳過):
P1.純靠北工程師怎麼做的?就只是個簡單的後端架構而已。
P2.純靠北工程師怎麼做的?就只是個簡單的資料庫模型而已。(本篇)
怎麼做資料庫模型?有在做資料庫規劃的話,基本上看了 ER-Model 就知道該如何使用了,如果你對資料庫這方面不太熟悉,但又可能有機會需要用到,那麼你會需要稍微了解一些眉眉角角,在資料庫的世界稱之為「::正規化::」,而正規化有第一正規化、第二正規化、第三正規化、BC正規化 ... 到第六正規化,不過會建議至少要符合第三正規化、BC正規化,對於整個資料庫的效能來說有非常顯著的改善。
ER-Model 科普一下 ER模型 - 維基百科,自由的百科全書
第一正規化 -> 去除重複性
第二正規化 -> 去除部分相依
第三正規化 -> 去除間接相依
BC 正規化 -> 複合主鍵需皆為外來鍵
[!] 資料庫正規化 科普一下
-> 第一正規化 - 維基百科,自由的百科全書
-> ...
P1. 純靠北工程師怎麼做的?就只是個簡單的後端架構而已。
既然是工程師,那網站當然要自幹啊!在開始介紹如何寫功能以前,要先通過兩項前置任務(如果已經有點軟體架構概念、資料庫基本知識,則可以直接跳過):
P1.純靠北工程師怎麼做的?就只是個簡單的後端架構而已。(本篇)
P2.純靠北工程師怎麼做的?就只是個簡單的資料庫模型而已。
我們舉個壞例子補充一點軟體架構上的知識,讓你後續閱讀起來更順手、開發更順利,如果用經驗談軟體架構的話,剛學 MVC 時,會把所有的商業邏輯、資料庫邏輯都一股腦的塞到 Controller 控制器當中,舉個發表文章的壞例子來說,使用者在送出請求之後,後端程式大概會這樣寫:
發表文章的事件:
123456789101112131415161718192021222324252627/** * Class PostsController. */class PostsController extends Controller { public function index(Request $request) { try { // Step 1. 把 $request 的資料抓出來,並且 ...
【臺灣鐵路GO】隱私權條款
非常歡迎您光臨「臺灣鐵路GO」(以下簡稱本應用程式),為了讓您能夠安心的使用本應用程式的各項服務與資訊,特此向您說明本應用程式的隱私權保護政策,以保障您的權益,請您詳閱下列內容:
一、隱私權保護政策的適用範圍隱私權保護政策內容,包括本應用程式如何處理在您使用應用程式服務時收集到的個人識別資料。隱私權保護政策不適用於本應用程式以外的相關連結應用程式,也不適用於非本應用程式所委託或參與管理的人員。
二、個人資料的蒐集、處理及利用方式
當您造訪本應用程式或使用本應用程式所提供之功能服務時,我們將視該服務功能性質,請您提供必要的個人資料,並在該特定目的範圍內處理及利用您的個人資料;非經您書面同意,本應用程式不會將個人資料用於其他用途。
本應用程式在您使用服務信箱、問卷調查等互動性功能時,會保留您所提供的姓名、電子郵件地址、聯絡方式及使用時間等。
於一般瀏覽時,伺服器會自行記錄相關行徑,包括您使用連線設備的IP位址、使用時間、使用的瀏覽器、瀏覽及點選資料記錄等,做為我們增進應用程式服務的參考依據,此記錄為內部應用,決不對外公佈。
為提供精確的服務,我們會將收集的問卷調查內容進行統計與分析,分析結 ...