簡體   English   中英

關於封裝python的最佳實踐

[英]best practice regarding encapsulation python

我懷疑這將是一個非常補救的問題,但是這里有:

通常,當我在該類中創建新的類和方法時,我傾向於通過使它們成為self.x而不是普通的舊變量,從而使許多我認為從根本上可以在其函數中“局部”訪問的變量例如x。 我發現這對調試很有幫助(例如,如果最終結果很奇怪,我可以返回以確保數組x的內容符合我的想法)。

這使我可以在編寫過程中進行診斷,但是后來我不得不返回並更改所有self.x,self.y等...回到普通的舊x,y等...以便稍后我輸入對象名稱,可以管理的東西列表。

我想這種做法反映了我作為初學者的身份,我想知道經驗豐富的家伙在這方面正在做些什么。 我認為必須有更好的方法。 感謝任何tims或建議。

封裝實際上是一種抽象形式。 您想要實現的是使數據處理盡可能容易,並從外部隱藏所有細微的細節。 您需要松散耦合的組件
這里有一些提示:

  • 考慮正確的數據結構。 它應該接近問題,易於使用並且易於實現。
  • 避免使用冗余代碼。 一項任務的一項功能。 每個模塊一節課。 這也增加了代碼重用。
  • 認為庫不是程序。 將相關功能和模塊組合到庫中。 使用它們的程序應該將庫粘合在一起。 然后,您可以與主程序分開改進庫,並將代碼也用於其他項目。
  • 避免全局狀態。 您不想讓變量在各處使用並在意想不到的地方被修改。 這只會在以后引起頭痛。

盡管如此,請繼續編碼。 隨着時間的流逝,您會變得更好。 這只是經驗。 如果您有空閑時間進行此工作,請嘗試Euler項目

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM