我有一个功课,我需要根据GRASP评估哪种方法更好。
我发现此链接可以回答我的部分提问:Why have header files and .cpp files in C++?
但是,我想知道的是,与JAVA相比,c ++的工作方式对于可扩展性和代码重用是否更好,因为所有内容都是在联合文件中定义的?
感谢您的帮助!
编辑:为了确保这不是一个争论,我想知道JAVA为什么不在C中做,并促进类定义和类实现之间的分离。这种工作或程序方式有什么优势吗?
答案 0 :(得分:2)
java中的等价物是您声明类接口,它实现了无实现声明的目的。实现与接口的绑定确实在运行时发生
从可扩展性的角度来看,两者完全相同。两种语言之间的差异不在于可扩展性功能本身,而在于它们的性能方法。 Java和C#的语法更加统一,更简洁,而某些C ++对初学者来说可能很难读。 C ++通过模板广泛关注编译时类型绑定,而java和C#传统上更侧重于运行时绑定和反射。这种差异在过去几年已经有所缓和,尽管对于某些应用领域的利基(主要是高性能计算),像垃圾收集这样的好语言功能仍然是Java和C#等的高门槛。