一篇文章让你快速了解Python语言中的功能强大的Django

  • A+
所属分类:python基础入门

Django是一个高级的Python Web框架,可以快速开发安全和可维护的网站。 Django由经验丰富的开发人员构建,负责Web开发的许多麻烦,因此您可以专注于编写应用程序,而无需重新开发。 它是免费和开源的,拥有蓬勃活跃的社区,出色的文档以及许多免费和付费的支持选项。

一篇文章让你快速了解Python语言中的功能强大的Django

由于篇幅有限,今天分享之前先说下这个,,如果大家喜欢的话我会再更新,专注学习Python技术的小伙伴可以进群(588090942)一起交流学习,群里还有大量学习资料可供大家自行下载参看,欢迎大家一起来交流讨论。

Django可以帮助你编写这样的软件:

  • 完成

  • Django遵循“包含电池”的理念,并提供了开发人员可能希望“开箱即用”的所有内容。 因为您需要的所有东西都是“产品”的一部分,所以它们都可以无缝地一起工作,遵循一致的设计原则,并具有丰富的最新文档 。

  • 多才多艺

  • Django可以(而且已经)被用来构建几乎任何类型的网站 - 从内容管理系统和维基,到社交网络和新闻网站。 它可以与任何客户端框架一起工作,并且可以以几乎任何格式(包括HTML,RSS提要,JSON,XML等)提供内容。 您正在阅读的网站是基于Django!

    在内部,尽管它提供了几乎所有你想要的功能(例如几个流行的数据库,模板引擎等)的选择,但如果需要的话,也可以扩展到使用其他组件。

  • 安全

  • Django通过提供一个被设计为“做正确事情”来自动保护网站的框架来帮助开发人员避免许多常见的安全错误。 例如,Django提供了一种安全的方式来管理用户帐户和密码,避免了常见的错误,如将会话信息放入易受攻击的cookie中(而Cookie只包含一个密钥,而实际的数据存储在数据库中)或直接存储密码而不是密码哈希。

    密码散列是通过密码散列函数发送密码而创建的固定长度值。 Django可以通过运行散列函数并将输出与存储的散列值进行比较来检查输入的密码是否正确。 但是由于函数的“单向”性质,即使存储的哈希值被泄露,攻击者也很难计算出原始密码。

    Django默认可以防范许多漏洞,包括SQL注入,跨站点脚本,跨站点请求伪造和点击劫持(有关这种攻击的详细信息,请参阅网站安全 )。

  • 可扩展

  • Django使用基于组件的“无共享 ”体系结构(体系结构的每个部分独立于其他部分,因此可以根据需要进行替换或更改)。 在不同部分之间清晰分离意味着它可以通过在任何级别添加硬件(缓存服务器,数据库服务器或应用程序服务器)来扩展流量。 一些最繁忙的网站已经成功地调整了Django来满足他们的需求(例如Instagram和Disqus,只有两个)。

  • 可维护性

  • Django代码是使用鼓励创建可维护和可重用代码的设计原则和模式编写的。 特别是,它利用了不要重复自己(DRY)的原则,所以没有不必要的重复,减少了代码量。 Django还将相关功能分组为可重用的“应用程序”,并在较低级别将相关代码分组为模块(沿着模型视图控制器(MVC)模式)。

  • 手提

  • Django是用Python编写的,可以在很多平台上运行。 这意味着您不受限于任何特定的服务器平台,并且可以在多种Linux,Windows和Mac OS X上运行您的应用程序。此外,Django得到了许多Web托管服务提供商的很好的支持,他们经常提供特定的基础架构和主持Django网站的文档。

一篇文章让你快速了解Python语言中的功能强大的Django

它从哪里来的?

Django最初是在2003年至2005年间由一个负责创建和维护报纸网站的网站开发的。 创建了一些站点后,团队开始分解并重用大量的通用代码和设计模式。 这个通用的代码演变成了一个通用的web开发框架,它在2005年7月作为“Django”项目开源。

从2008年9月的第一个里程碑版本(1.0)到最近发布的2.0版本(2017年),Django一直在不断发展壮大。 每个版本都增加了新的功能和bug修复,从支持新的数据库类型,模板引擎和缓存到增加“通用”视图函数和类(减少了开发人员必须编写的代码量一些编程任务)。

注意 :查看Django网站上的发行说明 ,了解最近版本中发生了哪些变化,以及为使Django更好地工作做了多少工作。

Django现在是一个蓬勃发展的协作开源项目,拥有数以千计的用户和贡献者。 尽管Django还有一些反映其起源的特性,但Django已经发展成为一个能够开发任何类型网站的多功能框架。

Django有多受欢迎?

目前还没有任何关于服务器端框架流行的明确衡量标准(尽管Hot Frameworks等网站试图通过计算每个平台的GitHub项目数量和StackOverflow问题等机制来评估受欢迎程度)。 更好的问题是,Django是否“足够流行”,以避免不受欢迎的平台的问题。 它继续发展吗? 如果你需要的话,你能得到帮助吗? 如果你学习Django,有没有机会从事有偿工作?

根据使用Django的高调网站的数量,贡献代码的人数以及提供免费和付费支持的人数,Django是一个流行的框架!

Django是否真诚?

Web框架通常将自己称为“自以为是”或“不可选择的”。

意见框架是那些有关“正确的方式”来处理任何特定任务的意见。 他们经常支持特定领域的快速发展(解决特定类型的问题),因为做任何事情的正确方法通常都是很好理解的,并且有很好的文档记录。 然而,他们在解决主要领域以外的问题方面可能不太灵活,并且倾向于为他们可以使用的组件和方法提供更少的选择。

相比之下,未经选择的框架对将组件粘合在一起以实现目标,甚至应该使用哪些组件的最佳方式的限制要少得多。 它们使开发人员可以更容易地使用最合适的工具来完成特定的任务,尽管以您需要自己查找这些组件为代价。

Django“有点自以为是”,因此提供了“两全其美”。 它提供了一组组件来处理大多数Web开发任务和一个(或两个)首选的方式来使用它们。 但是,Django的解耦架构意味着您通常可以从多个不同的选项中进行选择,或者根据需要添加全新的支持。

一篇文章让你快速了解Python语言中的功能强大的Django

weinxin
我的微信公众号
爱真理,得永生!          爱在灵灵久博客,网罗天下,福利大家!

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: