Mergulhe profundamente no debate em Python vs Perl - o que devo aprender Python ou Perl?

Mergulhe profundamente no debate em Python vs Perl - o que devo aprender Python ou Perl?

Freqüentemente, quando uma nova linguagem de programação é introduzida, há um debate que começa entre algumas das mentes geniais da indústria em que o idioma é comparado com o que já espalha suas raízes. Uma espécie de zumbido geralmente se espalha na indústria de TI e a nova é frequentemente comparada em todos os aspectos, pode então ser recursos, sintaxe ou CPU e aspectos de memória, incluindo o tempo do GC e tudo, com o tipo existente do gênero.

Muitos exemplos desses casos podem ser captados e investigados do passado, incluindo o debate entre Java e C#, C++, etc. Um desses casos que chamou uma quantidade significativa de atenção foi o debate entre dois idiomas que saíram um após o outro em um curto espaço.e. Pitão e Perl.

Enquanto Pitão foi inventado inicialmente como sucessor da linguagem ABC apenas como um “passatempo”Projeto de programação (que atrairia hackers Unix/C) para o autor que o nomeou após a série de sua maior estrela Monty Python.

Leia sugerida: Introdução com a programação e scripts do Python no Linux

Perl era quase 2 anos antes como uma linguagem de script Unix que pretendia facilitar o processamento do relatório. Era uma mistura de uma combinação de muitos idiomas, incluindo C, Script Awk, Sed e Shell.

O que vale a pena notar é que esses idiomas que evoluíram de diferentes intenções estão sendo constantemente comparados, o que me fez estudar e descobrir as razões, das quais algumas importantes estão listadas como abaixo:

  1. Ambos o sistema operacional UNIX direcionado, um para hackers e outros para processar relatórios.
  2. Ambos são orientados a objetos (Python sendo o mais) e interpretados, com um sendo fortemente digitado e claro quando se trata de codificar eu.e. Python e outros permitindo digitação feia com aparelho para representar um bloco i.e. Perl
  3. Ambos são opostos em princípio quando dizemos, Perl tem muitas maneiras de executar uma única tarefa, enquanto Python se concentra em uma e apenas uma maneira de fazer as coisas.

Python vs Perl - Recursos comparados

Vamos mergulhar profundamente nesse debate e tentar descobrir os aspectos gerais em que esses dois idiomas se diferenciam. Além disso, vamos tentar descobrir a fonte da verdade para muitos clichês que podem ser ouvidos na indústria dizendo “Python é Perl com rodas de treinamento" ou "Python é semelhante ao Perl, mas diferente”Para que possamos tentar concluir com uma solução precisa para este debate interminável.

1. Limpo de Python contra a sintaxe complexa de Perl

Python tira uma enorme vantagem sobre o Perl quando se trata de legibilidade de código. O código de Python é muito mais claro para entender do que o de Perl, mesmo ao ler o código depois dos anos.

Com o recuo representando o bloco de código e a estruturação adequada, o código do Python é muito mais limpo. Por outro lado, a Perl empresta sua sintaxe de várias linguagens de programação, como C, script de shell e até filtros Awk e sed quando se trata de expressões regulares.

Leia sugerida: 15 comandos 'sed' úteis para tarefas diárias de administração do sistema Linux

Além disso, com '' e '' representando um bloco de código e adição desnecessária de ';' No final de cada linha, o código em Perl pode se tornar um problema para entender se você a ler depois de meses ou anos devido ao seu subsídio de script feio.

2. O suporte de operações de 3rd Party REGEX e OS de Python de Python

A linguagem perl empresta sua sintaxe de C e outro Unix comandos como sed, Awk, etc. Devido ao qual possui suporte de regex muito poderoso e embutido sem importar módulos de terceiros.

Também, Perl pode lidar com operações do sistema operacional usando funções internas. Por outro lado, Pitão tem bibliotecas de terceiros para ambas as operações i.e. para regex e SO, SYS para operações do sistema operacional que precisam ser garantidas antes de fazer essas operações.

As operações regex de Perl têm 'sed'Como a sintaxe, o que facilita não apenas as operações de pesquisa, mas também substituir, substituir e outras operações em uma string, pode ser feito de maneira fácil e rápida do que Python, onde uma pessoa precisa conhecer e lembrar as funções que atendem à necessidade.

Exemplo: Considere um programa para procurar um dígito na string em perl e Pitão.

Pitão
Importar re str = 'hello0909there' resultado = re.Findall ('\ d+', str) Resultado de impressão 
Perl
$ string = 'hello0909there'; $ string = ~ m/(\ d+)/; Imprima “$ & \ n” 

Você vê a sintaxe para Perl é muito fácil e inspirado pelo comando sed que se aproxima Python's Sintaxe que importa o módulo de terceiros 'ré'.

3. Programação OO avançada do Python vs Liners de Perl

