Como se tornar um programador

6 Métodos:programação webProgramação Desktop ApplicationDistributed Application ProgrammingProgramação bibliotecas, plataformas, estruturas e núcleossistemas de programaçãoCiência programação

Tornando-se um programador é um processo gradual através do qual se vai melhorar suas habilidades dia a dia e ano a ano. Além disso, a programação pode ser divertido e gratificante (mentalmente, espiritualmente e financeiramente). Este guia não a promessa de fornecer uma maneira fácil e mágico para se tornar um programador, ea ordem dos passos não é sagrado, mas aqui você tem uma visão geral de como se tornar um desenvolvedor em um dos campos mais modernos de programação.

passos

1
Faça um curso introdutório de um (ou todos) dos seguintes disciplinas:
  • lógica
  • matemática discreta
  • A linguagem de programação (preferencialmente C ++ ou Java ou Python para iniciantes).
  • 2
    Saiba conceitos de banco de dados, tais como tabelas, exibições, consultas e procedimentos. Para fazer isso, você pode usar qualquer pacote de banco de dados simples, por exemplo:
  • MS Access
  • DB V
  • Fox Pro
  • paradoxo
  • MySQL (que é uma boa base de dados para saber porque é livre, amplamente utilizado, e bases de dados normalmente acessado através de consultas SQL)
  • 3
    Decida que tipo de programador que você quer ser. Os programadores geralmente caem dentro de uma das seguintes categorias:
  • programador web
  • programador de aplicativos de desktop
  • programador orientada sistemas operacionais (OS) (Você pode ser vinculada a um único sistema operacional ou um conjunto deles)
  • programador independente de plataforma
  • programador de aplicações distribuídas
  • bibliotecas programador, plataformas, estruturas ou núcleos
  • programador de sistemas
  • programador do kernel
  • controladores de programador
  • compiladores programador
  • programação científica
  • 4
    Saiba mais sobre as tecnologias e linguagens de programação relacionados com o campo da programação que você escolher. As seções a seguir quebrar as tarefas realizadas em diferentes tipos de programação.
  • método 1
    programação web
    1
    Ela compreende o que abrange programação web. aplicações Web são componentes de software projetado para operar em uma arquitetura Internet. Isso significa que os aplicativos são acessados ​​por meio de um software de navegação na web Firefox ou Internet Explorer. Sendo construído em uma arquitetura da Internet não significa necessariamente que requer uma conexão de Internet ativa. Isso significa que as aplicações web são construídas em tecnologias padrão da web, tais como:
  • 2
    procurar através de vários sites para aprender como eles normalmente olhar (botão direito, selecione "Ver fonte" ou pressione F12.) Busca a diversidade no tipo de web site e seu conteúdo, e não em termos do número de sites visitados. Geralmente, você precisa visitar pelo menos um dos seguintes tipos de sites:
  • sites corporativos de presença (empresas comerciais, empresas ou organizações sem fins lucrativos, organizações governamentais);
  • motores de indexação web (motores de busca, meta sites de busca, motores de busca especializados, directórios);
  • locais de mineração;
  • sites pessoais;
  • ou enciclopédicas páginas de informação (wikis, folhas de dados, especificações técnicas e manuais de listagens de diretórios, blogs e revistas, sites de notícias e agências de notícias, páginas amarelas, etc.);
  • sites de redes sociais (sites de redes sociais, sites de bookmarking, locais para tomar notas);
  • sites colaborativos (o que inclui outras categorias mencionadas acima, tais como wikis e blogs).
  • 3
    Aprender pelo menos uma técnica ou método para fazer uma chuva de ideias e software que pode ser usado para implementar este método. Por exemplo: diagramas de brainstorming e MS Visio.
  • 4
    Familiarize-se com a estrutura de sites. Isto significa criar diagramas de rede conceitual, mapas do local e estruturas de navegação.
  • 5
    Tome um design gráfico curso intensivo. Tente aprender a manipulação pacote de pelo menos um software ou de edição de gráficos (isto é opcional, mas altamente recomendado).
  • 6
    Aprenda os conceitos básicos da infra-estrutura de Internet. Isso inclui aprender o básico sobre o seguinte:
  • protocolos baseados em serviços da Web (HTTP, FTP, SMTP e POP3 ou IMAP4)
  • software servidores web (De preferência um para a plataforma em que para ir ao trabalho)
  • software de navegação na Web
  • software de servidor e os clientes de e-mail
  • 7
    Aprender línguas HTML e CSS. Também seria bom para obter pacote de software WYSIWYG (sigla para que você vê é o que você começa, em espanhol: "o que você vê é o que obtém") Para editar HTML.
  • 8
    Saiba XML e tecnologias XML associadas, tais como XLS e XPath (opcional mas recomendado).
  • 9
    Criar sites estáticos simples até que esteja familiarizado e se sentir confortável trabalhando com HTML.
  • 10
    Saiba um lado do cliente linguagem de script (scripting). A maioria dos usuários a aprender javascript. outros a aprender VBScript, mas o último não é compatível com a maioria dos navegadores.
  • 11
    Familiarize-se com o lado cliente a linguagem de script que você aprendeu. Tente alcançar o seu pleno potencial usando apenas esse idioma. Dê o próximo passo apenas quando você se sentir familiarizado com o script do lado do cliente idioma.
  • 12
    Saiba pelo menos um lado do servidor linguagem de programação. Se você decidir restringir-se a apenas um software de servidor, a aprendizagem de uma linguagem de programação compatível com esse software. Se não, aprender pelo menos uma linguagem de programação de cada software de servidor.
  • 13
    Criar um projecto-piloto para si mesmo uma vez que você terminar de aprender o lado do servidor linguagem de programação.
  • 14
    Crie seu próprio site e começa a experiência on-line dentro de sua própria página.
  • método 2
    Programação Desktop Application
    1
    Saiba o que você vai enfrentar a introduzir em aplicações desktop programação. A maioria dos programadores escrever código para soluções de negócios, para que pudesse economizar tempo Se você tem uma idéia sobre o negócio e organizacional e estruturas financeiras.
  • 2
    Saiba mais sobre as diferentes arquiteturas hardware de computador. Pode ser útil para fazer um curso sobre projeto de introdução de nível digital circuito e um em arquitetura de computadores. No entanto, alguns consideram que estas questões são um pouco avançada para começar, então talvez ler dois ou três tutoriais itens (por exemplo, esta e esta outra) É suficiente. Você pode retornar a esta etapa posterior, uma vez que você aprender a sua primeira linguagem de programação.
  • 3
    Aprenda uma linguagem de programação nível inicial (para crianças). Pena de você não saber que tipo de linguagem só porque você já está grande o suficiente para chamá-lo "criança". Um exemplo de tais linguagens de programação pode ser zero. Estas linguagens de programação pode tremendamente aliviar o trabalho duro de ter que aprender a sua primeira linguagem de programação. No entanto, este passo é opcional. Você também pode fazê-lo antes de continuar com a etapa anterior.
  • 4
    Mergulhe em três paradigmas fundamentais programação: processual, OO e funcional.
  • 5
    Faça um curso introdutório em qualquer um dos linguagens de programação processuais. Não importa o idioma que você escolher depois a trabalhar de alguma forma sabe exigir alguma programação procedural. Além disso, a maioria dos desenvolvedores concordam que a programação procedural é o mais fácil de usar como ponto de partida para ter uma idéia de programação em geral.
  • 6
    Aprender pelo menos uma das técnicas de modelagem avançadas, tais como UML ou ORM.
  • 7
    Comece a escrever uma pequena consola ou console semelhante a esses aplicativos. Você pode usar pequenos exercícios livros linguagens de programação. Para isso, escolha uma ferramenta para escrever programas na linguagem de programação que você escolheu.


  • 8
    Fazer mais avançado no curso escolhido linguagem de programação. Certifique-se de compreender plenamente os seguintes conceitos e aplicá-los com bastante facilidade, antes de continuar:
  • A administração de entradas e saídas de um programa de usuário.
  • A lógica e implementação de programas em linguagens procedurais fluir.
  • A declaração, atribuição e comparação de variáveis.
  • construções Forks na programação, por exemplo "se ... então ... else" e "selecionar ou mudar ... caso".
  • Looping construções como "while ... do", "do ... while, ou até", "for ... next".
  • A sintaxe para a linguagem de programação para criar e chamar procedimentos e funções.
  • Os tipos de dados e como manipulá-los.
  • Tipos de dados definidos pelo usuário (registros, estruturas, unidades) e uso.
  • Se os seus suportes de linguagem de programação sobrecarga de função, certifique-se de compreender como ele funciona.
  • Os métodos de acesso à memória para o idioma escolhido (ponteiros, espreitar, etc.).
  • Se o seu idioma suporta a sobrecarga com sobrecarga de operadores, certifique-se de compreender como ele funciona.
  • Se o seu idioma é compatível com os ponteiros de delegação e função, certifique-se de entender como eles funcionam.
  • 9
    Aplicar técnicas avançadas que você aprendeu.
  • orientada a objeto paradigma.
  • 10
    Faça um curso introdutório de pelo menos um linguagem de programação mais do que um paradigma diferente. Recomenda-se a aprender uma linguagem de programação de cada paradigma, de fato programadores mais avançados fazer. No entanto, geralmente é melhor começar por um, trabalhando para a aplicação de um tempo de conhecimento e praticar, em seguida, aprender outro até que eles têm uma experiência de vida real na programação. uma das seguintes áreas de teste de programação:
  • paradigma de programação lógica
  • paradigma de programação funcional
  • 11
    Tente comparar as duas linguagens de programação que você aprendeu até agora. Avalia os pontos fortes e fracos de cada um. Normalmente, você pode fazer o seguinte:
  • Recolha de amostras simples de seu trabalho anterior na primeira linguagem de programação e reescrever usando a segunda linguagem de programação.
  • Criando um novo projeto e tentar implementá-lo usando ambas as línguas. Às vezes, dependendo da sua escolha de projeto e idiomas, pode acontecer não ser possível implementar o projeto em uma das línguas!
  • Escrevendo uma folha de fraude ou uma tabela resumo das comparações entre construções similares de ambas as línguas e as características únicas de cada um.
  • Tentando encontrar maneiras de imitar única cada uma das duas línguas que utilizam os outros recursos de linguagem.
  • 12
    Saiba conceitos de programação visual utilizando uma das línguas aprendidas. Quase todas as linguagens de programação têm versões ou bibliotecas que suportam programação visual e outros suportes de apoio de programação ou consolas. Você pode fazer isso, seguindo estes passos:
  • Obter uma introdução à programação orientada a eventos. A maioria programação visual depende de alguma forma sobre eventos e gestão (usando a linguagem de programação escolhida).
  • Testar como muitas aplicações de desktop e como você pode entender o que faz com que este software. A maioria das empresas de desenvolvimento de software oferecem versões de produtos de teste beta que você pode usar para testar o software. Mantenha-se atualizado com os avanços em interfaces gráficas de usuário.
  • Leia alguns artigos ou tutoriais sobre interfaces gráficas de usuário.
  • 13
    Começar a aplicar seus conhecimentos em pequenos projetos que você design de software. Tente aplicar as competências adquiridas problemas que você enfrenta em sua vida diária. Por exemplo, digite programas para renomear arquivos em massa, compare visualmente arquivos de texto, copie os nomes de arquivo em um arquivo de memória ou de texto, e assim por diante. Tornar as coisas simples para começar.
  • 14
    cria um projeto de graduação virtual. Completá-lo até o fim, aplicar técnicas de programação visual que você aprendeu até agora.
  • 15
    Expandir o seu conhecimento de frameworks, bibliotecas e pacotes visuais que aprendeu antes de fazer cursos avançados, com especial atenção aos detalhes e seguir mais dicas e truques para o seu quadro de recursos on-line.
  • 16
    Procurar outros pacotes ou bibliotecas de elementos visuais para suas linguagens de programação e aprender a usá-los.
  • 17
    Faça um curso em gráficos (não gráficos). É muito útil para programadores que queiram desenvolver elementos da interface gráfica atraente.
  • 18
    Torne-se um programador videogames (Opcional). programação de jogos de vídeo é considerada, na maioria dos aspectos como ambiente de trabalho de programação. Se você pretende se tornar um programador de jogos de vídeo, você precisa aprender mais sobre programação de jogos, uma vez que é feito com estes passos. É obrigatório curso gráficos se você quiser ser um programador de jogos, e também a segunda língua que você escolher para os próximos passos devem ser uma linguagem de lógica ou de programação funcional (de preferência Prolog ou Lisp).
  • método 3
    Distributed Application Programming
    1
    Mergulhe na programação de aplicações distribuídas. Muitos consideram o programação de aplicações distribuídas como um dos mais difíceis de aprender e requer conhecimento em várias tecnologias de computação e comunicação.
  • 2
    Faça uma rápida introdução aos sistemas telefonia e hardware. Este passo é opcional. No entanto, é muito útil para a compreensão da topologia da rede.


  • 3
    Familiarize-se com a rede arquiteturas de hardware e dispositivos, como hubs, switches e roteadores.
  • 4
    Faça um curso sobre protocolos de rede e seus aspectos essenciais. Você deve ter uma boa compreensão do modelo OSI (Sistemas abertos interconexão), Ethernet, IP, TCP, UDP e HTTP antes de começar a programar aplicações distribuídas.
  • 5
    Aprenda a linguagem XML e familiarizar-se com ele.
  • 6
    Comece aprendendo uma linguagem de comandos shell. Para programação baseado no Windows, você pode aprender qualquer script que funciona com o Windows Scripting Host. programação baseada em Linux, você só tem que aprender scripts do Bash e Perl. javascript é amplamente recomendada para ambas as plataformas, pelas seguintes razões:
  • É compatível com quase todos os scripts de acolhimento de qualquer sistema operacional (suporte do Windows Scripting Host javascript por padrão e maioria das distribuições Linux tem um suporte pacote javascript scripts de consoles).
  • A maioria dos desenvolvedores considerada fácil de aprender.
  • Ele tem uma sintaxe derivada do ALGOL, permitindo que você se familiarizar mais com outras linguagens de programação quando você deve escolher uma segunda língua de programação (C, C ++, C #, Java e J # tem uma sintaxe derivado de ALGOL).
  • Aprender javascript, você pode se familiarizar com scripts do lado do cliente em páginas da web, que é um benefício extra!
  • 7
    Na primeira, ele só se aplica a programação processual usando a linguagem de script. Então você pode usar técnicas avançadas de programação e paradigmas apropriados para sua linguagem de script e apoiá-lo funções. Todas as linguagens de script, em alguns aspectos extensão da programação procedural.
  • 8
    Use a linguagem de script que você aprendeu a escrever scripts que executem as comunicações entre máquinas. Saiba o que é preciso para fazê-lo. Para saber comunicações simples é suficiente.
  • 9
    Fazer uma transferência para um scripts de linguagem de programação ou desktop. De preferência, uma linguagem multi-paradigma que é tão pitão. Mergulhe nesse segundo idioma. A maioria dos programadores escolher Java como a linguagem de escolha para muitas razões. No entanto, C # está a ganhar terreno rapidamente neste campo. Estas são as razões pelas quais Java e C # são, para muitos, os idiomas preferidos:
  • Eles são linguagens de programação orientada a objeto, o que impede que grandes equipes de programadores tem que lidar com detalhes de implementação como os dois componentes de suporte (unidades de código pré-compilado que realiza determinadas tarefas e pode ser usado em outros programas).
  • Tanto a programação de suporte orientado a eventos, bem como, em certa medida, OOP e processual.
  • O quadro em que a linguagem é construída é naturalmente distribuída (no caso de Java).
  • A disponibilidade de muitos prontos para usar pacotes que lidam com funções rede, tanto open source como pacotes integrados no quadro. Assim, é mais fácil para os desenvolvedores a construir sobre o trabalho dos outros.
  • 10
    foco mais sobre as características essenciais da linguagem, especialmente as que suportam funções de rede. Pagar menos atenção aos elementos do UI, tal como as saídas, o desenho das janelas, as técnicas e outros elementos de interface do utilizador.
  • 11
    Faça um curso de design e arquitetura de aplicações distribuídas. Você pode fazer isso usando livros, tutoriais on-line ou cursos acadêmicos. Você precisa entender bem a arquitetura de aplicações e conceitos distribuídos.
  • 12
    Saiba mais sobre o desenvolvimento de serviços e componentes de serviço usando a linguagem de programação escolhida.
  • 13
    Aprender a utilizar uma ou mais das seguintes tecnologias. É recomendável que você, pelo menos, uma introdução para todos eles. programadores de aplicativos mais distribuídos não parar em uma ou duas linguagens de programação, mas aprender pelo menos uma linguagem de programação para cada sistema operacional. Isso porque, se você quiser que seu aplicativo para ser "distribuído"Você deve fornecer pelo menos uma versão para cada um dos principais sistemas operacionais.
  • Common Object Request Broker Architecture (CORBA) (que significa "arquitetura comum objeto de solicitação corretor")
  • Simple Object Access Protocol (SABÃO) (que significa "Simple Object Access Protocol")
  • Asynchronous javascript e XML (AJAX)
  • Modelo (Distributed Component ObjectDCOM) (que significa "componentes do modelo de objeto distribuídos")
  • .Remoting NET
  • XML Web Services (ou "XML Web Services")
  • método 4
    Programação bibliotecas, plataformas, estruturas e núcleos
    1
    Saiba núcleos de programação. Programadores núcleos são simplesmente programadores avançados que fizeram um código de programação da unidade de programação de aplicações de transferência utilizados outros programadores.
  • 2
    Aprender uma linguagem de programação compatível com a construção de pacotes e componentes reutilizáveis, se você não tiver feito ainda.


  • 3
    Faça um curso avançado sobre UML e ORM. A maioria dos promotores de biblioteca usam um ou de ambos.
  • 4
    Faça um curso sobre engenharia de software.
  • 5
    Aprender técnicas e conceitos menos de programação baseada em componentes, orientada a objeto e evento-driven. Quanto mais paradigmas e linguagens sabe, o mais bem sucedido você será quando se tornar um programador de bibliotecas ou pacotes.
  • 6
    Saiba mais sobre os diferentes OS e estruturas de programação que suportam.
  • 7
    Concentre seus esforços para aprender a investigar sobre as estruturas independentes de plataforma e tecnologias e linguagens de programação.
  • 8
    Se a linguagem de programação que você aprendeu até agora tem versões padrão ANSI, ISO, IEEE ou W3C, domina estas normas. Tente usar código padronizado, sempre que possível.
  • 9
    Tenta imitar bibliotecas simples estabelecidos, especialmente aqueles que são de código aberto. Isto é útil, durante a fase inicial do processo de se tornar um programador ou bibliotecas de pacotes. Comece com pacotes simples como unidades de conversão e pacotes de cálculos científicos intermediários. Se você é um estudante universitário, não conseguem cursos não está programando para tentar implementar as suas equações e núcleo científico como bibliotecas.
  • 10
    Busca e código aberto pacotes de testar seu campo de programação. Primeiro, baixe o pacote binário ou arquivos executáveis. Experimente usá-lo e encontrar os seus pontos fortes e fracos. Uma vez feito isso, faça o download e tentativa de descobrir como eles fizeram o código-fonte. Tenta recriar as bibliotecas ou partes deles. No início, fazê-lo depois de ver o código e, em seguida, fazê-lo antes de ver o código. Tente melhorar essas bibliotecas em fases posteriores.
  • 11
    Aprender as diferentes abordagens utilizadas para distribuir e implantar componentes para programadores.
  • Geralmente, os programadores de bibliotecas ou pacotes tendem a pensar de forma recursiva e iterativa para resolver todos os problemas que enfrentam. Tente pensar em cada problema como uma coleção de problemas menores (uma sequência de tarefas simples) ou repetida para reduzir o escopo dos problemas em uma extensão menor e, em seguida, empilhando as pequenas processo "escopo" uns aos outros.
  • Os programadores de bibliotecas e pacotes tendem a generalizar. Isto significa que, quando apresentados com um problema simples e específico, geralmente tendem a pensar em um problema mais geral e tentar resolver o problema geral, que resolve automaticamente o pequeno problema.
  • método 5
    sistemas de programação
    1
    Ela compreende o que abrange programação de sistemas. programadores de sistemas devem lidar com a ciência aspectos de programação não relacionadas com implementações específicas dos mesmos. Não se ligam a qualquer plataforma específica.
  • 2
    Siga as três primeiras etapas para programadores de aplicações desktop.
  • 3
    Faça um curso introdutório álgebra Linear.
  • 4
    Fazer um curso de cálculo.
  • 5
    Faça um curso em lógica e matemática discreta.
  • 6
    Mergulhe diferentes sistemas operacionais básicas. Você pode fazer isso da seguinte forma:
  • Obter uma idéia de como os sistemas operacionais estão instalados.
  • aprender a instalar sistemas operacionais diferentes em um computador (opcional mas recomendado).
  • Instalar mais de um sistema operacional. pacotes de ajuda não instalar em sistemas, em vez disso, ele usa a funcionalidade básica fornecida pelo sistema operacional.
  • 7
    Faça um curso (ou, alternativamente, ler livros) sobre arquitetura de hardware de computador.
  • 8
    Expandir o seu conhecimento sobre as diferentes plataformas de hardware de computador.
  • 9
    Tente familiarizado com os conceitos básicos da linguagem assembly para a plataforma de hardware escolhido ou sistema operacional. Mais tarde você vai aprender linguagem assembly outros sistemas ou plataformas.
  • 10
    Aprender línguas ANSI C e C ++, juntamente com os conceitos de programação procedural.
  • 11
    Compreender e praticar o uso de bibliotecas padrão de C e C ++ para a plataforma escolhida. Preste atenção especial para "Standard Template Library" (STL) E talvez também para "Active Template Library" (ATL.)
  • 12
    Pesquisar recursos online, livros e cursos para entender os aspectos ligados a C para a sua plataforma específica.
  • 13
    Prática criando avançado com código C e C ++.
  • 14
    Saiba recursos avançados da linguagem assembly.
  • 15
    Faça um curso de design de sistema operacional.
  • 16
    Pesquisar e ler a documentação para a plataforma específica de escolha. É mais fácil se você escolher um sistema operacional baseado em Unix. Boa compreensão do sistema com o qual você vai trabalhar mais tarde.
  • 17
    Coloque em prática os conhecimentos adquiridos. Primeiro crie utilitários do sistema de pequeno porte. Normalmente, é útil:
  • tentando recriar pequenas ferramentas que já estão em seu sistema;
  • tentar transferir utilitários disponíveis em outros sistemas operacionais para o seu.
  • 18
    Aprender as línguas mais úteis em ordem. Este é o único lugar onde importa qual a sua primeira linguagem de programação. Primeiro aprenda ANSI C, não C ++, não C #, Java e não D. Em seguida, aprender C ++.
  • Artigos Relacionados