剛踏進Web的時候真的不知道什麼叫做後端、前端,網站不就是網站嗎?
前後端的概念,也是近10年來所衍伸出來的一個概念,相信還是有許多公司是把這兩塊混在一起寫的吧。其實不是這樣寫的方式不新潮,的確是非常方便的做法,當你的網站只有一頁時,我想應該沒有需要將前後端獨立出來寫,或是用任何的框架去寫,不僅僅浪費了伺服器的資源,甚至你在開發時還會有很多的問題。
簡單的來說,就是你在網頁上面是看不到程式碼的,通通都可以叫做後端。
這個講法有些抽象
假設我用PHP echo HTML,這樣算是後端的操作嗎嗎?
在這個例子上看起來就有點模糊了,如果真的要做到前後端分開來的話,會建議您帶資訊的部分已純資料為主,會較為恰當。
後端需要處理的事情包含,較重要的商業邏輯、與資料庫溝通、伺服器負載平衡、POST/GET 過來的資料、request請求、資訊安全…等等,這些可以說是後端的範圍,在較大的公司,可能會把部分交給其他的部門單位處理。
網頁三大語言:javascript、css、html
他們必須處理使用者看的到的部分,包含UI/UX的設計、動畫效果、驗證使用者輸入資訊、使用者與伺服器(代表著Service Provider)的溝通橋樑…等等。是一個網站最基本的單位,當然還有諸多功能,像是訊息推播、快取…等等,近年來在台灣也是一個較受到大家關注的一個技術。
後端與前端怎麼溝通,通常在前後端的工作之中,都有一些重疊的部分,像是後端可能帶出HTML至前端中顯示,通常有以下幾種方式
如果你只是單純的在開發一個不太需要更新的網站,那我會建議您後端使用AJAX/API 的方式來取得伺服器裡面的資料,這方式不需要去維護整個後端生態系統,對於維護成本可以大大的降低。
如果是要開發一個經常的需要調整,或是每一頁的商業邏輯較為複雜的網站時,當然你也可以使用AJAX/API的方式來維護您的系統,但會更建議您需要一個框架可以完整個整合前端後端,讓運作更為方便。
什麼才是好的模式,你的架構可以讓新同事越快上手,代表你的模式越好。
當然這只是我個人的淺見,但事實上確實是如此。
也有另一種方法,CMS當後端
前端->自己開發 OR 使用 CMS系統'
開發功能 -> 那就建議自己寫了
速度、效率、團隊(看你是否有團隊...)
CMS也是一種非常不錯的解決方式,省下很多的時間倒是非常實在