【发布时间】:2012-03-12 19:58:54
【问题描述】:
众所周知,面向对象的编程语言有很多好处。但是在相同的实现过程中,像 C 这样的过程语言没有像实时应用程序那样的替代方案。那么我们可以结合两者的力量来创建一个伟大的应用程序吗? 我们可以在程序语言中体验 OOPS 的主要支柱吗?
【问题讨论】:
标签: oop inheritance polymorphism abstraction procedural-programming
众所周知,面向对象的编程语言有很多好处。但是在相同的实现过程中,像 C 这样的过程语言没有像实时应用程序那样的替代方案。那么我们可以结合两者的力量来创建一个伟大的应用程序吗? 我们可以在程序语言中体验 OOPS 的主要支柱吗?
【问题讨论】:
标签: oop inheritance polymorphism abstraction procedural-programming
几乎所有通用语言都与图灵等效。这意味着——除此之外——任何你可以用一种语言梦想的东西,你都可以用另一种语言来实现。所以是的,这是可能的,尽管编译器没有像 OOP 狂热者所希望的那样严格执行它。
考虑 C 的 FILE 类型(由 fopen、fread、fwrite 等使用)。它没有具体说明里面到底有什么,你不需要知道或关心(阅读:封装);你只需要知道,你可以fopen你一个文件,fread/fwrite它,当你完成后,你fclose。问题是,“文件”可以在任何地方——在 FS 的根目录中,在你的 homedir 中,在另一个驱动器上……在大多数操作系统中,它甚至可以是管道或网络套接字(阅读:多态性) .
基本上,OOP 中最有趣的部分。我们甚至一次都没有说“上课”。 :)
【讨论】: