我真正想要回到的一件事是C++编程,但我不确定我是否应该回到C++(我有一些基本的控制台编程知识)或者我应该研究C或Objective C?我正在考虑长期以及编码的简易性,如优秀的编辑器,编译器等,以及哪些是最快的设置和运行.
与此同时,您会建议使用哪种软件来使用建议的语言?
[编辑]
有些人提到,当我不知道自己在做什么时,很难提出一些建议.我目前没有任何具体的计划,我只是从这三种语言中的一种开始,用于长期投资和工作,或者作为其他方面的跳跃点.
如果您主要在Windows上工作,我建议使用C++.微软在新的C++/CLI和原生C++编译器方面投入了大量的工作.随着新的TR1和C++ 0X的增加,过去存在的许多问题正在得到解决.
我会说 - 选择你喜欢的任何语言并坚持一段时间.同时专注于算法.这些是程序的构建块.语言只是一种语言.
如果你已经学会/掌握了一个,那么只需几个星期的时间就可以转换到不同的东西,特别是如果你保持同一个语言系列(例如C,C++,Objective C,Java,C#等......)
我真的只能说C和C++.如果因为C和C++中存在如此多的遗留代码的唯一原因,学习要么不会受到伤害.
Pure C通常是操作系统,驱动程序开发或嵌入式开发环境的唯一选择.其他用途包括性能非常关键的时间 - 您希望尽可能"接近"机器的内部.知道C从来没有真正的痛苦,因为它的这些应用似乎不会很快消失.C也是许多*nix应用程序的"通用语言".因此,如果您想为许多开源项目(apache/svn/cvs/etc)做出贡献,那么了解C将是一项要求.
根据我的经验,当你想要像编码C一样"接近机器"时使用C++,但是你想要通过一些OOP包含更高级别的抽象.C++的主要优势(也是最大的弱点)就是它的多范式.它为您提供了几乎所有可以在C中完成的工作以及许多面向对象的功能.例如,您可以根据需要重用许多超级优化的C代码,同时创建类,执行继承/多态 - 尽可能多的"面向对象".甚至还有一些方法可以将一些函数式编程引入混合......
C++经常被批评为试图为太多人提供太多东西.批评人士说,作为一切努力的尝试,它在任何一件事情上都不是很擅长.C++曾经是桌面应用程序的"通用语言",但Java和.Net确实占用了很多企业用户.尽管如此,许多关注性能和使用大量额外的,有用的,通常足够用于您的目的的应用程序的应用程序仍然只能在C++中使用C++.