好奇的探索者,理性的思考者,踏实的行动者。
Table of Contents:
* 学习资源
官网,靠谱的学习网站,入门书籍
* 开发环境
开发工具、编辑器、调试器、IDE
* 基本数据类型
char int float bool,类型转换
* 常量&变量
定义 声明 作用域
* 表达式
算数,逻辑,赋值,位运算
* 语句
简单语句、条件、循环、异常处理
* 字符串处理
难点-字符编码问题
* 复杂数据类型
array list set map
* 过程抽象机制
函数,函数定义,函数调用,参数的传递,返回值获取
* 数据及操作抽象机制
面向对象,封装、继承、多态
* 对功能模块的抽象
如何组织更大的代码规模
比如:python的模块 java的包等等
* 目录结构
该语言约定俗成的一些目录结构
* 函数式编程
Lambda函数
* 语言自带的标准库
数据结构方面、算法方面
* 错误处理
异常、错误处理、断言、日志和调试支持,对单元测试的支持。
* 输入输出流
内存流,字符流,文件流
* callback方法调用机制
事件驱动编程模型,框架编程都会用到。如:c的函数指针,c#的delegate,C++的std::function/bind
* 序列化和反序列化
掌握一下缺省的机制就可以了
* 并发编程
多进程
多线程
对多线程的编程的封装,futrue
异步编程
asio、协程
异步编程的机制
* 动态编程:
反射和元数据编程
数据和程序之间的相互转化机制,运行时编译和执行的机制
* 泛型
使用现成的泛型集合和泛型函数
* 较常用的语言特色features
* 习惯用法和模式
* 编译/解释执行机制
* 内存模型
比如:数据类型的堆栈模型、c++对象内存模型
* 编码风格
* 第三方工具库
* 文档生成工具
比如python的Docstring用Sphinx生成文档
list comprehension
函数工具:装饰器、迭代器、生成器