Quickly Uderstand TypeScript Generics
I've always had a fear of TypeScript generics with all the <T>, <U>, extends. It seems daunting, but generics are essential for specific problems.
I've always had a fear of TypeScript generics with all the <T>, <U>, extends. It seems daunting, but generics are essential for specific problems.
對於 TypeScript 的泛型我一直有種恐懼,什麼滿滿的 `<T>`、`<U>`、`extends`、多層嵌套,看起來就很可怕。畢竟在日常開發裡,好像也不太需要……對吧?的確解決小問題如此,但在特定問題下泛型將會非常必要。
对于 TypeScript 的泛型我一直有种恐惧,什么满满的 `<T>`、`<U>`、`extends`、多层嵌套,看起来就很可怕。毕竟在日常开发里,好像也不太需要……对吧?的确解决小问题如此,但在特定问题下泛型将会非常必要。
程式是可被執行的代碼或指令,而作業系統透過統整不同概念達成有效率的執行程式,理解以下概念可以幫助更好理解多工程式的運作原理與運行效率最佳化:CPU Core(處理器核心)、Process(進程 / 程序)、Thread(線程 / 執行緒)。
前端 UI 一直是多變且複雜的題材,經歷各種工具迭代與起伏,有很長一段時間其實並沒有什麼特別統一良好的方式進行測試。在經歷過太多次的跌宕變化過後,紀錄我認為現階段怎麼打造可被驗證的前端與未來趨勢與過程中實際遇到的各種困難。
Understand the Iterator Protocol and Generator, and arrays benefit from the new iterator helper for lazy evaluation.
先前提到 JavaScript 的 Iterator Protocol:什麼讓 JavaScript 資料結構能夠被迭代? 了解 Iterator Protocol 與 Generator,而陣列正是基於 iterator 實做,自然受惠於近期推出的 iterator helper 來進行惰性求值。
之前提到 JavaScript 的 Iterator Protocol:什么让 JavaScript 数据结构能够被迭代? 了解 Iterator Protocol 与 Generator,数组自然受惠于最近推出的 iterator helper 进行惰性求值。
Have you wondered why arrays can be iterated (for...of) but objects cannot? Iterables rely on the Iterator Protocol to implement iterable data structures.
你有想過為什麼陣列可以被迭代處理(for...of)但物件不行嗎?Iterables 背後仰賴 Iterator Protocol 來實踐可被迭代的資料結構。基於 Iterator Protocol 的概念更是伸展到 Generator Function 相關的知識點,可以創造更多特殊的資料結構。
你有想过为什么阵列可以被迭代处理(for...of)但物件不行吗? Iterables 背后仰赖 Iterator Protocol 来实践可被迭代的资料结构。基于 Iterator Protocol 的概念更是伸展到 Generator Function 相关的知识点,可以创造更多特殊的资料结构。
Functor 的好處是:它讓我們能用同樣的方式操作不同的「容器型別」,想像成一個「裝值的盒子」,它允許我們對盒子裡的值進行運算,但同時又保留了盒子的結構。Functor 「提供了方式在容器裡操作值」,遵循同一性(Identity)與合成性(Composition)。
從先前 Functor 的概念出發,Functor 的 `map` 只能作用在數值上,而不能是「存在於容器中的數值」上,所以才需要 Applicative Functor,一種比 Functor 更多功能的結構,除了滿足 Functor 的功能外還能「讓盒子裡的函數作用(apply)到另一盒子的值」。
A coding style that emphasizes composing functions rather than handling specific data, defining functions without explicit parameters.
一種代碼風格,著重於函式的組合關係而非具體資料,定義函式時不顯式提其參數(points),而是透過函式組合與高階函式來表達資料流動。可以減少不必要的命名保持代碼簡潔與達成更好的通用組合性,但是額外的抽象須被理解與熟悉。透過兩個實際案例熟悉 Pointfree 開發風格。