16 maio, 2010

TAnta coisa

Faz tempo que não apareço por aqui. Tenho, atualmente, tantas coisas para resolver que o blog infelizmente ficou para segundo plano. Na verdade, o tempo livre que tenho, prefiro usar fora da internet.

Desse modo, acabo deixando muito mais coisa de lado. O twiiter é o que está mais atualizado e, depois do e-mail, é o jeito mais fácil de encontrar novidades.

Enfim. É BuscaPé, PICTI, Yahoo e todas as demandas que esses três pontos profissionais geram que acabo ficando com vontade de mandar tudo as favas novamente.

Hoje fico pensando que entendo um pouco o motivo de ter dado uma “pausa” para descanso. Pena que dá para perceber plenamente que o pique não é o mesmo, a paciência não é a mesma e muito menos o orgulho.

As vezes fica faltando muito pouco para mandar um dos três para o espaço e voltar a relaxar.

Hoje é um dia desses, estou aqui, pronto para fazer tres trabalhos e adivinhem se tenho vontade? Minha palpebra pisca, minha vontade é de estar dormindo ou na virada cultural, mas… trabalhando.

As vezes penso que é fato de quem trabalha demais não tem tempo para ganhar dinheiro.

?Enfim.. segue um texto que deu o que falar no Yahoo. E Engraçdo dos últimos, foi o único que esqueci de assinar porque estava com sono.. KKKKKKKKKKKKKKKK

Fui

http://br.especiais.yahoo.com/plug-play/artigo/post/tech_noticias/56/Linguagens-de-programa%C3%A7%C3%A3o.html
Linguagens de programação
Por Geek.com.br

No princípio criou Deus os céus e a terra. A terra era sem forma e vazia; (...) haja luz. E houve luz. (Genesis 1:1) E com a luz vieram os computadores... um salto radical demais? Nem tanto, já que o primeiro "computador" data de 4.000 a.C e a primeira linguagem computacional, de 1942. Estamos em 2010 e você lê o resultado virtual e "radical" de muita coisa que aconteceu...

Uma linguagem de programação nada mais é do que o "idioma" utilizado para dizer a uma máquina o que e quando ela deve executar a partir de uma determinada ação ou situação.

Pense no seguinte: tudo o que você faz no seu computador, seja um Desktop, Notebook, Netbook, Smartphone, foi programado antes por alguém, um profissional conhecido como programador.

Isso quer dizer que esse programador disse ao computador para fazer tal coisa de determinada forma e, também, que o PC deveria responder assim ou assado de acordo com o que fosse solicitado por você, caro usuário.

Meio confuso? Tudo bem, é assim mesmo que a coisa funciona. Prever o que o usuário irá fazer é uma árdua tarefa. Não é a toa que tudo começou lá em 1942, mais de 60 anos antes de chegarmos ao iPad...

Na hora de criar um código, isto é, programar o computador por meio de uma linguagem computacional, um programador ou vários, utilizando uma ou várias linguagens de programação, disseram ao hardware, site ou ao sistema o que ele deveria fazer, responder ou esperar a partir do que você fizesse. É o eterno composto: Entrada, processamento e Saída de Informação.

Mas como isso é possível? Afinal, dizem por aí que o computador só entende 0 ou 1! Bem, aí é que entram as particularidades das várias linguagens de programação que há por aí. Cada campo da informática, seja criar um website ou desenvolver um sistema operacional requer uma especialização em determinado "idioma" computacional.

Para programar, por exemplo, um sistema operacional, que ao pé da letra é um conjunto de ações que dizem a máquina como você irá operá-la (de operacional, percebeu?), você aprenderia um tipo de "língua" que é conhecida como linguagem de máquina.

Entretanto, se o que você quer é fazer uma página para internet, utilizará uma linguagem apropriada para a criação de um site, uma ação em um site e assim por diante. E isso só é possível pois existem várias fatias ou "dialetos" para serem escritos e que fazem determinadas ações.

Continha complicada, certo? E é bastante. Só de classificações de linguagens de programação, o tópico da Wikipédia conta com seis itens, fora  os subtópicos. Cada um exemplificando como as linguagens são e quais são as suas características principais.

