2015-01-16 58 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文件自动每次更新。 您所有的代码修改都将被监控。

相关问题