Este artigo foi traduzido por máquina.

Caixa de ferramentas

Documentação de banco de dados, API para pré-condições e pós-condições, blogs e muito mais

Scott Mitchell

Click um Database documentação

No decorrer da minha carreira vi uma variedade de técnicas usadas para documentar a estrutura e o propósito de um banco de dados.A maioria dos desenvolvedores usar Database diagrama ferramenta do Microsoft SQL Server para gerar uma representação visual e, em seguida, chamar it embora.Embora essa seja uma boa primeira etapa, é raramente suficiente.Para iniciantes, compartilhando diagramas de banco de dados com outros participantes pode ser difícil no melhor.(Tinha um cliente de email para mim dezenas de capturas de tela que stitched juntos, composta de um diagrama de banco de dados grande.) E esses diagramas são freqüentemente menor que ideal para grandes bancos de dados; um diagrama exibindo centenas de tabelas é difícil de ler e compreender.

Enquanto um diagrama de banco de dados é certamente útil, existem ferramentas muito melhores para documentar o seu banco de dados.Uma dessas ferramentas é BI Documentador (versão 3.0), um aplicativo amigável para a geração automática documentação para bancos de dados Microsoft SQL Server.Para começar, inicie o Documentador BI e crie um arquivo de solução.O arquivo de solução especifica os bancos de dados para documentar e mantém um histórico de instantâneos.Um instantâneo é uma descrição da estrutura do banco de dados em um ponto específico no tempo e é gerado para você pelo BI Documentador.Sobre o tempo de vida de um projeto, esquema do banco de dados normalmente altera, às vezes significativamente — obter adicionadas novas tabelas, colunas existentes obter modificadas ou removidas, índices podem ser adicionadas ou descartadas.Esses instantâneos garantem que a documentação que criar hoje pode ser fielmente reproduzida no futuro.Ao gerar a documentação, você pode criar um novo instantâneo do esquema de banco de dados atual ou você poderá regenerar a documentação do instantâneo anterior.


BI Documenter**

Após selecionar o banco de dados para o documento e criando o instantâneo, tudo o que permanece é configurar as opções de documentação.Documentador BI pode criar um arquivo de Ajuda do HTML compilado (.chm) ou uma série de páginas HTML.Há configurações para personalizar as cores usadas na documentação, bem como a capacidade para adicionar um logotipo a cada página.Opcionalmente, você pode selecionar qual objeto de banco de dados de tipos de documento e quais omitir.E ’s mais Documentador BI inclui um banco de dados interno, você pode usar para criar e adicionar diagramas de banco de dados a documentação da ferramenta de diagramação.Além disso, você pode importar seus próprios arquivos do Microsoft Word e imagem.

A documentação gerada inclui uma lista detalhada dos objetos de banco de dados especificado, que inclui usuários, funções, índices, disparadores, tabelas e mais.Exibindo informações sobre uma determinada tabela lista colunas da tabela, disparadores, índices, restrições, dependências, propriedades estendidas e as instruções SQL necessárias para criar a tabela.Colunas da tabela, disparadores e outras informações são exibidas como links que, quando clicado, carregar uma página com mais detalhes.

Documentador BI está disponível em três edições: Banco de dados, Enterprise e Workgroup.Database Edition pode bancos de somente documento dados Microsoft SQL Server, enquanto Enterprise e Workgroup Editions também podem documentar bancos de dados do Analysis Services, pacotes do Integration Services e servidores do Reporting Services.A Professional Edition e Database habilitar um único usuário criar documentação, enquanto Workgroup Edition permite que vários usuários colaborar.

Preço: $ 195 para Database Edition, US$ 395 para Enterprise Edition, US$ 495 para Workgroup Edition
bidocumenter.com

Blogs importantes

Recentemente trabalhei em um projeto envolvidos adicionando nova funcionalidade a um aplicativo Windows Presentation Foundation (WPF) line-of-business existente.Durante o meu tempo de projeto que encontrei blog de Beth Massi para ser um recurso indispensáveis.Beth é gerente de programas para o Visual Studio Community Team na Microsoft.Ela criou inúmeras dicas, truques, vídeos, artigos e tutoriais no seu blog e no site da Microsoft Channel 9 (channel9.msdn.com ) que exploram tópicos como desenvolvimento LINQ, o Entity Framework, o WPF, o ADO.NET Data Services e o Microsoft Office.

