Posts
2026
2023
LiteDb 簡單 key-value pair存法
·362 字·1 分鐘
LiteDb 是 C# 上簡單的NoSql資料庫,不過想用一個 collection 來存不同型別的 key-value pair 就略顯麻煩。
2022
解決WSL在Windows檔案系統下速度緩慢的問題
·994 字·2 分鐘
背景 # 微軟在比較 WSL 1 和 WSL 2 | Microsoft Docs這篇文章有提到,WSL 2在存取windows檔案系統時速度會變慢。雖然cd/ls這類指令無法察覺,但一旦使用到git,大量的檔案存取立刻讓效能有感變慢。有些用戶甚至還沒開始使用git指令,只是進入git repository,就足以讓接下來的每個指令延遲一秒以上。
2021
Functional Programming中處理Exception的方法
前言 # 以前剛從Java轉換到其他語言時有個困擾,就是Checked Exception(受檢例外)不見了。這會導致呼叫function的時候,難以判斷程式到底會不會丟出Exception。
2019
[讀書心得] Java 8 Lambdas 技術手冊 (Java 8 Lambdas: Pragmatic Functional Programming)
天瓏網址
這本書薄薄一本,精華大概在3~6章,大致上有:
如何使用map/reduce/filter/flatmap等高階函式(higher-order function)。 了解上述函式如何取代for迴圈,把外部迭代改為內部迭代來提升可讀性。 了解惰性/急性求值,以避免在使用上述函式時寫出效能不佳的程式碼。 了解如何自訂收集器來因應更複雜的情況。 了解可以簡單地把上述函式轉成平行版本,以及平行相關的效能議題。 所以如果你是
Dart Class Constructor
·1597 字·4 分鐘
基礎型 # 先來最簡易的版本,不管從任何語言背景來的人都能看懂。
另外要注意在dart 2.0以後,new變成了可選字眼,所以為了程式簡潔,個人建議不要再加new。
2018
2017
[Design] SocketIO與Queue
問題 # 今天才發現應該要有的一個小小設計,在使用SocketIO(或其他強連線函式庫)時,可能會希望連線後,立刻執行某條指令。
舉例來說,如果現在有兩台裝置(稱為AB),想用SocketIO進行對接,步驟為