O ranking das linguagens de programacao
Autor: Prof. Luiz Angelo | Publicado: 2013-09-03T06:38:00-07:00

Compreendendo a&nbsp;importância&nbsp;do ranking das linguagens de programação


As influencias sobre as linguagens de programação

Como plataformas de hardware, profissionais da área e situação de mercado influenciam o ranking. O papel das empresas que oferecem linguagens de programação.





Todos os anos há a realização de uma pesquisa na área de desenvolvimento e programação, para o levantamento das linguagens de programação mais utilizadas pelos profissionais de Tecnologia a Informação - TI. Mas o que, exatamente, este ranking significa?



O ranking das linguagens de programação (que pode ser conferido seguindo o TIOBE) deve ser considerado como uma analise de mercado, da participação das linguagens de programação no processo de criação dos softwares, programas e ferramentas que temos no mercado e disponibilizados numa infinidade de equipamentos (como seu software de controle de funcionamento do receptor de TV a cabo ou de sua parabólica), maquinas e equipamentos eletro-eletrônico&nbsp;(filmadoras digitais, microondas) e dispositivos que fazemos uso em nosso dia a dia (tablets, notebooks, smartphones) e ate mesmo aquilo que “não vemos” (como sistemas operacionais de servidores de rede, entre outros). Mas o que isso, basicamente, significa?

O uso das linguagens de programação nos indicam varias situações(1):



A sintonia na escolha das linguagens de programação reflete, entre outras, a facilidade de implementação de softwares (nisso pesa a semântica da linguagem de programação, bem como a facilidade na implementação de seus compiladores e a configuração da linguagem de programação para seu uso na programação e desenvolvimento), algoritmos computacionais e soluções informatizadas por parte dos profissionais de TI, programadores e analistas. Nisto, temos a influencia dos profissionais que atuam na área, na “escolha” das linguagens de programação &nbsp;(esta escolha segue critérios técnicos relevantes, como domínio da linguagem – onde podemos destacar as instituições de ensino e material disponibilizado para estudo como principais fatores);
As linguagens de programação têm, umas e outras, especificações de seu funcionamento que “casam” com diferentes tipos de plataformas de hardware (mobile, desktop, web, mainframes, arquiteturas paralelas), dando um sinal claro sobre quais destas plataformas de hardware estão atravessando um melhor momento de vendas e participação no mercado de hardware computacional e compatíveis;




Notadamente, temos a criação e implementação de novas linguagens e recursos que, com a evolução das plataformas de hardware, bem como de instrumentos e ferramentas próprias das linguagens de programação, facilitam o trabalho e a metodologia de implementação de softwares com o emprego destas, dia a dia. A definição de novos algoritmos e funcionalidades permite a reinvenção e reinserção de linguagens de programação, e mesmo, a competição entre diferentes linguagens de programação em algumas plataformas de hardware.


A Linguagem C “reinava” no top das linguagens de programação, estando na posição nr. 01 a um bom tempo. O motivo? A linguagem C é excelente para implementação de softwares e programas que rodam em plataformas de hardware de baixo desempenho. Encontramos este tipo de tecnologia de hardware em equipamentos eletroeletrônicos, smartphones/celulares, televisores e tantos outros dispositivos (como aparelhos de ressonância magnética em hospitais, maquinas automatizadas presentes nas indústrias automobilísticas, painéis inteligentes de automóveis, entre tantos outros exemplos). A linguagem C não tinha concorrência, ate então, porem, nos últimos anos a linguagem Java vem invadindo este segmento, mostrando-se uma linguagem robusta, com código enxuto (muitas facilidades de criar programas com código fonte reduzido), a interoperabilidade fácil com hardware (característica singular também na linguagem C) e a facilidade de implementação de algoritmos computacionais, visto que, ironicamente, sua semântica é bem similar a linguagem C, facilitando a adaptação de profissionais atuantes na área de desenvolvimento e programação.



Desde agosto de 2013, tivemos, porem, um grande acontecimento no ranking TIOBE: a linguagem Java ultrapassou a Linguagem C. Algo&nbsp;já&nbsp;previsto e anunciado por muitos analistas e programadores, porem, agora uma realidade (o Java vem de uma crescente constante a muitos anos, sendo 'previsível' que logo passaria a linguagem C).



O ranking TIOBE de linguagens de&nbsp;programação&nbsp;(agosto 2013)


fonte da imagem:&nbsp;http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html


O ranking TIOBE de linguagens de&nbsp;programação&nbsp;(fevereiro 2016)



Para consultar o ranking atualizado, clique aqui (2016)

Mas o que isto significa, exatamente?


