作为一名网站开发人员,学习编程语言C是否值得?我将来会用到它吗?我目前使用的是PHP和Ruby on Rails。
作为一名网站开发人员,学习编程语言C是否值得?我将来会用到它吗?我目前使用的是PHP和Ruby on Rails。
无休止地让C程序可靠地工作会教你很多关于为什么PHP是一种更文明的编写软件的方式。
而且,你最终也会使用它。
有一天,你会遇到不适合用PHP或Ruby解决的问题。你可以退而求其次使用C,并因为你知道比其他人更多而成为英雄。
a[i++] = i;
这样的代码呢?听起来你是在混淆编写 C 代码和维护遗留的 C 代码。 - Chris Lutza[i++] = i;
的时候很疼!
医生:那就别这样做! - caf并不完全是这样。如果你想学习更多关于系统内部的知识,C语言是一个有趣且非常好的语言。在网站开发方面,很多都是高级别的操作,你没有太多机会深入了解系统。使用C语言可以帮助你更好地理解低级别指令的执行方式、内存管理的工作原理以及如何创建PHP/Ruby内置的许多功能。
Joel Spolsky敦促计算机科学专业的学生学习C语言:
"计算机科学专业学生的建议"(2005年1月)
我认为学习任何新语言都不是一个“坏”主意。特别是对于C语言,它只会让你更好地理解你正在使用的语言在“引擎盖下面”是如何运行的。
从我个人的经验来说,如果你要从Python转向C(然后再回到Python):是的 - 学习它。
如果你还没有学过,学习基本的低级数据结构;好好地学习它们。
了解一下HTTP post的真正原理,也许为自己和别人编写一些低级调试工具。当你能够编写一个apache模块时,你会惊喜地发现在Web开发中可以深入了解内部运作机制。(欢呼吧,桶传递!)
学习setjmp/longjmp的细节,并且或许能更好地理解高级语言中异常处理的实际运作方式。
你可能永远不会在Web开发中写一行C代码,但如果你学好这门语言,你仍然会给自己带来优势。只是要确保不要用它割掉自己的脚趾。 (:
你可能永远不需要使用它,所以如果你只关注“可用性”,那就忘了它吧。然而,学习C是掌握编程基础的好方法。你可能会免费获得对PHP和RoR更深入的理解。
但总的来说,如果你对自己的语言能力有信心,那么它就不值得花费这个代价;)。