C ++程序员需要知道什么技术? [英] What technologies do C++ programmers need to know?

查看:105
本文介绍了C ++程序员需要知道什么技术?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

C ++是我真正进入的第一个编程语言,但我的大部分工作是学术或游戏编程。我生活的大部分编程工作需要Java或.NET程序员,而且除了基本语言之外,我还有一个很好的想法。例如,可能需要Java程序员知道EJB,Servlets,Hibernate,Spring和其他技术,库和框架。

C++ was the first programming language I really got into, but the majority of my work on it was academic or for game programming. Most of the programming jobs where I live require Java or .NET programmers and I have a fairly good idea of what technologies they require aside from the basic language. For example, a Java programmer might be required to know EJB, Servlets, Hibernate, Spring, and other technologies, libraries, and frameworks.

我不知道C ++ ,但是。在现实生活中,对于一般的商业编程,C ++程序员需要知道什么是语言特性?类似Win32 API,某些库,框架,技术,工具等。

I'm not sure about C++, however. In real life situations, for general business programming, what are C++ programmers required to know beyond the language features? Stuff like Win32 API, certain libraries, frameworks, technologies, tools, etc.


编辑:我正在考虑的标准库以及当我说基本的语言,对不起,如果它是错误或不清楚。我想知道是否有任何更具体的领域需求类似于所有的技术Java或.NET程序员可能需要学习与一般C ++程序员需要知道。我同意标准库和Boost是必不可少的,但是除此之外还有什么,或者对于每个公司/项目/域都不一样。

I was thinking of the standard library as well when I said basic language, sorry if it was wrong or not clear. I was wondering if there are any more specific domain requirements similar to all the technologies Java or .NET programmers might be required to learn as apposed to what C++ programmers need to know in general. I do agree that the standard library and Boost are essential, but is there anything beyond that or is it different for every company/project/domain?

推荐答案

对于每种语言,我相信有三个相互关联的知识层次:

As for every language, I believe there are three interconnected levels of knowledge :


  1. 掌握你的语言。每个程序员应该(做它需要)掌握语法。实现此目标的好参考是:
  1. Master your language. Every programmer should (do what it takes to) master the syntax. Good references to achieve this are :
    • The C++ Programming Language by Bjarne Stroustrup.
    • Effective C++ series by Scott Meyers.

  • STL 绝对是必须的,因为它已包含在 C ++标准库,因此知道它非常接近点1:您必须掌握它。

  • 了解 boost 非常有趣,因为它是一个多平台和通用库。

  • 知道您应该使用的库,无论是 Win32 API OCCI XPCOM UNO (这里仅举几个例子)。如果您开发纯图形组件,则无需知道数据库...

  • STL is definitely a must as it has been included in the C++ Standard Library, so knowing it is very close to point 1 : you have to master it.
  • Knowing boost can be very interesting, as a multi-platform and generic library.
  • Know the libraries you are supposed to work with, whether it is Win32 API, OCCI, XPCOM or UNO (just a few examples here). No need to know a database library if you develop purely graphic components...



所以,我对你更新的问题的回答是:知道你的语言,知道你的平台,知道你的域名。我认为这里有足够的工作,特别是在C ++。这是一个永远不会被忽视的永远的工作。


So, my answer to your updated question would be : know your language, know your platform, know your domain. I think there is enough work by itself here, especially in C++. It's an evergoing work that should never be overlooked.

这篇关于C ++程序员需要知道什么技术?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