ealm 的 CEO 兼聯合創始人 Alexander Stigsen 發布了一篇文章,描述了無服務器架構 Serverless 在移動開發領域的重要作用。他認為,當抽離過時的服務器棧時,移動開發會變得更簡單。
iPhone 推出已十年,但對于開發者來說,感覺似乎還停留在2007年。如果你正在從事移動開發相關的工作,將面對一個令人沮喪的現實:你的移動開發經驗在很大程度上是由至今還存在的 Web 技術決定的。
所以當我們談論構建移動應用時,真正說的其實是構建與后端服務器發生交互的移動應用。而后端服務器是為桌面應用交互而設計的。雖然技術發展已不再局限于大屏幕和有線連接,但移動開發人員仍不得不接受無休止的妥協,以肩負起開發需求的經驗。
要開發出有用的服務器端代碼,需要具備大量新興領域的知識和技能。當開發者構建一個應用并將其連接到服務器時,數據并不會就此神奇地開始流暢地供你使用。在發出第一個請求之前,你必須部署和管理這些服務器。DevOps 讓這個過程變得更加簡單,但也需要耗費大量時間。
接下來,你的服務器必須從請求中獲取的任意格式(可能是 JSON )對數據進行序列化,然后將其存儲在SQL 數據庫中,然后必須對該數據執行業務邏輯,它將以服務器端語言完成所有這些操作。
這么來看,一個簡單的移動應用就需要一個復雜的服務器端團隊。而且大多數工作只是嘗試讓堆棧 - 移動和服務器的雙方進行交互而已。
簡化服務器
不過,我們可以有更好的選擇——無服務器開發。無服務器架構旨在抽離所有與基礎設施和服務器框架相關的細節,你只需要將注意力集中在于:編寫能夠滿足需要的代碼,以及隨數據更改而反應的代碼。服務器依然存在,只是你不需要再去做任何與部署和管理服務器相關的工作。
你不需要去學習一門完整的編程語言或框架(如 Django 或 Rails ),只需要寫一些 JavaScript 代碼,剩下的事情由平臺來幫你完成。平臺會按照你所期望的格式來決定數據的流向,不需要中間件處理和 URL 路由。只需直接使用傳入的數據即可完成 RESTful 端點和指向請求。
專注于應用
最終,你會寫出很少的移動代碼。你不需要在移動應用中編寫網絡和序列化代碼,只需負責你創建的模型和數據。因為該平臺可以處理同步,所以你可以專注于實際讓應用變得更好的代碼,而不僅僅是為了讓應用正常運行的代碼。
使用無服務器架構,你不再需要專門的 DevOps 和服務器團隊。你不再需要去了解服務器端框架——可能只要懂一點 JavaScript 就夠了。你甚至不需要編寫與服務器端通信的代碼,因為平臺首先會幫你們把這些事情做掉。
移動應用發展迅速,諸如實時協作、雙向數據同步、端點計算和離線優先這樣的功能過去昂貴且難以構建。但通過采用無服務器,移動優先的方法,開發者就可以利用平臺所提供的功能來構建下一代應用。