Publicidade

08 de julho de 2009
Colunistas

Você++

Nivaldo Foresti é programador e desenvolvedor de projetos web

Publicada em 22 de setembro de 2008 às 08h00
Atualizada em 03 de dezembro de 2008 às 10h53

Java ou C#?

Qual linguagem o profissional deve aprender para ganhar mais? Por Nivaldo Foresti.

Java ou C#? Qual a linguagem que devo aprender para ganhar mais? Essa é pergunta que mais me fazem por onde ando. Deve valer milhões de reais, pois ela é feita em reuniões, para indicar ao filho do amigo, para uma reportagem etc. Enfim, todos querem saber que linguagem será mais lucrativa para um profissional.

Minha resposta? Qualquer uma delas. Vale a pena saber a linguagem da moda? Claro! Mais oportunidades de emprego aparecem, os salários são maiores, mas é isso mesmo o que mais importa? Acredito que não.  O que mais importa, no final, é ter conceitos sólidos de algoritmos, na programação orientada a objetos, em sintaxe SQL, na arquitetura em multicamada e, em pelo menos, uma linguagem de programação.

Na atualidade, com a internet, alguns outros conceitos são importantes, como estas sopas de letras HTML, XML, CSS, XAML, SOAP. Não esqueça de acrescentar Javascript, Ajax e Actionscript (este vindo do Flash) e um pouco de Photoshop. Além disso, mesmo conhecendo tudo isso seu trabalho pode demandar freqüentemente o conhecimento de uma nova linguagem com pouco tempo de estudo. Como fazer isso?

A primeira dica é buscar, entre diversos tutoriais na internet, aquele que mais se adapta a seu objetivo, já que uma linguagem serve a inúmeras aplicações. Eis aqui uma pequena receita, que pode servir  como exemplo. Leia o manual com o tutorial da linguagem. Geralmente ele é pequeno e rápido de se fazer. Mantenha o manual de referência da sintaxe à mão, entenda como funciona o compilador, suas opções e, se houver, seu ambiente de desenvolvimento (IDE), comece com um programa simples, como imprimir uma linha no navegador. Compile-o e use as funcionalidades básicas de debugging como break points, inspeção de variáveis etc.

Depois, crie uma lista, como essa abaixo, para entrar na maioria dos recursos da linguagem e entender como ele funciona. Comece, por exemplo, por aumentar a complexidade do seu programa básico em uma ordem como esta:

1) Mostre uma série de números em um looping infinito usando uma tecla especifica para parar o programa;

2) Crie um programa com uma série Fibonacci, encontre o máximo e o mínimo em uma lista de números;

3) Aceite caracteres ou números do teclado e ordene a lista em ordem ascendente e descendente;

4) Crie um programa para calcular um número Reynolds. Ele deve aceitar os valores necessários em suas unidades apropriadas. Se o número for menor que 2100 mostre a mensagem Fluxo Laminar, se estiver entre 2100 e 4000 mostre a mensagem Fluxo Transiente, se foi maior que 4000, mostre a mensagem Fluxo Turbulento. Você irá usar os desvios If, else, then etc.;

5) Modifique o programa para perguntar se deseja calcular de novo. Com a resposta S, pergunte novamente pelos parâmetros, com a resposta N saia do programa (Do while loop). Informe números que podem dar erro no cálculo. Exemplo: coloque um=0, ele dá um erro de DIVIDE BY ZERO? Como a linguagem trata essa situação? Existe tratamento de exceção? (exception handling)

6) Faça cálculos científicos, tais como raiz quadrada, fatorial, seno, coseno etc.;

7) Imprima o resultado em diferente formatos, com casas decimais, truncando após a terceira casa, colocando zeros à esquerda ou direita, justificando etc. (operações com strings);

8) Abra um arquivo texto e o converta em HTML;

9) Pegue a data e hora do sistema e o converta em outro formato;

10) Crie arquivos com a data e hora no nome do arquivo;

11) Pegue uma tabela HTML e grave um arquivo separado por vírgulas;

12) Extraia palavras em maiúsculas ou palavras únicas de um arquivo;

13) Implemente quebra de linha automática conforme o tamanho da janela mostrada (veja o programa Notepad do Windows);

14) Adicione ou remova itens no começo, meio ou fim de um array;

15) Verifique, por fim, se esses recursos são suportados na sua linguagem: funções virtuais, referencias, pointers? Existem coisas como namespace, package, module, estude então o assunto name mangling.

Java ou C#? Você responde.

Nivaldo Foresti é programador há 30 anos, desde a jurássica era do mainframe. Foi consultor e desenvolvedor de produtos na internet como o BOL e hoje tem uma empresa de webcasting, com software nacional. Neste espaço, o colunista revela o que os desenvolvedores podem esperar da profissão, além de analisar as novas eras tecnológicas que se aproximam. E-mail: nforesti@yahoo.com .

Todos os textos de "Você++"
Top5MAIS LIDAS
DO DIA
IDG Now! Widget

Baixe o Now! Reader e confira em seu desktop as últimas notícias, álbuns e outros conteúdos do IDG Now!

IDG Now! Reader
O que levar para a 'nuvem'?

O que levar para a 'nuvem'?

Diretor da IBM Brasil explica como usuários e empresas vão lidar com computação 'nas nuvens'.

45 anos do mainframe

45 anos do mainframe

Equipamento criado em 1964 responde por 70% das aplicações de missão crítica do mundo.

TI Verde

TI Verde

Saiba tudo sobre gadgets ecológicos e consumo consciente de eletrônicos.

Alerta de e-amil
Saiba de tudo o que o IDG Now! publica sobre as empresas abaixo por e-mail
Eventos IDG
Digital Age 2.0
WTC Hotel São Paulo - 26 de agosto
IT LEADERS
O Leopolldo - 24 de setembro
Licenciamento
Veja como utilizar o conteúdo do site líder em notícias sobre tecnologia a seu favor.
Newsletter
Segurança
Informe-se sobre as principais ameaças online
Computação Corporativa
Conheça as estratégias das empresas de TI
Carreira
Fique atualizado: cursos, eventos
e dicas