Webinsider

Desenvolvimento

Quer ser desenvolvedor e não sabe onde começar?

17 de maio de 2008, 22:42

Para iniciantes: para começar uma carreira na área de desenvolvimento de software, o ideal é esquecer que existem linguagens de programação e, antes de mais nada, aprender lógica.

Por Renato Ucha

Recentemente escrevi um artigo sobre certificação MCP e recebi diversas mensagens de pessoas que estão começando ou estão querendo começar a trabalhar na área de informática. A maioria interessada na área de desenvolvimento - então vamos falar um pouco sobre como começar uma carreira na área de desenvolvimento de software.

Analisando a velocidade com que as mudanças na área da informática acontecem, é fácil deduzir que a tecnologia de ontem já não serve para hoje. Isso vale também para técnicas de programação e desenvolvimento. Há 20 anos, a maioria dos programas eram escritos para ambientes não gráfico (ex. DOS) e o Clipper era a linguagem do momento.

Há 10 anos o paradigma já havia mudado e a sensação era a programação estruturada orientada a eventos com o Visual Basic e com o Delphi, linguagens que tiveram sua participação reduzida no mercado de lá para cá. Hoje em dia, há procura por Java e o ambiente .NET, com orientação a objetos e frameworks que fazem muito trabalho pesado pelo programador.

Mas como dominar estas tecnologias para conseguir um bom emprego e decolar sua carreira na área de desenvolvimento?

Como disse anteriormente, as novas tecnologias já trazem muita codificação pronta, ou seja, fazem uma boa parte do trabalho pelo programador. Se por um lado isto é muito bacana pois melhora a produtividade no ambiente de desenvolvimento, por outro lado faz com que muitos programadores desconheçam os processos básicos de funcionamento de um CPU (unidade central de processamento) e o laço de mensagens de um ambiente multitarefas como o Windows.

Estes conhecimentos são necessários caso você queira fazer a diferença no mercado. Portanto, se você quer iniciar sua carreira na área de desenvolvimento, puxe o freio de mão, diminua a ansiedade por já começar programando e inicie pelo básico, que é a lógica de programação. Talvez você ache tedioso no começo, mas se for direto para a codificação terá muita dificuldade em resolver problemas simples de lógica e não conseguirá interpor problemas simples com algoritmos simples.

O ideal para quem quer começar a programar é esquecer que existem linguagens de programação e, antes de mais nada, aprender lógica. Quem domina bem a lógica consegue programar em qualquer linguagem, seja ela JAVA, Basic, C, etc… Todas as linguagens são bem semelhantes, possuem os mesmos conceitos, só muda a sintaxe.

