我试图了解是否应该使用
Python类和/或Java类.
如果制作一个专业词典/ Map类的类,应该是Python的dict中的一个子类,还是来自Java的HashMap或TreeMap等?
很容易使用Python,因为它们更简单,更性感.但Jython运行相对缓慢的一个原因(我觉得这样做)似乎与动态类型有关.我最好说我对这一切并不是那么清楚,并且没有花费数小时的时间仔细研究Python / Jython解释器代码,这让我感到羞耻.
无论如何,我发现Java类可能运行得更快,因为代码可能需要做更少的工作. OTOH也许它必须做得更多.或许其中没有任何内容.谁知道?
解决方法
通常,决策不应该是速度之一 – 无论如何,Python类都将以Java类的形式实现,即使它们不从它们继承.因此,速度应该大致相当,并且每次操作最多可以节省几个方法调用.
更大的问题是你计划在课堂上做什么.如果您将它与Python API一起使用,您将需要使用Python类型或类似行为的东西,这样您就不必执行整个映射协议的工作(只有您的类更改的位) ).如果您正在使用Java API,那么您肯定需要满足静态类型检查 – 这意味着您需要继承Java的类.
如果在你的情况下这不容易回答,那就从Python开始,因为你(正确地;-)发现它们“更简单,更性感”.如果你的课程没有超出你项目的界限,那么如果速度确实成为一个问题,那么以后应该改变这一点应该是微不足道的 – 那时你也可能会考虑诸如“它是否有助于实现它”之类的问题完全在Java级别?“你有希望认识到的是现在想想的过早优化.