為什麼需要 SSR(Server Side Render)

在以前沒有 SPA(Single Page Application,前後端分離)架構的時代,畫面都是在 Server 端就已經 Render 好,然後才傳送到前端的,也就是說,使用者(機器人)在拿到畫面的時候,就已經是完整的資料了。
若使用了 SPA 的架構,Server 端將不再 Render 畫面,只處理資料的部份,但畫面總要有人 Render,使用者才有東西看,也就是說,Render 畫面的重責大任就交到前端手上了,也就是我們常說的 CSR(Client Side Render)。
因此,當使用了 SPA 的架構,機器人在逛網站的時候就拿不到完整的網站了(因為 Server 端不再 Render 畫面),也就是說機器人看到的網頁只是空白一片,沒有任何內容,此時 SEO 便出現了巨大的問題。
那 SEO 的問題該怎麼辦呢?難到要放棄 SPA,技術退回 10 年前嗎?當然不是!

Read More

設計模式 - 偷懶工廠模式

工廠模式我想大家一定不陌生,但偷懶工廠又是什麼呢?
我們會想要用工廠模式,基本上就是為了要解耦合,但付出的代價似乎不小,不僅造成日後擴充的問題,還大大增加了程式複雜度。
那我們有沒有什麼辦法可以用工廠模式來解耦合,同時又可以擴充容易,也不會讓程式複雜度增加太多呢?
這時偷懶工廠模式就登埸了!

Read More