AWS Amplify加快你開發Web與App的新思維(上)

LazyTech
Nov 1, 2020
AWS Amplify

在閱讀此文章之前, 你必須要有伺服器請求觀念, 前端和後端的區別以及API是如何當作彼此的橋樑與資料庫溝通的狀態。

不知道你最近使用aws是什麼時候的事, 你有沒有察覺到最近每當進入登入後台的介面時, 哪些服務是會被放在輪播圖上的? 除了 2020 11/30 ~ 2020 12/18的 AWS re:Invent外 (這邊身為AWS鐵粉還是必須工商一下 😆😆😄)

每年十一月, 亞馬遜雲端都會舉辦大型的新技術發表會(往年都在Las Vegas)

另外一直被提及的服務就非AWS Amplify莫屬了, 根據官網上對於Amplify的解釋如下:

“ AWS Amplify 是一套端對端解決方案,可讓行動和前端 Web 開發人員建置和採用 AWS 技術的安全、可擴充完整堆疊應用程式。透過 Amplify,您可以在數分鐘內完成設定應用程式後端,以數行程式碼將其連接至您的應用程式,並在三個步驟內完成部署靜態 Web 應用程式。透過 AWS Amplify 更快速進入市場。”

okay 我知道你看完解釋之後一定覺得跟沒有解釋一樣, 用簡單的話來解釋一下就會瞭解了~

我們現在看到的所有網站和手機的介面我們先稱為前端, 但前端又有分為靜態和動態的前端。

所謂“ 靜態 ” 代表你的網站資料更新不頻繁要更改可能必須要先把網站停掉一段陣子, 才由後面的營運人員去做到更改或做到後面代碼的更改, 本身沒有資料庫的概念, 運用到的語言 ( html, javascript, css等)。或是更直觀把資料儲存到AWS S3你就可以直接透過Hosting的方式建立一個靜態網站了, 不用十分鐘。

那何謂 “ 動態 ” ? 這個就相對牽扯很多知識跟技術層面了, 以目前很多公司和企業為了要做到持續交付和持續整合(CI/CD) 常常把最新的容器概念掛在嘴邊, 如K8S, Docker等等, 但無非就是讓資料更新和呈現更直觀更容易管理, 並且讓 “ 動態 ” 兩字描摹的更生動, 同時資料庫的觀念就產生了, 你的網站資料一改過去的死板了, 你可以隨時透過任何方式去更動網站的原始代碼。

自己在前公司的經驗是有一個docker的開發環境, 只要確認 docker-compose up建立出來的版面無誤, 就會先上staging的EC2, 再經由主管確認後才上正式機, 但其實這過程有些漫長, 也不像用到Jenkins這些工具, 主要還是用Gitlab, 所以大家git 要學熟呀, 不要只會git commit, git push, 很多時候你不確定你在哪個分支和哪個位置亂推一通是會有很多conflict出現的呀~

那既然你對動態有些觀念, 目前主流的web也是用這概念呈現, 你就必須認知到你要打造全端都能溝通的工具其實少之又少, 像我們以前用Laravel開發網站, 你要了解整個框架和每一個package的作用就需要一段時間了, 更何況結合Laravel-Mix 和Blade, Bootstrap, Vue一些前端概念的開發就會非常頭痛的。

https://www.youtube.com/watch?v=-Vm-4BbY58Y&feature=emb_title&ab_channel=AmazonWebServices

Amplify 介紹

所以現在AWS推出的服務可以確確實實地解決這些問題, 當然你如過要客製化你自己的網站和APP你還是必須去學前端和後端以及Android和ios的語言,

唯一學習這個框架的好處就是他快速, 你不需要擔心你的server問題, 你只要託管在雲端後面在掛一個SNS 和Cloudwatch, 當有異常的時候你會馬上知道狀況,那就讓我們開始實作吧~

首先你可以到AWS Amplify Docs的網站, 那邊有很多教學這邊不贅述, 我自己也有用全英文的方式拍了youtube教大家怎麼實作, 但有個很酷的東西你可以去學習了解一下, 他對於很多開發者來說是一大福音, 也就是所謂的CLI (Command Line Interface) 很多喜歡用Linux系統的人應該非常清楚CLI帶來的強大與方便, 所以你不仿也試一下Amplify開發出來的CLI, 我相信你會有CDK和一些強大CLI的感覺, 現在要打造網站真的很方便啦, 你還有什麼理由說你不行呢?🙅‍♂️?

記得現在terminal下安裝指令

歡迎訂閱我的頻道和我一起分享交流最新最實用的AWS 技術吧~

搜尋 🔍:AWS LC , Be my cloud mentee~

訂閱我的Youtube歐

未來我們也可以學習更多雲端平台的技術和背後原理!

2020快結束了! 疫起努力💪!!!

--

--

LazyTech

Hi! I’m Lawrence and I am a 25 y/o Taiwanese working as a Cloud Support Engineer at Amazon Web Services in Dublin.