Django综述

这个题目实在是有些大,如果主要介绍Django那又不如官方文档详细,如果挑细节说又显得分类不够明确。所以就写一些个人对Django的理解吧。日后显然是会填充更多内容的。

这里先贴上 The Django Book,开始Django时必定先看的书。

以下文字摘自 The Django Book 第一章

Django 是从真实世界的应用中成长起来的,它是由 堪萨斯(Kansas)州 Lawrence 城中的一个 网络开发小组编写的。 它诞生于 2003 年秋天,那时 Lawrence Journal-World 报纸的 程序员 Adrian Holovaty 和 Simon Willison 开始用 Python 来编写程序。

当时他们的 World Online 小组制作并维护当地的几个新闻站点, 并在以新闻界特有的快节奏开发环境中逐渐发展。 这些站点包括有 LJWorld.com、Lawrence.com 和 KUsports.com, 记者(或管理层) 要求增加的特征或整个程序都能在计划时间内快速的被建立,这些时间通常只有几天 或几个小时。 因此,Adrian 和 Simon 开发了一种节省时间的网络程序开发框架, 这是在截止时间前能完成程序的唯一途径。

2005 年的夏天,当这个框架开发完成时,它已经用来制作了很多个 World Online 的站点。 当时 World Online 小组中的 Jacob Kaplan-Moss 决定把这个框架发布为一个开源软件。

使用Django半年时间,看过各种人对其的评价,有一句话特别赞同:

Django适合用来搭建中型项目,太小型或者太大型都不合适。

如果你只需要一个个人主页,或者一个宣传网站,又或者仅仅是用来炫H5技术的网站,那么Django一定不会是你的首选。虽说搭建Django也很快,但是我们先来看一下搭建Django后台到显示出你的html页面的流程:

  1. 安装Python
  2. 安装Django
  3. 安装数据库(可选)
  4. 创建一个project
  5. 准备好你的HTML页面
  6. 编写一个view函数,选择你的HTML页面来渲染
  7. 修改urls.py,将view与路径绑定
  8. 修改settings.py,绑定静态文件路径
  9. runserver! tada! 你看到你的页面了

前两步是所有Web框架都逃不开的步骤(就像铁匠至少得有锤子和铁砧),第3步是小型项目一定不会选择的(如果一个项目使用到了数据库,我一定不会称其小),第4步大部分框架都会提供便利的脚本。到此为止Django还是没什么特别的,但是从第5步往下看。如果你想要一个新的页面,你至少得分别做3件事:写页面,写view,绑定url。如果settings都还没配置,那就是4件事,如果想把网站部署到网络上,那静态文件还有得可折腾的,不过这准备在另一篇文章里再细说,这里先按下不表。

3个步骤分别对应3个不同的文件,如果你是个对workspace的清晰程度有极度洁癖的人(比如我),那你还可能面对3个不同的存放位置。在最初的一个月里这三个文件让我不知道出了多少次错,然而我不过是想添加几个页面而已,为什么就不能前台搞一下样式后台再搞一下就好了呢?非得让我后台改2个文件才行。

当然这可以说只是熟练度的问题,我承认,如果你有搭建Web后台的经验,现在想要新开一个项目,那什么顺手用什么,Tomcat+Spring都可以。但是对于一个没什么经验也不明确哪个组件要哪个组件不要的新手,我不会推荐Django,因为可能让他选择要不要数据库都得折腾半天。选择NodeJS会更好一些,毕竟JS谁都会(手动斜眼)。

对于大型项目来说,Django也不是首选,不过现在也不乏用Django所写的大型网站,比如知乎,日PV也很高,那是因为他们是从一个小网站不断演变而来,旧代码放在那,弃之不用的代价太高。但是大如12306的体量,绝不可能一开始就选择Django。就我现在接触到的范围来解释,Django的并发能力实在太弱。简单来说可能是Python这个语言的问题,PIL机制的存在让多线程能力比较弱,不过如果要深入下去那可以说的内容还是很多的,以后另开一篇再来说吧。

所以Django写小项目有点小题大作,写大项目有点力不从心,但是不能说这是一个不优秀的框架,相反这是一个优秀到不行的框架。Django的ORM实在是能够帮开发者省去很多时间,同样省时间的还有一套完整的authentication模块。之前所说的三个步骤对于中型项目来说又变成了优势,因为结构不会更复杂了,无论urls再怎么写,view再怎么拆分,始终都是一份html template(这是指Django的template),一份view,一份url。对于重复的机械的编写新页面一事来说,不会出现复杂度爆炸的情况。而做web应用不外乎就是这些事。自然web开发有趣的事也有很多,不过那又是另一个话题了。

所以总的来说Django是一个很趁手的工具,虽然有各种各样的缺点,但多少都有解决办法,并且作为一款开源框架它也在不断自我完善,感谢整个社区的贡献。所以无论哪一个公司拿它来做核心工具,那都是OK的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,539评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,594评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,871评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,963评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,984评论 6 393
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,763评论 1 307
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,468评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,357评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,850评论 1 317
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,002评论 3 338
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,144评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,823评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,483评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,026评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,150评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,415评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,092评论 2 355

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 172,189评论 25 707
  • Refer to: www.threemeal.com/blog/12/ 中间件 中间件是一个钩子框架,它们可以介...
    兰山小亭阅读 16,495评论 9 165
  • 2016年8月9日 今天抽到星币6,两个下跪的人,一个商人模样的人拿着天平在施舍钱财,看着好别扭啊,有那么缺钱吗?...
    LULU鲁鲁阅读 245评论 0 0
  • 1 橱窗道具过于拥挤;撤掉最长的那个;另外模特服装参考陈列指引进行调整 流水台申请下 流水台专用的价格签; 调整坐...
    Holiday澈阅读 207评论 0 0
  • 10月假期归来,闲来无事在超声室和军军哥、翟翟聊天,突然觉得做个超声吧,看看月经期快到了吗?那么努力的要宝宝但一直...
    不贪睡的牛阅读 229评论 0 0