sexta-feira, 23 de abril de 2010

Linguagens de programação, qual usar?


O objetivo deste texto não é responder a pergunta, mas sim demonstrar a variedade de opções que sem tem para aprender e desenvolver e dizer que o que apenas diferencia uma da outra é vontade de aprender.

A linguagens de programação são tantas que temos pelo menos uma para cada letra do alfabeto, algumas já não se usam mais outras estão em decadência, outras ainda estão surgindo e sempre tem a da moda. Mas qual linguagem escolher? A pergunta é extremamente importante porque não é algo que se possa aprender em um dia, mês ou até mesmo um ano, sempre haverá coisas novas para se aprender seja um comando novo ou uma nova abordagem da mesma para um mesmo problema, sempre haverá um problema novo para se resolver.

Você que esta cursando algum curso superior relacionado a tecnologia certamente verá sobre programação, mas na minha opinião nenhuma instituição de ensino lhe ensinará tudo e não adianta achar que vai aprender tudo em sala de aula é preciso dedicação por parte do discente para isto, é preciso programar, programar, programar mais e depois programar mais um pouquinho ai então estará quase apto a ser chamado de programador.

Um fator importante a se considerar também no que diz respeito a linguagens de programação é que linguagem de programação é igual a time de futebol ou religião, têm os seus fanáticos que os(as) adoram e não trocam por nada, então antes de sair dizendo que a linguagem C é melhor que Java tome cuidado à quem estiver falando pois poderá comprar uma briga, não é ELIAS-macmanico-programador em C-que usa Ubutu?

Vejamos alguns dos tipos de linguagens de programação:

Assembly: Foi provavelmente a primeira linguagem de programação realmente da história, surgiu por volta dos anos 50 quando os computadores ainda usavam válvulas. No Assembly a ideia era trocar por comandos todas as instruções ou seja, ao invés de 10001101 usava-se comandos como - dd, div, mul, and, or, not e etc (etc não é comando só para avisar ok?).
O código era então compilado que o transformava em uma linguagem de máquina cheiro de zeros e UMs.
É uma linguagem de Baixo Nível pois trabalha diretamente com as instruções do processador.

Fortran: Uma das primeiras linguagens de Alto Nível da História, o seu nome vem da abreviação de "Formula Translator", enquanto o Assembly falava diretamente com o processador o Fortran tinha várias funções prontas o que facilitava a programação, mas em contra partida gerava um código menos optimizado e por consequência mais pesado em um tempo em que os bytes eram escassos fazia uma grande diferênça.
Hoje em dia é muito pouco (muito pouco mesmo) usada não compensa querer aprender ao menos que você seja um Nerd daqueles que programa diretamente em linguagem de máquina e queira passar uma tarde de laser.

Pascal: Linguagem de Alto Nível criada na década de 60 estruturas e regras muito rígidas o que dificultavam o seu uso. FreePascal e o Delphi são derivadas do Pascal. Até hoje o Pascal ainda é utilizado nas universidades para ensinar programação principalmente como introdução ao Delphi.

Cobol: Do "Common Business Oriented Language", foi criada no final da década de 50 e era destinada a produzir aplicações financeiras e bancárias. O Cobol era uma linguagem bem amigável, se comparado ao Pascal e Assembly e ainda é usada hoje em dia por algumas instituições bancárias.

Exemplo de código em cobol para a formula de Baskara:

COMPUTE X = (-B + (B ** 2 - (4 * A * C)) **.5) / (2 * A)

C: O C foi desenvolvido no final da década de 70 e é ainda hoje bastante usado principalmente pela sua característica de poder gerar um código bastante rápido e otimizado, como o Assembly, e quando o assunto não for otimização o C dispõe de inúmeras funções tal qual uma linguagem de alto nível.

Grande parte do programas escritos para Linux são em C e o Kernel quase que totalmente o que explica porque o Linux pode ser tão rápido em algumas tarefas e tão otimizado para os computadores. Já ouviram falar em Recompilar o Kernel?

C++: O C++ é uma evolução da linguagem C, manteve todos os recursos originais do C, mas trouxe novos recursos, como a orientação a objetos (dá para implementar POO em C, mas a dificuldade não compensa o resultado) e é considerada por muitos mais fácil de se aprender do que o C original.

A agora foi falado apenas sobre linguagens compiladas onde o código fonte escrito compilado (traduzido) para uma linguagem entendida pela máquina (PC) e pelo Elias também (não podia deixar passar esta piada), porém existem outros tipos de linguagens, as interpretadas ou de script.
Uma linguagem interpretada não precisa de Compilador para funcionar, basta que o interpretador esteja instalado no computador para poder usar e no caso de algumas é de muito fácil aprendizado:

Python: Na minha opinião (que é claro não deve valer nada) é uma das ou senão a melhor linguagem para quem esta começando no mundo da programação, é bem documentada esta evoluindo dia a dia, a linha de aprendizado e produção de programas é linear, é orientada a Objetos (POO), etc, etc, etc, e tal.

Como foi dito no Python não precisamos de compilador, no Linux por exemplo já vem instalado por padrão em praticamente todas as distribuições, o que significa que você pequeno gafanhoto pode testar o seu código enquanto programa. Mas como assim? Simples abrindo o interpretador python no seu Sistema Operacional preferido e digitando o código e vendo o resultado na hora.

Um ótimo site em Português é o Python Brasil nele você encontra bastante tutoriais e exemplos de códigos é muito bom visitem.

Se quiserem testar Python no Wndows baixem aqui.

Shell Script: Certamente quem já instalou Windows 95, 98 já mexeu alguma vez com o MS-DOS ou telinha preta para os que preferirem, já rodou alguns comandos como, dir, date, delete, mkdir e etc até ai nada de muito útil, dava para fazer uns arquivinhos .BAT que as vezes quebravam o galho para fazer algum tipo de tarefa repetitiva e só, parava por ais nada muto complexo.
Agora vamos pensar que no Linux diferente do Windows temos o Shell (equivalente ao Dos no windows) que se pode fazer praticamente qualquer tipo de programa nele, verdade desde tarefinhas corriqueiras até programas complexos e com interface gráfica, tudo isso rodando os comandos nativos do próprio sistema operacional, as vezes é bem mais eficaz e rápido usar um shell script do que desenvolver um programa somente para uma tarefa corriqueira é por isso que todos os intusiastas do Linux e software livre em geral adoram digitar comandos, pois ajuda a aprender a programar, uma vez que as regras são bastante parecidas.

Java: O java é uma linguagem interpretada, pois precisa de uma máquina virtual Java (JVM) instalada na máquina para poder rodar, foi criada para ser multiplataforma ou seja, criado o código irá rodar em qualquer máquina que tenha suporte a Java instalado (isso na teoria), tem uma sintaxe parecida com C++ porém com bibliotecas diferentes é muito usado em sites de Bancos justamente pela premissa de ser multiplataforma.
No Java a única coisa que tem que ser diferente de plataforma para plataforma é a Máquina Virtual, mas isso é de responsabilidade do desenvolvedor da linguagem e não do programador. O java de certa forma se tornou uma linguagem da moda.

Java Script: O Java Script é uma linguagem usada amplamente em programação web, uma vez que é usada para a interação usuário, formulários, navegador, pode se dizer que o Java Script é compatível com a Linguagem Java mas não é derivada diretamente dela.
O Java Scritpt também é bastante usado junto com CSS e XHTL nos sites da Web.

Ainda temos outras linguagens de programação como PHP, linguagem basicamente Web que trabalha do lado servidor o que significa que todo o trabalho de processamento é feito no computador Servidor restando ao cliente apenas visualizar os dados, é também usado em lojas virtuais.

Temos também a linguagem de programação Lua, feita por brasileiros e como esta tudo bem documentado e explicado deixo o link para acessar a página, resta falar que é a linguagem mais usada atualmente em jogos em geral, esta presente por exemplo no World of WarCraft só para citar o mais legal.

Outras linguagens, que de alguma forma são chamadas, de programação são as baseadas em modelagens em Banco de Dados (sql e MySql) e as linguagens de desenvolvimento Web (Html, XHTML).

Com tantas opções fica difícil escolher, um conselho que eu dou é; experimente, teste mesmo que apenas aquelas que você tem vontade pois quando você dominar um tipo de Linguagem (o que pode demorar alguns anos), nas novas linguagens que for aprender vai bastar aprender as diferenças entre elas pois os métodos não mudam muito a regra geral é bem parecida.

[Fonte: GuiadoHardware.net]

2 comentários:

Elias disse...

Alias, para quem se interessar em ver como está o uso das linguagens de programação: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
Esse site página é atualizado mensalmente :D.
E ótimo texto, me deixou com vontade de programar, claro que em C =)

Elton disse...

Bom, já fiz alguns pequenos projetos em JAVA e algumas coisas em ADVPL junto ao ERP Protheus 10. Diante dessas duas linguagens, pude perceber que JAVA é uma linguagem muito mais segura, porém por outro lado o ADVPL junto com o ERP Protheus caem como uma luva quando o objetivo é produtividade.

Postar um comentário