iT邦幫忙

鐵人檔案

2022 iThome 鐵人賽
回列表
Software Development

寫個好的lib大家用吧!那些好用的lib常見的套路與想法 系列

隨著工作一段時間後,漸漸需要負責團隊中的核心lib的開發與維護
這次參賽的目的就是要將lib開發的經驗做一個彙整

參賽天數 25 天 | 共 25 篇文章 | 1 人訂閱 訂閱系列文 RSS系列文 團隊森上依然梅友前
DAY 11

D11 - 不要再import了2 - 淺談Dependence Container

Dependence Container 是另一個解import的方法 其實就是把很多的Dependency放進一個object裏面,並且傳入各個物件內 常見的...

2022-09-26 ‧ 由 andy_lin82411 分享
DAY 12

D12 - 常被忽略的責任 - 談Sanitizer與 Decorator 模式

談到單一責任的時候,有一種常常被忽略的責任就是參數檢查跟消毒(Sanitizer) 一般來說這種東西都會寫成像下面這樣 class TaskListA(Reso...

2022-09-27 ‧ 由 andy_lin82411 分享
DAY 13

D13 - 常被忽略的責任-2 - 錯誤處理

待捕 def pack(self, job_runner): try: self._job.pack_label_and...

2022-09-28 ‧ 由 andy_lin82411 分享
DAY 14

D15 - 說人話啊,談有實用性的log

待捕 async def _upload_frame_to_s3_async(self, video): print('上傳frame slic...

2022-09-29 ‧ 由 andy_lin82411 分享
DAY 15

D16 - Design Pattern

import importlib import shutil import os import sentry_sdk from scarabaeus.enu...

2022-09-30 ‧ 由 andy_lin82411 分享
DAY 16

D16 - Unittest

import importlibimport shutilimport os import sentry_sdk from scarabaeus.enum im...

2022-10-01 ‧ 由 andy_lin82411 分享
DAY 17

D17-高低階分離

<template v-if="hasSpecificProperty(col.prop, ['outputS3URL'])">...

2022-10-02 ‧ 由 andy_lin82411 分享
DAY 18

D18 - Refactor

crop_configs = self._get_crop_configs() need_to_update_configs = [...

2022-10-03 ‧ 由 andy_lin82411 分享
DAY 19

D19 - 資源分配

IGNORE_MODULES = ['__init__'] folder = os.path.dirname(os.path.abspath(__file__...

2022-10-04 ‧ 由 andy_lin82411 分享
DAY 20

D20 - performance issue

IGNORE_MODULES = ['__init__'] folder = os.path.dirname(os.path.abspath(__file__...

2022-10-05 ‧ 由 andy_lin82411 分享