- Python 的开发和支持是怎样的?">Python 的开发和支持是怎样的?
- Python 的开发和支持是怎样的?—— 开源的妥协">Python 的开发和支持是怎样的?—— 开源的妥协
- Python 的技术优势是什么?">Python 的技术优势是什么?
- Python 的技术优势是什么?—— 面向对象和函数式的(编程)">Python 的技术优势是什么?—— 面向对象和函数式的(编程)
- Python 的技术优势是什么?—— 免费">Python 的技术优势是什么?—— 免费
- Python 的技术优势是什么?—— 可移植">Python 的技术优势是什么?—— 可移植
- Python 的技术优势是什么?—— 功能强大">Python 的技术优势是什么?—— 功能强大
- Python 的技术优势是什么?—— 可混合">Python 的技术优势是什么?—— 可混合
- Python 的技术优势是什么?—— 相对容易使用">Python 的技术优势是什么?—— 相对容易使用
- Python 的技术优势是什么?—— 相对容易学习">Python 的技术优势是什么?—— 相对容易学习
oop 简单、慢-
Python 的开发和支持是怎样的?
作为一个流行的开源系统, Python 享有一个很大而且活跃的开发社区,它以令许多商业软件开发人员感到惊讶的速度回应着需要解决的问题和开发增强项。Python 开发者通过一个源控制系统在线协同工作。更改是通过一个正式协议来开发的,它包含编写一个 PEP(Python 增强提案)或其他文档,和对 Python 回归测试系统的扩展。事实上,今天修改 Python 大致就像更改商业软件一样复杂。这和 Python 早期是非常不同的,在那时,一封给原作者的 email 就足够了,但考虑到它现在这么大的用户基数,这是一件好事。 PSF (Python 软件基金会),一个正式的非盈利小组,组织会议并处理知识产权问题。全世界举办了许多 Python 会议。 O’ Reilly 的 OSCON 和 PSF 的 PyCon 是最大的。前者处理多个开源项目,后者是 一个 Python 专有事件,它在最近这些年经历了巨大的增长。PyCon 在 2012 和 2013 分别达到了 2500 个参会人。事实上, PyCon 2013 年不得把它的上限定在到这个数,因为在 2012 年门票意外售罄了(并且成功的因技术上和非技术的原因获得了广泛的关注,这些原因我就不在这里赘述了)。更早些年参会人数通常翻倍增长,比如,从 2007 年 586 个参会人,到 2008 年超过 1000 个。 这大致显示了 Python 的成长,并让那些还记得早期会议的人印象深刻,因为那时的参会人(很少)只能坐满餐厅里一个桌子。 本文章首发在 LearnKu.com 网站上。Python 的开发和支持是怎样的?—— 开源的妥协
话虽如此,重要的是要注意到虽然 Python 享有一个积极的开发社区,但这仍然伴随固有的妥协。有时开源软件也会显得混乱,甚至类似无组织,并且可能并不总是像前面段落暗示的那样实现得那么顺利。一些更改可能仍然成功的挑战官方协议。就像在所有人类的活动中,尽管有过程控制存在,错误仍然发生(比如 Python 3.2.0 在 windows 平台上就带有一个无法正常工作的控制台 input 函数) 而且,开源项目放弃了商业利益而转向当前这组开发者的个人偏好,这些偏好可能和你的一样,也可能不一样。你并没有被一个公司强迫做什么事,但是你容易受到那些用业余时间来改变系统的人的影响。最终的效果就是开源软件的进化通常被少数人驱动,但强加给多数人。 然而,事实上妥协对那些使用最新版本的人的影响要比对那些使用稳定版本的人的影响要大得多。这些稳定版本包括在 Python 3.X 和 2.X 线中的之前的版本。比如,如果你一直使用 Python 2.X 中的经典类,那你几乎不会受到在 21 世纪前十年的中早期出现的新式的类中大量出现的类功能和改变的影响。虽然这些类功能和改变(还有其他许多变更)在 3.X 里面变成强制的,但现在许多 2.X 的用户仍然开心地避开这个问题。 本文章首发在 LearnKu.com 网站上。Python 的技术优势是什么?
很自然,这是一个开发者的问题。如果你还没有编程背景,那么下面几个章节中的语言可能就有一点难理解 —— 但是不要担心,在学习这本书的过程中,我们将会更深入地探索所有的这些术语。然而,对开发者来说,下面是 Python 的一些顶级技术功能的快速介绍。Python 的技术优势是什么?—— 面向对象和函数式的(编程)
从一开始, Python 就是一门面向对象的语言,它的类模型支持一些高级概念如多态、操作符重载、多重继承。然而,因为 Python 简单的语法和类型, 应用 OOP 是非常容易的。事实上,如果你不理解这些术语。你会发现:使用 Python 来学习他们会比使用几乎其他所有可用的 OOP 语言更容易。 除了作为一个强大的代码构建和重用的工具,Python 的 OOP 特性使得它很适合作为其他面向对象系统语言的脚本化工具,比如,使用合适的胶水代码, Python 程序可以作为在 C++、 Java 和 C# 中实现的类的子类(也就是特殊化 / 继承)。 同样重要的是,OOP 是 Python 中的一个选项。不需要一下子成为一个专家也可以用 Python 做很多事。Python 非常类似 C++,同时支持面向程序和面向过程的编程模式。当条件允许时,就可以用它的面向对象工具。这在战术开发模式中特别有用,因为它排除了设计阶段。 除了它原来的面向过程(基于语句)和面向对象(基于类的范式),Python 在最近这些年还增加了内置的函数式编程 —— 广为接受的一些特性包括:迭代生成器、理解技术、闭包、映射、装饰器、Lambda 匿名函数和一等函数对象。这些都可以作为 OOP 工具的补充和替代。 本文章首发在 LearnKu.com 网站上。Python 的技术优势是什么?—— 免费
Python 的使用和分发都是完全免费的。和其他开源软件如 Tcl, Perl, linux 和 Apache 一样,你可以在 Internet 上免费获取整个 Python 系统的源代码。拷贝,将它嵌入到你的系统,或者和你的产品一起发布,都是没有限制的。事实上,如果你非常想,甚至可以销售 Python 的源码。 但不要搞错了:“免费” 并不意味着 “不支持”。相反,Python 在线社区以大多数商业软件客服支持团队都需要努力模仿的速度来响应用户的问题。因为 Python 发布了完整的源码。这给了开发者力量,导致实现专家团队的创建。虽然研究或者修改一个编程语言的实现不会让每一个人都感到开心,但欣慰的是你知道自己如果需要就能够做到这样的事。你不再受制于商业公司的肆意改变,最终的文档 —— 源代码,作为最终武器随你调遣。 如早些时候提到的,Python 的开发是被一个在 Internet 上大规模协作的社区完成的。它包含了 Python 原作者 —— Guido van Rossum,官方任命的终身仁慈的独裁者(BDFL)—— 再加上一个数千人的支持团队。语言的更改必须遵循一个正式的增强程序,并且被其他开发者和 BDFL 仔细的审阅。这通常让 Python 对于变化的更改比其他语言和系统更保守。虽然 Python 3.X/2.X 的两个分支的出现是彻底和故意地与传统偏离,但是它(语言这种更改方式)在每一个 Python 分支中仍然基本有效。 本文章首发在 LearnKu.com 网站上。Python 的技术优势是什么?—— 可移植
Python 的标准实现是用可移植的 ANSI C 来写的,它编译并运行在当今几乎所有的主流平台上。比如 当前 Python 运行在 从 PDAs 到 超级电脑的所有类型的电脑上。作为一个不完整列表, Python 可以用在:- Linux 和 Unix 系统。
- 微软 windows (所有现代版本)
- Mac OS(OS X 和经典版本)
- BeOS, OS/2, VMS 和 QNX
- 实时系统(比如 VxWorks)
- Cray 超级电脑 和 IBM 大型主机
- 运行 Palm OS, PocketPC 和 Linux 的 PDA
- 运行 Symbian OS 和 Windows Mobile 的手机
- 游戏控制台和 iPods
- 运行 Google 的 Android 和 Apple 的 iOS 的平板和智能电话
- 其他