`
JavaCrazyer
  • 浏览: 3008932 次
  • 性别: Icon_minigender_1
  • 来自: 河南
社区版块
存档分类

程序员应该学习一下Python或Ruby

 
阅读更多

如果你是个学生,你应该会C,C++和Java。还会一些VB,或C#/.NET。多少你还可能开发过一些Web网页,你知道一些HTML, CSS和JavaScript知识。总体上说,我们很难发现会有学生显露出掌握超出这几种语言范围外的语言的才能。这真让人遗憾,因为还有很多种编程语言,它们能让你成为一个更好的程序员。

在这篇文章里,我将会告诉你,为什么你一定要学习Python或Ruby语言。

  • 跟C/C++/Java相比 —— Python/Ruby能让你用少的多的多的代码写出相同的程序。有人计算过,Python或Ruby写出的程序的代码行数只相当于相对应的Java代码的行数的五分之一。如果没有绝对的必要,为什么要花这么多时间写出这么多的代码呢?而且,有人说,一个优秀的程序员能维护的代码量最多是2万行。这不区分用的语言究竟是汇编,C还是Python/Ruby/PHP/Lisp。所以,如果你用Python/Ruby写,你一个人干的,不管是干什么,如果换用Java/C/C++,那都需要一个5人的小团队来干。
  • 跟VB/PHP比较 —— 跟PHP/VB相比,Python/Ruby的是一种从设计上讲比它们好的不知多少倍的语言。PHP和VB分别是在开发网站和桌面应用程序上非常流行的语言。它们流行的原因是非常的易学。不懂计算机的人也很容易的上手。如果你用这些语言开发过大型的项目,你就会发现这些语言的设计是如此的糟糕。是朋友,他就不会劝你使用PHP/VB。
  • 跟Lisp/Scala/Haskell/Closure/Erlang相比 —— Python/Ruby跟它们比起来显得相当的“主流”。确实,这些语言每种都有其很酷的特征,对于高级编程人员,了解这些语言能给他们对编程的思考带来实际的提升。但这些应该在你以后的职业生涯中才去决定学哪一两种。对于现在,Python/Ruby是在语言功能和实际运用之间平衡后的更好的选择。
  • 跟Perl相比 —— Python和Ruby都受恩于Perl,在这两种语言异军突起前,Perl是最好、最大的一种动态语言。但现在,Perl已是昨日黄花,越来越多的人转向Ruby/Python。我感觉Perl的面向对象机制有点做作,很不好用。通常认为,Perl是一种比较难学的语言,因为它提供你了太多不同的方法去完成同一个任务,它的语法有点像密码,非常不直观 —— 除非你对它掌握的非常好。总之,我感觉Perl是一种对于学生来说不是很合适的语言—除非你有特殊的理由去学它(例如,你有很多正则表达式要处理,这是Perl的闪光点)。
  • 跟sh/sed/awk/bash相比 —— 如果你使用Linux/Unix,你可能需要做一些shell编程,甚至会编写一些不小的程序。但是,对于这些语言,一旦程序达到一定的行数,事情就会开始变得让你痛苦不堪,你最好是用Python去做这些事情。当然,做这种事情,Perl是最好的选择,Python排第二。(Ruby对于系统shell脚本不是很合适)。

你可以在Google上搜一下“为什么X比Y好” —— 其中把X换成Python或Ruby,把Y换成另外一种语言 —— 你就会发现,有无数的文章来说明它们为什么这么好。

如果你有选择你的毕业设计使用的编程语言的自由,你应该选择Python或Ruby,它们能让你在开发项目的过程中节省一半的时间(除非你要开发的是移动应用,这样你必须要使用Java或Objective-C)。

如何去学它们呢?很多很多的网站上都提供了学习Python和Ruby的教材和课程。下面的是我从中选出的一些:

尾注

我的这篇文章可能会让很多Perl爱好者很郁闷,现在回味一下,我认识到对这种语言的要求过于苛刻了。因此,我把关于Perl的一节改写了一下。

Python和Ruby都受恩于Perl,在这两种语言出现之前,Perl是最大、最好的动态语言。但Perl现在太老了。它的面向对象性不完整。它很久没有升级更新了,它的市场份额正在丢失。对于一些新的、很火的事物(例如Web编程框架,Web API),它不如Python & Ruby那样能跟上时代的步伐。基本上,Python/Ruby在兴起,Perl在衰退。

本文中的所有语言的比较都是用来给印度计算机科学专业的学生选编程语言时做参考的。像“X比Y好”这样的句子准确的讲是毫无意义的,因为所有的语言都是经过时间的考验而存活下来的,有些语言会在某些领域比另外一种要强,这也是它们存活下来的原因。换句话说,总有一些情况下,PHP/Java/C/C++/Perl 看起来会比 Ruby/Python 等其它语言显的更适合。

本文是从 Why every programmer should learn Python or Ruby 这篇文章翻译而来

分享到:
评论
1 楼 GoTiger 2012-02-24  
学习了,是得找个时间来好好看下别的语言,来学习一下别的语言优秀思想

相关推荐

    每个程序员都应该学习使用Python或Ruby

    通过学习Python或Ruby,程序员将能够获得宝贵的编程经验,提升个人能力,并在项目开发中实现高效的工作。随着这些语言在业界的不断推广和应用,相信Python和Ruby将会是未来程序员手中不可或缺的利器。

    为什么你一定要学习Python或Ruby语言.pdf

    本文将探讨为什么学习Python或Ruby对于程序员来说是必要的,并与一些常见的编程语言进行对比。 首先,Python和Ruby相比C/C++/Java等语言,能显著减少代码量。据估计,Python或Ruby的代码行数仅相当于Java代码的...

    使用Python Lua和Ruby语言进行游戏编程

    再者,Ruby语言以其“程序员的快乐”理念著称,它提供了一种更加面向对象的编程方式,适合快速开发。在游戏编程中,Ruby可能不如Python和Lua那么常见,但仍有其独特的应用场景。例如,Ruby可以用于构建游戏服务器,...

    Python和Ruby比较优缺点共1页.pdf.zip

    这份资料《Python和Ruby比较优缺点共1页.pdf》可能是对这两种语言在特性、性能、社区支持、学习曲线等方面的对比分析。虽然我们无法直接查看压缩文件的内容,但根据标题,我们可以基于通常的理解来探讨这两门语言的...

    程序员数学3 的源代码

    尤其适合那些希望提升编程技能、进入机器学习或数据科学领域的程序员。 书中涉及的“线性代数”是计算机科学中的基础学科,特别是在现代计算技术如深度学习、图像处理、游戏开发等领域起着关键作用。线性代数的核心...

    Python程序员案头必备:《Python参考手册 (第4版)》(高清.书签.英文完整版)

    本书内容简洁扼要、可读性强,书中还包括了一些没有在Python官方文档或其他资料中出现过的一些高级的主题。 这一版在内容上进行了全面更新,介绍了Python 2.6和Python 3新引入的编程语言特性和库模块,同时还分析了...

    Dot Net程序员新方向 Ruby核心语法入门

    Ruby是一种由日本人松本行弘创造的编程语言,它的设计目标是创造一种比Perl更强大、比Python更面向对象的语言。Ruby的语法受到Perl和Smalltalk的影响,旨在提供一种更接近自然语言的编程体验,减少程序员在编写代码...

    Game Programming with Python Lua And Ruby

    综上所述,《Game Programming with Python Lua And Ruby》这本书不仅涵盖了使用这三种语言进行游戏开发的基础知识,还深入探讨了游戏开发过程中的各种技术细节和最佳实践,对于希望涉足游戏开发领域的学习者来说是...

    .NET程序员带您走入Ruby核心语法之门

    标题中的".NET程序员带您走入Ruby核心语法之门"意味着本文将探讨.NET程序员为何对学习Ruby感兴趣,并深入解析Ruby语言的基础语法。Ruby是一种由日本人松本行弘(Matz)创造的编程语言,其设计初衷是为了提供一种比...

    Ruby-PyCall从Ruby语言调用Python函数

    Ruby-PyCall是一个非常有用的库,它允许Ruby程序员无缝地调用Python的函数和模块,极大地扩展了Ruby的生态系统。这个库使得两个语言之间的交互变得简单而高效,特别是在需要利用Python的强大科学计算或数据处理能力...

    一个用Python、Ruby和其他编程语言实现算法简介(Cormen、Leiserson、Rivest和Stein)中的.zip

    除了Python和Ruby,压缩包可能还包含其他编程语言的实现,这提供了多角度的学习机会。比如,C或C++的实现可能更加底层,让你了解算法在内存管理和效率上的考虑;Java的实现则展示了面向对象设计在算法中的应用;甚至...

    ruby编程学习笔记及demo

    Ruby 是"程序员的最佳朋友"。 Ruby 的特性与 Smalltalk、Perl 和 Python 类似。Perl、Python 和 Smalltalk 是脚本语言。Smalltalk 是一个真正的面向对象语言。Ruby,与 Smalltalk 一样,是一个完美的面向对象语言。...

    Python、Lua和Ruby——脚本大P.K.1

    Python、Lua 和 Ruby 是三种广泛应用于游戏开发、脚本编写以及各种软件工程的高级编程语言。每种语言都有其独特的特性和优势,同时也存在一些不足之处。下面我们将详细探讨这些语言的特点。 首先,Python 是一种...

    [转] ruby学习一个综合小练习

    标题中的“ruby学习一个综合小练习”表明这是一个关于Ruby编程语言的学习资源,可能是通过一个实际的小项目或练习来帮助学习者提升对Ruby的理解。描述中提到的“博文链接”指向了一个特定的博客文章,虽然没有给出...

    学编程选什么语言好?是PHP、Python还是Ruby?

    在互联网上,关于初学者应该选择哪种编程语言的讨论非常热烈,常见的选择有PHP、Python和Ruby。以下是对这三种语言的深入分析以及它们在实际应用中的优劣比较。 首先,PHP是一种广泛使用的服务器端脚本语言,尤其在...

    sciTE 编辑器,支持Ruby,Python

    在本篇文章中,我们将深入探讨sciTE对Ruby和Python这两种语言的特有支持,以及它的一些核心功能和优势。 **1. 支持Ruby和Python** sciTE特别强调对Ruby和Python的支持,这意味着它为这两种语言提供了丰富的语法...

    程序员攻略练级

    启蒙入门阶段,建议学习一门脚本语言如Python或Ruby,因为它们能够快速开发实用的小程序。实践项目包括处理文本文件、与数据库交互、使用基本的调试方法等,以增强对脚本语言的理解。此外,学会利用Google进行技术...

Global site tag (gtag.js) - Google Analytics