Para consultar esse tópico, tenha um dicionário em mãos e acesse o endereço:
http://pt.wikipedia.org/wiki/Linguagem_de_programa%C3%A7%C3%A3o

Mas como não queremos ser um dicionário das linguagens de programação, pularemos um pedaço da história e ficaremos no lugar comum.

Para aqueles que quiserem mais detalhes, o site www.levenez.com/lang possui o mapa das linguagens de programação e todas as suas ramificações desde 1954 até hoje e no www.geospat.com/hoprola exibe o mapa mundial, onde e quando todas as linguagens surgiram - o que vai facilitar sua aventura pelo mundo dos idiomas computacionais.

Os tipos de linguagem de programação são divididos em: Compiladas, de Script e Interpretadas. Para facilitar a nossa vida, primeiro vamos entender como funciona esse tipo de divisão.

Linguagens compiladas são aquelas escritas por um determinado programa e que necessitam de um software (copilador) para transformá-la em um programa que possa ser interpretado pelo computador. Esse processo divide-se desta forma:

*Código-fonte > debugador > copilador > arquivo final*

Para entender melhor, traçaremos um paralelo mais prático:

*Texto > Editor > Revisor > Texto Publicado no Yahoo!*

Mundo real: Um escritor fica até às 3 horas da manhã escrevendo um texto. Digita, escreve, estrutura, queima a pestana para agradar seus leitores e passar a mensagem final. E finalmente termina o texto que julga ser o final.

Mundo da computação: esse escritor é um programador que escreve o início de um programa copilado, ou seja, está gerando o código-fonte.

Mundo real: o escritor então envia o texto para o editor que lê, corta, reclama de cada um dos espaços dados no texto "perfeito" e devolve para o escritor dizendo que está errado, mas sem explicar o que. Ou seja, faz você reescrever quase tudo.

Mundo da computação: o programador enviou o código fonte ao software que copila o programa. Esse software tem uma etapa chamada "debugador" que testa o código fonte e indica onde estão os possíveis erros e os erros. Normalmente é nessa etapa que um programador lê aproximadamente mil linhas para descobrir que esqueceu um ponto e vírgula no final da função que ele havia imaginado.

Mundo real: enfim, o autor termina o texto e envia novamente ao editor, que diz: "não está grande coisa, tem esse parágrafo ou aquele que poderia melhorar, mas pode passar...".

Mundo da computação: o programador conseguiu terminar o código-fonte e passar pelo debug. Apesar de ainda conter alguns alertas de possíveis erros, já funciona mesmo sem ter sido gerado ainda. O próximo passo é gerar esse arquivo final para então distribuí-lo aos seus clientes.

Mundo real: o editor envia o texto do autor para o revisor, que o interpreta do jeito dele e reescreve quase tudo nas palavras que acredita ter o mesmo significado. Ou seja, transforma em algo diferente do original, mas que no final, é a mesma coisa. Então devolve ao editor que envia para o publicador, que coloca o texto no Yahoo!. ;-)

Mundo da computação: finalmente o programador consegue o arquivo final: ele foi debugado e copilado em um arquivo de distribuição, normalmente um .EXE, um .DAT, um .COM ou outro tipo de extensão de arquivo que só poderá ser lido pela máquina - mas que é capaz de executar exatamente o que o programador desejava desde o princípio.

Mundo real: então, o pessoal do Yahoo! pega um pedaço do texto e põe na página principal.

Mundo da computação: o programador compacta o arquivo em um instalador e envia para seus clientes.

E assim é gerado um arquivo compilado.

Abaixo, algumas linguagens de programação que são tipicamente compiladas:

  • Ada
  • ALGOL
  • BASIC
  • C
  • C++
  • CLEO
  • COBOL
  • Cobra
  • Common Lisp
  • D
  • Delphi
  • Eiffel
  • Fortran
  • JOVIAL
  • LabVIEW
  • Lush
  • ML
  • Objective-C
  • Ocaml
  • Pascal
  • Sather
  • Ubercode
  • Urq
  • Visual Basic
  • Visual Foxpro
  • Visual Prolog

