1. Why CS106L
- Focus is on code: what makes it good, what powerful and elegent code looks like.
- The real deal: No Standford libraries, only STL.
- Understand how and why C++ was made.
2. Why C++
Assembly Drawbacks
- A lot of code to do simple tasks.
- Very hard to understand.
- Extermely unportable(hard to make work across all systems).
Invention of C
Idea:
- Source code can be written in a more intuitive(直观的)language, and need a program called complier to convert it into assembly.
Advantage:
- Fast
- Simple
- Cross-platform
Weakness:
- No objects or classes
- Difficult to write generic(通用的) code.
- Tedious(冗长乏味的) when writing large programs.
Welcome to C++
Evolution of C++:
- C with classes(1979)
- C++(1983)
- C++98(1998)
- C++03(2003)
- C++11(2011)
- C++17(2017)
- C++20(2020), we are here
Design Philosophy of C++
- Only add features if they solve an actual problem.
- Programmers should be free to choose their own style.
- Compartmentalization(分类) is key.
- Allow the programmer full control if they want it.
- Don’t sacrifice performance except as a last resort(最终办法).
- Enforce safety at compile time whenever possible.
What’s C++
C++ = Basic Syntax + the STL
Basis Syntax
- Semicolons(分号) at EOL(end of file).
- Primitive types(ints, doubles, etc).
- Basic grammar rules.
The STL
- Tons of general functionality.
- Built in classes like maps, sets, vectors.
- Accessed through the namespace std::.
- 本文作者: 夏花
- 本文链接: http://xiahua19.github.io/2022/07/23/cs106l-1-Welcome/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!