跳到主要內容

發表文章

目前顯示的是 9月, 2014的文章

資料讀取提升法則,精選必學 Stream 處理

這兩天開始重新學習一下 stream 的資料流,這樣執行的方式在於如果訊息是採用 websocket ,或者是像大量檔案,多筆 API 資料交換的時候會是一種非常實用的方式, 找到兩篇非常實用詳細的文章, http://maxogden.com/node-streams.html https://github.com/substack/stream-handbook 這兩篇文章對於想要透過 Node.js 瞭解 stream 的開發者推薦必讀文章,裏面已經把 stream, readable, writable 兩個部分描述十分清楚。以及兩種狀況下可以使用的 function 以及情境,補足官方文件的不足。 學習感言 學習 stream 的另外一個好處就是,更加能夠瞭解 event-driven 的實作以及應用方式,透過直接對於 stream 處理,另一方面也能夠加速對於服務器的效能提升。 透過這樣的方式,在實戰的過程中,與 3rd party 的服務銜接作爲 Middle server 改建立使用自己 API 架構時,可以改變以往使用傳統連接方式,讓資料讀取更爲快速,反映時間縮短。 當然就可以提升畫面反映時間,這樣的方式其實需要多嘗試幾次,就更瞭解爲什麼會希望 http 1.1 的普及,以及 websocket 能夠被更普遍支持。 這次可以在 JSDC 活動直接與 兩位大神 面對面,快點來參加本次的 JSDC 2014 年度研討會

技術轉換需知,學習 Node.js 的前期準備

技術轉換需知,學習 Node.js 的前期準備 持續推廣 node.js 對於新手教學上,通常會遇到許多狀況,以及許多不同的迷思,總和出來其實可以看到一些常見的問題。 這篇文章也是藉由數次的活動發想實踐當中,延伸出來的導讀文章之一,也是每次在活動一開始的時候,就會跟大家介紹的這門技術的一個初探介紹部分。 學習之前,先學會忘記 就像是所有武功絕學一樣,要學一門武功,一個新的技術,首先你需要改變自己的既有思想,這實際上真的很難,但就對於自己來說,也很有多既有概念,框架其實是無法捨棄,但是既然決定學習一件新事物,那勢必就是要改變。 對於已經有學習過一些程式編輯,或者一些程式框架的開發者,建議一開始學習 node.js 的朋友,先忘記掉所有你學過的語言,以及開發方式,試著忘記既有框架的狀況下,去學習這門技術。 在沒有既定框架下,不去過分討論,比較任何語言上的差異,而是先從他的背後歷史意義,演進接著再瞭解近期的改變以及未來規劃等。 以 Node.js 來說,在 2009 年,給與的示範就是一個聊天室,也表現提高 high concurrency 的實做,在當時定爲爲處理高承載量的新語言新服務,透過 JavaScript 實踐出來的結果。 到了 2012, 2013 年開始, Node.js 朝向不同環境中,透過許多公司投入全職開發者,將 Node.js 發佈到不同平臺上,同時依靠社群的力量,開始有極具的成長,也帶來不同的聲量。 最近的趨勢是開始走向, Node.js 嘗試解決分散式系統架構,以及直接嵌入式系統中,所以意味着開始有許多不同的發展,也有發展出不同於 Web 的應用。 JavaScript 並不是 bala, bala, bala … 講了許多過去歷史,雖然說大家已經開始試著要去忘記以往框架這件事情,但是我相信一開始還是做不到,這真的很難,但是請務必嘗試著,至少試著親手輸入每次的程式碼以及每次的相關測試,哪怕只是 hello world,跟着一起從頭開始進行所有流程。 在開宗明義上,根大家說,Node.js 其實就是在寫 JavaScript ,拋棄以往對於所有瀏覽器上的謬誤,以及對於所謂 IE 或者其他瀏覽器上面可能發生的錯誤。現在開始所有的事情都發生在背後,全部的事情都是在伺服器裏面進行。 所以可以說是,Node