Yuanchieh's Blog
生命是長期而持續的累積
All Posts
About
Categories
Javascript
07
Jun 2020
gRPC 介紹與 Nodejs 實作分享
gRPC 是一種由 Google 推出的 Client / Server 通訊協定,有別於一般常見的 HTTP + JSON 的 API Endpoint,gRPC 帶來了協作與效率上改進
27
May 2020
JS Proxy / Reflect 實戰 - 實作 API 自動 retry 機制
介紹 ES6 推出的 Proxy 與 Reflect,並分享使用場景 - console log 於正式環境複寫功能與API 自動 retry 機制
02
Oct 2019
《How Javascript Works》讀後整理 上
Douglas 思考著 The Next Language 下一代的程式語言該具備的樣貌,延伸前作 《JavaScript- The Good Parts》,Douglas 頗析 JS的每一個環節,先解構 JS現有的存在,再重構出一門他覺得最接近下個世代程式語言的雛形
09
Aug 2019
V8 內的排序演算法 — Timsort
Timsort 廣泛應用在 Python / Android,現在 V8 JS Engine 也改用 Timsort 當作預設的排序法,此篇分享 Timsort實作的細節
01
Jan 2019
V8 Zero Stack Async Stack Trace 研究
這份是在 2018/11/20 由 V8 Team 釋出的文件,主要描述用一種新的Async 錯誤追蹤機制,此新機制僅適用於 async await
28
Dec 2018
愛用 async / await 而非 promise!
近期看不到少關於 async / await 的好文章,這裡特別摘錄兩篇總結
25
Dec 2018
V8 如何優化 async / await
JS 基於事件驅動,大量的 Promise 充斥在應用程式中,其後在 ES2017 加入了 async/ await 語法糖後,讓非同步代碼更加簡潔與直覺
27
Aug 2018
Express 與 Koa 如何處理錯誤
以前只注重把功能寫出來而已,慢慢地開始維護後發現一開始的系統規劃很重要,包含基本的 Loggin / Debugging / Error Handling,以及是否能將每個物件函式乾淨拆分避免過多副作用無法編寫測試(詳見另一篇網誌)
06
Aug 2018
使用 Jest 做API 單元測試的範例與細節
nojest 之前寫測試因為沒有注意細節,導致非常難編寫單元測試;改以 End-to-End測試,直接用docker 開DB輸入假資料,接著執行 Server App 對API一隻一隻測試。
16
Jul 2018
為什麼要理解 Nodejs Event Loop:Dataloader 源碼解讀與分析如何解決 Graphql N+1問題
Nodejs底層是事件驅動,透過 Event Loop處理非同步(non-blocking)操作,讓費時的I/O操作可以交由libuv去呼叫系統事件驅動的 system api或是用 multi thread方式處理,而Main thread則持續處理request或其他運算。
27
Jun 2018
Jonathan Martin: Async patterns to scale your multicore JavaScript elegantly 總結與試驗
利用Async Pattern 提升JS在多核心上的執行速度