C# 3.0 – Novidade: Tipagem implícita
Um novidade do C# 3.0 é a tipagem implícita.
Para isso, foi introduzido um novo operador “var” na linguagem, com este novo “operador”, você pode
criar variáveis sem definir explicitamente o seu tipo.
O tipo será definido de acordo com a expressão utilizada para inicializar a variável, neste caso, a variável continua sendo declarada como uma variável fortemente tipada.
Para garantir que uma variável criada com o var seja fortemente tipada, você precisa sempre iniciá-la na mesma linha da declaração da variável, e o inicializador da variável precisa ser uma expressão, e não um objeto ou um valor nulo.
A tipagem implícita é fundamental para a utilização dos tipos anônimos.
Veja dois exemplos abaixo:
var minhaVariavel = 89; //Variavel fortemente tipada do tipo Int
var meuArray = new[] {"Banana","Laranja","Abacate"}; //Variável Array fortemente tipada do tipo String
Namespace (.NET) e Package (Java)
À medida que um programa cresce, temos alguns problemas como por exemplo: muito código é mais difícil de entender e manter; mais código normalmente significa mais nomes, mais dados nomeados, mais métodos nomeados e mais classes nomeadas. à medida que o número de nomes aumenta, aumentam também as chances da compilação do projeto falhar porque dois ou mais nomes estão em conflito.
Antigamente, os programadores tentavam resolver o conflito pré-fixando os nomes com algum tipo de qualificador. Essa solução não é boa porque não é escalável, os nomes tornam-se maiores e você gasta menos tempo escrevendo o software e mais tempo digitando e lendo e relendo nomes longos e incompreensíveis.
Para resolver este problema, tanto no .NET quanto no Java, podemos criar um “contêiner” nomeado, desta forma duas classes com o mesmo nome não serão confundidas entre si se elas estiverem em “contêiners” diferentes. É uma boa prática definir todas as suas classes em “contêiners”.
Os contêiners podem ser utilizados tanto no .NET quanto no Java, no .NET chamamos de “namespaces” e no Java chamamos de “packages” (pacotes).
Conceitualmente não existem diferenças entre as duas linguagens, porém, sintaticamente existem diferenças, mas nada que não seja de fácil assimilação. Veja:
- Em Java, um package representa fisicamente uma pasta (ou diretório para os puristas);
- Em .NET um namespace não está relacionado a uma pasta. É possível ter uma pasta com um nome e dentro desta pasta, classes que pertençam a um namespace com outro nome, ou ainda, em uma pasta é possível existirem classes com namespaces diferente.
Exemplo .NET:
namespace Financeiro
{
class Calculo
{
……
}
}
namespace Estoque
{
class Calculo
{
……
}
}
Exemplo Java:
package br.com.meusistema.financeiro;
public class calculo {
…….
}
package br.com.meusistema.estoque;
public class calculo {
…….
}
Nos dois exemplos acima (.NET e Java), conseguimos ter duas classes com o mesmo nome, porém em contêiners diferentes dentro do mesmo sistema.
.NET
Financeiro.calculo
Estoque.calculo
Java
br.com.meusistema.financeiro.calculo
br.com.meusistema.estoque.calculo
WebDays Developers 2008
Quer conhecer as principais novidades das tecnologias Java e .NET? Então você não pode perder o evento “WebDays Developers 2008″, realizado pelo grupo DevMedia.
O evento ocorrerá entre os dias 22 e 23 de Agosto/2008 (sexta e sábado), em São Paulo e dentre as diversas palestras:
- Silverlight 2.0
- O que há de novo no ASP.NET 3.5
- ASP.NET Dynamic Data
- Ajax para Mobile
- Java FX: Desvendando mais uma tecnologia Java
- Programação 2.0 com Ruby on Rails
- NetBeans 6
- Framework Ajax
- Explorando o Jboss
O evento é pago, se for tudo aquilo que os patrocinadores prometem, o valor compensa (até 01/08/2008 R$ 460,00 para 1 ingresso – dividem em 6x no cartão de crédito!!!).
Para entusiastas, iniciantes, intermediários e avançados, seja em .NET ou Java, vale a pena participar de um evento que abrange as duas principais tecnologias para desenvolvimento do momento.
Para quem quiser conhecer mais sobre o evento, acesse o WebSite: http://www.devmedia.com.br/webdays2008/index.html
LiveMocha – Aprendendo outros idiomas
Conhece o LiveMocha? Não? Então você está perdendo tempo.
O LiveMocha é uma comunidade interativa para aprendizado on-line de idiomas (até a data da publicação deste post a comunidade dava suporte para 11 idiomas: Inglês, Francês, Alemão, Espanhol, Híndi, Islandês, Italiano, Japonês, Mandarin, Russo e Português, com promessa para mais idiomas).
Para tornar o usuário expert no idioma desejado, a comunidade oferecer lições, comunidade diversificada (com pessoas de várias partes do mundo, inclusive nativos!!!), ferramentas de bate-papo e motivação além de professores que dão suporte individual.
Você pode se inscrever, GRATUITAMENTE, em diversos cursos, desde o mais básico até o avançado, inclusive com testes TOEFL.
Visite a comunidade LiveMocha, faça seu cadastro e aprenda outra idioma.