个人对现在大众对perl的偏见的一些见解
最近我都在一些论坛和交流社区学习,发现很多人对perl有很大的偏见。
以我学习那么久的Perl来说吧,也算是有一些小经验了,所以我总结了大家对perl的偏见的原因,无非就是是下面两个的两个原因:
1、Perl相当的灵活自由,而且存在很多符号,可能会导致写出一些很乱的代码,造成可读性很差。
2、不同的程序员写出来的代码风格差别很大,造成后期维护困难。
大部分的人都是因为第一条原因,我在学Perl之前,也写过python,在那之前我也受到别人的影响,对Perl这门语言抱有一定的偏见,
觉得这是一门已经过时落伍的语言,当我抱着这种心态学完perl之后,确实,感觉Perl很多方面都比不上python。
但现在学了Perl接近一年半了,Perl也带给我一些python所不能带给我的感受,比如说正则表达式、面向对象等等。
而很多人之所以因为第一个原因觉得Perl可读性很差,究其原因还是没学够,没看够。比如说很多人看到别人写的Perl代码,第一眼没看懂就不看了,
但如果你能仔细的读过,你会发现perl的写法是多种多样的,这样也能让你汲取到很多的经验。
总结一下,就目前来说,perl并不比python落后,他们都有各自的优点和缺点,但Perl在文本处理、正则表达式和系统管理方面,便捷性还是超过了其他脚本,
现在的perl和以前的相比做出了很多改变,可读性提高了不少,规范性也增强了,也有很多很好的项目,最后就是,学习Perl一定要坚持不懈,
多看多写,这样才可以写出更简洁、更易懂的代码。
新年快到了,在这里先给大家拜个年,祝大家家庭幸福,天天开心!
个人对现在大众对perl的偏见的一些见解的更多相关文章
- C,C++,Lisp,Java,Perl,Python
(译注:圣经记载:在远古的时候,人类都使用一种语言,全世界的人决定一起造一座通天的塔,就是巴别塔,后来被上帝知道了,上帝就让人们使用不同的语言,这个塔就没能造起来. 巴别塔不建自毁,与其说上帝的分化将 ...
- 求一列的和,awk和perl哪个快?
下午和群里的朋友争论了一下,有关awk和perl处理文本的速度,自己一直比较推崇perl,对awk知之甚少,结果就想当然的觉得perl快,结果一番争吵后,觉得还是实验一下靠谱,(其实是想证明一下per ...
- 精通Perl(第2版)
精通Perl(第2版)(通往Perl大师之路必读经典书籍,体现了一种编程思维,能够帮你解决很多实际的问题) [美]brian d foy(布瑞恩·D·福瓦)著 王兴宇 刘宸宇 译 ISBN 978 ...
- Hawk 1.2 快速入门2 (大众点评18万美食数据)
本文将讲解通过本软件,获取大众点评的所有美食数据,可选择任一城市,也可以很方便地修改成获取其他生活门类信息的爬虫. 本文将省略原理,一步步地介绍如何在20分钟内完成爬虫的设计,基本不需要编程,还能自动 ...
- Node.js大众点评爬虫
大众点评上有很多美食餐馆的信息,正好可以拿来练练手Node.js. 1. API分析 大众点评开放了查询商家信息的API,这里给出了城市与cityid之间的对应关系,链接http://m.api.di ...
- perl
introduction: http://www.yiibai.com/perl/perl_introduction.html functions: http://www.yiibai.com/per ...
- 小众Tox——大众的“去中心化”聊天软件
★Tox是什么 一个反窥探的开源项目:一种基于DHT(BitTorrent)技术的即时通讯协议:一个为安全而生的加密通讯系统 .美国棱镜计划曝光后,一个名为 irungentoo 的牛人于17天后的2 ...
- perl学习之路3
Perl编程之路3 标签: perl 列表与数组 Perl里面代表复数的就是列表和数组 列表(list)指的是标量的有序集合, 而数组(array)则是存储列表的变量. 在Perl这两个属于尝尝混 ...
- perl学习之路2
这些主要是从 "小骆驼" 书上粘贴或者摘抄出来的, 个人认为需要记的语法知识 "在某些情况下, 你可能需要在一台机器上写程序, 再传送到另一台机器上运行.这时候, 请使用 ...
随机推荐
- Java从键盘输入
package my;import java.util.Scanner; public class MyJava { /** * @param args */ public st ...
- codeforce 611A New Year and Days
#include<cstdio> #include<cstring> #include<cmath> #include<algorithm> using ...
- Android Camera 调用流程总结
1.总体介绍 Android Camera框架从整体上看是一个client/service架构.有两个进程,一个是client进程,可以看成AP端,主要包括Java代码和一些native层的c/c+ ...
- Xcode8 去除系统日志输出
Edit Scheme-> Run -> Arguments, 在Environment Variables里边添加 OS_ACTIVITY_MODE = disable
- LWIP_STM32_ENC28J60_NETCONN_TCP_SERVICER(5)
前面说了TCP客户端通讯,这一篇来说说单片机作为服务器的通讯方法 tcp客户端和服务器的链接做大的不同在于服务器是不需要主动链接谁的,他只需要绑定在自己得一个特定的端口之上,等别人来连接就好了,先创建 ...
- List的输出方法
1.for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i));} 2.List list = new ...
- mysql 查找重复的数据
Select Name,Count(*) From A Group By Name Having Count(*) > 1 Name是字段
- 【转】101个MySQL调试和优化技巧
MySQL是一个功能强大的开源数据库.随着越来越多的数据库驱动的应用程序,人们一直在推动MySQL发展到它的极限.这里是101条调节和优化MySQL安装的技巧.一些技巧是针对特定的安装环境的,但这些思 ...
- 深入理解yield(转)
yield的英文单词意思是生产,刚接触Python的时候感到非常困惑,一直没弄明白yield的用法.只是粗略的知道yield可以用来为一个函数返回值塞数据,比如下面的例子: def addlist(a ...
- windy数(bzoj 1227)
Description windy定义了一种windy数.不含前导零且相邻两个数字之差至少为2的正整数被称为windy数. windy想知道,在A和B之间,包括A和B,总共有多少个windy数? In ...