A maioria das entradas de blog de Beth descrever um cenário de programação específico e mostra como resolver com instruções passo a passo lúcidas, várias capturas de tela e trechos de código e links para postagens de blog e artigos com mais informações.Por exemplo, a entrada de blog intitulada “ Master-Detail Data Binding no WPF com Entity Framework ” inicia movimentar o leitor por meio de criar o modelo de dados de entidade.Em seguida, Beth mostra diferentes maneiras de usar o LINQ para recepção de volta os registros de detalhes apropriada.Outras entradas de blog escritas em um estilo semelhante incluem “ usando TableAdapters para inserir relacionados Data Into An MS Access Database ” e “ Tally linhas em um DataSet que coincidir A condição, ” entre muitos outros.

O que torna o blog de Beth destacar é sua paixão VisualBasic.Todos os exemplos de código de Beth são em VB e ela freqüentemente postagens sobre recursos de idioma futuros, como suporte para os inicializadores de coleção VisualBasic 10.Ela também tem entrevistado vários Microsoft MVPs que estão usando o VB, perguntando sobre aplicativos criando, seus recursos de linguagem favorita e assim por diante.Esses entrevistas (e outras pessoas como-los) podem ser vistas no Channel 9 (channel9.msdn.com/tags/MVP ) e no “ sou um VB ” site, de imavb.net .

blogs.msdn.com/bethmassi


Blog de Beth Massi

Uma API Fluent para versões anteriores ao e Post-Conditions

Quando um método é chamado, ele espera que seu ambiente para ser um determinado estado anterior à sua execução; ele também pode assumir determinado condições mantém após a conclusão da execução.Essas suposições são chamadas pre-conditions e post-conditions.Pre-Conditions comumente aplicar para parâmetros de entrada do método.Por exemplo, no .NET Framework, o arquivo ReadAllText método da classe aceita o caminho do arquivo como entrada e retorna o conteúdo do arquivo como uma seqüência de caracteres.O caminho do arquivo seja não pode ser uma seqüência de comprimento zero, conter apenas caracteres de espaço em branco ou incluir quaisquer caracteres de caminho de arquivo inválido; não pode ser nulo; e seu comprimento não pode exceder o comprimento definido pelo sistema máximo-caminho do arquivo.Se qualquer dessas condições não forem atendidos, o método ReadAllText lança uma exceção.

Pré e post-conditions são normalmente implementadas usando uma série de instruções condicionais, conforme mostrado no do Figura 1.CuttingEdge.Conditions (versão 1.0), um projeto de código aberto iniciado por Steven van Deursen, fornece uma interface fluentes para especificando pré e post-conditions.(Uma interface fluentes é um estilo de design de API maximiza legibilidade através do uso de nomes descritivos e método encadeamento).

Figura 1 versões anteriores ao e Post-Conditions implementados usando condicionais

public string ReadAllText(string path)
{
      // Pre-conditions...
      if (path == null)
            throw new ArgumentNullException(...);
      if (path.Length == 0)
            throw new ArgumentException(...);
      if (IsOnlyWhitespace(path) ||
            ContainsInvalidCharacters(path))
            throw new ArgumentException(...);
      if (path.Length >
            GetMaximumFilePathLength())
            throw new PathTooLongException(...);

      // Open file and read and return contents
            as string...
      object contents = GetFileContents(path);

      // Post-conditions
      if (!contents is string)
            throw
                  new InvalidFileTypeException(...);
      if (string.IsNullOrEmpty(
            (string) contents))
            throw new EmptyFileException(...);
}

Para aplicar um pre-condition um parâmetro de entrada, propriedade ou variável, use o método de extensão requer; para post-conditions, use o método de extensão assegura. Ambos os métodos retornam um objeto validator, que tem um host de métodos disponíveis para aplicar verificações de regra, como IsNotNull, IsNotEmpty e IsEqualTo, entre muitas outras. Figura 2 mostra o mesmo método de Figura 1, mas usa a API CuttingEdge.Conditions para implementar o pré e post-conditions.

Figura 2 versões anteriores ao e Post-Conditions implementados usando CuttingEdge.Conditions

public string ReadAllText(string path)
{
      // Pre-conditions...
      path.Requires()
            .IsNotNull()
            .IsNotEmpty()
            .Evaluate(!IsOnlyWhitespace(path)) &&
                  !ContainsInvalidCharacters(path),
                  "path contains whitespace only or
      invalid characters")
            .Evaluate(p => p.Length <=
                  GetMaximumFilePathLength());

      // Open file and read and return contents
      // as string...
      object contents = GetFileContents(path);

      // Post-conditions
      contents.Ensures()
            .IsOfType(typeof(string))
            .IsNotNull()
            .IsNotEmpty();
}

