我与django的第一次约会(1)——引子

作为一个半理工男,从小到大,编程对自己而言绝对是一个苦差事,还记得高中时学校要求去学习Basic语言,在机房的绝大部分时间都是玩游戏,那时还是用的软盘,小小一张1.44寸软盘,承载了诸如“大航海时代2”、“三国英杰传”之类的经典游戏,绝对的百玩不厌,至于上机编程嘛,貌似早就已经彻底忽略掉了。

为什么是python?

工作后,实际上自己的工作与编程也没太多联系,但有一个同事,对写代码有着狂热的热爱,参加工作后,利用业余时间自学编程,现在已经是公司里技术方面的专家,在他持续不断的忽悠下,某一天,我说要不我也去学学编程,说不定以后能用得上呢,并让他给我推荐从哪入手,经过他的深(sui)思(kou)熟(yi)虑(shuo),我就进入了python世界。
目前,学习Python已经有三个月,由于平时工作较忙,加班较多,同时还要扮演好“超级奶爸”的角色,因此Python的学习进展并不快,只能说是对Python的基本语法有了一个初步了解,不过,短短的学习过程中,Python给我的感触最深的有3点:

  • 格式上的优雅。Python缩进规则虽然在平时写代码的过程中会对新人不那么友好,但当你熟悉了以后,会发现,就算是新人,至少在排版上会表现出一种专业感,阅读代码的体验相当好。
  • 语言上的流畅。Python的语法与自然语言非常接近,基本上可以用自然语言的思考方式去表达,这就给我这种基础不好、对编程没有天分的新手,在刚开始时提供一个相对平滑的学习曲线,降低学习门槛和难度。
  • 语法上的简洁。Python的语法与PHP、JAVA等语言相比,相当的简洁,短短数十行就可以写出一个爬虫、实现一个网页,极大增强了初学者的学习兴趣,可以让我们通过不断获取的正反馈强化学习成果,保持学习动力。这点用Python界流传甚广的一句话可以体现:

生命苦短,我用Python!

为什么写web

当然,再简单的语言也抵挡不住懒癌患者的拖延症,这也是自己为什么学习了三个月后,没有太大进展的原因所在。 都说学习学习编程最好的方式就是做项目,在项目中实践,在实践中学习,因此,我想到了通过写web的方式来作为学习Python的切入点,我个人觉得写web有这么几点好处:

  • 所见即所得。web为前端,你写了什么,马上就可以通过浏览器呈现出来,让你有满满的成就感,不像单纯弄后端,弄了半天,很难有视觉化的感受。
  • 综合性强。不仅只是内容的呈现,还可以结合Python的强项,如爬虫,将爬取到的信息一并展现, 实现前后端的同步学习。
  • 应用范围广。我不是搞技术的,估计也很难有能力转型去做技术,但如果能够用好Python的一些特性,如基于框架的web、爬虫、数据可视化等,还是能够对工作有很大帮助。
  • 现成的项目。最近,自己所在的党支部要开展一些学习宣传活动,我就考虑是否可以通过线上平台来实现,搭建一个简单的微网站,这样既完成了工作,又找到了练手的项目,两不误。

为什么用django

Python的web框架非常多,最有名的应该是django和flask了,在之前,我也详细对比了他们之间的优缺点,最终,我还是选择了django,我自己的理由主要有两个:

  • 文档详细。django的文档相对来说,更为丰富和详细,可以很容易找到需要的信息,特别是中文信息比flask更多,这对新手而言,真心充满了吸引力。
  • 模块完整。大家都说,django比较“重”,实际上,这个“重”就是指它的模块多,不管你是大网站还是小网页,不管你用或不用,那些模块就在那里,再加上模块间的耦合性强,灵活性就要差点,不过,对于新手而言,灵活性基本忽略不计,不用造轮子就意味着不用去考虑兼容性,不用花时间去对比同样功能的模块到底哪个更好。
    当然,django也不是完美的,他的MVC可能对新手不友好,性能较别的框架可能会弱一些等等,不过,这些对我而言都不是问题,因为:

做才有收获,不做,考虑得再多,然并卵。

    原文作者:spring2000
    原文地址: https://www.jianshu.com/p/9ed4d51b0f28
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