Bem, já fiz este post sobre o TechEd Brasil 2010. Nele dei um overview sobre o evento. Agora vou compartilhar um pouco da minha visão de acordo com as trilhas técnicas que participei.
Desenvolvendo para Azure:
Uma boa palestra que abriu minha mente para como grandes sistemas funcionam (facebook, twitter, meu blog etc.). Essa façanha se dá graças a algumas estratégias de armazenamento e replicação de informação. E foi mostrado como o Azure faz isso, através de seus storages (Drives, Blobs, Tables e Filas). Vejamos algumas anotações:
- Windows Azure: SO que gerencia a grande malha de servidores dos Data Centers na Nuvem. Cuida do balanceamento, da seleção de máquinas e tolerância a falhas.
- Se paga pelo que usa (igual a conta de água e luz).
- App Fabric (Malha de aplicações)
- Web Role (uma aplicação web por exemplo)
- Work Role (Um processamento de enconding de vídeo por exemplo)
- A app fica pronta em +- 5min após o deploy.
- VS gerencia o Azure pelo Server Explorer
- Há um emulador de Azure para testes.
- Projeto Azure no VS descreve como executar uma app no Azure.
- É preciso uma SDK (baixar no site do Azure).
- Storages: Blobs (Arquivos com metadados, nome únicos, acessíveis por URI, divisível em blocos e páginas; Tables (Armazenamento estrutural, escalável, manipulável por LINQ e REST); Drive (NTFS, Declarável, compartilhado, utiliza Blob por baixo dos panos, muito utilizado para migração de apps).
- Filas: Mensagens entre as apps.
Desenvolvendo para C# no Mundo Moderno:
Palestra básica sobre novidades do C# 4. Basicamente tirei minha dúvida: Porque um objeto Anônimo, quando é passado como dynamic para outra camada, fica inacessível? Tipos anônimos são privados!
Tudo que você precisa saber sobre Scrum, ALM e Visual Studio:
Consegui extrair apenas alguns pontos interessantes dessa palestra:
- Cone de incerteza da NASA (Imagem acima).
- Scrum: Transparência, inspeção, adaptação. Framework, não metodologia.
- “Nenhum planejamento de guerra vai além da primeira batalha”.
- Diagrama de dependência (VS 2010): Quanto mais larga a flecha, maior a dependência.
- VS 2010 trabalha com UML 2.1
- Existe uma extensão para o VS 2010 gerar código a partir do diagrama de classes da UML.
- Possibilidade de gerar testes de UI (“Macros”) no VS 2010.
SQL Azure:
Essa palestra deixou mais claro a forma transparente e as regras do SQL Server nas Nuvens. Anotações:
- Usa Transact SQL Normalmente.
- Conecta normalmente pelo Server Explorer do VS.
- Não suporta manipular várias bases de uma vez (key word “USE”).
- Suporta o SQL Management Studio, mas para mudar de base é preciso desconectar e re-conectar.
- Duas versões: Web Edition (Mais “limitada”); Business Edition.
- Tem uma versão de teste gratuita.
- Tem uma ferramenta de TCO Calculator.
- Não é possível subir um backup local para a nuvem. Mas há um exportador de base.
- Somente SQL Authentication.
- Tem Firewall.
- BCP Upload.
- SQLCat.
- Suporta LINQ to SQL.
Meu site anda meio lento:
Essa track foi show de bola, mostrou a estratégia dos principais players do mercado (Google, Yahoo, Microsoft, Twitter etc.). De cara uma coisa ficou evidente: temos que nos preocupar muito com detalhes no front-end (html gerado, css, javascript, imagens).
- A velocidade depende da expectativa e percepção do usuário.
- Deve ser levada uma experiência ao usuário, como uma barra de progresso de upload, para “acalmá-lo”.
- O Browser é relevante.
- Fiddler (Proxy Sniffer): coleta informações de rede sobre a requisição de um site.
- o IE tem 50mb de cache, o Chrome 200mb.
- Usar GZip.
- Usar Sprites (Imagem acima).
- Tomar cuidado com espaços em branco no HTML, javascript etc.
- Antecipar resolução de DNS~.
- Evitar o uso de “@Import” no CSS (é sequencial).
- Quando possível: Styles (CSS) no cabeçalho, Scripts no final da página (pois o seu processamento pode “travar momentaneamente” a renderização.
- Utilizar o “var” no javascript, assim o interpretador não vai varrer todo o código para localizar sua declaração inicial.
- Netmoon: analisador de pacotes.
- webpagetest.org
Team Foundation Server:
Palestra do meu amigo Ramon Durães, basicamente muitos assuntos, e perguntas dos espectadores, que já eram do meu domínio. Mas foi legal ver a facilidade que o TFS trouxe, na parte de instalação e configuração, seja para grandes empresas ou apenas um usuário. Apenas uma questão ficou no ar que é “quando um grupo desenvolve sobre um usuário do proxy, eu perco a rastreabilidade!?”. No mais: Sharepoint e Reporting Services são opcionais para o TFS 2010. E o Firewall tem de ser muito bem configurado para o Home office.
Desenvolvendo uma app Silverlight em 75 minutos:
Outra excelente trila, onde aprendi bastante coisa sobre o Blend, WCF Ria Services, Resolução de Timeline, Path Lista Box (Layout path (ex: Elipse)).
WCF:
Basicamente só observei as estratégias de endpoint do WCF.
MVVM:
Pattern(Receita de bolo) super interessante para desenvolver com bind em WPF e Silverlight, onde separamos os dados da visualização.
Model <-> ViewModel <-> View
- Não é um framework (embora exista alguns de apoio).
- Validação fica na view.
- Executa commands, e não eventos.
- ViewModel: ICommand; INotifyPropertyChanged; IDataErrorInfo; DataContext da View;
- Testável.
MEF:
Uma das melhores palestras que assisti, com uma didática fora do comum!
MEF é um framework que ajuda a criar plug-ins para uma aplicação, e assim extendê-la.
O Exemplo que foi dado foi de uma calculadora, onde cada operação era um plug-in/extensão/dll. Simplesmente era colocada a dll gerada na pasta de plug-ins
- Funciona no .NET 4 e Silverlight 4
- Apps abertas para extensão, fechadas para modificação.
- Plug-in: componente de software para acrescentar funcionalidades. Assim reduzindo o tamanho da APP principal, mas é possível extendê-la conforme a necessidade (bastando um contrato/padrão de implementação).
- Carrega sobre descoberta e dinamicamente.
- Transforma apps estaticamente compiladas em dinamicamente composta.
- Exportação + Importação = Composição
- Catálogos: Diretório, assembly, etc.
- Contratos por Interfaces.
- Suporta Lazy<>.
RIA, Silverlight e WCF:
Track onde foi demonstrada que Ria Services elimina um pouco da responsabilidade do desenvolvedor de lidar com as chamadas assíncronas no Silverlight. O WCF RIA Services suporta JSON e precisa dos namespaces:
- System.ServiceModel.DomainServices.Client
- System.ServiceModel.DataAnotation
- System.ServiceModel.Web
Windows Phone 7:
Nada muito técnico, apenas exemplos de apps e games rodando sobre um protótipo do aparelho, mesmo assim impressionante, principalmente o SO e seu HUB (Atividades, Conteúdos, Games, Social Network, etc.)
Curiosidade sobre os botões, que na ordem são: Back, Start, Busca.
WIF (Windows Identity Foudation):
E a última palestra, também sensacional, do Israel Aece, sobre autenticação única com este framework de autenticação, que funciona sobre WCF, Web, Desktop etc. Foi mostrado um exemplo de dois sites distintos e uma única autenticação (+- como o Google faz com Orkut e Gmail). Porém ela foi bem complexa, segue anotações:
- 1º Autenticação.
- 2º Autorização (regras de acesso por exemplo).
- IdentityProvider (Security Token Service)
- Realying Party (Aplicação).
- Subject (Emissão de tokens).
- Claims (informações de autorizações).
- Microsoft.IdentityModel (Namespace).
Conclusão:
Bem, foi isso, tecnicamente peguei sim algumas poucas palestras fracas, mas consegui pegar muita coisa útil para trazer junto comigo na bagagem profissional, agora é estudar mais e aplicar
Espero que tenha gostado e quem sabe em breve estarei mais eventos, absorvendo mais conhecimento, e compartilhando-os com vocês.
E como já disse no outro post sobre o TechEd Brasil, o evento foi ótimo, correria total, mais ótimo!
Até mais.
0 comentários:
Postar um comentário