如何学会编程,自学编程( 三 )
我觉得SICP作为第一本编程书非常合适 。 SICP可以让我们从零开始建立起整个对于程序语言和程序语言如何被解释的粗浅认识 。
知道什么是数据, 数据结构如何用一个小小的cons组织起来, 什么是过程, 过程可以接受过程做参数并且返回过程, 还有和解释器息息相关的囿变量、自由变量、环境, 等等这些重要的概念 。
然后我们需要接触机器相关的知识了 。 我建议学汇编 。 8086汇编就行了(硬核的话, 或许可以学PDP-6汇编) 。 注意一开始从最基础的move, add, lea开始 。
然后引入栈的push和pop指令, 有了栈就可以很方便的复用过程了 。 栈一定要好好理解, 这是过程在机器里面如何抽象的关键 。 然后引入call和ret两个语法糖 。 学会汇编写二叉树就够了 。
因为用汇编写二叉树, 一大堆dword, lea, 肯定迷糊死了 。 这个时候可以上C语言了 。 看TCPL就行, 简单了解C语法就够了 。
C语言有指针和int等基础类型, 用C写一遍二叉树, 明显能体会到类型的好处 。 另外, C是汇编语言的又一层抽象, 这里可以结合SICP里的数据抽象和过程抽象好好理解, C到底是怎么抽象汇编的 。
写过一些C之后, 了解类型的好处了 。 这个时候可以看TAPL 。 结合SICP就知道scheme基本上就是λNB的少糖形式 。 TAPL也是SICP这种从零开始逐渐复杂的结构, 非常适合萌新看 。 完全弄懂λ cube和subtype就够了 。 TAPL里面还有很多细节, 萌新看的时候可以忽略 。
到这, 编程基本上就入门了 。 对机器底层感兴趣的去学体系结构;对数据结构和算法感兴趣的去打ACM;对PLT感兴趣的继续看ATTAPL, SF;对钱感兴趣的忍着自己对C++语法的恶心去学C++;对John McCarthy感兴趣的去学ML, 等等 。 安排的明明白白 。
如何学习编程? 选定要学习的语言, 通常是c语言, python等比较容易入门的语言 。 而最重要的是要有持之以恒的心, 每天练习, 学会自己思考 。
学习编程的过程:
1、看书、看博客、学课程或者看视频等 。
2、模仿着书上或者博客的代码, 进行复现, 复现不重要, 思考才是关键 。
3、思考学习别人思路后, 脱离书本和博客, 完全自己实现功能 。
4、自己实现一些 DEMO, 看别人项目代码, 与别人讨论, 提升代码能力 。
5、在别人的框架和要求下, 写代码实现业务 。
6、自己负责别人设计的模块的实现 。
7、独立设计业务模块并开发实现 。
8、负责大项目框架设计和拆分, 带领别人进行开发 。
9、其他高阶的架构和管理工作 。
扩展资料
重要诀窍
1、让编程成为一个习惯
【如何学会编程,自学编程】2、把工作拆分成小块
3、阅读别人的代码
4、寻找良师益友
5、写技术文章
6、保持耐心
初学者怎样学习编程?有哪些方法? 如何学习编程, 主要有自学和报班两种途径, 至于需不需要报班, 可以结合自己的实际情况来进行判断, 这里简单介绍下 。
学编程的注意点:
1、要确定好自己一定能学下去, 不能是三分钟的热度, 只是学个热闹, 这样永远没有办法学的会 。
2、一定要打好基础, 刚开始学习编程的时候可能会很慢, 感觉自己没学会啥, 这可能是因为正处于打基础的阶段, 只有把基础打好, 未来才可以学得更好 。
3、要注意实践操作, 理论知识学得再多, 如果不能实际的运用, 还是等于0的 。
自学还是报班:
1、如果你可以规划好自己的学习过程, 坚持一步步向前走, 那么自学当然是很好的 。
推荐阅读
- 如何成为一个自律的人,怎样做一个自律的人心得体会
- 如何加盟连锁店,怎么加盟一家专卖店
- 如何使用ipv6上网,常用的ipv6地址
- 微波炉如何做蛋糕,初学者用微波炉做蛋糕
- 如何选甜瓜,想看甜瓜
- 如何自制珍珠,珍珠是怎么制作的
- 如何解决就业问题,就业问题解决措施
- 路由器如何无线桥接,tplink如何设置无线桥接路由器
- 如何撒网,新手怎么撒网捕鱼
- 如何自考幼师,如何在家自考幼师证