2015-01-16 101 views
-3

Java是硬編碼語言,並交換到Python我有點難以相處,沒有類型安全。 因此,任何人都可以幫助我的良好實踐和概念進行編程,而不需要類型安全。如何在沒有類型安全的情況下編程

  • 如果所需類型的值isinstance的值是否需要驗證每個getter和setter?

  • 如何在沒有類型安全的情況下使用POO?

  • 如何在沒有類型安全的情況下封裝我的對象?
+12

只是...放手... *免費... * – Ffisegydd

+3

一般沒有。在蟒蛇它sorta明白,你不會推方釘到圓孔。 – TehTris

+1

如果你想用bazillion'isinstance'調用混淆你的代碼,繼續,但這樣做是非pythonic。 Python是[duck-typed](http://en.wikipedia.org/wiki/Duck_typing),這是故意的! – CoryKramer

回答

0
  • 你不應該打字檢查通常。讓類型免費。忘記類型安全。 Python中的所有代碼都是一種通用編程。
  • 面向對象編程不與類型安全相結合。
  • Python不支持封裝實例變量或私有函數。但明智的pythonista使用私有變量或函數的前綴_

相反,單元測試會幫助你。 在我最愛的地方,nosetestswatchdog是很棒的工具。 nosetest在您的項目中運行所有*_test.py文件。 watchmedowatchdog將觀看文件更改並執行特定命令。

我通常使用這兩種工具,如

$ watchmedo shell-command --patterns="*.py" --recursive --wait --command="nosetest -sv" 

這一個班輪運行單元測試中* .py文件自動每次更新。 您所有的代碼修改都將被監控。

相關問題