# 好习惯
### 编码风格
代码风格好不好就像字写得好不好看一样,如果一个公司招聘秘书,肯定不要字写得难看的,同理,代码风格糟糕的程序员肯定也是不称职的。虽然编译器不会挑剔难看的代码,照样能编译通过,但是和你一个Team的其他程序员肯定受不了,你自己也受不了,写完代码几天之后再来看,自己都不知道自己写的是什么。Thus, programs must be written for people to read, and only incidentally for machines to execute. 代码主要是为了写给人看的,而不是写给机器看的,只是顺便也能用机器执行而已,如果是为了写给机器看那直接写机器指令就好了,没必要用高级语言了。代码和语言文字一样是为了表达思想、记载信息,所以一定要写得清楚整洁才能有效地表达。正因为如此,在一个软件项目中,代码风格一般都用文档规定死了,所有参与项目的人不管他自己原来是什么风格,都要遵守统一的风格。[2]在编程初期就要养成好的习惯!!!
### 学习习惯与工具
- 书籍:简单经典的入门或者概论类书籍,可以在豆瓣或者Amazon美国官网上对比
- 经典论文:引用次数最多或是被收藏次数最多,使用Google Scholor即可
- 搜索引擎前几十页:推荐Google
- 行业专家观点或是博客:可使用RSS订阅
- 与同行专业人士交流:参与社区交流——研讨会,网络论坛,邮件列表*
### 优质的问答网站
[2] 本段大部分内容引自《Linux C编程一站式学习》-[http://learn.akae.cn/media/ch09.html](http://learn.akae.cn/media/ch09.html) 如与GFDL许可证相冲突,请作者及时指出。
- Introduction
- Part I Introduction to Programming
- 第一章-编程所谓何物
- 第二章-咋学编程
- 第三章-编程进阶-数据结构与算法
- 第四章-操作系统及项目开发杂谈
- 控制台和图形用户界面
- 工程和单个文件的关系
- 第五章-编程语言
- 第六章-编程方法论杂谈
- 好书哪里找
- 高效使用搜索引擎
- 好习惯
- 文本编辑器
- 版本控制
- 编程开发
- 第七章-教材推荐及其它
- 数据结构与算法类
- Operating System
- C
- C++
- Java
- Python
- Golang
- Network
- 数据库
- Web-前端
- Web-后端
- 机器学习
- Linux
- GUI
- Android开发
- 数据挖掘与分析
- Spark
- 杂项