自学编程需要注意的问题

很多人都推荐小白第一门语言选Python,因为语法简单。这句话只说了一半,Python确实容易上手,对初学者的门槛很低。但我发现,对于小白真正的门槛在于系统知识,这就和用什么语言完全没有任何关系了。例如很多人学完了Python的语法,觉得确实简单,但是转头去用Python标准库的时候,却发现自己连文档都看不懂。标准库提供了Python和其它系统功能的接口,最终实现了Python和系统之间的互动。读标准库需要系统知识,比如操作系统,数据库,进程和线程,socket编程,网络协议等等,这些对于编程小白来才构成很高的门槛,但是只有学会这些,才能真正发挥出Python的威力来。

这也是我觉得自己的经历对小白是有价值的一个原因。因为设计一个动态的网页是一个很不错的练手Project。建立网页(Web App)会逼迫你了解从你在浏览器里键入地址按下回车到网页显示在浏览器的过程中,浏览器,网络,服务器都干了些什么。具体到技术上面,你不得不去学习前端的HTML,CSS和JavaScript,后端的脚本,数据库,操作系统等。也就是说,这个过程能够促使你去主动学习上面提到的系统知识,如果你再做另外一个项目,你就不会像现在这样无从下手,而有能力去进行一些技术性的探讨,所以我认为这是一个非常好的练手项目。

1)一定要空出时间补充理论知识

很多人会强调learn by doing,边做项目边学习,这也是我自己采用的方式。在这种方式中,你不断犯错,改正……学习效率非常高。但是,很多人走了极端,最后的结果就是不注意理论知识的学习。你会发现自己Google的能力越来越高,但是真实的编程能力并没有得到提升。如果有这种情况,你需要反思一下。一种可能是你太过于依赖各种成熟的框架,结果编程就变成了用「胶水」去粘合不同的框架完成需求。就好比你的Web App用了SQLAlchemy,虽然自己不太懂SQL,但是网站跑的也还不错。这时候如果数据库出现了问题,那你就只能跪了。

另外一种可能是你完全沉浸在做项目中,忽略了学习理论知识。做项目虽然充满困难,但回报是强烈的成就感,很容易沉浸其中。我觉得这是极其错误的。首先半路出家的程序员都没有经过系统的学习,没有形成自己的知识体系,如果你不懂数据结构,算法复杂度,操作系统这些理论,那么你能达到的高度就极其有限。所以,在每天做项目的同时,一定要保证抽出一定的时间,恶补理论知识。这部分的书单在豆瓣和知乎上都有很多总结,可以自行搜索。

2)不要太纠结于无意义的问题,比如什么框架好,XX语言比XX语言好啦这种问题。前期确定了练手项目,就去专心积累代码量,积累基础知识。那些你现在还看不懂的炫酷技术你慢慢也就能明白是怎么回事了,反而没有基础,再炫酷的框架对你而言都是天书。

3)学会发问。好问题是建立在你自己已经实践或者思考的基础上问出来的,这是对自己的负责,也是对别人的尊重。不要一遇到困难就喜欢直接上网搜索:「这个问题是怎么回事啊?」,「我不明白你能不能帮我看看……」。

4)学好英语。

THE END

