0.4 - C ++开发简介
亚历克斯于2007年5月27日| 最后由ALEX于2018年9月26日修改
在我们编写和执行第一个C ++程序之前,我们需要更详细地了解如何开发C ++程序。这是一个概述简单方法的图形:
第1步:定义您要解决的问题。
这是“什么”步骤,您可以找出要解决的问题。提出你想要编程的最初想法可能是最简单的步骤,也可能是最难的步骤。但从概念上讲,它是最简单的。您所需要的只是一个可以很好定义的想法,并为下一步做好准备。
这里有一些例子:
- “我想编写一个允许我输入许多数字的程序,然后计算平均值。”
- “我想写一个生成2d迷宫的程序,让用户浏览它。如果用户到达目的地,用户将获胜。“
- “我想编写一个程序,读取股票价格文件,并预测股票是涨还是涨。”
第2步:确定如何解决问题。
这是“如何”步骤,您可以在其中确定如何解决步骤1中提出的问题。这也是软件开发中最容易忽略的步骤。问题的关键在于有很多方法可以解决问题 - 然而,其中一些解决方案很好,其中一些解决方案很糟糕。很多时候,程序员会得到一个想法,坐下来,并立即开始编写解决方案。这通常会产生一个属于坏类别的解决方案。
通常,好的解决方案具有以下特征:
- 它们很简单(不会过于复杂或令人困惑)。
- 它们都有很好的文件记录(特别是在任何假设或限制的情况下)。
- 它们是模块化构建的,因此可以在以后重复使用或更改部件,而不会影响程序的其他部分。
- 它们非常强大,可以在发生意外情况时恢复或提供有用的错误消息。
当你坐下来立即开始编码时,你通常会想“我想做_this_”,所以你实施的解决方案让你最快。这可能导致程序易碎,难以更改或延长,或者存在大量错误(技术缺陷)。
作为旁白...
臭虫这个词最早是由托马斯爱迪生在19世纪70年代使用的!然而,该术语在20世纪40年代普及,当时工程师发现实际的飞蛾卡在早期计算机的硬件中,导致短路。报告错误的日志和飞蛾现在都是史密森尼美国历史博物馆的一部分。
研究表明,只有20%的程序员的时间实际上花在编写初始程序上。另外80%用于维护,可以包括调试(删除错误),更新以应对环境中的更改(例如,在新的操作系统版本上运行),增强功能(用于改进可用性或功能的微小更改),或者内部改进(提高可靠性或可维护性)。
因此,在你开始编写思考解决问题的最佳方法,你正在做出什么样的假设,以及如何为将来做计划之前,为了节省很多自己,你还是值得花些时间在前面花一点时间。时间和麻烦在路上。
我们将在未来的课程中更多地讨论如何有效地设计问题的解决方案。
第3步:编写程序
为了编写程序,我们需要两件事:首先我们需要编程语言的知识 - 这就是这些教程的用途!其次,我们需要一名编辑。可以使用您想要的任何编辑器编写程序,甚至可以像Window的记事本或Unix的vi或pico那样简单。但是,我们强烈建议您使用专为编码而设计的编辑器。如果你还没有,请不要担心。我们将简要介绍如何安装代码编辑器。
专为编码而设计的典型编辑器具有一些使编程更容易的功能,包括:
1)行号。当编译器给我们一个错误时,行编号很有用,因为典型的编译器错误会说明:某些错误代码/消息,第64行。如果没有显示行号的编辑器,找到第64行可能会非常麻烦。
2)语法高亮和着色。语法高亮和着色会更改程序各个部分的颜色,以便更容易识别程序的不同组件。这是一个带有行号和语法高亮的C ++程序示例:
1 2 3 4 5 6 7 | #include <iostream>
int main() { std::cout << "Colored text!"; return 0; } |
我们在本教程中展示的示例将始终具有行编号和语法突出显示,以使其更易于遵循。
3)明确的字体。非编程字体通常使得难以区分数字0和字母O,或数字1,字母l(小写字母L)和字母I(大写字母i)之间。一个好的编程字体将区分这些符号,以确保不会意外地使用一个符号代替另一个符号。
在C ++中,您的程序通常称为name.cpp,其中name替换为您为程序选择的名称(例如计算器,hi-lo等等)。该的.cpp扩展告诉编译器(和你),这是一个包含C ++指令的C ++源代码文件。请注意,有些人使用扩展名.cc而不是.cpp,但我们建议您使用.cpp。
最佳实践
将您的代码文件命名为name.cpp,其中name是您选择的名称,.cpp是指示该文件是C ++源文件的扩展名。
另请注意,许多复杂的C ++程序都有多个.cpp文件。虽然您最初将要创建的大多数程序只有一个.cpp文件,但是可以编写具有数十或数百个.cpp文件的单个程序。
一旦我们编写了程序,接下来的步骤就是将它转换成我们可以运行的东西,然后看它是否有效!我们将在下一课中讨论这些步骤(4-7)。
转载自:https://www.learncpp.com/cpp-tutorial/introduction-to-cpp-development/