Durante o aprendizado de lógica, você perceberá que será importante utilizar uma linguagem de programação como apoio. Evite iniciar fazendo sistemas com banco de dados ou para ambiente gráfico, se você quer uma opção gratuita, pode fazer o download do Visual Studio Express no site da Microsoft. Não importa a linguagem (VB ou C#), utilize a opção “console application” apenas para codificar aquilo que está aprendendo com a lógica de programação. Não se preocupe neste momento em criar classes ou métodos, preocupe-se em entender os laços (do while / case / switch / if then else ) e aproveite para conhecer um pouco sobre índices.

Assim que se sentir seguro com a lógica de programação, dê uma investida maior na linguagem de programação escolhida. Aprenda como funciona o laço de mensagens do Windows, os eventos e as propriedades dos objetos que a linguagem disponibiliza.

Na primeira etapa, não se preocupe em criar programas que utilizem banco de dados, dê uma grande investida no ambiente de programação e nos componentes básico como caixas de texto, labels e controle de imagens. Pratique bastante os eventos do sistema como movimento do mouse, mudança no foco, tecla pressionada, etc.

Neste momento é hora de lançar o seu primeiro desafio pessoal. Que tal aproveitar que você já conhece lógica de programação, já domina os principais eventos do sistema e conhece os principais objetos para fazer o seu primeiro programa?

Nada melhor do que a prática para se chegar a perfeição. Com o desafio pessoal você irá notar que muitas novidades irão surgir, novos desafios de lógica, a necessidade de conhecer mais a fundo alguns eventos do sistema, etc. Um bom desafio para começar, ainda sem utilizar banco de dados, é fazer um programa que resolva algum cálculo matemático dado a entrada de alguns números (parece simples, mas se você não tratar uma divisão por zero o programa terá um “bug” e não funcionará).

Assim que concluir o seu primeiro desafio, comece a estudar orientação a objetos. Esta é uma das tarefas mais complexas do mundo do desenvolvimento e também irá o preparar para quando for dar um salto na sua carreira passando de programador para analista de sistemas.

A maioria dos programadores no mundo de hoje trabalha com orientação a objetos, mas se investigarmos a lógica existente nos objetos criados, percebemos que muitos não extraem deste conceito aquilo que ele pode oferecer. Por exemplo, você notará que uma classe deve ter uma responsabilidade muito bem definida e não pode, de maneira alguma, extrapolar a sua responsabilidade, fazendo aquilo que outra classe deveria fazer. Tudo bem, a linguagem de programação deixa fazer, mas foge ao conceito da utilização de classes, portanto o uso de um bom livro irá auxiliar enormemente nesta etapa. Um programador que conheça bem orientação a objetos terá um grande diferencial no mercado, portanto dê bastante atenção a este item.

É durante esta etapa que você deve começar também a estudar banco de dados. Neste primeiro momento, preocupe-se em saber criar tabelas, fazer consultas e alterações nas tabelas, utilizar chaves primárias e estrangeiras e campos auto numeráveis. Explore ao máximo os recursos oferecidos pelo ambiente de desenvolvimento que você está utilizando. Quase todos oferecem diversas classes prontas para trabalhar com banco de dados.

Crie consultas, telas de cadastro, alteração, exclusão (se estiver utilizando o .NET, experimente utilizar os DataGrids e verifique item a item as suas propriedades e o que faz cada uma delas mas não deixe de montar telas de cadastro e consultas manuais, você irá entender melhor o funcionamento interno dos DataGrids).

Já domina uma boa parte sobre banco de dados e outra boa parte sobre orientação a objetos? Então agora é hora de lançar o seu segundo e maior desafio pessoal até agora! Que tal aproveitar que você já domina bem a ferramenta e fazer um programa completo? Pense em algum programa que possa auxiliar as pessoas no seu dia-a-dia, pense em fazê-lo como freeware e divulgá-lo na internet. Sites como o Superdownloads fazem este trabalho de divulgação por você!

Será um excelente portfolio para colocar no seu currículo caso ainda não possua experiência alguma no mercado. Se ainda não sabe o que fazer, por que não fazer um controle de orçamento doméstico? Ou um programa que auxilia as pessoas a montar a sua lista de compras de supermercado? Ou mesmo uma agenda de compromisso?

Agora que você já conhece alguma coisa sobre os conceitos de programação e já inclusive desenvolve alguns programas, é hora de montar um currículo e ir a caça de um bom emprego. Boa sorte! [Webinsider]

.

Sobre o autor

Renato Ucha (falecom@renatoucha.com.br) é analista de sistemas e desenvolvedor certificado Microsoft. Trabalha com tecnologia SQL Server e C# em projetos cliente/servidor e multicamadas para o grupo SHC – Citroën e mantém um blog.

Apoio:

  • LayerDev Serviços de Webhosting Profissional

Palavras-chave relacionadas a este texto: [ windows ] [ programação ] [ microsoft ]

Comentários

9 pessoas comentaram o artigo "Quer ser desenvolvedor e não sabe onde começar?"

rafael Data: 18/05/2008 às 10:52 am

Atividade: Estudante de Tecnologia de Sistemas

Cidade:

Não podemos esquecer que para aqueles que pensam em ir longe nas carreiras de desenvolvedor de software e analista de sistemas uma faculdade é indispensável, pois logo nós desenvolvedores teremos um sindicato que irá fiscalizar se as empresas estão utilizando os serviços de unicamente profissionais qualificados.

Leandro Data: 20/05/2008 às 7:34 am

Atividade:

Cidade: Salvador

Discordo do Rafael, não acho que uma faculdade “qualifique” uma pessoa, não acho que ela seja essencial. Aliás, dou mais valor ao conhecimento conseguido de forma autodidata. E só para constar: já fiz faculdade de ciência da computação e fui um ótimo aluno.

Andre Data: 20/05/2008 às 8:35 am

Atividade: Analista de Sistemas

Cidade: Ribeirao Preto

Muito bom o texto. Mas concordo com o comentário do amigo Rafael, não devemos esquecer que para exercer este tipo de atividade, é imprescindível uma faculdade na área de tecnologia, independente de existir ou não uma associação de classes para “fiscalizar” o trabalho dos profissionais nas empresas de software. Senão, acabaremos por voltar na época dos “dentistas práticos”. Você confiaria? Eu não…

Vinicius Assef Data: 20/05/2008 às 12:55 pm

Atividade: Desenvolvedor de aplicativos

Cidade: Brasília

Ô Renato, bom artigo.

Só gostaria de lembrar que o conhecimento do Inglês é tão importante quanto as qualificações técnicas. Afinal, os melhores livros e tutoriais ainda são em inglês. Sem falar que os softwares para desenvolvimento, assim como suas mensagens são em inglês.

Para quem se anima com as fórmulas mágicas de aprendizado que alguns livros tentam trazer, recomendo a leitura do texto riquíssimo chamado “Teach Yourself Programming in Ten Years” (http://norvig.com/21-days.html).

Para quem ainda não se garante no inglês, tem um link para a tradução em português na coluna da direita.

Para quem acha que o autor não sabe do que está falando, veja as credenciais dele em www.norvig.com na caixinha à direita, com as informações de contato.


[]s.
Vinicius Assef.

Regiane Barreto Data: 21/05/2008 às 3:25 pm

Atividade: Estágiaria /Análise e Desenvolvimento de Sistemas

Cidade: São Paulo

Ótimo artigo! Estava preocupada e anciosa em ter pleno dominío em programação ,quando tocou em pontos básicos e importantes.
Não pare poderá ajudar outras pessoas
obrigada pelo toque valeuuuu.

Adriano Silva Data: 27/05/2008 às 10:46 am

Atividade:

Cidade:

Bela matéria, é extremamente importante conhecer o básico para passar ao complexo, principalmente para não desanimar, você deu uns toques interessante para a galera que está começando.

LVR Data: 29/05/2008 às 10:01 am

Atividade:

Cidade:

Ao Rafael,

Discordo plenamente da obrigatoriedade de um diploma de curso superior para exercer a profissão.

Frequentei diversas instituições públicas e privadas de ensino superior e presenciei as mais absurdas aberrações, tanto na competência do corpo docente, quanto ainda pior do discente.

(O senso comum diz que não se deve fazer generalizações. Mas, se assim for, então o quê fazemos com as leis da Medicina, Física, Química, Matemática ? Dado o amplo uso de generalizações em todas as áreas do conhecimento ?)

Sou autodidata por opção, trabalho com Software Livre/Código Aberto desde 1996/97 e concordo plenamente com a afirmação de que “qualificação não determina competência” — frase esta do ex-presidente da SBC, Silvio Meira.

Li a grande maioria dos clássicos de Ciência de Computação, por conta própria e seria capaz de apostar que um contingente muito alto de ex-alunos de cursos relacionados e/ou co-relacionados, não fez o mesmo, apenas ouviu falar.

Não acredito que todos tenham a capacidade de serem autodidatas verdadeiros, aqueles que compreendem a teoria e empreendem a prática.

O único motivo para frequentar uma faculdade na área é, infelizmente, a obrigatoriedade que uma lei retrógrada nos imporá em um futuro próximo.

[]´s

LVR

Israel Data: 01/06/2008 às 9:51 am

Atividade:

Cidade:

Ola!

Gostei deste artigo, gostaria ter esta luz alguns anos atraz. Vejo que alguns acham que faculdade não é importante, concordo que na área de informática realmente não é necessário, mas hoje as empresas estão cada vez mais competitivas, e pra ter mais qualidade e credibilidade em seus produtos, precisa-se ter profissionais com boas qualificaçães, sendo assim graduação hoje é essencial, para que possamos competir no mercado.

Inskandar Hamadrias Data: 26/07/2008 às 10:44 pm

Atividade:

Cidade:

Ótimos conselhos para ser alguém que só sabe desenvolver segundo a metodologia POG.

Avisos
Os ítens com asterisco ( * ) são campos de preenchimento obrigatório.
Todos os links inseridos nos comentários possuem o atributo rel="nofollow" para impedir com que user agents (como os mecanismos de busca) sigam os links inseridos para desestimular spammers.
Todos devem se identificar através de e-mail válido.
Os e-mails dos usuários não serão divulgados no site.
Comentários:

Preencha os dados abaixo e clique em enviar

Outrolado.com.br

Leia

Google lança hosting grátis para aplicativosApp Engine é um serviço gratuito para desenvolvedores que podem hospedar seus projetos e usar a infra-estrutura do Google. Trabalha com aplicativos em Python e concorre com serviço similar da Amazon. Você usaria? Por Gilberto Alves Jr.

Ricardo Bánffy

Kanamit Web FrameworkAlgo de novo no ar: framework para web construído em uma base mais elegante é um sopro de ar fresco para desenvolvedores.
Por Ricardo Bánffy

Dicas que ajudam a obter a certificação MCPEm busca de certificação MCP? Nosso amigo tentou a primeira vez para ver como era e não conseguiu. Depois fez vários simulados, foi esquentando e passou tranquilamente na segunda chance. Veja como foi. Por Renato Ucha

Dormindo com o inimigo: como é voltar a .NET e C#Desenvolvedor fã de linguagens de código aberto e distante do universo Microsoft retoma o contato com a plataforma .NET. Ele gostou de muitas coisas e conta como foi. Por Rodrigo Braga

O mundo com apenas cinco computadores Gigantes lutam pela sua audiência e para tomar conta de seus dados e de sua empresa mediante módico aluguel. Microsoft, Google, Amazon, Ebay, Yahoo, Apple, IBM, Oracle, Newscorp e Sony entre eles. Por Érico Andrei

Gigantes lutam pelas tecnologias de programaçãoIBM, Microsoft, Sun, Apple e Google disputam a proeminência de linguagens que não têm “donos” e as potenciais vencedoras podem ser Ruby e Python. Por Érico Andrei

Python, por que não usei isso antes?A linguagem de programação multiplataforma e de código aberto é tão simples e rica em recursos que chega a entusiasmar aqueles que a experimentam pela primeira vez. Por Rodrigo Braga

Paulo Rebêlo

Saudades do ClipperProgramadores sentem falta da tela preta e lamentam que a Computer Associates tenha vacilado. Por Paulo Rebêlo

Webinsider