Coder Social home page Coder Social logo

python-django-learning's Introduction

python-django-learning

项目贡献规范

Python 基础

当你学到 Django 的时候,我们默认你已经有了 Python 基础。如果你没有 Python 基础,或者认为自己还需要在 Python 基础上多花一些时间,你可以选择从以下三本书着手。

  • 《Python编程 从入门到实践》Python Crash Course: A Hands-On, Project-Based Introduction to Programming)这本书的作者就是 Django 项目的维护者之一。本书在学习 Python 基础的同时,可以学到一些 Python 的最佳实践(当然谈到最佳实践,有更多的进阶书籍的选择)。推荐本书的另一个原因是书籍质量不错,在美国亚马逊的 Python programming 排行榜上荣获“Best seller“,194个读者综合评分为4.4的高分(满分5分)。

  • 《"笨办法"学Python(第3版)》 (Learn Python the Hard Way) 这本书简称“LPHW”,是经久不衰的 Python 入门书。本书强调的是肌肉记忆,强调的是编程犹如弹吉他,需要亲手实践、加强肌肉记忆。如果你对编程也没有太多概念,这本书会比较轻松的带你入门,增强你的编程自信心。

  • 《Python 基础教程》(Beginning Python: From Novice to Professional) 如果在这三本中选一本必看的基础书,个人更偏好、也更推荐这一本。作者对基础知识的讲解清晰明了,内容简单但是并不肤浅。讲解过程通畅,基本不存在费解的情况。代码小片段实例比比皆是,马上就可以动手实践来理解概念,可以让人更容易记得住,学习的效果也是相当好。较深的概念有延展的接口,提供方向供后期自己去扩展。值得一提的是,目前这本书中文翻译仍然是2009年英文版的 Python 2.7,而今年(2017年)4月Apress出版社继续推出了该书最新的第三版,已经使用 Python 3 的版本(暂无中文版)。作者 Magnus Lie Hetland 在 2006 年开始写作第一版至今,时隔11年还能继续推出最新版,而且内容质量靠谱,实在难能可贵。

如果你觉得看视频入门更适合自己,那么我推荐: Python3 入门与进阶 (付费课程,但是质量非常高,具体可以看用户评价)

Django 与 Python 开发环境问题

注意:目前在维护 Django 版本为:Django 1.8(长期支持版,LTS),Django 1.10,Django 1.11(最新版,长期支持版,LTS,也是最后一个支持 Python2的版本)。

如果学习资料是这些版本以前的版本,比如 Django 1.7,则不建议再学习已经过时的资料。对于书籍是否已经过时,Two Scoops 的作者 Daniel R. Greenfeld(也是Django的项目维护者)有一个书籍清单供参考(Current Django Books)。

Django 的版本以及 Python 开发环境至关重要,请在最开始学习 Django 的时候就引起重视。由于 Python、Django以及其他第三方包的版本不同,有时候会产生与学习资料不一样的结果。建议学习过程中注意两点:

  • 为每一个项目建立虚拟环境,建立相对独立的开发环境
  • 严格按照学习资料的版本进行开发。注意是 Python 2 还是 Python 3,Django 的版本、以及第三方包的版本号。

Django 基础

1. 视频

推荐使用慕课网的两门免费在线视频课程作为入门:

这两门课基本涵盖了 Django 最核心、同时也是最常用的部分,他们会给你建立一个 Django 的整体概念,便于消除你对 Django 的陌生感和恐惧感。

如果想进一步详细的了解 Django,有个综合性的教程名叫

该教程包含 gitbook 电子书(免费)以及视频部分(收费)。该教程之所以比较推荐,作者是搜狐的胡阳(博客地址)。阳哥长期在搜狐大量实际使用 Django,而且对源码比较熟悉,所以该教程讲得深入浅出,有不少独到的见解。

2. 文档

在有了视频的感性认识之后,建议马上阅读完 Django 文档的新手入门6个部分的内容,并亲手实践让代码能跑起来。文档是最权威也是最全面的 Django 参考资料。

3. 书籍与博客

3.1 英文

另外有人也经常推荐以下内容,供参考:

3.2 中文

  • 自强学堂:Django 教程 内容详实免费。值得一提的是作者使用 Django 建站,完全是在实践 Django 的使用,而且作者从2015年至今一直在根据 Django 版本升级而更新教学内容,从最初的 Django 1.6 更新到了 Django 1.10。作者称最新版本的 Django 1.11 内容马上就要推出。

  • Django Girls 教程 Django Girls 的中文版,使用 Django 1.8。

  • 追梦人物的博客 以 Django 1.10 为基础开发博客到部署的完整教程。

Django 进阶

1. 视频

中文视频内容有很多,但是从内容的深度、广度、教学实践、教学质量来看,推荐慕课网的强力 Django 课程作为进阶必看课程。

英文视频中,美国的 Justin Mitchel 长期专注于做 Django 培训。他的部分教学视频也放在 YouTube 上。推荐三门系列课程,分别是完成一个基本博客,增加复杂功能,到使用 django-rest-framework。内容详实,值得一看。

