我开始用Java编程,然后最终转到C++。然后,我注意到许多语言都使用到C库的绑定,例如GTK、OpenGL、OpenAL和许多其他语言。此外,Java、Python、ADA等语言在绑定到C库方面也很丰富……然后是绑定到C语言的数据库。
然后我读了Joel的一篇文章,说所有的CS毕业生都需要学习C…所以我采纳了这个建议,到目前为止,在我看来,几乎所有的事情都是用C完成的;同样是Linux,等等。只要拿起C编程语言这本书,其他语言的许多东西就会变得更加清晰。
为什么这个行业已经远离了C语言,但它仍然停留在C语言的基础上?例如,如果Java比C好得多,为什么不都用Java完成呢?为什么库不能转换成纯Java等等?
http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
发布于 2010-07-13 22:44:33
C具有一些理想的特性。
它接近于金属,并且只需要很少的运行时间。这意味着在必要时,C库可以非常高效。这也意味着它是一种教授计算机基础知识(不一定是计算机科学基础知识或编程基础知识)的好语言。
现在几乎所有的东西都有一个C编译器,如果需要的话,有一些框架可以移植一个。将JVM放在新平台上的工作要多得多。
C已经存在很长一段时间了,并且有一个被普遍接受的ABI。它很简单,所以很容易让大多数语言中的程序调用C例程。它很老了,所以几乎所有的语言实现都有这种能力。
因为C已经存在很长时间了,所以当你需要C程序员的时候,很容易找到他们。
发布于 2010-07-13 22:42:27
即使你不打算专业地使用C语言,你也需要了解它,因为它离机器足够近,可以让你更好地理解它。
然而,大多数人不专业地使用它的原因是,与Java/C#相比,用C编写相同的程序需要更长的时间,这使得它看起来不利于业务,也因为许多程序员不喜欢使用它。
(根据记录,我最喜欢的语言是C++ --我不想在这里抨击C,我只是想解释我以前听说过的东西)
发布于 2010-07-13 22:42:55
每种编程语言都有它的优点和缺点。怪不得。
https://stackoverflow.com/questions/3238262
复制相似问题