记录有关如何学习编程的思考
编程是门实践学科,与纯理论学科的学习应该有很不一样的地方
探索学习编程的道路,终极问题就是 – how to learn programming well
【兴趣 动力】+ 【方法】+【坚持】
- 【方法】要解决什么问题:
- 学什么,基础是什么
- 怎么学(包括学习习惯)
入门一门编程语言
- 1.知道这门语言的应用场景(建立感性认识)
- python在科学计算,人工智能领域表现很不错
- c/c++适合硬件/底层等开发
- java适合大型web后台
- 等等
- 2.最基本的语法学习 (比较枯燥的阶段)
- 基本数据类型
- 顺序分支循环结构
- 常用数据结构,容器及它们的操作
- 常用库,API(根据经验)
- 总结就是面向过程编程的那一套
- 3.多实践,多积累细节
- 4.再往下就是深入了呀
入门一个库
- 学习的时候直接看接口太无聊,找点相关的代码先敲起来,然后再总结刚刚到底敲了啥 — 应用驱动
入门一个库与入门一个语言的区别:
- 入门一个库比较简单,总结如何使用
- 入门一个语言呢?基本类型?语法特点?基本数据结构的使用?基本库的使用?
- 需要找小例子尽量串起来,然后熟能生巧~~
- 这样我学起来比较开心,而不是像背字典…
编程习惯 trick
1.命名时,相同的内容 作前缀(eg:文件展示时,相同前缀可以聚在一起)
学习习惯
- 任务驱动
- 总结干了什么
学习内容
- 编程语法
- (单词,简单语句)
- 编程思路
- 如何组合语法(文章)
-------------------------------------2019/05/09更新------------------------------------
为什么有时候觉得编程简单,有时候觉得编程很难
简单的时候: API肯定学不完的,现学现用嘛,要处理excel文件,
找个库,查下API,直接就上手了
难的时候: 咦,为什么要用这个数据结构,咦,这两个有什么区别,
研究一下,发现,这都是什么鬼
只会简单地调API,是肯定不够的,不知道原理,不清楚细节,
出问题就像面对一个黑箱,无从下手。
所以我们要多研究研究API在逻辑上的一些细节
总结就是:
- 1.基础编程语法,简单的API调用(会用内置函数map) – 简单地使用(简单的使用什么)
- 2.深入语法细节,api细节(map函数中,Iterable是指什么) – 内部原理(什么东西的内部原理)
- 3.编程逻辑,算法思想,架构思想(如何更快的排序) – 组合使用,更优雅地使用
- 库,框架同理,简单的使用,理解原理,优雅的使用