《Python 功力提升的樂趣》筆記(二)Pythonic、行話、陷阱

Python 功力提升的樂趣

2024/05/05:重新編輯全文並刪除部分內容,使文章更緊湊。

我們繼續《Python 功力提升的樂趣:寫出乾淨程式碼的最佳實務》閱讀筆記,這是第 2 篇,你可以把它當作是一則重點整理,加上我個人的開發經驗與心得。

系列:Python 功力提升的樂趣

  1. 《Python 功力提升的樂趣》筆記(一)Black、命名、壞味道
  2. 《Python 功力提升的樂趣》筆記(二)Pythonic、行話、陷阱
  3. 《Python 功力提升的樂趣》筆記(三)函式、註解、docstring

第 6 章:寫出 Pythonic 風格的程式碼

我們常常聽到 Pythonic,但如果問起它究竟意味著什麼,一時之間可能也不容易回答,畢竟它沒有一個公認的標準或定義。

不過,充利分用 Python 獨有的特性、寫作風格、語法,尤其是善用標準函式庫,不重複造輪子——因為你自己造的輪子往往不會更好。或許是大家都認同的部分。

至於遵守上篇提到的 PEP 8,自然不在話下。如果你的變數命名使用了小駝峰式命名法(lower camel case),那麼在「形式上」就已經不太 Pythonic 了。

話說回來,本書雖然是一本優秀的 Clean Code in Python 入門書,但不知為何,書中的函式命名皆是採用小駝峰,讓我不甚理解。

但我們要知道:好孩子不要學。至於為什麼,不用問,問就是 PEP 8。

Apple Studio Display 適合你嗎?——我的心得與選購指南

from Pixabay

Apple Studio Display 無疑是今年內,我所有新購入的器物之中,最值得的選擇,且沒有之一。

但它不一定適合你,也可能不適合多數人。

相關文章:


本文主旨

作為一個使用它近半年的真實用戶,我撰寫本文的目標,就是為了協助你判斷:是不是真的值得為自己購買一台 Studio Display。

你也可以當作這是一篇 Studio Display 開箱文

我們會提到它的優點——我最喜歡的部分。不過,作為一台昂貴的螢幕,在購入之前,你可能更關心「它究竟適不適合自己、值不值得?」

就像我在〈13,我買了 Apple Studio Display 與系列心得寫作計畫〉說的:

那些你不喜歡可能無法接受的環節,才是做決定時最重要的考量點——那些「不」才是關鍵

《Python 功力提升的樂趣》筆記(一)Black、命名、壞味道

Python 功力提升的樂趣

2024/05/04:重新編輯全文,部分內容獨立成篇。

這是《Python 功力提升的樂趣:寫出乾淨程式碼的最佳實務》筆記的第 1 篇,你可以把它當作是一則重點整理,加上我個人的開發經驗與心得。

系列:Python 功力提升的樂趣

  1. 《Python 功力提升的樂趣》筆記(一)Black、命名、壞味道
  2. 《Python 功力提升的樂趣》筆記(二)Pythonic、行話、陷阱
  3. 《Python 功力提升的樂趣》筆記(三)函式、註解、docstring

本文目錄

  1. 系列緣起
  2. 只講重點
  3. 第 3 章:使用 Black 進行程式碼格式化
  4. Why Black?
  5. 第 4 章:選用易懂的命名
  6. 3 個代表性案例
  7. 第 5 章:找出程式碼的異味
  8. 程式碼異味的迷思
  9. 註解是不需要的?
  10. 寫好註解是同理心的表現

系列緣起

我會用數篇文章,把本書的重點一一勾勒出來。之所以願意這麼做,主要有兩個原因。

要真正落實 Clean Code,著實不易

雖然任何一種程式語言都能夠寫出堪稱簡潔的程式碼,但 Python 可能是最接近「自然語言」的那個。從這個角度看,Python 的 Clean Code 或許是最美的。

但因為 Python 的「自由度」很高,現實中的 Python 程式碼品質,往往都不那麼理想——你甚至希望它不要那麼自由

我認為這本書被低估了

意思是,它似乎不那麼有名

當然,講 Clean Code Python 的書也不只這本,但我認為本書是最適合起手的一本。儘管它面向的是 Python 新鮮人,但不得不承認,即使已經寫了一、兩年 Python 的開發者,對於書中建議的落實,往往都還有所不足。

儘管 Python 是自由的,但 Clean Code 卻沒有那麼自由——我們需要這本書,而且要好好實踐它。

20,更新部落格「關於我」至 2.0

by Sam Chivers

從〈05,終於寫了「關於我」頁面〉至今,已經近 8 個月。這次「關於我」終於迎來 2.0 版更新。

1.0 版的「關於我」,尚有參考借鑑其他作者共 3 篇自介的影子,到了 2.0,應該已經不太容易發現這些痕跡。

這也符合創作的本質——從風格模仿到慢慢演化出自己的偏好。

本篇會講述本次更新的重點思路,可以視為有關這次更新的「導讀」與補充。

Evernote 最佳替代方案——筆記軟體 Bear 2 升級心得

bear.app

我曾在〈使用 Notion 滿 3 年,為何我仍「不推薦」用它來管理你的人生?〉中提到:

如果你正在尋找一款和 Evernote 界面相似、使用邏輯相仿,且符合現代潮流的 app,那麼我誠摯推薦自己也有在用的 Bear

我常用的三款筆記軟體

Bear(中文名稱:熊掌記)、Notion、Logseq 這三者,都是我目前持續使用中的筆記軟體,雖然在使用量上,它們呈現一個非常不均勻的分布:

  • Logseq:80%
  • Notion:15%
  • Bear:5%

