C++是我真正接触到的第一种编程语言,但我在这方面的大部分工作都是学术性的或者是针对游戏编程的。我所居住的大多数编程工作都需要Java或.NET程序员,除了基本语言之外,我还很清楚他们需要什么技术。例如,可能需要Java程序员了解EJB、Servlets、Hibernate、Spring和其他技术、库和框架。
不过,我对C++不太确定。在现实生活中,对于一般的业务编程,除了语言特性之外,C++程序员还需要知道什么呢?比如Win32 API、某些库、框架、技术、工具等等。
编辑:当我说基本语言的时候,我也在考虑标准库,如果它是错误的或者不清楚的,很抱歉。我想知道是否有类似于所有技术的更具体的领域需求,Java或.NET程序员可能需要学习C++程序员通常需要知道的内容。我确实同意标准库和Boost是必不可少的,但除此之外还有什么吗?还是每个公司/项目/域都有不同的地方?
发布于 2008-09-30 10:08:43
对于每一种语言,我认为有三个相互关联的知识层次:
所以,我对你最新问题的回答是:了解你的语言,了解你的平台,了解你的领域。我认为这里有足够的工作,特别是在C++。这是一项永不间断的工作,不应被忽视。
发布于 2008-09-30 09:39:20
C++开发人员必须对标准和助推库进行摸索。
其他技术的列表很大程度上取决于项目类型。当然,您将与SO进行一些交互,因此您需要了解您的环境的API。
至于数据存取和其他东西,有很多不同的解决方案。从这个意义上说,C++比一些管理语言要丰富得多。99%的旧系统采用C/C++接口。
在你在对我的回答的评论中澄清了你的问题后,我可以推荐:
发布于 2008-09-30 10:00:10
作为一名C++程序员,您应该知道的技术(因此,技术知识比较少的程序员更多; ):
性能问题-是什么使事情进展缓慢,如何找到和解决这些问题。我还指的是上下文切换、缓存行、优化搜索、内存使用和约束,以及您的普通VB/C#开发人员不关心的类似内容。
线程问题--如何从多线程应用程序中获得最大的好处,如何检测和修复这些应用程序的滥用。
低层次的通信--尤其是能够连接到无人编写的模糊系统(特别是无线电通信)、延迟和带宽管理。
否则,对于特定的工具-它取决于您的目标,Windows将是不同的Linux,不同的嵌入式。
https://stackoverflow.com/questions/152387
复制相似问题