Se pensarmos pelo conceito da criação e implementação de softwares, com base nas plataformas de hardware, temos a adoção de linguagens com alta capacidade e recursos, mas que venham de encontro com a necessidade de criação de algoritmos e programas que não sejam pesados, pois estes tipos de plataformas de hardware não possuem, em sua maioria, uma capacidade de memória, de armazenamento, muito grande. As linguagens C e Java, se comparadas as demais linguagens de programação, tem uma clara (e indiscutível) vantagem. Acrescente-se que a linguagem C foi pioneira neste segmento, substituindo o Assembler, a primeira das linguagens de programação escrita para interação com hardware. E o Java, hoje, torna-se a&nbsp;opção&nbsp;mais&nbsp;viável&nbsp;e&nbsp;confiável&nbsp;para&nbsp;programação&nbsp;e desenvolvimento em multiplataforma, tanto para arquitetura de hardware (PC, mobiles, arquitetura paralela), como para sistemas operacionais (windows, linux, windows, outros).



Se analisarmos pelo contexto da web, notadamente vemos vantagens do PHP, uma linguagem de fácil assimilação, também robusta, permitindo a criação de soluções on-line (sites) de uma maneira pratica, com uma semântica de fácil assimilação. O ASP, principal concorrente do PHP, recai sobre o problema de configurações adicionais para que a linguagem rode em um servidor, sendo que a configuração e implementação do PHP é muito mais simples e fácil de ser realizada. Acrescente que o PHP é uma linguagem de programação gratuita, e fecha-se o ciclo de comparação.



