应该向 Web 开发初学者推荐 PHP、Python 还是 Ruby ?理由是什么?

铁扇公主1 发布于 2017/04/19 22:16
阅读 717
收藏 0

对于web开发初学者来说,最大的问题就是学**哪种编程语言更适合未来的职业发展并且更有前景。你要考虑都有哪些编程语言,各自的优缺点是什么、每种编程语言的学**周期有多长等问题。互联网上也有很多文章,比如“PHP已死”、“PHP学**曲线”、“如何用好Python”等。小编今天和大家探讨一下在Python,PHP和Ruby之中,应该优先学**哪种编程语言?

Python是最容易学**和理解的、Python更快、学**Ruby比较困难、Ruby具有最高的可用性。单凭这些简单对比,没有办法知道哪种语言最好,我们还应该考虑一些其他问题,比如:

哪种语言是最安全的?

网站和应用程序的安全性主要取决于程序员本身,而不是编程语言。但PHP是众所周知的不安全语言,这是因为PHP的语法不像Python或Ruby那么简单。由于语法复杂(可读性低),发生错误的几率更大。如果开发人员在编码过程中足够认真,那么PHP也不是不安全,事实上PHP5与旧版本相比已经受到了很多用户的认可了。因此,在安全问题上没有真正的结论。

二、这些语言的缺点是什么?

PHP:

 

1、比C/C ++和Perl更详细的语法,带有大量花括号和美元符号以及“ - >”

2、函数名称容易混淆。内置库有各种各样的命名约定,函数通常有前缀来表示它们的源(但通常大家都不会这么做),函数通常放置在类中以模拟命名空间。

3、不适合大型应用开发,很难维护,因为它不是很模块化。

4、Weak类型:隐式转换可能会使不熟悉的程序员感到惊讶,并导致意想不到的错误。 例如,字符串“1000”和“1e3”看起来是相等的,因为它们被隐式地转换为浮点数。

5、PHP是一种脚本语言,而不是面向对象。

 

Python:

 

1、Python没有'switch'语句和'do ... while'语句。

2、递增递减和赋值运算符(赋值语句只在Python中有效)。

3、三元运算符/语句(...?...:...)。

4、所有变量和函数没有私有,受保护或公有的定义。

5、类和方法没有abstract和final修饰符。

 

Ruby:

1、学**Ruby很困难。

2、缺少信息资源。

3、与其他编程语言相比,处理时间(CPU时间)更慢。

4、开发和更新速度较慢。

 

三、这些语言的优点是什么?

PHP:

 

1、初学者容易上手(学**曲线短而平)。如果开发人员有类似的语法学**背景,如C,C ++,C#,Java,JavaScript等。

2、它支持所有主流的Web服务器,如Apache,Microsoft IIS,Netscape,个人Web服务器,iPlanet服务器等。

3、PHP被许多行业广泛接受,它比其他语言更受欢迎。

4、在托管时,很容易直接托管PHP网站,无需任何服务器配置。但是,托管PHP网站可能会让新手感到头痛。

5、PHP中的Zend框架是最知名的。再比如Yii,Laravel,Codeigniter等框架都给予了PHP更强的实力。

6、可快速开发任何类型的CMS。

 

Python:

1、语法简洁,非常易读。·

2、通用语言。

3、面向对象。

4、Python更适合作为“glue”。

5、Huge标准库。选择一些随机的例子,Python都会附带几个XML解析器,CSV和zip文件读取器和写入器,可以使用几乎所有互联网协议和数据类型的库。

6、高级数据结构是一个列表,该目录非常适合Python。

7、用于Web开发大型框架,如Django和Flask。

python的社区还是有很多事情要做的, 比如他们把很多web框架都抄了一遍, 各种思想的都有, 比如最早的zope, z-object系统的思想还是很有看头的, django可以说对应rails, 还有TG和Pylons, 还有tornado这样神奇的东西ruby社区还没有吧, 只能对应nodejs了. 

 

但是, 我认为python最重要的, 还是在与背后的pythonic思想, zen of python. 我相信如果一个成熟的工程师, 能搞定大部分事情是第一步, 理解事物背后的规律并且能用优美的方式解决才是常态, 之后就会按照pythonic的方法, 优雅的搞定所有的工作. pythonic是hacker精神的延续.

同时有经验的工程师也不会陷入某种狂热或者崇拜之中, 你说一个东西好, 那么我也要看一看才能相信你所说的. 那些在java, php里面投入很多的工程师, 也或多或少的达到了pythonic的境界.

加载中
0
海淀游民
海淀游民

学完了快速找工作,学PHP,毕竟宇宙最好语言,国内用的太广泛了;

如果想将来玩点别的,例如深度学习、大数据或者系统运维,则 Python。

至于什么语言特性,你想多了,那是最不重要的。

0
xpentium
xpentium

5、PHP是一种脚本语言,而不是面向对象。

 

这文章不是误导人吗

0
自由PHP
自由PHP

广告,倒数第六排

0
OSC_RfCFOh
OSC_RfCFOh
我能喷你吗?
0
ewangshi
ewangshi

看你要做什么,为了找工作应该学一些市场需求比较大的比如php,如果把编程当成手段去做一些工具、数据分析选python

返回顶部
顶部