Manual do Hacker | 81
Não podemos deixar de reconhecer o poder e os
encantos de Ruby
de modo que você precisará estar
preparado para apoiar e manter o
código você mesmo.
O Python é uma poderosa
linguagem com suporte a vários
paradigmas. A comunidade Python é
grande e amigável, e dá suporte a tudo,
desde sprints de educação (reunião de
pessoas em um projeto) até
treinamento com professores. Ele
também apoia os esforços da
comunidade, apoiando a jovens
aprendizes nos Clubes de Código (Code
Clubs) e a muitos outros eventos.
A comunidade de administradores
de sistemas oferece exemplos de hacks
rápidos que faz muitos desafios de pro-
gramação se tornarem triviais, com
muito menos dor de cabeça. Rails trou-
xe mais atenção para Ruby, mas Chef,
Puppet e Vagrant ajudam o administra-
dor com o que pode ser
feito com a expressiva e
eloquente linguagem de
script que foi desenvol-
vida por Yukihiro
Matsumoto.
A
dmitimos que é difícil obter o
veredicto de um contexto
prático e apenas declarar a
melhor linguagem. Por exemplo, o Bash
não é uma linguagem forte, e muitas
partes que economizam tempo podem
ser combinadas melhor com as outras
quatro linguagens, mas ninguém que
precise executar tarefas na linha de
comando do Linux deve evitar aprender
alguns scripts Bash.
Perl é a próxima escolha, pois está
intimamente associado à linha de
comando *nix e ainda é encontrada em
todos os lugares. Pode perder em
comparação com novas linguagens,
mas a Perl continua oferecendo não
somente a Swiss Chainser do Linux CLI,
mas a Perl também tem uma enorme
comunidade muito solidária.
NewLISP é uma agradável
surpresa (Lisp se refere a listas). Mas
é uma linguagem compacta para o
espaço incorporado, bem como a
linha de comando. Infelizmente, o
tamanho da comunidade não
corresponde ao poder da linguagem,
Será que Ruby vence Python? Bash
deve ser ignorado? Não para o
administrador: porque ele precisa de um
bom conhecimento de Bash para
acompanhar o que está acontecendo
com o sistema. E, além do Bash, todos os
administradores de sistemas devem
conhecer um pouco de Perl, Python e
Ruby, mas ter um conhecimento
aprofundado da linguagem que
preferirem.
Linguagens de script
O veredicto
Enquanto Bash peca em algumas áreas,
scripts de shell tradicionais também podem
ser representados por Zsh, que tem algumas
diferenças pequenas, mas úteis, como um
melhor acesso a variáveis posicionais e a
capacidade de estender o shell por meio de
funções widget. No entanto, não é um rival
para nossas outras escolhas, e nem é PHP,
apesar de seu uso em scripts de comando por
alguns devotos da linguagem. Em vez disso,
nossa alternativa é Rebol (Relative Expression
Based Object Language), cujo salto para a
liberdade de software há dois anos pode ter
chegado tarde demais para garantir a sua
popularidade. No entanto, Rebol tem um
design e sintaxe elegantes, e um útil console
REPL (Read-Eval-Print Loop). Nota do tradu-
tor: REPL é um ambiente de programação
interativo, que recebe, avalia e retorna as
entradas do usuário.
Os dialetos (pequenas e eficientes lingua-
gens de domínio) do Rebol equipa-o para pra-
ticamente qualquer coisa. É particularmente
bom para lidar com o intercâmbio e a inter-
pretação de informações entre sistemas de
computadores distribuídos, mas também
scripts de shell concisos e poderosos. Se você
estiver procurando por uma nova linguagem,
experimente-a.
Considere também...
1
a
Ruby +++++
Web: http://www.ruby-lang.org Licença: GPLv2 or 2-clause Versão: 2.2.0
Poderoso, expressivo e muito rápido de aprender.
4 a
newLISP +++++
Web: http://www.newlisp.org Licença: GPL Versão: 10.6.1
Tão poderoso que precisa ser mais utilizado.
2 a
Python +++++
Web: http://www.python.org Licença: PSFL Versão: 3.4.2
Multi-paradigma, encoraja as boas práticas e a grande comunidade.
5 a
Bash +++++
Web: http://www.gnu.org/software/bash Licença: GPLv3+ Versão: 4.3.30
Não faz tudo, mas ainda é essencial.
3 a
Perl 5 +++++
Web: perl.org Licença: GPL or Artistic License Versão: 5.20
Ainda um grande amigo para o administrador de sistemas.
“Além do Bash, cada
administrador do Linux deve
conhecer Perl, Python e Ruby.”
|