O Javascript, uma linguagem para formatação de telas e validação de campos (na sua&nbsp;definição&nbsp;mais abrangente), definida como uma linguagem de&nbsp;programação&nbsp;cliente-side (literalmente, "do lado do cliente, o visitante, pois trata-se de uma linguagem focada para&nbsp;formatação&nbsp;de dados e&nbsp;informações&nbsp; para facilitar a&nbsp;interação&nbsp;do visitante web no site), em ambiente web, e pega “carona” com o PHP, trabalhando em conjunto com a mesma (implementações web permitem este tipo de ‘interação’ entre diferentes linguagens de programação), trabalhando de uma forma colaborativa, permitindo que se otimize aspectos não muito “bons” do PHP, melhorando o trabalho do PHP no que concerne a interface com o usuário. Desta forma, o crescimento do PHP no mercado acaba por alavancar o javascript junto com ele. A semântica do javascript também não é considerada, para aspectos de programação, muito difícil.



O que podemos perceber, ao analisar o ranking, e na triangulação de informações sobre profissionais de TI, oferta de cursos na área de programação e desenvolvimento, e das plataformas de hardware que estão influenciando o mercado nas vendas mundiais, temos:



Nos últimos anos, o processo de automatização nas indústrias de grande porte (automóveis, eletroeletrônicos, aparelhos para a área de saúde, entre tantas outras) e o sucesso nas vendas de aparelhos eletrônicos (smartphones, celulares, tablets) influenciou o crescimento do Java, e a permanência da Linguagem C no topo do ranking;


O crescimento do comercio virtual, da Internet, e dos programas e ferramentas baseados na rede mundial de computadores alavancou o crescimento exponencial do PHP. Segundo os últimos rankings, o PHP é a linguagem de programação que apresentou o maior crescimento (neste ultimo, apontado com participação de +2,77%, subindo mais uma&nbsp;posição&nbsp;(que se confirma essa&nbsp;ascendência&nbsp;no ranking desde 2012), em comparativo dos rankings de 2016 e 2015.


E as instituições de ensino, que papel desempenham neste ranking?



Muito se questiona, de fato, sobre o papel e importância das instituições de ensino (universidades, faculdades, escolas técnicas) e escolas/centros de ensino profissionalizante e&nbsp;capacitação&nbsp;profissional, empresas que oferecem cursos e treinamentos de capacitação (como IBM, Google e Microsoft, entre outras). Ate que ponto há influencia, e isso pode ser analisado e reconhecido no ranking?
Num primeiro momento, temos que pensar que estas instituições e empresas tem, claro, motivos diferentes para a escolha desta ou daquela linguagem. Um exemplo: a IBM investe em parcerias (inclusive com órgãos do setor publico, universidades e faculdades) no fomento da formação de profissionais de programação e desenvolvimento na linguagem COBOL (esta, nem consta no ranking das 20 linguagens mais utilizadas). A pergunta recai sobre o porque. A resposta: o COBOL é uma linguagem de programação que funciona muito bem em mainframes, campo de atuação da IBM, e há poucos profissionais no mercado capacitados e gabaritados para atuação neste segmento, em especifico.
As instituições de ensino investem na formação básica em seus cursos (nas matérias de programação básicas, de formação de seus alunos nos módulos iniciais dos cursos) na aplicação da linguagem C. O motivo? Não se trata de uma linguagem proprietária, não havendo ônus para compra do compilador (sim... ou você acha que as linguagens são todas gratuitas?), sem contar que trata-se de uma linguagem de semântica simples, de fácil entendimento por parte dos alunos, há muitos professores com conhecimento da mesma (a Linguagem C esta no mercado desde a década de 60!), há muitos materiais disponibilizados na Internet, livros e revistas técnicas especializadas, que tratam da abordagem didática da linguagem, sem contar ainda que a linguagem C tem uma ótima aceitação no mercado (há muitas propostas de trabalho na área de programação com foco na linguagem C).
A Oracle, desenvolvedora de banco de dados homônimo (empresa que, no ano de 2011, adquiriu a gigante Sun Microsystems, fabricante de microcomputadores norte-americana) investe pesado na Linguagem Java, e de olho no mercado open-source, gratuito, implementou a criação, manutenção e apoio ao ambiente de programação visual Eclipse, que roda sobre a plataforma UNIX-LIKE (família de sistemas operacionais derivados e baseados no UNIX(2), como Linux, Mac OS, BSD, entre outros), com foco nos programadores e desenvolvedores que não atuam na plataforma Windows (propriedade da Microsoft). O Java é multiplataforma, também rodando na plataforma Windows, com uso de outro ambiente gráfico de desenvolvimento, o Netbeans.
Falando em Microsoft, que é sinônimo da plataforma MS-Windows e da suíte de aplicativos para escritórios, MS-Office, mas que também tem produtos e ferramentas na área de programação e desenvolvimento.&nbsp;



Na verdade, o MS-Windows e o MS-Office são “produtos” que a Microsoft tem, e que os produz com base nas linguagens de programação que possui, também, os direitos de propriedade, como o banco de dados SQL, principal concorrente do Oracle – no mercado corporativo de sistemas de gerenciamento de banco de dados, e do Visual Basic e Visual DOT.NET, duas linguagens de programação que também são de propriedade da gigante de Red Mond.
A popularização e sucesso de vendas de smarphones, celulares e tablets fez com que as atenções se voltassem para dois assuntos importantes, que impactaram, e ainda causarão muitas mudanças, no ranking das linguagens de programação: o ambiente web e a plataforma Linux. Vamos entender o que isto significa.




O AMBIENTE WEB E A PLATAFORMA LINUX



A popularização de equipamentos moveis (tablets, smartphones e celulares), o e-commerce (vendas por comercio eletrônico, via web) implantado por diversas empresas, bancos e sites de venda on-line específicos (como Amazon, Paypal e outros tantos) impulsionou as linguagens de programação com foco no ambiente web, para Internet. Este sucesso aparente não tem data de validade, pois encontram-se numa crescente, com empresas investindo cada vez mais, na venda on-line. Um filão de mercado que tem nas linguagens de programação PHP, Javascript, Visual DOT.NET e mesmo o Java (tem implementações que permitem a programação para web) um terreno grande para crescimento.



Podemos afirmar que a Internet reinventou o comercio mundial. Isso é fato. E podemos dizer que na plataforma dos&nbsp;mobiles afirmaram o Android (sistema operacional baseado na plataforma Linux, do Google) como Sistema Operacional dominante (desta plataforma).&nbsp;



O Android é desenvolvido e mantido, como software de código aberto, não proprietário, pelo Google e quando se fala na plataforma de hardware de tablets e smartphones, tornou-se sinônimo, pois domina com folga o mercado (mais de 70% dos equipamentos rodam Android, tendo o iOS, da Apple, em 2º lugar, mas sendo um sistema embarcado de hardware e software – o iOS roda somente nos iPods, smartphones da Apple. A Microsoft, com seu Windows Phone, ocupa o 3º lugar com menos de 10% de participação). Isto fez com que as linguagens de programação não baseadas na plataforma UNIX-LIKE perdessem “terreno” de participação neste segmento de mercado.



Linguagens, tipos de plataformas e avaliação obtida





Que&nbsp;decisão&nbsp;devo tomar, sobre qual linguagem de&nbsp;programação&nbsp;investir e aprender?



Então podemos afirmar que se deve investir, como profissional desenvolvedor, nas linguagens que estão no TOP do ranking? Como sempre comento em sala, tudo recai sobre a "lei da oferta e da procura" (simples assim), e dentro de um contexto (local, regional, nacional, internacional). As linguagens de programação mais requisitadas no mercado, também são as que mais tem profissionais e, portanto, o valor da mão-de-obra técnica encontra-se abaixo das de profissionais de outras plataformas, que tem menor ocorrência de empregabilidade porem, tem menos candidatos aptos.&nbsp;



A grande verdade recai sobre qual linguagem de programação você terá menor dificuldade de aprendizagem,&nbsp;fácil&nbsp;assimilação&nbsp;e, claro, "sintonia", que venha a facilitar o seu processo de&nbsp;aceitação&nbsp;no mercado de trabalho. Uma ótima escolha!







Notas adicionais do autor:

1 - Algumas linguagens de programação resistem, em decorrência da sua facilidade de implementação, a oferta de profissionais com conhecimento (neste quesito, uma clara influencia das instituições de ensino da área de TI) no mercado e o fácil acesso a documentação, manuais, fóruns e grupos de discussão sobre as respectivas linguagens de programação. Por isso mesmo, linguagens consideradas "antigas" continuam no mercado, mesmo que em segmentos comerciais (nichos) específicos.

2 -&nbsp;O UNIX é um sistema operacional, proprietário, pertencente a IBM. Foi criado na década de 60, roda em mainframes e dos sistemas operacionais, o que se encontra a mais tempo em uso no mercado.