顯示具有 backend 標籤的文章。 顯示所有文章
顯示具有 backend 標籤的文章。 顯示所有文章

2015年12月6日 星期日

Firebase:前端工程師的神兵利器

Firebase.com 像其他的「後端即服務」( Baas, backend as a service ) 一樣,不過他的 Tutorial 超簡單,你只要會用 node 的 npm 大概就夠了。

Firebase官方超簡短教學,看了這個我就被吸引住了。

React 讓人解決 MVC 中的 View。Firebase 讓人不用建 server、遠端登入,只需要用 web user  interface 就建出以 Json 為格式的即時資料庫、Rest Web API、One command deploy ( firebase deploy )、社交帳號的管理 ( Oauth 介面的 Facebook、Google、Twitter blah blah 的登入管理) ,還有靜態 CDN 資料發佈、Custom domain mapping ( 這個要花一點時間等 DNS Propagate )。

Firebase.com 去年被 Google 買走、Parse.com 前年被 Facebook 買走、Apple 也推出了自家的 CloudKit,這些「後端即服務」的公司,讓你 不用再管 Server & 資料庫。你只需要有整理資料的能力 ( Structure Data ) 和前端設計的能力,就能當全端工程師了 :)

各家都有基本的免費流量,一個月 100 GB ~ 2TB 都有,但一旦升級之後就會變很貴喔 要小心。簡單說,以後 Hackathon 不用找後端工程師了,也不要再傻傻的去 github 找看都看不懂的 Hackathon Starter Kit。

---
真心覺得,Startup 剛開始用 Baas 就好,省 Server 和後端工程師的錢。

2015年11月3日 星期二

研究 Node.js 和 Express.js 有感

簡單來說網頁設計,就是設計ㄧ個讓在給了Key 後把相關資料轉換成網頁的 function。

Node 提供ㄧ個可以用 JS 與其溝通的 non-blocking http server。Express 在上面提供了簡易建立 RESTFUL API、在頁面間 (在 server 上) 傳遞資料的方法。

從外部來看,就是一個 JavaScript 程式,然後你對它送一些 Request,他就會吐 http response 回來。

Http response 包含了資料 ( ex: 文章、作者、照片、標題、按鈕文字 ) 和 UI/排板 ( CSS / HTML / client-side JavaScript )。通常資料是不重複的。但根據不同的資料,UI 很多重複的地方就變成用 UI Template/UI 元件來表示。

傳統產生網頁的方式是把資料和 UI 原件混成一個個各別的網頁然後傳給 Browser 畫出來;最近流行的方式是把資料和UI原件分別傳給 Browser,在 client-side browser 再用 JavaScript 把資料和 UI 原件組合成網頁。

近年流行的 json 是一顆用 ( key:value or array ) pair建起來的關聯式資料樹。因此後端資料庫不再用關聯式資料庫,用簡單 NoSql 資料庫 ( 即 dictionary ) 就夠了。

簡單來說現代的網頁開發就是開發一個程式:從後端抓一顆 json 資料樹,然後轉成前端美美的 DOM Tree。就是模組化的 Data Visualization,這樣想一切都輕鬆多了。


這樣的想法很自然的催生了一堆 UI 的程式庫,像是 Angular.js 和 react.js,然後還有 mobile上的 react native。