好文分享 — Kraken Technologies: How we organize our very large Python monolith

程式碼管理就是對抗複雜性(complexity)的過程

你有想過 1 個擁有 27,637 個模組、超過 28,000 個檔案的 Python 專案怎麼管理嗎?以上數字來自 Kraken Technologies 這家公司,他們的 codebase 跟 Google 同樣都採用 monolith 做法,也就是所有程式碼都放置在同 1 個 repository 。

Kraken Technologies: How we organize our very large Python monolith” 1 文給我們揭示 2 個管理超大型 monolith repo 的核心做法,頗值得作為參考:

  1. 用 layering 技巧將程式碼按照相依(dependency)原則做分層管理,打破程式碼、模組之間複雜的引用情況
  2. import linter 強迫團隊遵守 layering 的遊戲規則(import linter 是一項工具,可以制定 import 的規則進行掃描)

也就這 2 個核心做法,使得 Kraken 管理超過 28,000 個檔案的 Python 專案成為可能,有興趣了解詳情的話,可以詳細閱讀原文。

對抗久坐職業傷害

研究指出每天增加 2 小時坐著的時間,會增加大腸癌、心臟疾病、肺癌的風險,也造成肩頸、腰背疼痛等常見問題。

然而對抗這些問題,卻只需要工作時定期休息跟伸展身體即可!

你想輕鬆改變現狀嗎?試試看我們的 PomodoRoll 番茄鐘吧! PomodoRoll 番茄鐘會根據你所設定的專注時間,定期建議你 1 項辦公族適用的伸展運動,幫助你打敗久坐所帶來的傷害!

追蹤新知

看完這篇文章了嗎?還意猶未盡的話,追蹤粉絲專頁吧!

我們每天至少分享 1 篇文章/新聞或者實用的軟體/工具,讓你輕鬆增廣見聞提升專業能力!如果你喜歡我們的文章,或是想了解更多特定主題的教學,歡迎到我們的粉絲專頁按讚、留言讓我們知道。你的鼓勵,是我們的原力!

贊助我們的創作

看完這篇文章了嗎? 休息一下,喝杯咖啡吧!

如果你覺得 MyApollo 有讓你獲得實用的資訊,希望能看到更多的技術分享,邀請你贊助我們一杯咖啡,讓我們有更多的動力與精力繼續提供高品質的文章,感謝你的支持!