学习编程的路上,
下面的场景你是否似曾相识?
————
#场景一#
当初,零编程基础,想做个网站。
听说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在2005年发布其实也是个巧合,那之前有all-in-one的Web解决方案,而且异常强大;Zope/Plone平台如日中天,但是无论学习还是开发部署都太重了。
而从2003年开始,堪萨斯城的World Online小组在维护一堆报社官网的过程中积累了大量最佳实践,并有意识地整合为快速可定制的CMS系统,直到从文档到工具链都成熟时才开源发布。
这些历史都是相关联的,因为她们帮助解释了很重要的两点。
Django诞生于新闻网站的环境中,因此它提供的很多特性,非常适合内容类网站;
Django的起源造就了它开源社区的文化。Django和其他框架的不同在于:它是先有成功案例再发布的。
目前,Django2.1只支持Python3.5、 3.6和3.7以上的版本。Django2.0是最后一个支持Python3.4及一下版本的发行版。因此,按照Django官方的特点,要使用最新版本的Django,必须使用最新版本的Python才是较为保险的。
阅读Django文档
因为在众多框架中,Django的文档算是相当优秀和完整的了。
关注并参与到Django社区
去看下官方动态,周边库和应用的发展,你就能知道大家是怎么使用Django的。
到Github去看看那些活跃的参与者写的文章和项目
你需要实践,需要对比,需要思考,然后能得出来一些共性。
阅读Django相关书籍和视频教程
——《Django2.0教程》
http://space.bilibili.com/252028233
这个视频从零开始,作者计划把Django开发中涉及的大部分基础内容都讲一遍,并且还有项目实战。目前已经录制了20多集了,还在持续更新中。想入门学习Django的朋友一定不要错过。视频内容都是完全免费的。(源于杨仕航的博客)
——《Django 入门与实践》
http://www.imooc.com/learn/790
这门课程基本涵盖了Djang最核心、同时也是最常用的部分,他们会给你建立一个 Django的整体概念,便于消除你对Django的陌生感和恐惧感。
——《Django 企业开发实战》
http://django-practice-book.com
该教程包括实体图书和视频(实体图书已上市,文末有链接),内容主要针对Python初学者,初步掌握Python之后想要了解Python在Web开发上的应用,以及在公司正式环境下一个完整项目的开发和构建流程。
——《Django 2.1 英文原版文档新手入门》
https://docs.djangoproject.com/en/2.1/intro/
——《Django 2.1 的中文文档》
https://docs.djangoproject.com/zh-hans/2.1/
——《the5fire的技术博客》
https://www.the5fire.com
此博客内容涉猎有Python、Django、Vim、Linux、Web开发、团队管理和互联网等,博客内容主要倾向于一些实战经验方面的分享,同时会分享一些自己的开源项目。
——《追梦人物的博客》
https://www.zmrenwu.com
以Django 1.10为基础开发博客到部署的完整教程,同时在知乎上创建了Django 学习小组,具有一定的影响力。
——《杨仕航的博客》
http://yshblog.com/blog/
博客内容有很多关于Django开发的文章和免费的入门视频教程。
——《TendCode的博客》
https://tendcode.com
TendCode是一个Django搭建的博客,主要分享博主在Python以及其他编程语言的学习心得。
——《自强学堂:Django 教程》
https://code.ziqiangxuetang.com/
内容详实免费。值得一提的是作者使用Django建站,完全是在实践Django的使用,而且作者从2015年至2017年一直在根据Django版本升级而更新教学内容。
——《刘江的博客》
http://www.liujiangblog.com/blog/
博客内容主要以分享Django教程为主,从应用层面到实战层面,做了详实的解析。
免费电子书,已更新到Django2.0版,推荐与英文原文档比对着阅读,内容大部分差不多,算是个能快速了解Django的途径。
为什么推荐这本书?主要有以下3点:
1. 立意独特:以博客系统为原型,教你从需求、技术选型、正式开发,以及第三方插件扩展和使用,到项目上线和调优,以真实的视角搭建自己的生产环境。
2. 门槛低:试用于所有入门Python Web开发的从业者。
3. 经验丰富:作者具有10年编程经验和写博客经验,并将其在项目中的实战经验凝结于书中, 增长了图书的可读性。
附书籍阅读路线图:
点击查看大图
你当初学Django的路径是怎样的?
有没有踩过哪些坑?
有没有更好的学习资源分享给大家?
留言写出来吧!
精选留言中随机挑选3位小伙伴,
赠送胡阳(the5fire)
《Django企业开发实战》纸质书一本。
活动截止到3月25日14:00。
本文场景一内容转载自知乎:卫枫
本文动图来源:SOOGIF
——
本文参考资料:
Python Django 的学习路径
https://github.com/zaxlct/python-django-learning
学Python Django学得很迷茫,怎么办?
https://www.zhihu.com/question/26235428
两个不错的Django入门学习资源
https://zhuanlan.zhihu.com/p/35386263