*Linguagens de script* são aquelas escritas em um determinado programa que já está pronto para ser executado no computador do usuário.

*Código-fonte > Aplicação > Execução*

No paralelo:

*Texto para o Blog > Blog Amador > Leitores.*

Essas são as linguagens mais utilizadas no que é chamado de frontend. É um código que o programador escreve e que um interpretador executa.

Normalmente quando você entra em um site que faz um cálculo ou uma ação, ele é totalmente desenvolvido em uma linguagem de script.

Abaixo, algumas linguagens de programação que são tipicamente usadas como script (mas não necessariamente apenas de script):

  • ActionScript (utilizada no flash)
  • BASIC (utilizado nos códigos de macros do Microsoft Word, por exemplo).
  • C e derivados
  • Euphoria
  • JavaScript
  • Lua (brasileiro)
  • PHP
  • Python
  • Ruby
  • Tcl

*Linguagens Interpretadas* são aquelas escritas em um determinado programa e que necessitam de um interpretador (engine) para transformá-la em uma ação executável que, por sua vez, requer ajuda de códigos copilados para que seja interpretado pelo computador.

*Código Fonte > Aplicação > Acessórios para execução > Execução.*

No mundo real:

*Texto para Blog Profissional > Revisor/Co-autor > Blog > Texto para Leitores.*

As linguagens interpretadas são aquelas que precisam de módulos criados por outras aplicações e que, para serem executadas, precisam de ajuda antes de criarem uma ação.

Funciona como se o nosso autor fosse obrigado a ter o aval do chefe para publicar o texto que ele tanto acreditava que estava perfeito.

Nesse caso, entenda, que não existe a obrigatoriedade mas a necessidade de uma segunda "opinião" para manter um padrão fiel a um estilo determinado.

Abaixo, algumas linguagens que são tipicamente interpretadas e que podem possuir implementações compiladas:

  • ActionScript
  • APL
  • ASP
  • BASIC
  • Bistro
  • C#
  • CYBOL
  • DMDScript
  • E4X
  • ECMAScript
  • Euphoria
  • F-Script
  • Forth
  • Icon
  • Inform
  • J
  • Java
  • JavaScript
  • Lisp
  • Logo
  • Lua
  • MUMPS
  • PHP
  • Python
  • R
  • Ruby
  • S
  • Scheme
  • Smalltalk
  • Squeak
  • VisualAge
  • VisualWorks
  • Tcl

Esperamos que esse passeio pelas linguagens de programação tenha aberto um novo horizonte para você. Não é fácil criar um overview técnico sem entrar no "tequiniquês". O mundo da programação é muito vasto: vai de códigos imensos e complexos a até a mais simples ação executada pelo seu mouse ou navegador nesta página.

Para cada uma das coisas que acontecem a partir do momento que você aperta o botão ligar da sua máquina, linguagens diferentes são utilizadas. Uma responsável pelas cores, outra pelos movimentos e outra pela exibição do texto que você acabou de ler, por exemplo. Nesta página, muito provavelmente você tenha scripts, linguagens interpretadas como o HTML e mais algumas de referência que vão buscar em outros sites informações desenvolvidas de forma completamente diferentes.

Por isso, há uma eterna batalha entre navegadores, padronizações e formatos entendíveis em qualquer plataforma. Imagine o trabalhão que é fazer um código chinês, funcionar bem com um alemão e outro brasileiro do nordeste e outro do sul.

Esse é o mundo da informática que você não vê, mas que com certeza, está ai no seu computador e aqui no meu. ;-)

Ah! E se você quiser entender um pouco das diferenças das linguagens, na Wikipédia, existe uma página com códigos em várias linguagens que executam exatamente a mesma coisa. O endereço é: http://pt.wikipedia.org/wiki/Sintaxe_de_linguagens_de_programa%C3%A7%C3%A3o

Geek.com.br

Nenhum comentário:

Postar um comentário

Pesquisar neste blog

Postagens populares