Baixe o app para aproveitar ainda mais
Prévia do material em texto
FACULDADE ANHANGUERA – UNIDADE CAMPINAS I TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS LINGUAGEM DE PROGRAMAÇÃO COMERCIAL – ETAPA 01 ALUNO RA QUEMUEL SANTOS DE AQUINO 8309737322 ATIVIDADE PRÁTICA SUPERVISIONADA (ATPS) TUTOR: PROF. RICARDO AUGUSTO DA SILVA CAMPINAS, 06 DE NOVEMBRO DE 2014. SUMÁRIO Introdução .............................................................................................................3 Pesquisa Sobre a Plataforma .NET .........................................................................3 Relatório 1 – Codificação das Classes do Sistema .................................................9 Relatório 2 - Descrição da Plataforma e Ferramenta ...........................................20 2 INTRODUÇÃO A realização dessa atividade é importante para que possamos conheça as características e recursos da plataforma .NET e desenvolvimento de software Orientado a Objetos. Na atividade em questão, uma empresa está no processo de implantação do Sistema com o intuito de adequar a seus processos, infraestrutura e sistemas de informação para futuramente obter um certificado de qualidade ISO 9001:2008. Em nossa atividade, estaremos produzindo uma loja virtual, sugerindo diversas mudanças administrativas e operacionais, visando obter maior qualidade e otimização dos recursos da empresa. Para ocorrerem essas mudanças, os colaboradores recebem diversos treinamentos, manuais e orientações para estarem cientes das mesmas. Nossa solução deverá gerar novos serviços para a empresa e novas formas de venda dos produtos. Os clientes que acessarem site poderão visualizar uma vitrine de produtos, que será separada por categorias ou não. Estas categorias poderão conter produtos ou serviços que os clientes colocarão em carrinhos de compras para realizar a compra. PESQUISA SOBRE A PLATAFORMA .NET Microsoft .NET (comumente conhecido por .NET Framework - em inglês: dotNet) é uma iniciativa da empresa Microsoft, que visa uma plataforma única para desenvolvimento e execução de sistemas e aplicações. Todo e qualquer código gerado para .NET pode ser executado em qualquer dispositivo que possua um framework de tal plataforma. Com ideia semelhante à plataforma Java, o programador deixa de escrever código para um sistema ou dispositivo específico, e passa a escrever para a plataforma .NET. 3 O .NET Framework consiste basicamente em dois componentes principais, ou seja, ela é executada sobre uma Common Language Runtime - CLR (Ambiente de Execução Independente de Linguagem) interagindo com um Framework Class Library - FCL (Conjunto de Bibliotecas Unificadas). Esta CLR é capaz de executar, atualmente, mais de 33 diferentes linguagens de programação, interagindo entre si como se fossem uma única linguagem. - Linguagens atendidas: APL, Boo, Clarion, COBOL, Component Pascal, C , C++, F , Eiffel, Forth, Fortran, Haskell,♯ ♯ Java, JScript, J , Lua, Mercury, Piet, Oberon, Delphi, Oz, Pascal, Perl, PowerBuilder,♯ PowerShell, Python, RPG, Ruby, Scheme, SmallTalk, Standard ML, Visual Basic E ExBase. Esta plataforma permite a execução, construção e desenvolvimento de Web Services (Aplicações Web) de forma integrada e unificada. - Arquitetura .NET A plataforma .NET baseia-se em um dos principios utilizados na tecnologia Java (Just In Time Compiler - JIT), os programas desenvolvidos para ela são duplo-compilados (compilados duas vezes), uma na distribuição (gerando um código que é conhecido como "bytecodes") e outra na execução. Um programa é escrito em qualquer das mais de trinta e três linguagens de programação disponíveis para a plataforma, o código fonte gerado pelo programador é então compilado pela linguagem escolhida gerando um código intermediário em uma linguagem chamada MSIL (Microsoft Intermediate Language). Este novo código fonte gera um arquivo na linguagem de baixo nível Assembly, de acordo com o tipo de projeto: - EXE - Arquivos Executáveis, Programas - DLL - Biblioteca de Funções - ASPX - Página Web - ASMX - Web Service 4 No momento da execução do programa ele é novamente compilado, desta vez pelo compilador JIT, de acordo com a utilização do programa, por exemplo: Temos um Web Site desenvolvido em ASP.NET, ao entrar pela primeira vez em uma página o JIT irá compila-la, nas outras vezes que algum outro usuário acessar esta página, ele usará esta compilação. Também é possível, através de ferramentas específicas, "pré-compilar" o código para que não se tenha o custo da compilação JIT durante a execução. O fato desta arquitetura utilizar a MSIL gera uma possibilidade pouco desejada entre os criadores de software que é a de fazer a "engenharia reversa", ou seja, a partir de um código compilado, recuperar o código original. Isto não é uma idéia agradável para as empresas que sobrevivem da venda de softwares produzidos nesta plataforma. Por causa disso, existem ferramentas que "ofuscam" o código MSIL, trocando nomes de variáveis, métodos, interfaces e etc para dificultar o trabalho de quem tentar uma engenharia reversa no mesmo. - .NET Framework 4 O .NET Framework 4 veio para melhorar, alguns pontos do Framework anterior, como por exemplo: - Aplicações legadas podem continuar rodando no release anterior do Framework, para não haver problemas de compatibilidade; - Possui Background Garbage Collection; - Tem suporte para aplicações Multitouch; - Consegue fazer uso das novas funcionalidades do Windows 7. Se você é um desenvolvedor Web, algumas das melhorias que são encontradas na nova versão do Framework: - Pré-carregamento da sua aplicação; - A utilização de Routing no ASP.NET para Web Forms; - Controle/Redução de ViewState; 5 - A utilização do pattern MVC. A maneira mais simples de se ter o .NET Framework 4 instalado é utilizando o Web Platform Installer da Microsoft, também chamado de Web PI. A plataforma Microsoft oferece suporte a aplicativos e soluções projetadas para os menores dispositivos, bem como para as maiores empresas. Os desenvolvedores de software que usam a plataforma Microsoft podem: - Trabalhar com uma variedade de linguagens, padrões e ferramentas de programação - Criar aplicativos para o Windows, o Office, a Web e para os dispositivos móveis - Beneficiar-se dos recursos que a Microsoft oferece para ajudar os desenvolvedores de software a criar e projetar aplicativos de classe mundial - Ferramentas de desenvolvimento e linguagens As ferramentas de desenvolvimento da Microsoft oferecem suporte ao trabalho de desenvolvedores individuais, bem como de equipes de desenvolvimento. O Visual Studio da Microsoft oferece suporte a várias linguagens de programação – inclusive àquelas que usam o .NET Framework para acessar tecnologias-chave que simplificam o desenvolvimento de aplicativos sofisticados. Essas linguagens incluem: - Visual Basic - Visual C# - Visual C++ - Visual J# O Team Foundation Server faz com que os integrantes de uma equipe de desenvolvimento, possam usar ferramentas para gerenciar relatórios, controle de origem, métricas de qualidade e outros componentes de desenvolvimento de colaboração. 6 As edições do Visual Studio Express são ferramentas gratuitas e fáceis de aprender para desenvolvedores de fim de semana, iniciantes e estudantes interessados no desenvolvimento do Windows, da Web ou de banco de dados. - Desenvolvimento Web Do servidor ao navegador, a Microsoft oferece aos desenvolvedores um variedade de ferramentas e tecnologias para criação, hospedagem e exposição de aplicativos na Web. As ferramentas de desenvolvimento para Web da Microsoft oferecem total suporte a padrõescomo XML, WCF, HTML, CSS e outros. O ASP.NET, uma estrutura para criar aplicativos dinâmicos na Web, está no centro da plataforma de desenvolvimento para Web da Microsoft e está totalmente integrado com o IIS, o servidor Web seguro, escalável e extensível da Microsoft. Os desenvolvedores podem proporcionar aos aplicativos Web uma experiência mais rica e responsiva pelas extensões ASP.NET Ajax ou pela personalização do Microsoft Internet Explorer. Qualquer desenvolvedor que trabalhe com tecnologias para Web pode se beneficiar da família de produtos Visual Studio para criar rapidamente soluções dinâmicas para Web. - Desenvolvimento corporativo e de servidores O desenvolvimento corporativo envolve diversas áreas, desde as considerações de design e gerenciamento de projetos à codificação de aplicativos que são executados em produtos e arquiteturas baseadas em servidor. O Windows Server da Microsoft permite que as organizações criem uma infra-estrutura de TI flexível que pode reduzir a complexidade e fazer ajustes quando as necessidades de negócios mudam. 7 O Windows Server System inclui aplicativos como: - BizTalk Server; - Exchange Server; - SQL Server; - Internet Security and Acceleration Server (ISA) - Segurança de borda de rede e firewall. Desenvolvedores e arquitetos corporativos também podem consultar o site de práticas e padrões no MSDN para obter informações e código de exemplo. - Desenvolvimento embedded e móvel Você pode aplicar seus conhecimentos no .NET Framework para criar aplicativos para dispositivos incorporados ou móveis, como o Pocket PC, SmartPhone e soluções automotivas. O Microsoft Visual Studio oferece suporte ao . NET Compact Framework, que fornece uma biblioteca de classes que permite aos desenvolvedores escreverem aplicativos mais rapidamente do que com ferramentas tradicionais. Os desenvolvedores podem focar as APIs do Windows Mobile com o Visual C++ ou usar o .NET Compact Framework com código gerenciado escrito no Visual C# ou no Visual Basic. - Recursos adicionais de aprendizagem Para quem está começando, uma boa opção é procurar o catálogo Learning Manager para encontrar um recurso de aprendizado ou um plano de aprendizado abrangente que se adapte a seu objetivo de aprendizado atual. Podemos também utilizar o Learning Manager da Microsoft para planejar e gerenciar o caminho de aprendizagem pessoal para criar novas habilidades para um determinado projeto ou avançar em sua carreira. Podemos também acompanhar o andamento em um espaço pessoal em que é possível salvar os produtos de seu interesse e obter insight sobre produtos adquiridos ou ativados. 8 Utilizar também o nosso Centro para Iniciantes, nele você vai encontrar vídeos e lições para desenvolver suas primeiras aplicações, sejam na Web ou Aplicações Windows - Recursos do MSDN O MSDN oferece recursos que explicam como criar aplicações e soluções de software na plataforma Microsoft. Esses recursos também ajudam a solucionar problemas e resolver questões de desenvolvimento e conectam os desenvolvedores entre si e com a Microsoft. MSDN é o site da Microsoft para desenvolvedores de software A busca do MSDN, criado com o mecanismo de busca do Bing, ajuda desenvolvedores a localizar conteúdo e código de exemplo no MSDN, nos fóruns das comunidades de desenvolvedores, na Knowledge Base de suporte. Abaixo apresento algumas vantagens em fazer uso do MSDN da Microsoft: - As Assinaturas no MSDN fornecem a você software, suporte técnico, códigos de amostra, documentação técnica e mais A Biblioteca do MSDN fornece ao programador documentação para cada produto Microsoft; - Os Developer Centers oferecem uma diversidade de recursos para um determinado produto ou tecnologia; - Os Fóruns fornecem recursos para obter respostas a perguntas técnicas; - Páginas de introdução como esta apresentam visões gerais rápidas e links para aprender mais. RELATÓRIO 1 - CODIFICAÇÃO DAS CLASSES DO SISTEMA No relatório em questão estaremos apresentando as Classes do Sistema, que serão responsáveis por conter os códigos-fonte da implementação das classes trabalhadas no sistema. 9 - Conhecendo as bibliotecas A biblioteca de classes do .NET Framework é uma biblioteca de classes, interfaces e tipos de valor que fornecem acesso às funcionalidades do sistema. É a base na qual os aplicativos, componentes e controles do .NET Framework são criados. - Conhecendo os Namespace System: O namespace System contém classes fundamentais e classes base que definem os tipos de dados de referência e valor comumente usados, eventos e manipuladores de eventos, interfaces, atributos e exceções de proc essamento. System.Activities: Os namespaces do System.Activities contêm todas as classes necessárias para criar e trabalhar com atividades no Window Workflow Foundation. System.AddIn: Os namespaces do System.AddIn contêm tipos usados para identificar, registrar, ativar e controlar suplementos, bem como para permitir que estes se comuniquem com um aplicativo host. System.CodeDom: Os namespaces do System.CodeDom contêm classes que representam os elementos de um documento de código-fonte e que oferecem suporte à geração e à compilação do código-fonte em linguagens de programação suportadas. System.Collections: Os namespaces do System.Collections contêm tipos que definem vários objetos de conjuntos padrão, especializados e genéricos. System.ComponentModel: 10 Os namespaces do System.ComponentModel contêm tipos que implementam o comportamento de componentes e controles em tempo de execução e em tempo de design. Os namespaces filho oferecem suporte ao Managed Extensibility Framework (MEF), fornecem classes de atributos que definem metadados para os controles do ASP.NET Dynamic Data e contêm tipos que permitem definir o comportamento de componentes em tempo de design e suas interfaces de usuário. System.Configuration: Os namespaces do System.Configuration contêm tipos para tratar dados de configuração, como os dados em arquivos de máquina e de configuração de aplicativos. Os namespaces filho contêm tipos que são usados para configurar um assembly, gravar instaladores personalizados de componentes e oferecer suporte a um modelo conectável para inclusão ou remoção de funcionalidades de aplicativos de serviço e cliente. System.Data: Os namespaces do System.Data contêm classes para acessar e gerenciar dados de diversas origens. A namespace de nível superior e vários namespaces filho, em conjunto, formam a arquitetura e os provedores de dados ADO.NET. Por exemplo, há provedores disponíveis para SQL Server, Oracle, ODBC e OleDB. Outros namespaces filho contêm classes usadas pelo EDM (Modelo de Dados de Entidade) ADO.NET e pelo WCF Data Services. System.Deployment: Os namespaces do System.Deployment contêm tipos que oferecem suporte à implantação de aplicativos ClickOnce. System.Device.Location: O namespace System.Device.Location permite que os desenvolvedores de aplicativos possam acessar facilmente a localização do computador usando uma única API. Informações sobre o local podem originar-se de vários meios, como por exemplo, GPS, Wi-Fi de triangulação e triangulação de telefone celular. 11 O System.Device.Location possui classes fornecem uma única API para encapsular os vários provedores em um computador local e oferecer suporte a priorização perfeita e a transição entre elas. Como resultado, os desenvolvedores de aplicativos que usam essa API é necessário adaptar a aplicação, configurações de hardware específico. System.Diagnostics: Os namespaces doSystem.Diagnostics contêm tipos que permitem interagir com processos do sistema, logs de eventos e medidores de desempenho. Os namespaces filho contêm tipos para interagir com ferramentas de análise de código, oferecer suporte a contratos, estender o suporte em tempo de design para a instrumentação e monitoramento de aplicativos, registrar dados de eventos usando o subsistema Rastreamento de Eventos para Windows (ETW), ler e gravar logs de evento, coletar dados de desempenho e ler e gravar informações de símbolos de depuração. System.DirectoryServices: Os namespaces do System.DirectoryServices contêm tipos que fornecem acesso ao Active Directory do código gerenciado. System.Drawing: O namespace pai do System.Drawing contêm tipos que oferecem suporte à funcionalidade gráficas básicas do GDI+. Os namespaces filho oferecem suporte a avançados recursos bidimensionais e gráficos vetoriais, de imagem e serviços tipográficos e relacionados à impressão. Um namespace filho também contém tipos que ampliam o desenho e a lógica da interface de usuário em tempo de design. System.Dynamic: O namespace System.Dynamic fornece classes e interfaces que oferecem suporte a Dynamic Language Runtime. System.EnterpriseServices: Os namespaces do System.EnterpriseServices contêm tipos que definem a arquitetura de serviços COM+, que fornece uma infraestrutura para aplicativos corporativos. Um namespace filho oferece suporte ao Compensating Resource Manager (CRM), um serviço COM+ que 12 permite a inclusão de objetos não transacionais em transações do Coordenador de transações distribuídas da Microsoft (DTC). Os namespaces filho são descritos brevemente na tabela a seguir e documentos em detalhes nesta referência. System.Globalization: O namespace System.Globalization contém classes que definem informações relacionadas à cultura, incluindo idioma, país/região, os calendários em uso, os padrões de formatação para datas, moeda e números e a classificação do pedido para seqüências de caracteres. Essas classes são úteis para escrever aplicativos (internacionalizados) globalizados. Classes como StringInfo e TextInfo fornecem funcionalidades de globalização avançados, incluindo suporte substituto e processamento de elemento de texto. System.IdentityModel: Os namespaces do System.IdentityModel contêm tipos que são usados para fornecer autenticação e autorização para aplicativos .NET. System.IO: Os namespaces do System.IO contêm tipos que oferecem suporte a entrada e saída, inclusive a capacidade de ler e gravar dados em fluxos de forma síncrona ou assíncrona, compactar dados em fluxos, criar e usar armazenamentos isolados e mapear arquivos para um espaço de endereço lógico de um aplicativo, armazenar vários objetos de dados em um único contêiner, estabelecer comunicação usando pipes anônimos ou nomeados, implementar geração de logs personalizados e processar o fluxo de dados destinados ou provenientes de portas seriais. System.Linq: Os namespaces do System.Linq contêm tipos que oferecem suporte a consultas que usam consulta integrada à linguagem (LINQ). Isso inclui tipos que representam consultas como objetos em árvores de expressão. System.Management: Os namespaces do System.Management contêm tipos que fornecem acesso a informações e eventos de gerenciamento sobre o sistema, dispositivos e aplicativos ligados à infraestrutura de Instrumentação de Gerenciamento do Windows (WMI). 13 Esses namespaces também contêm tipos necessários para a instrumentação de aplicativos de forma que eles exponham suas informações e eventos de gerenciamento através do WMI a clientes em potencial. System.Media: O namespace System.Media contém classes para reproduzir arquivos de som e acessar sons fornecidos pelo sistema. System.Messaging: Os namespaces do System.Messaging contêm tipos que permitem que você se conecte, monitore e administre filas de mensagens na rede, bem como envie, receba ou inspecione as mensagens. Um namespace filho também contém classes que podem ser usadas para ampliar o suporte em tempo de design a classes de mensagens. System.Net: Os namespaces do System.Net contêm classes que fornecem uma interface de programação simples para vários protocolos da internet, recursos para acessar e atualizar, de forma programática, as configurações dos namespaces do System.Net, definir políticas de cache para recursos Web, compor e enviar emails, representar cabeçalhos MME, acessar dados do tráfego de rede e informações de endereço da rede e acessar rede ponto a ponto. Namespaces filho adicionais fornecem uma implementação gerenciada da interface do Windows Sockets (Winsock) e fornecem acesso a fluxos de rede para comunicação segura entre hosts. System.Numerics: O namespace System.Numerics contém tipos numéricos que complementam os tipos numéricos primitivos, como Byte, Double, e Int32, que são definidos pelo .NET Framework. System.Printing: Os namespaces do System.Printing contêm tipos que oferecem suporte à impressão, fornecem acesso às propriedades de objetos do sistema de impressão, permitem copiar suas configurações de propriedades em outro objeto do mesmo tipo e oferecem suporte à 14 interconversão de objetos System.PrintTicket gerenciados e de estruturas GDI DEVMODE não gerenciadas. System.Reflection: Os namespaces do System.Reflection contêm tipos que fornecem uma visão gerenciada dos tipos, métodos e campos carregados e podem criar e invocar tipos de forma dinâmica. Um namespace filho contém tipos que permitem que um compilador ou outra ferramenta emita metadados e Microsoft Intermediate Language (MSIL). System.Resources: Os namespaces do System.Resources contêm tipos que permitem aos desenvolvedores criar, armazenar e gerenciar recursos específicos à cultura de um aplicativo. System.Runtime: Os namespaces do System.Runtime contêm tipos que oferecem suporte à interação de um aplicativo com Common Language Runtime e tipos que habilitam recursos como armazenamento de dados de aplicativo em cache, tratamento avançado de exceções, ativação de aplicativos dentro de domínios, interoperabilidade COM, aplicativos distribuídos, serialização e desserialização e controle de versão. Namespaces adicionais permitem a gravadores compiladores especificar atributos que afetam o comportamento de tempo de execução do Common Language Runtime, definir um contrato de confiabilidade entre um conjunto de códigos e outro código dependente e implementar um provedor de persistência para o Windows Communication Foundation (WCF). System.Runtime.InteropServices.CustomMarshalers: Fornece suporte de empacotamento interno para o .NET Framework. System.Security: Os namespaces do System.Security contêm classes que representam as permissões e o sistema de segurança do .NET Framework. Os namespaces filho fornecem tipos que controlam e auditam objetos protegíveis de auditoria, permitem autenticação, fornecem serviços de criptografia, controlam o acesso a operações e recursos baseados em política e oferecem suporte ao gerenciamento de direitos do conteúdo criado pelo aplicativo. 15 System.ServiceModel: Os namespaces System.ServiceModel contêm os tipos necessários para a compilação de aplicativos cliente e de serviço do Windows Communication Foundation (WCF). System.ServiceProcess: Os namespaces do System.ServiceProcess contêm tipos que permitem implementar, instalar e controlar aplicativos de serviço Windows, bem como oferecem suporte em tempo de design estendido a aplicativos de serviço Windows. System.Speech: Os namespaces doSystem.Speech contêm tipos que oferecem suporte ao reconhecimento de fala. System.Text: Os namespaces do System.Text contêm tipos para codificação de caracteres e manipulação de cadeias de caracteres. Um namespace filho permite a você processar texto usando expressões regulares. System.Threading: Os namespaces do System.Threading contêm tipos que permitem a programação multithreaded. Um namespace filho fornece tipos que simplificam o trabalho de gravar código simultâneo e assíncrono. System.Threading.Tasks.Dataflow: O namespace de System.Threading.Tasks.Dataflow fornece um modelo baseado ator- de programação que ofereça suporte a mensagem em processo que passa para o fluxo de dados de alta granularidade e que canaliza tarefas. Para mais informações, consulte Fluxo de dados (Task Parallel Library). System.Timers: O namespace System.Timers fornece o componente Timer, que permite acionar um evento em um intervalo especificado. 16 System.Transactions: Os namespaces do System.Transactions contêm tipos que oferecem suporte a transações com vários participantes distribuídos, várias notificações de fase e inscrições duráveis. Um namespace filho contém tipos que descrevem as opções de configuração usadas pelos tipos do System.Transactions. System.Web: Os namespaces do System.Web contêm tipos que permitem a comunicação entre o navegador e o servidor. Os namespaces filho incluem tipos que oferecem suporte à autenticação de formulários ASP.NET, serviços de aplicativo, armazenamento de dados em cache no servidor, configuração de aplicativos ASP.NET, dados dinâmicos, manipuladores HTTP, serialização JSON, incorporando recursos AJAX ao ASP.NET, segurança ASP.NET e serviços Web. System.Windows: Os namespaces do System.Windows contêm tipos usados em aplicativos Windows Presentation Foundation (WPF), incluindo clientes de animação, controles de interface de usuário, associação de dados e conversão de tipos. O System.Windows.Forms e seus namespaces filho são usados para desenvolver aplicativos de Formulários do Windows. System.Workflow: Os namespaces do System.Workflow contêm tipos usados para desenvolver aplicativos que usam o Window Workflow Foundation. Esses tipos fornecem suporte em tempo de design te tempo de execução para regras e atividades, para configurar, controlar, hospedar e depurar o mecanismo de tempo de execução de fluxo de trabalho. System.Xaml: Os namespaces do System.Xaml contêm tipos que oferecem suporte à análise e ao processamento da linguagem XAML. System.Xml: Os namespaces do System.Xml contêm tipos para processamento de XML. Os namespaces filho oferecem suporte à serialização de fluxos ou documentos XML, esquemas XSD, 17 XQuery 1.0 e XPath 2.0 e LINQ to XML, uma interface de programação XML na memória que permite a fácil modificação de documentos XML. Accessibility O Accessibility e todos os seus membros expostos fazem parte de um wrapper gerenciado para a interface de acessibilidade do modelo de objeto componente (COM). Microsoft.Activities: Os namespaces do Microsoft.Activities contêm tipos usados que fornecem suporte para a extensões do depurador e do MSBuild para aplicativos do Windows Microsoft.Build: Os namespaces do Microsoft.Build contêm tipos que fornecem acesso programático ao mecanismo MSBuild, além de fornecer o controle dele. Microsoft.CSharp: Os namespaces do Microsoft.CSharp contêm tipos que oferecem suporte à compilação e à geração de código-fonte gravados em C#, bem como tipos que oferecem suporte à interoperação entre o DLR e a linguagem C#. Microsoft.JScript: Os namespaces do Microsoft.JScript contêm classes que oferecem suporte à compilação e à geração de código usando a linguagem JScript. Microsoft.SqlServer.Server: O Microsoft.SqlServer.Server namespace contém classes, interfaces e enumerações que são específicas para a integração do Microsoft.NET Framework common language runtime (CLR) de Microsoft SQL Server e o ambiente de execução de processo de mecanismo do SQL Server de banco de dados. Microsoft.VisualBasic: Os namespaces do Microsoft.VisualBasic contêm classes que oferecem suporte à compilação e à geração de código usando a linguagem Visual Basic. Os namespaces filho contêm tipos 18 que fornecem serviços ao compilador do Visual Basic e tipos que incluem suporte a modelo de aplicativo do Visual Basic, My namespace, expressões lambda e conversão de códigos. Microsoft.VisualC: Os namespaces do Microsoft.VisualC contêm tipos que oferecem suporte ao compilador do Visual C++ e tipos que implementam a biblioteca STL/CLR e a interface genérica na biblioteca STL/CLR. Microsoft.Win32: Os namespaces do Microsoft.Win32 fornecem tipos que tratam os eventos gerados pelo sistema operacional, manipulam o Registro do sistema e representam tratamentos dos sistemas operacional e de arquivos. Microsoft.Windows: Os namespaces do Microsoft.Windows contêm tipos usados que fornecem suporte para temas e visualização em aplicativos do WPF (Windows Presentation Framework). UIAutomationClientsideProviders: Contém um tipo único que mapeia provedores clientes de automação. XamlGeneratedNamespace: Contém tipos gerados pelo compilador que não se destinam a serem usados diretamente em seu código. Requisitos que poderão ser usados na criação das classes: - definir possíveis métodos que poderão fazer parte das classes; - Criar métodos construtores; - Encapsular os atributos; - Utilizar manipuladores de acesso. 19 RELATÓRIO 2 - DESCRIÇÃO DA PLATAFORMA E FERRAMENTA Nos últimos vinte anos, o setor de software para computadores tem alterado gradativamente o foco da geração de informações avançadas para a publicação e a pesquisa de tais informações. Estamos em um momento em que o acesso a fontes de dados avançados é uma preocupação constante para quase qualquer nova aplicação desktop, Web e domínios de servidores. E, conforme a quantidade de dados disponíveis continua a aumentar, o acesso aos dados será cada vez mais importante para o desenvolvimento de software. Este documento trata de maneira breve das diferentes tecnologias de desenvolvimento de dados da plataforma de dados da Microsoft. As tecnologias são separadas em três grupos: - tecnologias .NET Framework atuais; - tecnologias Win32 atuais; - tecnologias futuras. A principal finalidade deste é ilustrar as relações destes grupos e ajudar você a entender de que forma seus próprios projetos de desenvolvimento podem aproveitar melhor a plataforma. Para obter mais detalhes sobre as tecnologias .NET Framework atuais, e obter uma visão do futuro, consulte A Guide to the Data Development Platform for .NET Developers (Um Guia para a Plataforma de Desenvolvimento de Dados para Desenvolvedores .NET). Para compreender o desenvolvimento destas tecnologias através do tempo e porque elas foram criadas, consulte também Microsoft Data Development Technologies: Past, Present, and Future (Tecnologias de Desenvolvimento de Dados da Microsoft: Passado, Presente e Futuro). 20 - Breve descrição das tecnologias .NET - ADO.NET Entity Framework Disponível com o .NET Framework 3.5 SP1 e mais recente - e grandemente aprimorado no .NET Framework 4.0 -, o Entity Framework fornece uma experiência de acesso a dados LINQ fortemente tipados em bancos de dados relacionais, incluindo acesso direto e eficiente ao SQL Server. O Entity Framework gera automaticamente classes .NET leves mapeadas para estruturas de banco de dados relacionais. O mapeamento ou EDM (Entity Data Model, Modelo de dados deentidade) pode também ser controlado e personalizado. Isso permite que desenvolvedores trabalhem com objetos que modelam entidades específicas de aplicações, fazendo com que o Entity Framework forneça todo o código de canalização específico de bancos de dados que teria de ser escrito e mantido de outra forma. O uso do Entity Framework é altamente recomendado para todas as novas aplicações. LINQ A LINQ (Consulta Integrada à Linguagem), um recurso de linguagem disponível na versão 3.5 do .NET Framework e versões mais recentes, é uma maneira conveniente de executar consultas em fontes de dados de todos os tipos, incluindo XML, objetos CLR, objetos DataSet no ADO.NET (LINQ to DataSet)e classes geradas pelo Entity Framework (LINQ to Entities). 21 O LINQ to SQL suporta acesso direto para os bancos de dados do Microsoft SQL Server, e a Microsoft recomenda que novas aplicações usem o ADO.NET Entity Framework. - ADO.NET As classes .NET principais para acesso de dados através de provedores de dados ADO.NET estão disponíveis em todas as versões do .NET Framework. As classes incluem SqlConnection, SqlCommand, DataReader, DataSet e DataTable. Controles de servidor também são fornecidos para aplicações ASP.NET. Provedores estão disponíveis de maneira nativa para Microsoft SQL Server, ODBC e OLEDB. Uma variedade de provedores adicionais também estão disponíveis a partir de terceiros para outras tecnologias de bancos de dados. Praticamente todos os bancos de dados são acessíveis pelo ADO.NET. Tecnologias XML Através do LINQ to XML, classes System.XML no .NET, e a API MSXML para Win32, as aplicações têm acesso total e flexível aos dados XML. Open Data Protocol (OData) OData é um protocolo de consulta e atualização de dados na Web. É um projeto conjunto de diversas empresas no setor, lideradas pela Microsoft. Entre outras coisas, o OData tem como intuito criar consistência em como os dados são apresentados pelos serviços na Web. Várias empresas oferecem seus dados como feeds de OData atualmente. O conjunto de tecnologias incluído nesta marca é inovador no que diz respeito à próxima evolução do espaço de dados. O OData está redefinindo nosso pensamento sobre os dados na Web. Não mostrado na primeira imagem acima estão os Serviços de dados WCF (conhecido anteriormente como Serviços de dados ADO.NET, codinome “Astoria”) . Isso acontece porque enquanto as outras tecnologias funcionam com uma conexão direta a um banco de dados, os Serviços de dados expõem os dados a uma interface baseada em REST (geralmente 22 usando o Entity Framework como sua camada de acesso de dados). Tal interface é chamada de Open Data Protocol. Serviços de dados são soluções quase prontas para uso por meio do fornecimento de serviço baseado em CRUD e podem ser expostos a entidades do Entity Framework (usando o mesmo Entity Data Model), dados SharePoint, classes LINQ to SQL, classes CLR arbitrárias ou qualquer outra fonte de dados. Os Serviços de dados, em outras palavras, têm relações de back-end com as outras tecnologias de acesso de dados, conforme mostrado na ilustração a seguir, para trazer os dados para fora da nuvem. - Breve descrição da tecnologia nativa - ODBC Acesso de nível de chamada (por exemplo, função API) para aplicações C/C++ para variação de armazenamento de dados por meio de drivers ODBC. - OLEDB Acesso de nível de objeto para aplicações C/C++ para variação de armazenamento de dados por meio de drivers OLEDB. - ADO Acesso de nível de objeto para OLEDB, adequado para Visual Basic 6, Java e outras linguagens de programação "sem indicadores", incluindo especializações, como ADO 23 Multidimensional (ADOMD) e ADO Extensions for Data Definition Language and Security (ADOX). MSDASQL (Provedor Microsoft OLE DB para ODBC) Um provedor OLEDB que faz qualquer fonte ODBC ficar disponível por meio de OLEDB e ADO. Cliente nativo de SQL Server Acesso direto e altamente otimizado para bancos de dados SQL Server. Driver PHP para SQL Server Acesso a bancos de dados SQL Server a partir de aplicações da Web baseadas em PHP. JDBC (Java Database Connectivity para SQL Server) Acesso a bancos de dados SQL Server a partir de Java em aplicações Web. - Breve descrição do SQL Server - Mecanismo de banco de dados do SQL Server Representa o modelo tradicional de servidor de banco de dados no local. - SQL Azure Um serviço de banco de dados em nuvem oferecido como um utilitário operado pela Microsoft e hospedado em data centers dedicados. 24 - SQL Server Compact Um mecanismo de banco de dados incorporado, gratuito e pequeno para uso em dispositivos cliente, como Pocket PCs e smartphones. É destinado a aplicações conectadas ocasionalmente e aplicações com um banco de dados incorporado. - Breve descrição dos serviços de aplicação - SQL Server Integration Services (SSIS) Usado para criar integração de dados de nível empresarial e soluções de fluxo de trabalho. Uma aplicação SSIS (pacote) representa uma aplicação de fluxo de trabalho que é instalada e executada no servidor. - SQL Server Reporting Services (SSRS) Uma plataforma para a criação de relatórios formatados de maneira avançada derivados de dados armazenados em uma instância do SQL Server ou de uma operação do SQL Server. Os relatórios e os dados contidos neles podem ser acessados por meio de uma API. 25 - SQL Server Analysis Services (SSAS) – Análise multidimensional Permite que usuários comerciais desenvolvam, criem e interpretem estruturas multidimensionais que contenham dados reunidos de diversas instâncias do SQL Server e outras fontes de dados. Estes dados podem ser acessados por meio de uma API. - SQL Server Analysis Services (SSAS) – Data Mining Fornece ferramentas para criar soluções de data mining complexas. No nível da API, a aplicação pode usar a linguagem DMX (Data Mining Extensions) para executar consultas complexas. - Serviços de replicação do SQL Server Permite que administradores de banco de dados repliquem dados de um banco de dados para outro. Após a configuração, não é necessário fazer manutenção. As aplicações podem interagir com dados replicados como se estivessem armazenados localmente. Integração com o SharePoint Desde o lançamento do SQL Server 2008 R2, tanto o SQL Server Analysis Services quanto o SQL Server Reporting Services têm acesso aos dados armazenados no SharePoint. Isso faz com que a vasta quantidade de dados corporativos armazenados no SharePoint estejam acessíveis e possam ser descobertos pelas APIs de SSAS e SSRS. - Master Data Services Fornece dados que têm sido considerados "autoritativos" para a empresa. As aplicações podem acessar estes dados usando o modelo de programação de SQL existente. - SQL Server Service Broker Fornece uma estrutura para criação de aplicações de mensagens que usam diversos bancos de dados para fins de confiabilidade e desempenho. Os desenvolvedores de aplicações que usam o Service Broker podem distribuir cargas de trabalho de dados em diversos bancos de dados sem programar aspectos internos de comunicação e mensagens complexos. 26 - Sync Framework Concede aos desenvolvedores a capacidade de criar aplicações de modo cache e offline avançados. Os dados são sincronizados entre diversos dispositivos que acessam o mesmo conjunto de dados de maneira colaborativa. Os conflitos são detectados e resolvidos. Os dados são sincronizados de maneira eficiente usando a comunicação ponto a ponto. Os desenvolvedorespodem adicionar quaisquer fontes de dados para a colaboração. Com a atualização constante do .NET Framework 4 e do Visual Studio, o trabalho agora está concentrado nas próximas versões das tecnologias de Serviços de dados e do ADO.NET Entity Framework. 27 SUMÁRIO PESQUISA SOBRE A PLATAFORMA .NET
Compartilhar