terça-feira, 28 de outubro de 2008

Teched 2008 -Parte I

Como havia dito no post anterior irei postar uma série de posts á respeito do TECHED 2008 que foi um evento que trouxe informações revelantes sobre as tecnologias Microsoft.

No dia 14/10/2008 eu assisti a várias palestras e irei contar o que foi explanado em cada uma delas e a primeira palestra do dia foi Utilizando o Microsoft Blend com o Microsoft Visual Studio 2008 - do ponto de vista do Desenvolvedor com o palestrante Marcelo Negrini.

Nesta palestra ficou evidente que nós desenvolvedores temos de conhecer um pouco design e arquitetura de aplicações web para podermos construir aplicações que proponham um ambiente mais agradável e acima de tudo eficaz para se trabalhar.

Para você iniciar o desenvolvimento de aplicações com este conceito você tem de ter instalar o Microsoft Blend, Visual Studio 2008 e o plug-in do Silverlight Tools for Developers.

A interface das aplicações feitas com o Blend são descritas em XAML( (pronuncia-se "zamel"), (sigla de eXtensible Application Markup Language) que e é a principal linguagem de interface da Microsoft para o Windows Vista usada para criar interfaces de usuário de forma simples e rápida e é baseada em XML.

Para em um ambiente Windows ter o total aproveitamento dos recursos gráficos existentes na Web contamos com o WPF(Windows Presentation Foundation) recurso que foi inserido na versão 3.0 do framework .NET e tem como objetivo aproveitar o hardware disponível nas máquinas mais novas, o que não acontece atualmente, uma vez que só utilizamos a placa aceleradora em aplicativos específicos como jogos. E é também responsável por gerenciar recursos como: Interface do usuário, imagens 2D e 3D, Impressão, além de recursos de áudio e vídeo.

Dando seqüência ao conteúdo apresentado foi falado que a aplicação em WPF independe de resolução porque através do Blend trabalhamos com hierarquização de objetos e não com árvores de objetos como é feito no Corel Draw e isto pode ser visualizado com o recurso LayoutRoot que diz aos objetos qual é o seu posicionamento e sua função dentro da aplicação.

Ainda no Blend temos outras propriedades que auxiliam neste trabalho que seriam o StackPanel que empilha os objetos,WrapPanel que acaba com essa questão de quebra de linha e coluna,DockPanel que estrutura os elementos da página,Skins que possibilitam a troca de cor instantãnea e os Resources que são dicionários de recursos.

Para quem deseja desenvolver com o Silverlight no ambiente móvel pode ficar sossegado porque já existe a versão Mobile para Download no seguinte link:

http://www.microsoft.com/downloads/details.aspx?FamilyId=1F61C78A-6AE2-4D8C-993C-3CA341FAD70A&displaylang=en 

Este foi um resumo breve dos conceitos mais revelantes apresentados na primeira palestra assistida e agora irei comentar á respeito da segunda palestra que assisti.

A segunda palestra foi Melhores Práticas com a Linguagem C# 3.0 com o palestrante Alfred Myers.

Este tema resume o que se deve adotar quando estamos em um ambiente de desenvolvimento porque estamos acostumados por comodismo escrevermos códigos sem a devida estruturação para ele ser documentado,fazermos declaração de variavéis sem a devida análise de onde ela vai ser inserida e mais outras práticas errôneas.

Por isso temos de decompilar o nosso código para analisarmos linha a linha o comportamento do mesmo e existem para download vários decompiladores.Mas,eu recomendo que efetuem o download RedGate´s .NET porque ele possibilita a visualização em frameworks anteriores e com isso você pode verificar que adaptações podem e devem serem feitas quando você realiza a migração de um código da versão do VStudio 2003 para a versão 2008 por exemplo.

Abaixo seguem uma pequena lista de boas práticas de desenvolvimento com a linguagem C#.

-Adote o uso do Jitter em propriedades implementadas automaticamente porque ele proporciona um bom desempenho no uso de campos.

-Se os campos forem públicos use as propriedades e não os campos diretamente porque adotando esta prática você ganha em melhora de performance.

-Infira o tipo da variável no lado direito e dessa forma a IL(Intermediate Language) poderá transformá-la no tipo desejado.

-Quando não tiver explicito o resultado da variável busque escrever o tipo da variável.

-Quando for inicializar um objeto use o inicializador composicional para evitar a proliferação de sobrecargas e construtores.

-No construtor da Classe busque sempre colocar os parâmetros neceesários para a classe pelo fato de no construtor termos somente a inicialização de dados somente leitura.

-Usar o extensions quando quiser usar o left e o right em sua classe.

-Quando usar o Extension Method declare o namespace em outra classe.

-Não use os métodos de extensão em todos os objetos e quando eles forem usados faça-os se comportarem como métodos de instância.

-Quando for declarar eventos em seus objetos use expressões do tipo lambda para o código se torna fácil de entendimento e ainda facilitar a sua manutenção.

-Só usar tipos anônimos em variáveis locais.

-Toda classe tem de ter um nome.Porém quando a mesma é tipo do anônima o CLR(Common Language Runtime) gera um nome a ela no momento da compilação e ai usa o Generics para especificação das características de uma classe anônima.

-Nos métodos parciais o tipo de retorno tem de ser void.

-Eventos do tipo público não devem ter o void como retorno.

-As classes parciais estão no mesmo assembly ou seja estão no mesmo projeto.

-Quando for usar LINQ em seu projeto em C# tenha em mente que você pode IENUMERABLE em suas expressões do tipo query.

Este foi um resumo breve dos conceitos mais revelantes apresentados na segunda palestra assistida e agora irei comentar á respeito da terceira palestra que assisti.

A terceira palestra foi VB.NET -Melhores práticas,Dicas e Truques com o palestrante Thiago Cruz.

Ele abordou a questão da Migração do VB 6.0 para versão 9.0 ou seja VB.NET,LINQ,Queries e Refactoring e agora irei detalhar cada tópico.

Quando pensarmos em estratégias de migração temos de levar em consideração o quanto a mesma vai afetar a regra de negócio e a qualidade da aplicação.Por isso o modelo que mais leva em consideração estes itens seria o horizontal.Porque nele não mudamos a Interface do usuário logo de cara e nem a lógica e sim os dados e o tratamento dos mesmos.

Porque assim não afetamos de modo radical a experiência que o usuário tem com a sua aplicação e a migração é realizada aos poucos e de forma gradual não prejudicando os processos existentes no negócio de seu cliente.

Pensamos nesta questão a Microsoft tem um toolkit que trata exatamente dessa questão por isso efetue o download do Microsoft Interop Forms Toolkit 2.0 para assim conseguir efetuar de forma prática o conceito apresentado acima.

Ressaltou a importância de usar o Refactoring porque ele auxilia na produtividade na declaração de variáveis por exemplo.

Irei listar algumas boas práticas que devem ser seguidas para o desenvolvimento de aplicações em VB.NET.

-Transformar métodos em propriedades e vice-versa.

-Sempre trabalhe como parâmetros.

-Reordene os parâmetros de acordo com os dados que estão na base de dados.

-Em relação ao uso de Interface mova os dados da mesma para um "arquivo".

Na versão 9.0 temos uma lista de novidades que serão listadas abaixo.

-Você pode atribuir valor a um objeto através de XML.

-Com o uso LINQ  você pode possibilita que múltiplas linguagens acesse objetos.

-Com o LINQ to Sharepoint você disponibiliza os dados através do TaskPanel no Office.

-Com o uso do LINQ você acessa tabelas através de um objeto DATABASE.

-Existe o recurso XML Case Sensivity.

-Você possue ainda expressões do tipo Inline XML.

-Você dinamizar suas pesquisas através do recurso integração de queries.Mas,para isso você tem de efetuar o download da ferramenta XML To Schema Tool For VB 2008.

-Tendo a ferramenta acima instalada se pode entregar os atributos XML em elementos Schema e com isso adicionado eu enxergo este conteúdo em meu projeto.

Este foi um resumo breve dos conceitos mais revelantes apresentados na quatra palestra assistida e agora irei comentar á respeito da última palestra que assisti.

A última palestra assistida foi A Ciência por trás da criação das grandes experiências da Microsoft com o palestrante Alex Souza.

Nesta palestra pode entender o que temos de fazer para os clientes que vão comprar a nossa idéia de software se sentirem saitisfeitos e produtivos em seu ambiente de trabalho.

Quanto mais ia assistindo a palestra ia percebendo que nós desenvolvedores não percebemos o impacto desses detalhes no resultado final de um software.Por exemplo:Quando você parou para perceber o quanto de distância de uma tecla a outra que vai ser pressionada para a realização de uma ação ou número de cliques que se tem de ter realizar afeta a experiência do usuário em relação ao nosso software ?

Por isso foi falado na palestra que a geração de complexidade desnecessária pode gerar a distração em relação a tarefa a ser executada e isto cria uma péssima impressão para o usuário.

Pensando nesses tipos de falhas ocasionadas no desenvolvimento de um software irei listar alguns itens a serem levados em conta nesse processo de criação e concepção de um software.

-Crie modelos de objeto que estabelecem precedência no mundo físico.

Por exemplo quando criar uma aplicação que tenha o objetivo de ser um livro ou caderno de receita virtual crie algo que arremeta ao público - alvo desse sistema a idéia de escrever e guardar receitas.

-Entenda que o cliente não é técnico o quanto você é que ele prefere interfaces que simples ou do que algo conceitual.

Por exemplo para um especialista em lápis a denominação científica lhe é interessante.Mas,para o restante de nós é importante e revelante é saber que ele escreve e desenha coisas.

-Busque apresentar informações com clareza.

-Evite contraste de cores fortes.

-.Busque testar a resolução em um monitor inferior.Porque se nele a sua aplicação ficar com um visual bom tenha certeza que em qualquer monitor a resolução estará boa.

-Não use mais que dois tipos de fontes em seus projetos.

-Estude antes de tudo quem será o público-alvo que utilizará o software para assim você pode desenvolver uma identidade visual de acordo com este item.

Para se aprofundar melhor sobre este tema.

Acesse o link:

http://colourlovers.com lá você pode ver vários templates prontos de contrastes de cores e outros itens e ainda poderá criado o seu e pedir a opinião e porque não ajuda dos membros desta comunidade.

Enfim este foi o meu primeiro dia de TECHED.

Espero que este post auxiliem a todos a entenderem o que foi o TECHED e de como auxilia os profissionais a ampliarem as suas concepções e visões.

 

Juliana Prado Uchôa

Microsoft Student Partner

Líder do grupo CHANNEL TI

Nenhum comentário: