按关键词阅读: Python 编程 Java
文章图片
Java和Python既有重要的相似之处 , 也有重要的区别 。 例如 , 这两种语言都是功能强大的编程语言 , 拥有大量专门的社区和大量开发人员支持的库 。
但是Java和Python在许多方面也有很大的不同 。 其中一些差异是客观的 , 不值得讨论 , 而另一些则是观点、使用偏好或编程环境的问题 。
例如 , Java是一种编译语言 , Python是一种解释语言 。 这种差异赋予每种语言特定的优点和缺点 。 例如 , 即使在编译后的代码是否比解释后的代码执行更快的问题上争论不休 , 但事实往往更为微妙 。 一种语言是否比另一种语言快取决于使用它们的环境 。 例如 , Python更擅长在GPU上以大规模并行模式运行 。
这两种语言的书写方式也不同 。 在Java中创建结构时 , 将其括在大括号中 。 Python使用缩进来执行相同的任务 。
这些结构差异会影响程序员查看语言的方式以及程序员键入语言的速度 。 理论上 , 他们也会对学习语言所需的技能水平产生影响 。 然而 , 在大多数情况下 , 这个问题实际上归结为个人偏好的问题 。 也许更重要的是 , 许多开发人员依赖IDE、编码环境和模板 , 这使得这个问题变得不那么重要 。
程序员们还在其他方面无休止地争论这两种语言的优点 。 例如 , 一些人声称开发人员在Python中的生产率可以提高5到10倍 , 因为Python支持动态类型 。 其他人则对生产率问题持相反的观点 。 这些论点中的大多数都使用不同的方法来证明他们的观点 , 这使得苹果和橙子的比较不是很有用 。 哪种语言最终更高效通常取决于开发人员的语言经验、编码风格和应用程序开发需求 。
实际上 , 记住 , 语言工具最终会把程序员创造的任何东西变成机器代码 。 因此 , 选择一种语言不是机器更喜欢哪种语言的问题 , 而是满足开发人员的要求 , 以开发人员理解的方式将任务清楚地传达给机器 。
Java和Python的发展趋势
虽然不像以前那样流行 , 但Java仍然是最流行的编程语言 。 另一方面 , Python的增长是惊人的 , 这一惊人增长的原因包括开发人员的生产力、语言灵活性、库支持、社区支持和学习的便利性 。 Python在数据科学和人工智能以及web应用程序、桌面应用程序、网络服务器和媒体工具等热门领域也得到了广泛应用 。
与此同时 , Java的受欢迎程度可能因其不太出色的安全声誉而受到损害 。 当然 , Java的坏名声主要是由于Java浏览器插件的问题 , 否则 , 该语言的安全问题并不比其他语言严重 。 无论如何 , Python自身的安全记录远非理想 , 但它在这方面得到了更好的支持 , Python的易用性可以让经验较少的开发人员更容易地保护他们的代码 。
然而 , 将Java视为一种“曾经”的语言是不明智的 。 Java开发人员不断添加新功能 , 使Java在进行大规模开发时更小、更快、更灵活 。 强大的Java虚拟机(JVM)使创建跨平台兼容的Java应用程序变得非常容易 , Java在构建大型传统应用程序方面继续表现出色 , 这些应用程序代表了当今大多数企业所采用的编码方式——财富500强中90%的人都在使用它!无论你如何削减 , Java应用程序代码和Java编程工作的巨大安装量不会很快消失 。
Java和Python也使用非常不同的线程模型 。 PythonGIL或全局解释器锁意味着 , 与Java不同 , Python实际上是单线程的 , 一次只能在单个CPU核上运行 。 另一方面 , 与使用Java做同样的事情相比 , 在Python中使用GPU相对简单 。 因此 , 虽然它可能还不是科学应用程序之外的标准实现 , 但在5120核GPU上以大规模并行模式运行的Python应用程序很可能会冒烟运行在8核CPU上的完全优化的Java应用程序 。
“识字编程”问题
编程语言的学习曲线在很大程度上取决于你当前的知识、预期的语言使用和学习环境 。 例如 , 如果你已经知道如何在C、C++或JavaScript中编程 , 那么学习java可能相对容易 , 尤其是如果你只想编写应用程序代码 。 但是 , 如果你以前从未编程过 , 并且打算使用该语言为科学界创建输出 , 那么Python可能是更好的选择 。 Python是当前学校的首选语言 , 因为它帮助人们非常快速地构建良好的编码技术 , 并且有着广泛的用途 。
代码表示也是两种语言之间越来越重要的区别 。 在过去 , 开发人员主要使用代码来创建应用程序 。 代码通常由其他开发人员和机器阅读 , Java简洁的语法在很长一段时间内占据优势 。 然而 , 现在不同的观点和技能的人使用编程语言 , 因为他们工作的各种各样的目标(不一定是应用程序开发) , 你还需要考虑他们的需求和技能 。 Python在这方面可能有优势 , 因为它完全支持斯坦福大学计算机科学家DonaldKnuth最初构思的识字编程方法 。
稿源:(未知)
【傻大方】网址:/c/111YA3212021.html
标题:Python|Java与Python:哪种编程语言最好?