Aprendendo a programar
Quando vemos um programa que realiza operações fantásticas, que nos é útil no trabalho ou nos diverte, sempre surge a pergunta: será difícil fazer algo assim?
A resposta varia conforme a complexidade do programa, mas todos se baseiam em princípios básicos e fundamentais que estão presentes em todas as linguagens de programação: Programming Concepts, ou Conceitos de Programação.
Linguagens de programação? O que são?
Linguagem de computador é um meio de passar instruções para serem interpretadas por um computador. Toda linguagem possui uma sintaxe (forma de escrita) própria, regras de utilização de suas rotinas, e um conjunto de funções que facilitam operações corriqueiras.
Podemos passar instruções para o computador na forma como ele entende, ou seja, através de uma seqüência de bits (“0”s ou “1”s). Mas isto é difícil para seres humanos compreenderem! Mesmo assim, durante muito tempo esta foi a única forma, e ainda hoje se faz de forma semelhante, em algumas situações.
Quando usamos uma linguagem muito próxima à do computador, dizemos que é uma linguagem de baixo nível. Quando a linguagem se parece mais com nossa linguagem natural, executando funções através do uso de palavras (normalmente verbos) em uma língua que compreendemos, dizemos que a linguagem é de alto nível.
E qual linguagem é a melhor?
Programadores experientes respondem esta pergunta da seguinte forma: a melhor linguagem é a que você melhor domina e resolve seus problemas. Não existe linguagem melhor ou pior, existe linguagem mais apropriada para determinada aplicação. E muitas vezes mais de uma é eficiente para o mesmo fim, então a escolha passa por outros critérios: ambiente, desempenho, facilidade de aprendizado e até mesmo gosto pessoal.
Portanto, não vale a pena entrar em “flamewars” e discutir qual a melhor linguagem de programação, pois certamente o gosto pessoal vai falar mais alto e ninguém vai convencer o outro de sua escolha!
Tantas linguagens, qual eu escolho?
Para escolher a linguagem é preciso definir antes no que você pretende trabalhar. Se vai trabalhar produzindo para internet, possivelmente vai optar entre PHP, Ruby, Perl, Python ou Java. Se a necessidade é escrever um driver para conectar um dispositivo, como uma impressora, possivelmente a escolha é C ou C++. Para produzir um aplicativo gráfico para rodar no Gnome ou KDE, pode escolher C, C++, Java – mas ainda pode usar Python, e até PHP! Se vai fazer scripts na linha de comando, Bash Script, ou Perl, ou Python, ou PHP...
Mas que salada! E agora? E olha que ainda nem comparamos as características de cada linguagem, foco, ambiente de desenvolvimento... Difícil? Deixe que as necessidades de seu trabalho indiquem o caminho, converse com colegas, acompanhe as tendências, veja em que linguagens são produzidos aplicativos semelhantes ao seu... e experimente!
Ok, mas por onde começo?
Todas as linguagens possuem princípios básicos em comum. Na hora de “resolver um problema” podemos criar a lógica de resolução (que chamamos de algoritmo), uma seqüência de passos que conduz à solução. Isto independe de linguagem, e uma vez que tenhamos esta lógica de resolução, podemos implementar em qualquer linguagem.
As linguagens modernas incorporam um conceito muito importante, que é a Programação Orientação a Objetos. Nesta visão, as “peças” do software são consideradas classes, que definem os objetos do mundo real com suas características (atributos) e ações (métodos).
Independente da linguagem a ser escolhida, compreender orientação a objetos e algoritmo é o começo.
Quando vemos um programa que realiza operações fantásticas, que nos é útil no trabalho ou nos diverte, sempre surge a pergunta: será difícil fazer algo assim?
A resposta varia conforme a complexidade do programa, mas todos se baseiam em princípios básicos e fundamentais que estão presentes em todas as linguagens de programação: Programming Concepts, ou Conceitos de Programação.
Linguagens de programação? O que são?
Linguagem de computador é um meio de passar instruções para serem interpretadas por um computador. Toda linguagem possui uma sintaxe (forma de escrita) própria, regras de utilização de suas rotinas, e um conjunto de funções que facilitam operações corriqueiras.
Podemos passar instruções para o computador na forma como ele entende, ou seja, através de uma seqüência de bits (“0”s ou “1”s). Mas isto é difícil para seres humanos compreenderem! Mesmo assim, durante muito tempo esta foi a única forma, e ainda hoje se faz de forma semelhante, em algumas situações.
Quando usamos uma linguagem muito próxima à do computador, dizemos que é uma linguagem de baixo nível. Quando a linguagem se parece mais com nossa linguagem natural, executando funções através do uso de palavras (normalmente verbos) em uma língua que compreendemos, dizemos que a linguagem é de alto nível.
E qual linguagem é a melhor?
Programadores experientes respondem esta pergunta da seguinte forma: a melhor linguagem é a que você melhor domina e resolve seus problemas. Não existe linguagem melhor ou pior, existe linguagem mais apropriada para determinada aplicação. E muitas vezes mais de uma é eficiente para o mesmo fim, então a escolha passa por outros critérios: ambiente, desempenho, facilidade de aprendizado e até mesmo gosto pessoal.
Portanto, não vale a pena entrar em “flamewars” e discutir qual a melhor linguagem de programação, pois certamente o gosto pessoal vai falar mais alto e ninguém vai convencer o outro de sua escolha!
Tantas linguagens, qual eu escolho?
Para escolher a linguagem é preciso definir antes no que você pretende trabalhar. Se vai trabalhar produzindo para internet, possivelmente vai optar entre PHP, Ruby, Perl, Python ou Java. Se a necessidade é escrever um driver para conectar um dispositivo, como uma impressora, possivelmente a escolha é C ou C++. Para produzir um aplicativo gráfico para rodar no Gnome ou KDE, pode escolher C, C++, Java – mas ainda pode usar Python, e até PHP! Se vai fazer scripts na linha de comando, Bash Script, ou Perl, ou Python, ou PHP...
Mas que salada! E agora? E olha que ainda nem comparamos as características de cada linguagem, foco, ambiente de desenvolvimento... Difícil? Deixe que as necessidades de seu trabalho indiquem o caminho, converse com colegas, acompanhe as tendências, veja em que linguagens são produzidos aplicativos semelhantes ao seu... e experimente!
Ok, mas por onde começo?
Todas as linguagens possuem princípios básicos em comum. Na hora de “resolver um problema” podemos criar a lógica de resolução (que chamamos de algoritmo), uma seqüência de passos que conduz à solução. Isto independe de linguagem, e uma vez que tenhamos esta lógica de resolução, podemos implementar em qualquer linguagem.
As linguagens modernas incorporam um conceito muito importante, que é a Programação Orientação a Objetos. Nesta visão, as “peças” do software são consideradas classes, que definem os objetos do mundo real com suas características (atributos) e ações (métodos).
Independente da linguagem a ser escolhida, compreender orientação a objetos e algoritmo é o começo.
Comment