2. 书籍

  • Two Scoops of Django:目前有两个版本 Two Scoops of Django: Best Practices for Django 1.11Two Scoops of Django: Best Practices for Django 1.8 。这本书在 Django 的名气也是非常大,基本可以说影响过大多数 Django 开发人员(可类比的是 Flask 界的『狗书』作者 Miguel Gringberg)。如果要进阶成为 Django 专业开发者,这本书是绕不过去的必看书籍。内容主要涵盖 Django 的最佳实践。

  • Django By Example 在进阶的课程中,本书算是不错的。虽然一些章节(比如第7章)部分代码仍然存在 bug,但是一方面作者正在该书主页不断进行代码更正,另一方面也是对**读者最好的是,这本书已经由同在简书的 @夜夜月 进行了全书翻译:《Django By Example》中文版

  • Django Unleashed 内容覆盖较广,很多内容在其他书籍中并没有提及,比如密码的hash与加密等。但是没有实战项目。

  • 《Python Web 测试驱动方法》 虽然测试驱动的开发方法(Test-Driven Development,TDD)并不是每个项目都会采用,但是测试的**与方法还是值得去掌握。Python 作为一门动态语言,没有静态类型检测的情况下,测试的重要性就显得尤为重要。本书使用 Django 的整个开发流程作为实例,作者不仅讲了开发过程单元测试和 Selenium 测试,同时也把部署的内容也覆盖到。内容始于 Django,但不仅仅是 Django,相信使用其他框架的 Python 开发者也可以从中获益匪浅。

3. 博客

  • Vitor Freitas: Simple is better than complex 作者是旅居芬兰的巴西人,博客上有76篇关于 Python、Django 以及网络开发的文字。文章质量较高,可以邮件订阅。

  • Huang Huang 的博客 之所以提到这个博客,主要因为作者认真写了三篇关于《High Perfomance Django》的阅读笔记:笔记一笔记二笔记三。从数据库优化、缓存、容灾、后台视图完善,这些一点一滴的内容都是 Django 项目开发过程中迟早会遇到的瓶颈,看一下这些内容也许就会对后面的解决方案有更深的理解。比如『话说Django orm性能为什么比原生的mysqldb慢』这篇文章就遇到了后台报表页面打开很慢的坑,这也是完善提高 Django 性能的地方。

4. 开源项目

Django RESTful API

Django 的 REST 化主要是两个第三方包:django-rest-frameworkdjango-tastypie。虽然后者开发时间较早,但是最推荐的是前者,即 django-rest-framework。该框架内容更全,调试也方便。

1. 文档

django-rest-framework 的文档分为英文和中文。英文就是原版的网站,中文有两个作者的翻译,但都是只翻译了入门部分。

2. 视频

  • Vue+Django REST framework 打造生鲜电商项目 可能是目前中文 Django 教学视频中最好的课程,教学时间长度与内容都有相当的保证。视频作者 Bobby 详细阐述了自己对的 Django 的理解,可以让人知道多种递进式 rest API 开发方式。得益于 Bobby 精益求精的态度,个人觉得干货的程度即使与国外的内容比较也是不逞多让。另外再加上与 Vue 前端的整体交互综合开发,已经可以初步满足一个中小企业的网络解决方案。

  • Build Your Own Backend REST API using Django REST Framework 作者是英国人 Mark Winterbottom,编程专业,而且讲课细致到位。

  • Blog API with Django Rest Framework 仍然是之前提到的美国人 Austin Mitchel 的 YouTube 课程。

3. 书籍与博客

Django 与 Vue �的结合

Django 业界最新信息

  • Django: Under The Hood 专注于 Django 的内容,虽然著名的 PyCon 经常请 Django 专家去演讲,但是 Django: Under The Hood 基本都是 Django 的大牛,比如2016年压轴演讲是邀请了 Instgram 的后端去讲解 INS 如何用 Django 做成了如此规模巨大的社交图片分享网站。该组织近两年的演讲内容都分享在 YouTube 上可以找到。Django Under The Hood:YouTube地址
  • PyCon 也非常关注 Django 的发展。Django 并非完美无缺,在网络技术高速发展的今天,Django 也需要及时的进化以适应形势。在 PyCon 上,对 Django 热爱程序员们,提出了尖锐的 Django 问题,随后也有新的解决方案出来。的有代表性的演讲包括:

修改记录

2017-10-23 更新内容

  • Python 基础部分:不再推荐《Python学习手册(第4版)》。基础书籍数量保持三本,增加推荐新书籍,本书不再推荐。

被删除内容:

《Python学习手册(第4版)》Learning Python, 5th Edition)本书中文是第四版,英文已经更新到第五版。该作者长期从事 Python 教育,他知道学习者通常会问什么问题,所以讲解也是比较详细。如果你需要快速入门 Python ,不推荐这本书。但是相信你在 Python 进阶过程中,迟早会遇到一些很 Pythonic 的问题,比如:字典的三种创建方式、列表推导式(list comprehension)和装饰器(decorator)。你可以在这里快速找到详细的讲解。作者的另外还有两本高质量的 Python 书值得一读:Python Pocket Reference: Python In Your Pocket (Pocket Reference (O'Reilly)) 以及Programming Python: Powerful Object-Oriented Programming

  • Python 基础部分:增加推荐《Python 基础教程》

  • Django 进阶部分,2. 书籍:增加《Python Web 测试驱动方法》。

  • Django 进阶部分,3. 博客:增加 "Huang Huang 的博客"。

  • Django RESTful API,2. 视频:增加 "Vue+Django REST framework 打造生鲜电商项目"。

  • 修改部分格式错误。

python-django-learning's People

Contributors

eycode avatar timm-lee avatar zaxlct avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

python-django-learning's Issues

sun的工位

比较乱,电视不是我看的(手动捂脸)
img_20180115_100834_hdr

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.