話說還是來紀錄一下自己用 3D 印表機印出來的東西好了,最近才到手第一台 iPhone,因 此理所當然就 DIY 電源座啦 ~
這一款是取用 Thingverse - iPhone 6 stand 這個模型來完成,由於不需要嵌入一條 Lightning 線在模型上,因此我打算用在公司中 (這樣我自己可以隨身攜帶一條電源線)
這個模型其實也適用 Android 手機,我是覺得還不錯 ~
自己的 iPhone 電源座自己印 2
這是另外一個我想要的 iPhone 6 電源座,取自於 Thingverse - iPhone 6 Dock 這個模型。 雖然這個模型比較適合不裝保護套的 iPhone,不過在裝上 Lightning 線上去時進行一些調 整,還是可以用於 0.3mm 的保護套上。
4Clojure 練習
Project Euler 練習
Project Euler 是一個很不錯的程式練習網站,和 LeetCode 相比起來,Project Euler 的 題目比較偏向數學,也就是只要你數學不錯,用紙筆也是可以進行解題。對於工程師來說, 數學的磨練是不可以停止的,因此我重新紀錄我解 Project Euler 題目的經過。
在這邊我使用 Clojure 來進行解題,你可以在 這裡 找到完整程式碼,大部分的程式都盡
可能用 函數式
的方式來解決。
在 clojure 中使用 OpenCV 3.x
OpenCV 是一套非常強大且好用的影像處理函式庫,一開始使用 C 語言來進行開發,後來移 植到 C++ 上面,並提供了 Python 的綁定。自 2.4 版本後,OpenCV 開始提供了 JAVA 的 wrpaaer,也因此使用 JAVA 或是 Clojure 的人都可以輕鬆愉快的使用 OpenCV 了。
本文將簡單介紹如何在 Clojure 下寫 OpenCV 的程式,而 OpenCV 的程式教學則在以後 (或遙遠的未來) 再來寫 :)
qpm - Qt 下的套件管理程式
一直以來,我的 Qt 程式如果需要第三方的模組,通常都是使用 git submodule 去將他加 入到我的專案來,但是這樣總是缺少了一些彈性,畢竟蠻多人不太會用 git 的 submodule 功能 :( 。
qpm 是一個類似 node.js 的 npm 的套件管理程式,透過他可以讓你安裝第三方的 Qt 模組
就像開發 node.js 程式那樣方便,當你使用 qpm 安裝新的模組時,他下載的是 程式碼
,因此你可以確保你的程式編譯出來可以完整相容第三方套件,而不會有因為 API 改變而
導致程式掛掉的問題。
在 clojurescript 下使用 readline 實現互動式命令 - Node.js 篇
在 在 clojure 下使用 JLine 2.x 實現互動式命令 一文中我們提到了如何在 clojure 實 現像 bash 那樣的互動式命令,這次來談談如何在 clojurescript 與 node.js 中辦到相同 的事情。
node.js 本身已經提供了 readline 模組,該模組雖然功能不如 JLine 2.x 完整,但是實 作一個簡單的互動式命令已經非常足夠,本文將講解如何在 clojurescript 下使用 node.js 的 readline 模組。
在 clojure 下使用 JLine 2.x 實現互動式命令
GNU Readline Library 在 Linux 下是一個很常用的函式庫,在許多需要互動的指令程式上
很常見到其蹤影,最經典的莫過於 shell 了。我們在 shell 輸入資訊、使用上下鍵切換歷
史紀錄、按 TAB
進行自動補全等功能,實際上都是使用到了 readline 函式庫,
在 Clojure 中,若我們想要製作類似 GNU Readline 那樣的功能,我們可以透過 JNA/JNI 等方式來讀取 readline 函式庫,或者是找其他實現。
在本篇文章中,我選用了 JLine 2.x 來作為 readline 函式庫的替代。JLine 2.x 是一個 開源並使用 Modified BSD License 授權的純 Java 實現的函式庫,他提供了許多與 GNU Readline 類似的功能,是用來實現互動式命令很方便的工具。