| 程式人.林信良 | 多重繼承 | Mixins | HOCs

從Mixins到HOCs

多重繼承非用不可嗎?能否有其他可行的作法?我們固然可以透過Mixins的方式添加功能,但其實會變得複雜,也因此HOCs開始趁勢而起

2016-08-06

| 程式效能 | 評測工具 | Profiling

你的程式有多快?

如果要知道所開發出來的程式效能,可以先從找出能理解、易使用的評測工具開始下手

2016-07-30

| 程式碼 | 鎖定 | CAS | APA | API測試

鎖?還是不鎖?

當許多動作需要一起執行時,就會牽涉到鎖定與否,以及如何進行的議題

2016-07-17

| 程式設計 | 平行 | 並行 | 三個定律 | Moore's law、Amdahl's law、Gustafson's law

關注平行程式設計

平行程式設計是現代與未來開發者,都必須關注的課題

2016-07-03

| 臭蟲 | Bug | 除錯工具 | print | logging | Debugger

從Debugger學除錯

除錯在程式開發過程是必然面對的工作,該如何建立起除錯邏輯?同時,在除錯的工具上,你是用print、logging,或Debugger?

2016-06-26

| 程式庫 | 日誌 | 日誌API | 日誌需求 | 林信良

從日誌API認識日誌需求

當我們要尋找程式執行期間所發生的問題,需仰賴日誌,該怎麼善用日誌的程式庫來協助判斷?

2016-06-19

| Python | 時間API | 開發者 | datetime模組

探查Python時間API

背景知識能引導開發者思考,如何正確地使用API

2016-06-12

| VanillaJS | 新程式庫 | 高效能框架 | jQuery

精通VanillaJS

很多人都在用程式庫或框架,但可能搞不清楚底層原理,因此有人提出VanillaJS,嘲諷這種現象

2016-06-05

| 程式碼 | 抽象化

面對抽象雙面刃

程式碼採取抽象化的設計後,在維護性的考量上,也許會遭到批評或反對而回到重複、耦合的作法,然而,這也讓許多人思考:難道,我的團隊成員程度爛到只能規定他們只能用複製、貼上?

2016-05-29

| 程式語言 | 慣例 | 語法

寫A卻像B?

每個人從熟悉的程式語言,換到另一種程式語言撰寫時,難免會沿用先前習慣,導致風格典範、語言慣例、語法特性仍改不過來,這些還算容易調整,能否願意持續改進程式碼才是重點!

2016-05-22

| OpenSCAD | 分治法 | Divide and conquer | 3D建模

從OpenSCAD建模來學習分治法

我們可以應用分治法(Divide and conquer)的方式,來逐一拆解複雜的問題,但若從抽象的程式設計來學習這種技巧,可能不易理解,或許從具體的3D建模來印證,會是好的切入點

2016-05-15

| 例外處理 | 程式流程 | try | except

把例外當成例外

該怎麼看待例外處理?許多人認為它不該視為流程當中的一個環節,但實際上,也有許多將它當成流程的一部分的例子存在。對此,我們應在能表示程式意圖的情況下,善加利用

2016-05-08