從這篇 7 common mistakes that django developers make 整理出來的
- Reinventing the wheel
- 儘量找人家已經寫好的 package 來用,不要沒事自己在那邊重新刻
- Monolith application structure
- 要切 app ,該切就切。
- 我自己目前有比較 confuse 的是,有用到其他 app 的東西時,該怎麼降低耦合度,又能使用方便,這中間去找到一個平衡點。這邊要等以後再來慢慢想怎麼做會更好了。
- Writing fat representations and thin models
- View 不要寫太多邏輯
- 把邏輯抽到 module 或是 model 裡,讓邏輯統一,才能儘量重複使用。
- Too many queries per view, or unoptimized queries
- 一個 view 有太多資料庫查詢或是沒有將查詢最佳化,這個會導致速度變慢。
- 我建議這邊同時可以考慮儘量使用 cache ,來減輕資料庫負擔。
- Redundant model fields
- 思考是不是要有真實的資料庫欄位,思考是不是可以使用 property 來做到同樣的事情。
- Not adding indexes on models
- 常用來查詢的欄位 (放在 filter 裡的) 記得加 index :db_index=True,該加就加。
- Inconsistent data validation
- model 的檢查跟 form 的檢查要一致。
沒有留言:
張貼留言