對,你沒看錯,Bear 的使用量只佔我全部筆記的 5% 而已。

儘管如此,我依舊是一個忠實的 Bear 付費用戶。原因無他,因為無論是 Notion 還是 Logseq,它們都太「」了!

淺談我對蘋果 M 系列晶片的看法——超新星爆發

apple.com

昨天寫了這篇〈M2 Pro 版 Mac mini:寫程式最佳選擇!我的心得與選購指南〉後,我發現,我對蘋果 M 系列晶片的讚揚,還遠遠沒有寫夠!

因此,我續寫了這篇,補充我對 M 系列晶片的看法——解釋為什麼我對它的評價如此之高,甚至接近「信仰」的程度。

這不僅僅因為它的高效能、低功耗,更重要的是,它讓我深刻理解到:原來(處理器)世界真的能夠被顛覆

而要充分表達其中的「感動」,還得從採用 Intel 處理器時代的 Mac 說起。

M2 Pro 版 Mac mini:寫程式最佳選擇!我的心得與選購指南

Cassiopeia A 超新星殘骸,直徑約 10 光年

今年 4 月,我入手了 M2 Pro 版的 Mac mini,至今已使用了快 3 個月。隨著配備 M2 Max 的 Mac Studio 發表,我認為是時候分享一下我的心得和選購指南——雖然這只是一個粗略的指南。

相關文章:Apple Studio Display 適合你嗎?——我的心得與選購指南


M3 系列簡評與選購建議(2023/11/02更新)

前 2 天,Apple 正式發表了 M3 系列(M3、M3 Pro、M3 Max)全新 Macbook Pro。雖然還沒有正式發售,不過從發表會的資訊來看,我們已經可以得出一些結論。

M3 系列簡評

三款晶片的 CPU 提升幅度不一,可謂命運大不同。想了解更多細節,推薦這部影片:

M3:合理的升級

M3 雖然換了 3nm 製程,但如同 iPhone 15 上的 A17 Pro 沒有帶給我們很大的驚喜,M3 也沒有。

總體來說,M3 的 CPU 性能提升幅度大約在 20% 左右,能勉強趕上 M2 Pro 基礎版。

算是一個不大不小的升級,我願意給個 70 分

M3 Pro:時代的犧牲品

既不是銷量主流,也不是性能號召的 M3 Pro,成了這次的「犧牲品」。

CPU 核心減少、記憶體頻寬降了 1/3,CPU 戰力和 M2 Pro 相比沒有明顯提升,難怪發表會上有關 CPU 提升幅度直接略過不提,令人失望。50 分,不及格

不過話說回來,單核效能提升仍有 20%,加上可配備 18/36 GB RAM,雖不如預期,但也不算太差啦。

M3 Max:贏家全拿

M3 Max 得到了三者之中最大幅度的提升。給 85 分

尤其是 CPU,以往的 M2 Max 只是 M2 Pro 的頻率提升版,核心數量完全相同,所以效能差距很小。

但這次高階版足足多了 4 個效能核心,提升幅度想必很可觀。

不過若要升到最高規的 16/40 核版本,價格提升也非常可觀😈


M3 系列選購建議

新版 M3 iMac,苦等許久的人可以買了。

考慮到 iMac 系列漫長的更新週期,相信至少 2 年內都不會過時。😂

M3 Macbook Pro

14 吋基本款

我覺得定位和 15 吋的 M2 Macbook Air 類似:尷尬

甚至我覺得它更加尷尬,因為它的價格比 15 吋 Macbook Air 還要高出一截。

完全不推薦這款——太貴了!除非你真的很想要那 14 吋的 Mini LED 螢幕。但就算如此,也應該買 M3 Pro 的版本。

14、16 吋非基本款

只能說是常態性升級,但價格又上了一階(主要是因為美元匯率),所以 CP 值不高。

對於已經擁有任一款 M 系列晶片 Mac 的人,恐怕不足以打動消費欲望。真要找一個購買的理由,只能衝著全新的黑色,或最高階的 M3 Max。

未來的 Mac mini、Mac Studio

真正在這次發表會後撥雲見日的,反而是 Mac mini 和 Mac Studio。

當然,它們都還沒有新版,只是對於「正在等待」的人而言,極具參考價值

Mac mini

一句話:「不用等了。

考慮 Mac mini 動輒一年半以上的更新週期,再看看 M3、M3 Pro 的表現,我覺得不用等了。直接買現在的 M2 版就好。

尤其是本來打算等待 M3 Pro 版 mac mini 的人,更不用等了,因為 M3 Pro 的表現實在差強人意。

Mac Studio

一句話:「值得等待!

會買 Mac Studio 往往就是衝著 Max 的強大效能,而這次 M3 Max 的提升幅度也確實可觀,所以我覺得值得等。

不過高階版的價格想必也會更高,所以如果你是預算有限但仍需要 Max 影像處理能力的人,直接買現在的 M2 Max Mac Studio 也不失為一個選擇。

小結

誇張地說,這次發表會的最大贏家,或許是下列兩種人:

  • 已經買了 M2 Pro 的人:M3 Pro 的表現不如預期,不會有太多的遺憾。
  • 正在等待 M3 Max(且預算充裕)的人:M3 Max 戰力不俗,值得耐心等待。

無論你是哪一種,隨著這次發表會的落幕,我們都已有了更明確的方向


本文主旨與目標讀者

本文主要寫給那些「想買 Mac mini 但還有所遲疑的人」作為參考,我不會特別鼓吹要買哪一款,這是一篇「平靜」的心得。

此外,這篇文章是以我的核心需求——軟體開發——為出發點,對同為軟體工程師的讀者而言,可能更具參考價值。