Visual Studio LightSwitch - o desenvolvimento rápido

Visual Studio LightSwitch - o desenvolvimento rápido

  • Comments 1

A Microsoft anunciou recentemente dois dos produtos mais interessantes para o desenvolvimento rápido de aplicações: WebMatrix e Visual Studio LightSwitch.
O desenvolvimento de aplicações de negócio, orientadas a preenchimento, consulta e pesquisa de dados é o tipo de trabalho mais encontrado nas empresas. Quando encontramos os mesmos padrões de desenvolvimento somos tentados a criar frameworks ou DSLs(Domain Specific Languages) para não termos que repetir a implementação do mesmo padrão.
Com esta abordagem pensamos que estamos a resolver um problema e de facto estamos a criar um problema adicional: temos que manter e fazer evoluir a infraestrutura que criamos.

O Lightswitch traz um conjunto de vantagens imediatas:
- cria um standard para o interface com o utilizador;
- simplifica a criação de soluções e consequentemente aumenta a performance de desenvolvimento e de entrega;
- abstrai o programador do modelo de arquitectura da aplicação;
Simultaneamente permite a extensibilidade da solução com código feito à medida como tradicionalmente fazemos utilizando o conhecimento em VB.NET ou C#.

As aplicações de negócio são na sua essência data-driven por isso quando criamos um projecto LightSwitch a primeira pergunta a que temos que responder é se pretendemos criar uma base de dados ou ligar a uma já existente. Dado que estou a testar o LS numa máquina virtual, vou criar uma base de dados nova.

Vou criar uma pequena aplicação para gerir informação básica de utilizadores. Para isso vou criar uma tabela simples com o id, nome, email e data de nascimento dos utilizadores. Pretendo construir rapidamente uma aplicação para inserção/edição de utilizadores.

Esta aplicação  vai estar acessível num site web e portanto terá uma arquitectura n-tier. Como é uma aplicação Lightswitch, o resultado será uma aplicação Silverlight 4.0 a correr num IIS e acedendo a uma base de dados SQL Server. No futuro pretendo colocar esta aplicação no Windows Azure e a utilizar SQL Azure mas para já vou fazer o desenvolvimento local.

A definição da base de dados é intuitiva e corresponde às expectativas: definição de campos, descrição e regras de validação. A presença de links com a indicação "Custom Validation" ou "Write Code" garante que quando eu pretender fazer código com funcionalidades "avançadas" saberei onde o posso fazer.

Mudando a vista para o Solution Explorer, o meu projecto tem duas pastas base: Data Sources e Screens. De facto são estes os dois vectores principais das aplicações de negócio, a definição da estrutura da base de dados e os ecrãs que permitem aceder a estes dados.

Quando pretendo criar um ecrã obtenho um conjunto de configurações possíveis e que me parecem corresponder à maior parte das necessidades para este tipo de aplicações. No entanto não consigo deixar de sentir uma enorme curiosidade em saber como é possível acrescentar ecrãs com as minhas configurações de ecrãs.

A definição de um ecrã é feita utilizando building blocks com uma separação clara de funcionalidade e que sugerem uma organização que seja coerente na construção da aplicação: uma área de acções/buttons, uma área principal de preenchimento de dados. 

Este ecrã parece corresponder às minhas expectativas por isso vou executar a aplicação e validar o resultado:

Neste momento só temos um theme disponivel pelo que vou ter que me contentar com o azul (e branco!). Como estou com código beta (ou pré-beta) o botão de configuração ainda tem um aspecto provisório mas é este botão que me vai permitir alterar a aplicação em runtime(!):

Esta é a feature que mais me agrada, que coloca definitivamente o R na sigla RAD! Posso alterar o ecrã em runtime! Este é o momento mais zen que um programador pode desejar: configurar a aplicação em runtime sem perder tempo com stop/start. Todo o software deveria permitir isto.

Nos próximos posts sobre o LightSwitch terei que ver a constituição dos ficheiros do projecto, como alterar o tema, design e como fazer publish.

O LightSwitch em parceira com a plataforma Azure trazem uma nova vaga de produtividade aos criadores de software!

  • Muito interessante a solução, ainda mais que estou iniciando nesta plataforma e tenho não só um sistema para migrar, mas outros projetos em andamento. Gostaria de saber mais a respeito ... Vou continuar minerando ... []'s.

Page 1 of 1 (1 items)