如何系统的自学python-如何系统地自学Python相关推荐

  1. python系统自学_如何系统地自学 Python?

    我以往学过很多种编程语言,唯独python学了以后迅速进入应用阶段,用起来得心应手.这里除了python本身易学易用外,我寻找到学习路径上的结点,然后发现了我熟练使用python的一个重要结点. 我在 ...

  2. 如何系统的自学python-如何系统地自学Python?

    感谢邀请 Python在软件质量控制.提升开发效率.可移植性.组件集成.丰富库支持等各个方面均处于先进地位.同样学习编程语言,当然要选择学习业内目前先进.热门.将来应用广泛.有前途和前景的编程语言. ...

  3. 怎么自学python-如何系统地自学 Python?

    更新:补充了图片(昨天居然没图了orz囧) 想要系统自学,首先当然是要搭建Python体系了. 大部分自学者没有知识体系可言,这是无法避免的困局.知识体系并不是你看几篇文章就能搭建起来的--在你对很多 ...

  4. 如何系统的自学python-如何系统地自学 Python?

    慕莱坞5435954 学习可以按照以下路线进行:阶段一:Python开发基础Python全栈开发与人工智能之Python开发基础知识学习内容包括:Python基础语法.数据类型.字符编码.文件操作.函 ...

  5. python系统自学_如何系统地自学python

    可以按照黑马程序员整理的这套教程来学习: 一.Python入门 这一阶段,你需要学习的知识点: 如果学习能力还不错的话,这一阶段,只需要一个多月的时间 Python视频教程: 1.重磅级教程推荐,讲的 ...

  6. 如何系统自学python_如何系统地自学 Python?

    这个话题我太有发言权了.因为我就是没有学过任何编程语言,零基础学习的python.我个人觉得零基础的情况下先看视频效果会更好,因为你是零基础,你可能连怎么使用编辑器,敲完代码怎么运行,排查错误这些你都 ...

  7. 怎样自学python_如何系统地自学Python-百度经验

    python比较简单,容易学习和掌握,对于没有编程基础的人来说比较容易上手.开发环境的搭建也比较方便,不需要配置复杂的运行环境,更不需要配置分布式集群,下载安装就能做实验了. 方法/步骤 1 首先给自 ...

  8. 如何系统的自学python 知乎-如何系统地自学Python?

    感谢邀请 Python在软件质量控制.提升开发效率.可移植性.组件集成.丰富库支持等各个方面均处于先进地位.同样学习编程语言,当然要选择学习业内目前先进.热门.将来应用广泛.有前途和前景的编程语言. ...

  9. 零基础该如何系统地自学Python编程?五个阶段带你从小白到大佬

    对于零基础学习或是已经学完基础不知道下一步该干什么的朋友,可以看看这篇缓解迷茫.今天分享下如何系统地自学Python规划目标,有一个学习目标在去行动. 有了目标,怎么行动呢?建议采用视频+书籍的方式进 ...

最新文章

  1. .net里鼠标选中的text数据怎么获取_Python数据科学实践 | 爬虫1
  2. 57 Node.js异步编程
  3. java combinationsum_Leecode39 combination-sum
  4. UIImageView图片视图的基本概念和使用方法
  5. jvm 的垃圾回收算法
  6. 如何才能学好python编程零基础_Python脚本该怎么学,零基础也可以学好Python编程吗?...
  7. Flask + Vue 搭建简易系统步骤总结
  8. swift UI专项训练19 TextView 多行文本
  9. 紧急求助,CSDN帮忙下载HP惠普280G1增霸卡7.0UEFI版硬盘保护卡还原卡驱动光盘
  10. 腾讯云短信申请与使用
  11. c语言 滑窗法_窗函数的C语言实现
  12. 对比解读五种主流大数据架构的数据分析能力
  13. 达威尔CHERRY樱桃轴 铝合金有线背光电竞吃鸡游戏机械键盘
  14. 新概念英语第一册学习笔记
  15. adguard自定义_AdGuard-轻量级的全平台广告过滤工具
  16. 接口练习:猫狗案例扩展跳高功能
  17. 自学游戏建模,有什么适合新手学习的3D建模软件?
  18. 如果一笔生意听起来好得让人难以置信
  19. Oracle的 listagg 函数,多行合并一行
  20. ORACLE 跳出循环

热门文章

  1. [NOI2019]序列
  2. python之地基(四)
  3. creating server tcp listening socket 127.0.0.1:6379: bind No error
  4. [Luogu] P4626 一道水题 II
  5. 开发一个最简单的Cardboard虚拟现实应用(四)做一个Cardboard第一人称控制器
  6. 此C语言功能---A
  7. Picture Box(1) 修正版
  8. 第45届国际大学生程序设计竞赛(ICPC)银川站太原理工大学收获4枚奖牌
  9. Bailian4109 公共朋友-Common Friends【关系】
  10. UVA10338 Mischievous Children【组合数学】