学习编程的路上,
下面的场景你是否似曾相识?
————
场景一
当初,零编程基础,想做个网站。听说Python能做网站,而且很屌,于是我去学了Python。
结果发现他们都是在Linux下写代码,于是我去装了双系统,装了Ubuntu。随后我发现好像不用bash就没有办法操作Ubuntu,于是我去学了bash命令行,顺带学会了vi。
后来发现Web开发好像必须得懂HTML,虽然预感到HTML是个大坑,但我还是果断跳了下去。我去学了HTML。
之后又发现HTML用手打代码实在太变态,我……我又去学了Dreamweaver。
这时侯,我基本可以做出一个简易的网站了。
乘胜追击,开始学习Django,我发现这需要用到SQL。于是我就又去学了SQL。
千辛万苦,SQL也学了一些,我发现貌似还缺少JavaScript的网页,预感到JavaScript是个大坑,所以我并没有去学,我让我的一位程序员朋友去学了,而我则继续学习Django。
但,我又发现一个更重要的问题,怎么引用CSS?对!去Django官网。
此时,我突然意识到自己已经走到没有翻译的荒原了!!!点开一本国人的Django book,满心欢喜,结果就翻译了第一章……
我默默关上了网站,去学英语了......
场景二
本人是零编程基础,想学习Python,来继续深入Web开发:
学Python。我先看了一些免费的Python教学视频以及相关实操视频,学会了import,会用dir()查看属性,会用A.a()调用。
然后就开始学习Django。先是看了Django官方文档,好复杂!又是查阅了相关技术图书,仍是一头雾水!于是,又翻了网上好多blog应用的实例,想通过写一个blog网站,来加深对Django理解。
没想到,网站搭建并不顺利,同时又遭遇了更多技术上的难题,Django学习越发迷茫。
......
无论是英语功底不够,还是编程语言基础不足,亦或是受部署和环境配置等概念限制,对于刚接触Python Web框架的Django初学者来说,如何全面系统地了解Django ? 这是每个刚开始学Django的人都要面临的问题!
我们针对上述问题在图灵朋友圈做了个有奖征集,并整理了一些关于Django的学习建议和学习资源,如下:
一些学习建议
§ Django起源
Django在2005年发布其实也是个巧合,那之前有all-in-one的Web解决方案,而且异常强大;Zope/Plone平台如日中天,但是无论学习还是开发部署都太重了。
而从2003年开始,堪萨斯城的World Online小组在维护一堆报社官网的过程中积累了大量最佳实践,并有意识地整合为快速可定制的CMS系统,直到从文档到工具链都成熟时才开源发布。
这些历史都是相关联的,因为她们帮助解释了很重要的两点:
Django诞生于新闻网站的环境中,因此它提供的很多特性,非常适合内容类网站;
Django的起源造就了它开源社区的文化。Django和其他框架的不同在于:它是先有成功案例再发布的。
§ Django与Python开发环境问题
目前,Django2.1只支持Python3.5、 3.6和3.7以上的版本。Django2.0是最后一个支持Python3.4及一下版本的发行版。因此,按照Django官方的特点,要使用最新版本的Django,必须使用最新版本的Python才是较为保险的。
§ 一些Django的学习建议
阅读Django文档。因为在众多框架中,Django的文档算是相当优秀和完整的了。
关注并参与到Django社区。去看下官方动态,周边库和应用的发展,你就能知道大家是怎么使用Django的。
到Github去看看那些活跃的参与者写的文章和项目。你需要实践,需要对比,需要思考,然后能得出来一些共性。
阅读Django相关书籍和视频教程。
一些不错的学习资源
§ 视频资源
这个视频从零开始,作者计划把Django开发中涉及的大部分基础内容都讲一遍,并且还有项目实战。目前已经录制了20多集了,还在持续更新中。想入门学习Django的朋友一定不要错过。视频内容都是完全免费的。(源于杨仕航的博客)
这门课程基本涵盖了Djang最核心、同时也是最常用的部分,他们会给你建立一个 Django的整体概念,便于消除你对Django的陌生感和恐惧感。
该教程包括实体图书和视频(实体图书已上市),内容主要针对Python初学者,初步掌握Python之后想要了解Python在Web开发上的应用,以及在公司正式环境下一个完整项目的开发和构建流程。
§ 文档资源
§ 相关博客
此博客内容涉猎有Python、Django、Vim、Linux、Web开发、团队管理和互联网等,博客内容主要倾向于一些实战经验方面的分享,同时会分享一些自己的开源项目。
以Django 1.10为基础开发博客到部署的完整教程,同时在知乎上创建了Django 学习小组,具有一定的影响力。
博客内容有很多关于Django开发的文章和免费的入门视频教程。
TendCode是一个Django搭建的博客,主要分享博主在Python以及其他编程语言的学习心得。
内容详实免费。值得一提的是作者使用Django建站,完全是在实践Django的使用,而且作者从2015年至2017年一直在根据Django版本升级而更新教学内容。
博客内容主要以分享Django教程为主,从应用层面到实战层面,做了详实的解析。
§ 相关图书
免费电子书,推荐与英文原文档比对着阅读,算是个能快速了解Django的途径,但Django版本有点老。
为什么推荐这本书?主要有以下3点:
立意独特:
以博客系统为原型,教你从需求、技术选型、正式开发,以及第三方插件扩展和使用,到项目上线和调优,以真实的视角搭建自己的生产环境。
门槛低:
试用于所有入门Python Web开发的从业者。
经验丰富:
作者具有10年编程经验和写博客经验,并将其在项目中的实战经验凝结于书中, 增长了图书的可读性。
附阅读路线图,如下:
想获赠胡阳《Django企业开发实战》纸质书?
点击【图灵社区】到微信参加抽奖活动,就有机会免费领取哦~~
活动截止时间:2019年3月25日14:00
——
本文场景一内容转载自知乎:卫枫
本文动图来源:SOOGIF
本文参考资料: