Oop Mathematica OO系统(或替代方案)?
是Mathematica中面向对象的免费开源软件包。通过使用OO系统,我希望从这两个世界中获益(OOP/Functional)Oop Mathematica OO系统(或替代方案)?,oop,wolfram-mathematica,Oop,Wolfram Mathematica,是Mathematica中面向对象的免费开源软件包。通过使用OO系统,我希望从这两个世界中获益(OOP/Functional) OO的注意事项是什么 Mathematica系统 你知道(更好)开放吗 来源替代品 你愿意展示你的一些想法吗 面向对象系统类 对于OOP,您有什么评论吗 Mathematica 免责声明:我没有使用任何现有的OO mma扩展(特别是OO系统),因此本文基于一般的论点(但我在Java中大量使用OO,并在mma中使用了一些OO元素,我自己实现了这些元素)。我同意OO是一个
- OO的注意事项是什么 Mathematica系统李>
- 你知道(更好)开放吗 来源替代品
- 你愿意展示你的一些想法吗 面向对象系统类
- 对于OOP,您有什么评论吗 Mathematica
在我看来,mma中支持OO的语言层(可能是类似Python的语言层)可以实现的一件非常好的事情是隐藏求值器和模式匹配器的复杂性,因为在许多情况下,这些是不需要的,并且可能会让经验较少的用户感到困惑。我曾经(现在仍然)有很多次错过了这样的语言层。这一层的设计师将面临一项艰巨的任务,使其与mma的其他部分真正很好地集成。除此之外,我还看到了在顶级mma中构建通用OO系统的两大障碍:性能低下和没有自动垃圾收集。我认为,在解决这些问题之前,它们排除了在较低级别上大量使用OOP(创建数百万个对象等)的可能性。OOP的一些特性对于高级项目体系结构可能仍然非常有用,但正如我所说的,它们很容易实现。这并不是说你不应该尝试现有的OO扩展,我只是将它们的优点与它们对你的代码施加的必要限制进行权衡。你可能也会觉得有趣(注意,我从未使用过它)。你想用什么样的应用程序?只是为了了解你可能需要从另一个世界的什么功能一个场景管理器->三维可视化。谢谢acl。我也没有用过它,但这个产品似乎要求必须在笔记本中定义类。(!)-我真正喜欢的是,OO系统中的类是在单独的类文件中定义的。(应该是imho。)-这看起来像是Maeder教科书上的重做。我不喜欢的是:“你可以在到期日之前免费使用MathOO 1.0b。”-我的清单上是尝试从SAGE内部运行Mathematica,SAGE将Python添加为其母语。它需要一个linux(虚拟)系统这一事实让我有点困扰。谢谢我的大部分编程经验都是用Java编写的,我最初的“设计”总是基于类、属性和方法。我想从那次经历中吸取教训。使用OO系统使我能够整洁地组织我必须生成的代码。OO系统是开源的,非常紧凑,如果需要,我可以自己维护考虑到这一事实,似乎没有太多的用户群,我预计它会出现问题。我试着联系作者,但他没有回复。该网站上的最新活动可以追溯到几年前,我想他继续了。在这种情况下,我建议首先尝试实现您喜欢的OO功能(我会选择类、继承、接口、异常、私有和匿名类,也许-我非常喜欢Java中的类,无论您喜欢什么),将代码保持在最低限度,然后看看OO系统有什么——通过这种方式,您将更好地掌握它。我也会很早决定你是想要静态还是动态类型——根据这个选择,情况会大不相同。还有,我会继续