Que linguagem de programação você deve aprender para desenvolvimento de software?
Ao iniciar no caminho da programação, é importante que você investir seu tempo com sabedoria na escolha de aprender algo que ambos irão beneficiá-lo no futuro imediato com resultados visíveis em sua plataforma de escolha, bem como a obtenção de configurar para quaisquer linguagens futuras. Sua escolha vai depender de uma série de fatores, por isso vamos dar uma olhada em suas características, facilidade de aprendizagem, e a probabilidade de você ganhar a vida. Eu também vou mostrar-lhe algum código para exibir “Olá mundo”, a primeira aplicação muitas pessoas escrevem quando aprender uma nova língua.
Nesta primeira parte, vamos estar a olhar para linguagens utilizadas para programar software - como em aplicações que são executados no computador ou dispositivos móveis. Da próxima vez, vamos olhar para a área cada vez mais significativo de linguagens web-programação, usadas para criar sites dinâmicos e interfaces de usuário interativas baseadas no navegador.
Há dois artigos anteriores desta série que discutem alguns fundamentos de qualquer linguagem de programação, por isso, se você é novo para programação, em seguida, certifique-se de ler os demais:
Java
Java é uma linguagem orientada a objeto completo, fortemente digitado, com um extenso conjunto de recursos focada na compatibilidade de rede e multi-plataforma. Aplicações escritas em Java pode ser executado em praticamente qualquer sistema operacional - embora o desempenho não será tão bom como algo projetado para rodar nativamente.
É a linguagem de escolha para a maioria dos cursos de Ciência da Computação, e, consequentemente, quase todo mundo tem pelo menos um pouco de experiência em programação Java. Os aplicativos do Android são escritos em Java também, embora você não pode simplesmente executar um aplicativo Java normal no seu telemóvel nem vice-versa Android.
Probabilidade de fazer-lhe o dinheiro
Se você pode fazer um app vale a pena carregar para o andróide mercado, então o mundo é seu para a tomada. Há também um monte de postos de trabalho Java de nível empresarial, mas a concorrência é alta e baixa remuneração.
[Nota: Não confunda Java com javascript, que é uma linguagem completamente diferente usado para programação web - vamos olhar para isso mais próxima vez].
C / C ++
Embora línguas realmente separados, eles são muitas vezes agrupados, como C ++ é basicamente uma versão melhorada do C, adicionando funcionalidades orientadas a objeto. C ++ é uma linguagem do programador sério de escolha, formando a base da maioria dos jogos de computador e software mais avançado do Windows. É de alto desempenho, mas requer muito mais precisão por parte programadores quando se trata de gerenciamento de memória e, consequentemente, tem uma curva de aprendizagem. Não é recomendado para iniciantes.
Probabilidade de fazer-lhe o dinheiro
Com menos concorrência do que Java, programadores C ++ será sempre na procura e bem pagos, especialmente na indústria de jogos.
C #
Pronunciado C sharp, este é clone de Java da Microsoft (embora os dois têm desde divergiram com diferenças mais acentuadas) - um propósito geral orientada a objeto linguagem fortemente tipado. O desempenho é bom, embora não tão rapidamente como C ++. Software escrito em C # requer framework .Net para correr e é somente para Windows.
Probabilidade de fazer-lhe o dinheiro
Há um bom número de postos de trabalho corporativo C # lá fora para soluções empresariais, mas é improvável que você ganhar dinheiro em uma única peça de software diferente de desenvolvimento móvel. Ainda assim, é uma linguagem divertida e fácil de aprender para os iniciantes, certamente eu recomendo que se você gostaria de focar apenas no Windows.
Você pode baixar Microsoft Visual Studio Express gratuitamente, o que ajuda muito com GUI concepção e conclusão de código. Você também pode usá-lo para muitas outras linguagens de programação com a marca Microsoft Visual Basic e.
Visual básico
Outra das contribuições da Microsoft, Visual Basic é uma linguagem orientada a eventos focados em aplicativos baseados em GUI simples. event-driven significa que o código que você escreve será geralmente reagindo ao que o usuário faz - o que acontece quando eles clicar nesse botão, por exemplo. É incrivelmente fácil de aprender e obter um aplicativo simples instalado e funcionando, mas em última análise limitada e talvez não o melhor para realmente aprender conceitos fundamentais de programação.
Objectivo-C / cacau
Esta é a linguagem Apple Mac sobre o qual a maioria das aplicações OSX e iOS são construídas. Tecnicamente, Objective-C é uma versão estendida do C com recursos orientados a objetos, tanto como C ++, mas quase sempre é combinado com o quadro de cacau para a construção de interfaces gráficas de usuário e recursos de nível superior na plataforma Mac. Você também deve ter cuidado com o gerenciamento de memória.
A sintaxe e conceitos que você precisa aprender são bastante complexas em comparação com uma linguagem como Java ou C #, mas, por outro lado, a Apple oferece um ambiente abrangente livre desenvolvimento (XCode) e ferramentas que tornam o processo de criação, aplicações utilizáveis reais bastante fácil . Há também uma riqueza de tutoriais em vídeo escritas e lá fora, para orientá-lo, por isso é certamente mais acessível do que C ++. É basicamente a sua única escolha para OSX e desenvolvimento iOS, mas você vai ser capaz de escrever tanto para o ambiente de trabalho Apple e ambiente móvel com a uma língua.
Probabilidade de fazer-lhe o dinheiro
Com uma conta de desenvolvedor (US $ 99 por ano) e um killer app, você tem o potencial para fazer um monte - A Apple pagou US $ 2 bilhões até agora. desenvolvedores da App Store tem uma chance melhor do que os desenvolvedores Android para ganhar dinheiro com aplicativos pagos, enquanto os desenvolvedores Android tendem a ver mais retornos sobre a publicidade no aplicativo.
Isso é todas as línguas que eu vou cobrir hoje, e eles formam a maioria do desenvolvimento de software do mundo real em PCs, Macs e ambientes móveis. Antes de eu ter explodido nos comentários, eu decidi incluir Python na lista baseado na web, porque isso parece ser onde ele é usado mais.
A verdade é que uma vez que você tem o básico para baixo em qualquer idioma, é relativamente fácil de aprender outro- assim como saber o chinês kanji faz leitura e escrita mais fácil japoneses - linguagens de programação, muitas vezes atravessar e emprestar uns com os outros, compartilhando o mesmo conjunto de básico características e sintaxes. Fique atento para o próximo artigo em que eu vou olhar para idiomas baseados na web, como javascript e PHP.
Hat-dica para Jeffery, um comentarista ávido aqui no MakeUseOf e muitas vezes on-disposição para ajudar na seção Respostas de tecnologia, que sugeriu este artigo e algumas das línguas que devem cobrir.