项目创意要擅长C++

17 c++ cgi

我想进入C++团队工作.他们的工作是用C++编写CGI(主要但不限于此).我知道基本的C++.在关于SO的C++书籍指南问题上阅读列表,我从朋友那里得到了三本书(我实际上有第一本书).

  1. C++编程语言 - Bjarne Stroustrup - 供参考
  2. C++模板完整指南 - David Vandevoorde/Nicolai M. Josuttis
  3. 现代C++设计 - Andrei Alexandrescu

  1. 我想知道是否有任何项目或想法,你可以告诉我,我可以实施,以便我变得更好.

  2. 我需要的设置.我有一个Macbook和一个个人糟糕的Ubuntu开发服务器机器.如果需要,我可以bootcamp安装任何操作系统.

  3. 您能否就如何开始编写CGI(或任何教程)给我一些建议?


非常感谢.

AJ

Mic*_*yan 6

让我添加您的阅读材料清单; 在C++ FAQ精简版绝对是学习C++的来龙去脉的最佳资源.它既可作为旧计时器的参考,也可作为初学者的介绍.我强烈建议尽可能多地阅读它,并尝试在加入实际项目之前演示所提到的每个功能的小例子.

一旦你觉得语言有点舒服,那么我建议看看Github并看看是否有任何C++项目需要一些帮助.至于计算机生成的图像或公共网关接口,这两者都是语言无关的.这些可以用任何编程语言编写,但不同的编程语言将有不同的现有库来处理它们.我建议你阅读这个主题,以便更好地理解标准/算法(取决于你所指的那两个).一旦您对该主题更熟悉,您应该能够更好地理解相关库的文档.

至于开发环境,我发现Ubuntu是最容易配置的,因为几乎所有设置都可以简化为一系列apt-get install命令.例如:

sudo apt-get install build-essential
Run Code Online (Sandbox Code Playgroud)

无论您使用哪种操作系统,您都可能希望在可预测,可重现的环境中构建和运行代码.我还应该指出,您开发的环境不需要与实际构建和运行代码的环境相同.例如,您可以在Mac OS X上编写所有代码,但是在Docker容器中构建和执行代码,该容器运行具有预设,可重现的构建/运行配置的Ubuntu实例.

在使用C++(以及其他代码)实现CGI的资源方面,请查看我网站上的C++资源页面.它列出了几种用于网络,计算机图形和其他C++任务的工具,以及Boost和Qt等通用库.


Ale*_*x B 5

更好地掌握 C++ 的最佳方法是……编写 C++ 代码。从没有任何外部依赖项的简单光线追踪器开始(只需将输出写入 PPM 文件)。

  1. 我认为这是一个足够有趣的问题,它将让您开始使用语言核心,
  2. 缺乏依赖关系将减少潜在复杂的第三方库习惯用法的干扰,您还不能理解这些习惯用法以及诸如库和链接之类的烦人的事情。另外,你脸上的 C++ 怪癖会更少。

在你有更多的经验之后再继续。返回,重构您的代码,添加更复杂的功能,第三方库(例如,编写 JPEG 输出,开始使用一些增强功能,例如智能指针)。

冲洗,重复。