Cada chamada de método de validador — IsNotNull, IsNotEmpty, e assim por diante — lança uma exceção se a condição não for atendida. Por exemplo, se o caminho é nulo, a chamada do método IsNotNull lançará uma ArgumentNullException.  E, opcionalmente, você pode fornecer uma seqüência de caracteres para usar como mensagem da exceção.

Às vezes uma pré ou post-condition não pode ser expresso usando um dos métodos internos da classe validador. Em tais casos, você tem duas opções. Você pode criar um método de extensão na classe validador ou você pode usar o método Evaluate, que permite que você especificar uma expressão lambda ou booleano para avaliar. Se a expressão retorna true, o processamento continua; se ela retorna false, uma exceção é lançada. Figura 2 ilustra usando ambos os formulários do método Evaluate na seção pre-conditions.

Preço: Origem livre, aberta
Conditions.codeplex.com

Para sua estante

ASP.NET MVC é uma estrutura relativamente nova adicionada para a pilha do ASP.NET que permite aos desenvolvedores criar aplicativos Web usando um padrão MVC (Model-View-Controller). Ele difere do modelo de desenvolvimento de Web Forms tradicional de várias maneiras. Para iniciantes, o ASP.NET MVC propicia muito mais controle sobre a marcação processada e fornece uma separação de preocupações mais distinta. Páginas da Web são acessadas usando URLs amigáveis SEO, concisa. E a arquitetura do MVC permite melhor capacidade de teste. Para uma mais aprofundada as diferenças entre o ASP.NET MVC e Web Forms, consulte o artigo de Dino Esposito na edição de julho de 2009 (msdn.microsoft.com/magazine/dd942833.aspx ).

Introdução ao ASP.NET MVC envolve um bit de uma curva de aprendizado, mesmo para desenvolvedores ASP.NET experientes, devido às inúmeras diferenças entre as duas estruturas. Por exemplo, ao criar um aplicativo ASP.NET MVC no Visual Studio, você será solicitado para criar um projeto de teste de unidade. Com o ASP.NET MVC, você criar páginas da Web usando HTML juntamente com algumas classes auxiliares — não existem controles Web para arrastar e soltar para a página. E, ao contrário dos Web Forms, não há nenhum controle Web ou postback baked no evento modelos. Em resumo, há muita novas técnicas para saber quando movendo de Web Forms ASP.NET MVC.

Se você for um intermediário para desenvolvedores ASP.NET experientes quem quer aprender ASP.NET MVC, confira livro mais recente do de Stephen Walther, “ ASP.NET MVC Framework Unleashed ” (SAMS, 2009). Walther realiza um excelente trabalho introduzindo novos conceitos e mostrando como estiver usados — sem sobrecarregar o leitor com uma avalanche de informações.


ASP.NET MVC Framework lançou**

O livro começa com uma breve visão geral das ASP.NET MVC — a motivação por trás da nova estrutura, suas metas de design e benefícios. Próxima 500 páginas orientam o leitor através de principais aspectos da ASP.NET MVC, um por vez. Primeiro, o leitor aprende como criar um novo aplicativo ASP.NET MVC no Visual Studio, como adicionar um banco de dados, como modelos, exibições e controladores são adicionados para o projeto e assim por diante. Próximos 100 páginas explore modelos, exibições e controladores em detalhes. Cada conceito é descrito claramente e é acompanhado por amostras de código e capturas de tela em translation from VPE for Csharp e Visual Basic. Capítulos posteriores olhar auxiliares HTML disponíveis; explorar técnicas para validar dados de formulário e dissect recurso de roteamento de URL de ASP.NET MVC. Também há capítulos sobre autenticação, AJAX, jQuery e implantação.

Depois de examinar as partes principais da ASP.NET MVC, nos capítulos separados, em detalhes e com o auxílio de vários exercícios simples, o livro termina com um exemplo de ponta a ponta da criação de um aplicativo de ASP.NET MVC Web do mundo real. Este projeto final, se espalhar pela 150 páginas, cements conceitos explorados nos capítulos anteriores e realça muitos dos benefícios do ASP.NET MVC framework.

Preço: $49.99
samspublishing.com

Scott Mitchell*,* autor de diversos livros e fundador da 4GuysFromRolla.com , é um MVP que trabalha com tecnologias Microsoft Web desde 1998. Mitchell é um consultor independente, instrutor e escritor. Entre no do Mitchell@4guysfromrolla.com ou através de seu blog em do ScottOnWriting.net.