Um recurso onde Pitão ofuscou Perl é seu avançado OO programação. Pitão possui um extenso suporte de programação orientado a objetos com sintaxe limpa e consistente enquanto o objeto OOP em Perl estar desatualizado onde o pacote é usado como substituto para as aulas.

Leia sugerida: Introdução ao Python Django Web Framework

Além disso, escrevendo OO O código em Perl adicionará muito mais complexidade ao código, o que acabaria por dificultar o entendimento do código, mesmo as sub -rotinas em Perl são muito difíceis de programar e, eventualmente, difícil de entender mais adiante.

Por outro. Além disso, o código PERL pode eventualmente realizar várias tarefas em menos linhas de código do que Python.

Um exemplo de código de curta

Pitão
Tente: com aberto (“dados.CSV ”) como f: para linha em f: imprimir linha, exceto exceção como e: imprimir" não pode abrir arquivo - %s " %e 
Perl
aberto (arquivo, ”%LT; INP.txt ”) ou matriz“ não pode abrir arquivo ”; while () print “$ _”;  

Prós e contras - Python vs Perl

Nesta seção, discutiremos os prós e contras de Python e Perl.

Python Pros:

  1. Possui uma sintaxe limpa e elegante, o que torna esse idioma uma ótima escolha como a primeira linguagem de programação para iniciantes que desejam ter prática em qualquer linguagem de programação.
  2. Tem muito avançado e inerente OO Programação, também a programação de threads no Python é muito melhor que o Perl.
  3. Existem muitas áreas de aplicação em que o Python é preferido e até ele supera o Perl. Como: Perl é preferido para os scripts da CGI, mas hoje em dia o Django de Python e web2py Como os idiomas de script da web estão se tornando mais populares e têm uma enorme atração da indústria.
  4. Tem vários GOLE invólucros para diferentes linguagens de programação, como Cpython, IRONPYTHON e Jython e o desenvolvimento destes precedeu o desenvolvimento de invólucros swig para perl.
  5. O código Python é sempre bem recuado e fácil de ler e entender, mesmo se você estiver lendo o código de outra pessoa ou mesmo seu código depois de anos.
  6. Python é bom para várias aplicações como Big data, Automação infra, Aprendizado de máquina, NLP, etc, tem um grande apoio às comunidades ativas por serem de código aberto.

Contras do Python:

  1. Existem poucas áreas em que a execução no Python geralmente é mais lenta que a de Perl, incluindo regex e operações baseadas em cordas.
  2. Às vezes, é difícil obter o tipo de variável no Python, como nos casos de código muito grande, você precisa ir até o final para obter um tipo de variável que é agitada e complexa.

Perl Pros:

  1. O Perl possui frases poderosas e até garante a tubulação do Unix, como a sintaxe, que pode ser usada na linha de comando para executar várias tarefas, também é influenciada pelo UNIX e sua programação de linha de comando, então integra muitos comandos influenciados pelo Unix em sua codificação.
  2. Perl é conhecido por seu poderoso regex e operações de comparação de strings como é influenciado por sed e Awk Como poderosas ferramentas Unix. No caso de operações de regex e string como substituição, Coincidindo, substituição, Perl supera o python que levaria algumas linhas de código para alcançar o mesmo. Também muitas operações de E/S de arquivos, o manuseio de exceções é feito mais rápido no Perl.
  3. Quando se trata de um idioma para a geração de relatórios, a Perl sempre esteve na fama desde sua introdução como uma das principais razões para o autor desenvolver linguagem como a Perl foi para geração de relatórios.
  4. Muitas áreas de aplicação onde Perl encontra seu uso são Programação de rede, Administração do Sistema, Script cgi (Aqui Python está superando o Perl com Django e Web2py), etc.
  5. É fácil identificar o tipo de variável com os símbolos que Perl usa antes deles, como: '@' identifica matrizes e '%' identifica hashes.

Perl Contras:

  1. Perl tem um código muito complexo, o que dificulta a compreensão de um novato. Sub -rotinas e até outros símbolos como: '$ ", '$ &' etc são difíceis de entender e programar para um programador menos experiente. Além disso, o código Perl quando a leitura seria difícil e complexa de entender, a menos que você tenha uma experiência de qualidade.
  2. OO A programação em Perl está um pouco desatualizada, como nunca foi conhecido por OO Programação e muitas operações como rosqueamento também são menos pronunciadas no Perl.

Conclusão

Como visto acima, onde ambos os idiomas são bons em consideração de acordo com os aplicativos que eles têm como alvo, Pitão tira um pouco de vantagem sobre Perl Como uma primeira escolha para um novato devido ao seu código limpo e fácil de entender, enquanto que, por outro lado, o Perl supera o Python quando se trata de operações de manipulação de cordas e alguns lineadores avançados para o Unix, como os e várias outras operações.

Então, no final, é tudo na área específica que você tem como alvo. Todos os seus comentários neste artigo são bem -vindos e solicitariam que você dê suas opiniões sobre o assunto se, de acordo com você, Python vencer ou Perl.