O documento apresenta uma introdução ao .NET Framework, descrevendo suas principais características como plataforma multiplataforma e suporte a várias linguagens de programação. Apresenta também os principais namespaces do .NET Framework e ferramentas como o Visual Studio para desenvolvimento de aplicações.
O documento discute a evolução da linguagem C# desde sua primeira versão (C# 1.0) até as novidades da próxima versão (C# 5). Ele apresenta os principais recursos introduzidos em cada versão como generics, LINQ, objetos dinâmicos e compilador como serviço.
Fundamentos do .NET Framework - Parte 1Julian Correa
O documento discute a plataforma .NET da Microsoft, abordando sua introdução, arquitetura, linguagem C# e evolução das arquiteturas. A introdução descreve o que é .NET e sua framework, enquanto a arquitetura trata da máquina virtual, compilação e execução. A linguagem C# é a ênfase da plataforma e as arquiteturas evoluíram de cliente-servidor para N camadas.
Ricardo Guerra Freitas apresenta sobre a evolução do Visual Basic e da plataforma .NET. Ele discute o histórico do Visual Basic, as novidades do VB e VS 2010, e faz uma demonstração das novas funcionalidades. O documento resume as principais características da plataforma .NET, como o Common Language Runtime e a Base Class Library, e explica como o Visual Basic e C# evoluíram para trabalhar em conjunto de forma mais integrada.
No dia 15 de outubro de 2010 (sexta-feira), eu apresentei a minha palestra de fechamento dia dia 1 de 2 no evento Plataforma Java x Plataforma .NET – Edição SP 2010.
Na palestra, eu abordei uma série de recursos disponíveis para estudo da plataforma .NET, principalmente recursos fornecidos pela Microsoft Brasil, gratuitos e em idioma portugês brasileiro. Também são apresentadas as novas certificações disponíveis atualmente e voltadas para a plataforma .NET 4 e para o Visual Studio 2010.
Este documento apresenta a agenda de uma palestra sobre a evolução da linguagem de programação Java. A agenda inclui tópicos como as principais versões da linguagem Java desde a versão 1.0, características introduzidas em cada versão como classes aninhadas e generics, e as novidades planejadas para as versões Java 7 e Java 8 como suporte a linguagens dinâmicas e projeto lambda.
O documento fornece uma introdução ao .NET Framework, abordando tópicos como CLR, Metadata, Assemblies, CTS, CLS, MSIL e outras tecnologias fundamentais da plataforma .NET.
O documento discute a evolução da linguagem C# desde sua primeira versão (C# 1.0) até as novidades da próxima versão (C# 5). Ele apresenta os principais recursos introduzidos em cada versão como generics, LINQ, objetos dinâmicos e compilador como serviço.
Fundamentos do .NET Framework - Parte 1Julian Correa
O documento discute a plataforma .NET da Microsoft, abordando sua introdução, arquitetura, linguagem C# e evolução das arquiteturas. A introdução descreve o que é .NET e sua framework, enquanto a arquitetura trata da máquina virtual, compilação e execução. A linguagem C# é a ênfase da plataforma e as arquiteturas evoluíram de cliente-servidor para N camadas.
Ricardo Guerra Freitas apresenta sobre a evolução do Visual Basic e da plataforma .NET. Ele discute o histórico do Visual Basic, as novidades do VB e VS 2010, e faz uma demonstração das novas funcionalidades. O documento resume as principais características da plataforma .NET, como o Common Language Runtime e a Base Class Library, e explica como o Visual Basic e C# evoluíram para trabalhar em conjunto de forma mais integrada.
No dia 15 de outubro de 2010 (sexta-feira), eu apresentei a minha palestra de fechamento dia dia 1 de 2 no evento Plataforma Java x Plataforma .NET – Edição SP 2010.
Na palestra, eu abordei uma série de recursos disponíveis para estudo da plataforma .NET, principalmente recursos fornecidos pela Microsoft Brasil, gratuitos e em idioma portugês brasileiro. Também são apresentadas as novas certificações disponíveis atualmente e voltadas para a plataforma .NET 4 e para o Visual Studio 2010.
Este documento apresenta a agenda de uma palestra sobre a evolução da linguagem de programação Java. A agenda inclui tópicos como as principais versões da linguagem Java desde a versão 1.0, características introduzidas em cada versão como classes aninhadas e generics, e as novidades planejadas para as versões Java 7 e Java 8 como suporte a linguagens dinâmicas e projeto lambda.
O documento fornece uma introdução ao .NET Framework, abordando tópicos como CLR, Metadata, Assemblies, CTS, CLS, MSIL e outras tecnologias fundamentais da plataforma .NET.
Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...Rogério Moraes de Carvalho
O Managed Extensibility Framework (MEF) é uma nova biblioteca no Microsoft. NET Framework 4 que resolve problemas de software monolítico, simplificando o design de extensões de aplicações e componentes. Nesta sessão, você aprenderá o básico do MEF e verá o MEF sendo utilizado em um uma variedade de aplicações criadas no .NET Framework.
1) O documento discute a tecnologia Java RMI (Remote Method Invocation), que permite a chamada remota de métodos entre objetos Java localizados em diferentes hosts. 2) A arquitetura RMI usa interfaces para especificar quais métodos podem ser chamados remotamente e gera stubs e skeletons para permitir a comunicação entre cliente e servidor. 3) O documento fornece exemplos passo a passo de como implementar e executar um serviço RMI simples.
O documento fornece uma visão geral do curso Java Básico, abordando tópicos como a linguagem Java, a máquina virtual Java, bibliotecas de classes, gerenciamento de memória e as principais edições da plataforma Java. O curso será ministrado entre 19 e 30 de novembro de 2007 em Belo Horizonte.
O documento discute conceitos de covariância e contravariância em C# 4, incluindo: (1) covariância em arrays, onde arrays suportam apenas covariância; (2) tipos genéricos, que são tipos com parâmetros de tipo; (3) variância em tipos genéricos, onde covariância permite passar X<TDerivado> para X<TBase> e contravariância permite passar X<TBase> para X<TDerivado>.
O documento apresenta uma palestra sobre o framework .NET, linguagem C# e padrão MVC. Inclui detalhes sobre o palestrante Luis Fernando Marques e sua experiência, além de explicar conceitos como o que é .NET, características da plataforma, história e funcionalidades do C# e arquitetura MVC. Apresenta demonstrações práticas utilizando C#, Windows Forms e ASP.NET com banco de dados SQL Server.
O documento apresenta uma agenda para um módulo sobre linguagem de programação Java. A agenda inclui tópicos como introdução, revisão de conceitos, arrays, desenho avançado de classes, tratamento de erros e exceções, desenvolvimento de aplicações, interfaces gráficas, programação para rede e programação multi-tarefa.
Este documento fornece informações sobre um curso de desenvolvimento em C#, incluindo contatos, avaliação, introdução à linguagem C# e ao framework .NET, e depuração.
O documento apresenta um minicurso sobre a linguagem de programação Java. Aborda conceitos como programação orientada a objetos, o que é Java, variáveis, classes, métodos, objetos, atributos e métodos em Java, e ambientes de desenvolvimento como NetBeans e Eclipse.
Este documento apresenta uma introdução ao curso de Java ministrado pelo professor Eduardo R. de Carvalho. A agenda do curso inclui tópicos como variáveis, operadores, controle de fluxo, orientação a objetos, tratamento de exceções e documentação com Javadoc. O objetivo do curso é ensinar os conceitos fundamentais da linguagem Java e sua aplicação para o desenvolvimento de aplicações robustas e seguras.
O documento apresenta uma aula prática de introdução à programação em Java ministrada pelo professor Manoel Campos. A agenda inclui a instalação do JDK em diferentes sistemas operacionais, a criação de programas Java utilizando editores de texto, a compilação e execução de códigos. O professor também fornece recomendações de vídeo-aulas online para aprendizagem do tema.
Apostila desenvolvimento aplicações comerciais com C#Vinicius Vieira
Para mais artigos acesse: http://helpdev.com.br/
Essa é uma apostila que montei para a ministração de um curso, tentei escrever de uma forma simples os principais conceitos envolvidos no desenvolvimento de aplicações com .net framework e Microsoft C#, passando desde tópico mais básicos até de forma introdutória alguns recursos mais avançados. Também é comentado sobre o paradigma da orientação a objetos e os principais recursos da IDE Microsoft Visual Studio 2010.
O documento discute os principais conceitos da programação orientada a objetos, incluindo classes, objetos, herança, polimorfismo e encapsulamento. Também aborda tópicos como desenvolvimento de software, linguagens de programação e aplicações da programação orientada a objetos.
O documento apresenta uma introdução à programação orientada a objetos na linguagem Java, abordando tópicos como: a história e evolução do Java desde sua criação em 1991; as principais distribuições da linguagem (JSE, JEE, JME); a máquina virtual Java e o compilador; e um exemplo simples de um programa "Hello World" em Java.
Domain-Driven Design não é uma tecnologia ou metodologia. DDD é uma abordagem à modelação de software que providencia uma estrutura de práticas, padrões de programação e terminologias que ajudam à sua concepção.
Nesta sessão vamos conhecer o que é Domain-Driven Design, quando o usar e como implementar.
A versão final (RTM) do novo framework .NET Core 1.0 foi lançada em 27 de junho de 2016. Veja os recursos do .NET Core 1.0 para desenvolver aplicações web com ASP.NET Core, aplicações Console e aplicações para Universal Windows Platform (UWP). Desenvolva no seu sistema operacional predileto: Windows, Mac OS X ou Linux. E veja qual a relação existe entre o novo framework .NET Core multiplataforma e o .NET Framework tradicional para Windows.
A versão final (RTM) do ASP.NET Core 1.0 também foi lançada em 27 de junho de 2016. Veja os recursos do ASP.NET Core 1.0 para desenvolver aplicações web com ASP.NET Core MVC e serviços web com ASP.NET Core Web API no seu sistema operacional predileto: Windows, Mac OS X ou Linux. Além disso, veja aplicações web ASP.NET Core 1.0 executando em servidores Windows, Linux e contêineres Docker. E veja qual a relação existe entre as novas aplicações ASP.NET Core e as anteriores: aplicações ASP.NET tradicionais, incluindo: ASP.NET Web Forms, ASP.NET MVC e ASP.NET Web Pages.
O documento apresenta conceitos básicos sobre programação orientada a objetos com Java. Resume os principais tópicos abordados:
1) Apresenta o Eclipse como um ambiente de desenvolvimento integrado (IDE) para Java;
2) Explica as diferenças entre JDK, JRE e JVM e suas funções na execução de programas Java;
3) Define o arquivo JAR como um arquivo compactado usado para distribuir classes Java compiladas.
O documento fornece uma introdução à linguagem de programação Java, abordando tópicos como:
1) O que é Java e suas principais características como máquina virtual e garbage collection
2) Sintaxe básica da linguagem como variáveis, tipos, operadores e fluxo de controle
3) Conceitos de programação orientada a objetos como classes, métodos, herança e polimorfismo
O documento apresenta uma breve história do Java, descrevendo sua criação na Sun Microsystems e evolução para se tornar uma linguagem independente de plataforma. Também resume os principais conceitos do Java, como programação orientada a objetos, arquitetura da plataforma Java e suas principais APIs.
O documento descreve a arquitetura da plataforma .NET Framework. Em três frases ou menos:
A plataforma .NET Framework possui como elementos centrais o Common Language Runtime (CLR), que executa o código de forma gerenciada, o Intermediate Language (IL) que é o código de nível intermediário independente de CPU, e os metadados que fornecem informações sobre os tipos e membros dos assemblies.
Este documento fornece uma introdução às tecnologias .NET e ao Visual Studio, discutindo:
1) Modelos de desenvolvimento anteriores como C/C++ e VB6 e suas limitações;
2) A introdução do .NET Framework e como ele aborda essas limitações;
3) Componentes principais do .NET Framework como CLR, CTS e bibliotecas de classe;
4) Versões do .NET Framework e novos recursos introduzidos;
5) Ferramentas de desenvolvimento como Visual Studio.
Microsoft Tech·Ed Brasil 2010: DEV302 - Como e onde devo utilizar o Managed E...Rogério Moraes de Carvalho
O Managed Extensibility Framework (MEF) é uma nova biblioteca no Microsoft. NET Framework 4 que resolve problemas de software monolítico, simplificando o design de extensões de aplicações e componentes. Nesta sessão, você aprenderá o básico do MEF e verá o MEF sendo utilizado em um uma variedade de aplicações criadas no .NET Framework.
1) O documento discute a tecnologia Java RMI (Remote Method Invocation), que permite a chamada remota de métodos entre objetos Java localizados em diferentes hosts. 2) A arquitetura RMI usa interfaces para especificar quais métodos podem ser chamados remotamente e gera stubs e skeletons para permitir a comunicação entre cliente e servidor. 3) O documento fornece exemplos passo a passo de como implementar e executar um serviço RMI simples.
O documento fornece uma visão geral do curso Java Básico, abordando tópicos como a linguagem Java, a máquina virtual Java, bibliotecas de classes, gerenciamento de memória e as principais edições da plataforma Java. O curso será ministrado entre 19 e 30 de novembro de 2007 em Belo Horizonte.
O documento discute conceitos de covariância e contravariância em C# 4, incluindo: (1) covariância em arrays, onde arrays suportam apenas covariância; (2) tipos genéricos, que são tipos com parâmetros de tipo; (3) variância em tipos genéricos, onde covariância permite passar X<TDerivado> para X<TBase> e contravariância permite passar X<TBase> para X<TDerivado>.
O documento apresenta uma palestra sobre o framework .NET, linguagem C# e padrão MVC. Inclui detalhes sobre o palestrante Luis Fernando Marques e sua experiência, além de explicar conceitos como o que é .NET, características da plataforma, história e funcionalidades do C# e arquitetura MVC. Apresenta demonstrações práticas utilizando C#, Windows Forms e ASP.NET com banco de dados SQL Server.
O documento apresenta uma agenda para um módulo sobre linguagem de programação Java. A agenda inclui tópicos como introdução, revisão de conceitos, arrays, desenho avançado de classes, tratamento de erros e exceções, desenvolvimento de aplicações, interfaces gráficas, programação para rede e programação multi-tarefa.
Este documento fornece informações sobre um curso de desenvolvimento em C#, incluindo contatos, avaliação, introdução à linguagem C# e ao framework .NET, e depuração.
O documento apresenta um minicurso sobre a linguagem de programação Java. Aborda conceitos como programação orientada a objetos, o que é Java, variáveis, classes, métodos, objetos, atributos e métodos em Java, e ambientes de desenvolvimento como NetBeans e Eclipse.
Este documento apresenta uma introdução ao curso de Java ministrado pelo professor Eduardo R. de Carvalho. A agenda do curso inclui tópicos como variáveis, operadores, controle de fluxo, orientação a objetos, tratamento de exceções e documentação com Javadoc. O objetivo do curso é ensinar os conceitos fundamentais da linguagem Java e sua aplicação para o desenvolvimento de aplicações robustas e seguras.
O documento apresenta uma aula prática de introdução à programação em Java ministrada pelo professor Manoel Campos. A agenda inclui a instalação do JDK em diferentes sistemas operacionais, a criação de programas Java utilizando editores de texto, a compilação e execução de códigos. O professor também fornece recomendações de vídeo-aulas online para aprendizagem do tema.
Apostila desenvolvimento aplicações comerciais com C#Vinicius Vieira
Para mais artigos acesse: http://helpdev.com.br/
Essa é uma apostila que montei para a ministração de um curso, tentei escrever de uma forma simples os principais conceitos envolvidos no desenvolvimento de aplicações com .net framework e Microsoft C#, passando desde tópico mais básicos até de forma introdutória alguns recursos mais avançados. Também é comentado sobre o paradigma da orientação a objetos e os principais recursos da IDE Microsoft Visual Studio 2010.
O documento discute os principais conceitos da programação orientada a objetos, incluindo classes, objetos, herança, polimorfismo e encapsulamento. Também aborda tópicos como desenvolvimento de software, linguagens de programação e aplicações da programação orientada a objetos.
O documento apresenta uma introdução à programação orientada a objetos na linguagem Java, abordando tópicos como: a história e evolução do Java desde sua criação em 1991; as principais distribuições da linguagem (JSE, JEE, JME); a máquina virtual Java e o compilador; e um exemplo simples de um programa "Hello World" em Java.
Domain-Driven Design não é uma tecnologia ou metodologia. DDD é uma abordagem à modelação de software que providencia uma estrutura de práticas, padrões de programação e terminologias que ajudam à sua concepção.
Nesta sessão vamos conhecer o que é Domain-Driven Design, quando o usar e como implementar.
A versão final (RTM) do novo framework .NET Core 1.0 foi lançada em 27 de junho de 2016. Veja os recursos do .NET Core 1.0 para desenvolver aplicações web com ASP.NET Core, aplicações Console e aplicações para Universal Windows Platform (UWP). Desenvolva no seu sistema operacional predileto: Windows, Mac OS X ou Linux. E veja qual a relação existe entre o novo framework .NET Core multiplataforma e o .NET Framework tradicional para Windows.
A versão final (RTM) do ASP.NET Core 1.0 também foi lançada em 27 de junho de 2016. Veja os recursos do ASP.NET Core 1.0 para desenvolver aplicações web com ASP.NET Core MVC e serviços web com ASP.NET Core Web API no seu sistema operacional predileto: Windows, Mac OS X ou Linux. Além disso, veja aplicações web ASP.NET Core 1.0 executando em servidores Windows, Linux e contêineres Docker. E veja qual a relação existe entre as novas aplicações ASP.NET Core e as anteriores: aplicações ASP.NET tradicionais, incluindo: ASP.NET Web Forms, ASP.NET MVC e ASP.NET Web Pages.
O documento apresenta conceitos básicos sobre programação orientada a objetos com Java. Resume os principais tópicos abordados:
1) Apresenta o Eclipse como um ambiente de desenvolvimento integrado (IDE) para Java;
2) Explica as diferenças entre JDK, JRE e JVM e suas funções na execução de programas Java;
3) Define o arquivo JAR como um arquivo compactado usado para distribuir classes Java compiladas.
O documento fornece uma introdução à linguagem de programação Java, abordando tópicos como:
1) O que é Java e suas principais características como máquina virtual e garbage collection
2) Sintaxe básica da linguagem como variáveis, tipos, operadores e fluxo de controle
3) Conceitos de programação orientada a objetos como classes, métodos, herança e polimorfismo
O documento apresenta uma breve história do Java, descrevendo sua criação na Sun Microsystems e evolução para se tornar uma linguagem independente de plataforma. Também resume os principais conceitos do Java, como programação orientada a objetos, arquitetura da plataforma Java e suas principais APIs.
O documento descreve a arquitetura da plataforma .NET Framework. Em três frases ou menos:
A plataforma .NET Framework possui como elementos centrais o Common Language Runtime (CLR), que executa o código de forma gerenciada, o Intermediate Language (IL) que é o código de nível intermediário independente de CPU, e os metadados que fornecem informações sobre os tipos e membros dos assemblies.
Este documento fornece uma introdução às tecnologias .NET e ao Visual Studio, discutindo:
1) Modelos de desenvolvimento anteriores como C/C++ e VB6 e suas limitações;
2) A introdução do .NET Framework e como ele aborda essas limitações;
3) Componentes principais do .NET Framework como CLR, CTS e bibliotecas de classe;
4) Versões do .NET Framework e novos recursos introduzidos;
5) Ferramentas de desenvolvimento como Visual Studio.
Palestra Plataforma .NET na ETEC MaríliaElvis Fusco
O documento fornece um resumo sobre a plataforma .NET, descrevendo seu objetivo de usar um modelo baseado em componentes, seu framework e classes, linguagens suportadas e aplicações como Windows Forms e ASP.NET.
O documento introduz ASP.NET com VB.NET. Apresenta o professor Norton Guimarães e sua experiência. Discutem a plataforma .NET, ASP.NET, Visual Studio e introduzem conceitos como CLS, CTS, CLR e programação orientada a objetos em VB.NET.
Introdução ao ASP.NET 3.5 - Campus Party Brasil 2009Ramon Durães
1) O documento resume as credenciais e experiência profissional de Ramon Durães como especialista em desenvolvimento .NET.
2) É descrito o histórico de versões do .NET Framework e recursos como LINQ, AJAX, Silverlight e Dynamic Data.
3) São apresentadas breves introduções a tópicos como LINQ to SQL, ASP.NET, Windows Presentation Foundation e integração com o IIS 7.
O documento fornece uma visão geral do .NET Framework da Microsoft, que permite a criação de aplicações multiplataforma através de uma biblioteca de classes comum. O .NET Framework inclui o Common Language Runtime para executar várias linguagens de programação compatíveis e bibliotecas de classes para funcionalidades como acesso a dados, rede e segurança. Um exemplo em C# mostra como usar classes do .NET Framework para ler um ficheiro.
Este documento fornece uma introdução aos frameworks web com Python, discutindo conceitos como MVC, templates, ORM e frameworks como Django. Explica como frameworks abstraem detalhes complexos e facilitam o desenvolvimento web.
O documento fornece uma introdução à linguagem de programação C#, descrevendo sua história, características, comparando-a com C, C++ e Java, e apresentando exemplos de projetos e códigos desenvolvidos com C#.
O documento introduz o .NET Framework, descrevendo sua necessidade no mercado, suas principais características como ambiente multiliguagem e orientado a objetos, suas versões e ferramentas de desenvolvimento. Também resume as principais melhorias da versão 3.5 como suporte a LINQ, WPF e novos controles para ASP.NET.
C# é uma linguagem de programação orientada a objetos derivada de C/C++ que faz parte da plataforma .NET da Microsoft. A linguagem possui recursos como coleta de lixo automática e tratamento de exceções que auxiliam na construção de softwares robustos. O documento apresenta os conceitos básicos de C# e mostra como escrever um programa "Olá Mundo" nesta linguagem.
O documento discute alternativas de código aberto à plataforma Microsoft .NET, incluindo frameworks como Mono e DotGNU, ferramentas como SharpDevelop e MonoDevelop, e projetos populares mantidos pela comunidade como CMS e frameworks de mapeamento objeto-relacional. Também aborda a capacidade de rodar código Java no .NET usando o IKVM.NET.
O documento discute o início no desenvolvimento de software, mencionando algumas linguagens populares e as vantagens de fazer parte de comunidades de programação. Também fornece uma introdução ao .NET Framework, destacando seus principais componentes como a Common Language Runtime, a Base Class Library e as ferramentas de programação.
Na minha palestra, eu apresentei as iniciativas da Microsoft para levar a plataforma de desenvolvimento Web ASP.NET para múltiplas plataformas, incluindo Linux e macOS, além do Windows. O novo .NET Core multiplataforma com suas ferramentas de linha de commando (.NET Core CLI), o novo padrão .NET Platform Standard e como funciona o .NET Core da codificação à execução. Eu abordei o ASP.NET Core, uma nova implementação da tecnologia de desenvolvimento Web ASP.NET para ser multiplataforma, muito mais rápida, leve e modular. Finalmente, eu apresentei uma série de Recursos para estudo.
TDC2016POA | Trilha .NET - O novo ASP.NET Core 1.0 multiplataformatdc-globalcode
O documento apresenta as novidades do .NET Core 1.0 e do ASP.NET Core 1.0, que são plataformas multiplataformas e de código aberto. Apresenta as principais características como desempenho aprimorado, modularidade e suporte a vários sistemas operacionais como Windows, Linux e MacOS. Também discute as ferramentas do .NET Core como o .NET Core CLI e o .NET Platform Standard para portabilidade binária.
O documento introduz os conceitos de desenvolvimento web usando ASP.NET, incluindo como o .NET Framework funciona, o que é ASP.NET e MVC, e como utilizar a IDE Visual Studio.
O documento discute as principais diferenças entre as plataformas VB6 e .NET, incluindo como cada uma compila e executa código, como gerencia componentes binários e como projeta aplicativos. Também aborda ferramentas do IDE VS.NET, ADO.NET, serviços Windows, debug e .NET Remoting.
O documento resume o currículo de Eric Gallardo, um profissional de TI brasileiro com quase 20 anos de experiência em projetos para internet e gestão corporativa utilizando diversas linguagens e metodologias como .NET, Java, Scrum e ITIL. O treinamento aborda conceitos e frameworks como ASP.NET, MVC, WebForms, Entity Framework e AJAX/jQuery além de ferramentas como Visual Studio e plugins.
O documento apresenta uma introdução ao desenvolvimento de aplicativos Windows com .NET usando Visual Studio. As principais informações apresentadas são:
1) Uma introdução ao Visual Studio como ambiente de desenvolvimento integrado para construção de aplicações .NET e suas principais funcionalidades.
2) Uma introdução aos conceitos básicos da plataforma .NET como CLR, código gerenciado e suas vantagens.
3) Instruções passo a passo para criar um projeto Hello World simples em C# usando Windows Forms no Visual Studio.
Curso C sharp plus Framework NET (DIURNO) Grupo Treinar
O curso ensina C# e .NET Framework em dois módulos. O primeiro módulo cobre conceitos básicos de C# e acesso a banco de dados. O segundo módulo ensina programação orientada a objetos, arquitetura de desenvolvimento e como construir aplicações web e web services. O curso é ministrado de forma prática com exercícios e estudos de caso.
PRODUÇÃO E CONSUMO DE ENERGIA DA PRÉ-HISTÓRIA À ERA CONTEMPORÂNEA E SUA EVOLU...Faga1939
Este artigo tem por objetivo apresentar como ocorreu a evolução do consumo e da produção de energia desde a pré-história até os tempos atuais, bem como propor o futuro da energia requerido para o mundo. Da pré-história até o século XVIII predominou o uso de fontes renováveis de energia como a madeira, o vento e a energia hidráulica. Do século XVIII até a era contemporânea, os combustíveis fósseis predominaram com o carvão e o petróleo, mas seu uso chegará ao fim provavelmente a partir do século XXI para evitar a mudança climática catastrófica global resultante de sua utilização ao emitir gases do efeito estufa responsáveis pelo aquecimento global. Com o fim da era dos combustíveis fósseis virá a era das fontes renováveis de energia quando prevalecerá a utilização da energia hidrelétrica, energia solar, energia eólica, energia das marés, energia das ondas, energia geotérmica, energia da biomassa e energia do hidrogênio. Não existem dúvidas de que as atividades humanas sobre a Terra provocam alterações no meio ambiente em que vivemos. Muitos destes impactos ambientais são provenientes da geração, manuseio e uso da energia com o uso de combustíveis fósseis. A principal razão para a existência desses impactos ambientais reside no fato de que o consumo mundial de energia primária proveniente de fontes não renováveis (petróleo, carvão, gás natural e nuclear) corresponde a aproximadamente 88% do total, cabendo apenas 12% às fontes renováveis. Independentemente das várias soluções que venham a ser adotadas para eliminar ou mitigar as causas do efeito estufa, a mais importante ação é, sem dúvidas, a adoção de medidas que contribuam para a eliminação ou redução do consumo de combustíveis fósseis na produção de energia, bem como para seu uso mais eficiente nos transportes, na indústria, na agropecuária e nas cidades (residências e comércio), haja vista que o uso e a produção de energia são responsáveis por 57% dos gases de estufa emitidos pela atividade humana. Neste sentido, é imprescindível a implantação de um sistema de energia sustentável no mundo. Em um sistema de energia sustentável, a matriz energética mundial só deveria contar com fontes de energia limpa e renováveis (hidroelétrica, solar, eólica, hidrogênio, geotérmica, das marés, das ondas e biomassa), não devendo contar, portanto, com o uso dos combustíveis fósseis (petróleo, carvão e gás natural).
As classes de modelagem podem ser comparadas a moldes ou
formas que definem as características e os comportamentos dos
objetos criados a partir delas. Vale traçar um paralelo com o projeto de
um automóvel. Os engenheiros definem as medidas, a quantidade de
portas, a potência do motor, a localização do estepe, dentre outras
descrições necessárias para a fabricação de um veículo
Em um mundo cada vez mais digital, a segurança da informação tornou-se essencial para proteger dados pessoais e empresariais contra ameaças cibernéticas. Nesta apresentação, abordaremos os principais conceitos e práticas de segurança digital, incluindo o reconhecimento de ameaças comuns, como malware e phishing, e a implementação de medidas de proteção e mitigação para vazamento de senhas.
A linguagem C# aproveita conceitos de muitas outras linguagens,
mas especialmente de C++ e Java. Sua sintaxe é relativamente fácil, o que
diminui o tempo de aprendizado. Todos os programas desenvolvidos devem
ser compilados, gerando um arquivo com a extensão DLL ou EXE. Isso torna a
execução dos programas mais rápida se comparados com as linguagens de
script (VBScript , JavaScript) que atualmente utilizamos na internet
1. (sc)2 Introdução ao
1º Simpósio de .NET
Framework
Computação do
Sul Capixaba System, Console, Drawing,
Math, OleDB, Form,
Control, DialogResult,
DllImport, FileStream,
Security, References,
“Todas as áreas
Microsoft, Type,
computando novas idéias” ComboBox, Main, List,
HashTable, Activator,
DataSet, DataReader,
DateTime.Now, Exception,
MessageBox, Application,
WebService . . .
andre.lopes@studentpartners.com.br
2. Introdução ao .NET Framework
Oque é
Framework de desenvolvimento
Windows Forms
Web Forms
Web Services
Console Application
Class Library
Windows Service
andre.lopes@studentpartners.com.br
3. Introdução ao .NET Framework
.NET Framework
.NET Framework consiste em um conjunto de componentes que
modularizam e simplificam o desenvolvimento de aplicações.
Clientes
Desenvolvedores Servidores
Microsoft
.NET
Web Services
andre.lopes@studentpartners.com.br
4. Introdução ao .NET Framework
.NET Framework
Multiplataforma
Microsoft .NET Framework
Mono
Suporte a várias linguagens de programação
Encapsulamento o SO através da CLR
andre.lopes@studentpartners.com.br
5. Introdução ao .NET Framework
.NET Framework
O .NET aceita várias
linguagens de progra- Linguagens de Programação
mação (C#, VB, C++,
Delphi, entre outras) . As
bibliotecas ( o framework Framework Framework Framework
em si ) possuem uma 1.1 2.0 3.5
grande coleção de classes
que podem ser usadas e
implementadas em sua Bibliotecas .NET
aplicação. O CLR é quem
gerencia a execução do
código, juntamente com o Common Language Runtime
Garbage Collector.
Sistema Operacional
andre.lopes@studentpartners.com.br
6. Introdução ao .NET Framework
.NET Framework
1 Compilador MSIL
Código Fonte
C#, VB, C++ MSIL Code
2
JIT Compiler
Código de
MSIL Code
Máquina
3
CLR
Código de
Máquina Aplicação
andre.lopes@studentpartners.com.br
7. Introdução ao .NET Framework
.NET Framework
O .NET Framework está organizado em namespaces, de
modo que cada ferramenta tem sua localização específica
Microsoft.CSharp
Ferramentas para compilação e geração de código com o uso da
linguagem C#
System
Tipos fundamentais, interfaces, eventos exceções. É o namespace
principal
System.Collections
Contém interfaces e classes que definem várias coleções de objetos
tais com Array, Lista, Pilha, dicionários. Também contém
ferramentas para gerenciamento de listas genéricas
System.Data
Prove ferramentas para manipulação de dados de diferentes
fontes. Constitui a arquitetura do ADO.NET
andre.lopes@studentpartners.com.br
8. Introdução ao .NET Framework
.NET Framework
System.Drawing
Classes para trabalhar com gráficos e imagens
System.IO
Contém tipos que permitem a manipulação de arquivos de pastas.
Escrita e leitura;
System.Net
Oferece interface de programação para muitos dos protocolos de
rede hoje disponíveis. Programação de Sockets e requisições Web
por exemplo
System.Windows.Forms
Classes voltadas a criação de aplicações baseadas em windows
System.Threading
Prove ferramentas para a programação multi thread. Processos
simultâneos
andre.lopes@studentpartners.com.br
9. Introdução ao .NET Framework
.NET Framework
System.Globalization
Fornece ferramentas para trabalhar com a cultura de onde o
programa está sendo executado. Informações como língua, moeda,
calendário e formatações.
System.Web.Services
Contém classes que permitem ao desenvolvedor construir e
desenvolver WebServices.
System.Timers
Prove componentes que possibilitam o acionamento de eventos em
intervalor regulares de tempo
andre.lopes@studentpartners.com.br
10. Introdução ao .NET Framework
.NET Framework
Microsoft Visual Studio
IDE
Suporte a várias liguagens
Criação de instaladores (somente na versão paga)
Tipos de Aplicações
Console Application
Windows Application
Web Site
Web Service (somente na versão paga)
Windows Service (somente na versão paga)
Class Library
andre.lopes@studentpartners.com.br
11. Introdução ao .NET Framework
Demo: Conhecendo o Visual
Studio
Console Application
Windows Application
Class Library
Project
Solution
Debug
Code Snipeet
Documentação
andre.lopes@studentpartners.com.br
12. Introdução ao .NET Framework
Demo: Programando com o
Visual Studio
Console Application
Classe Console
Delegates e Métodos Anônimos
Unsafe Code
Extension Methods
andre.lopes@studentpartners.com.br
13. Introdução ao .NET Framework
Demo: Programando com o
Visual Studio
Windows Application
Formulários
MDI
SDI
Design
Controles
Tratamento de erros
Membros estáticos
andre.lopes@studentpartners.com.br
14. Introdução ao .NET Framework
Tarefa: Programando com o
Visual Studio
Crie uma bibliteca (Class Library) com duas
entidades Pessoa e Carro. Contendo
Carro:Marca, Modelo, Ano, Placa
Pessoa: Nome, CPF, e uma lista de carros
Ambas as classes tem de ser públicas
Uma pessoa pode conter até 3 carros
Nenhuma das classes podem ser herdadas
Tempo Estimado: 5min
andre.lopes@studentpartners.com.br
15. Introdução ao .NET Framework
Tarefa: Programando com o
Visual Studio
Crie uma aplicação Windows Forms que
referencie as entidade criadas. E faça seu
cadastro.
A Aplicação deve ser MDI
Os carros já cadastrados devem estar
disponíveis em uma ComboBox no cadastro de
pessoas.
Faça uso de uma classe estática para guardar
as informações cadastradas
Ao fechar a aplicação os dados não devem
ser salvos.
Tempo Estimado: 25min
andre.lopes@studentpartners.com.br
16. Introdução ao .NET Framework
.NET Framework
System.Text.StringBuilder
Resolve o problema da imutabilidade do tipo string,
gerenciando melhor a memória
StringBuilder sb = new StringBuilder(); Memória
sb.AppendText(‚Microsoft‛); ‚Microsoft‛
sb.AppendText(‚ .Net ‛); ‚.Net ‛
sb.AppendText(‚Framework‛); ‚Framework‛
‚Microsoft .Net Fr‛
string s = sb.ToString();
andre.lopes@studentpartners.com.br
17. Introdução ao .NET Framework
.NET Framework
System.Text.RegularExpressions
Um método formal de se especificar um padrão de texto.
Somente números
Email
Data/Hora
IP
Método complexo, porém rápido de validar valores. Ao invés
de usar try...cath
Somente Números
^d{5}$ Fim da expressão
5 dígitos
Início da expressão
andre.lopes@studentpartners.com.br
18. Introdução ao .NET Framework
.NET Framework
System.Text.RegularExpressions
using System;
using System.Text.RegularExpressions;
class VarificaPadroes
{
bool ENumero(string texto)
{
return (new Regex(‚^[0-9]*$‛)
).IsMatch(texto);
}
}
http://regexlib.com
andre.lopes@studentpartners.com.br
19. Introdução ao .NET Framework
.NET Framework
System.DateTime
DateTime dt = DateTime.Now;
int dia = dt.Day; int mes = dt.Month; int ano = dt.Year;
int hora = dt.Hour; int min = dt.Minute;
int sec = dt.Second;
dt.ToString(‚dd/MM/yyyy‛) //19/02/2010
dt.ToString(‚dd/MM/yyyy HH:mm:ss‛) //19/02/2010 14:30:00
andre.lopes@studentpartners.com.br
20. Introdução ao .NET Framework
.NET Framework
GarbageColletor
Não determinístico
Retira da memória somente os espaços não utilizados, que
já estão desvinculados do programa
GC.Collect();
andre.lopes@studentpartners.com.br
22. Introdução ao .NET Framework
.NET Framework
Interfaces de Coleções
IEnumerable
ICollection
IList IDictionary
andre.lopes@studentpartners.com.br
23. Introdução ao .NET Framework
.NET Framework
System.Collections
ArrayList
É uma coleção ordenada
Podemos acessar os elementos usando seu index,
baseado em zero
Expande automaticamente quando adicionamos itens
Sort();
IComparable
QuickSort
andre.lopes@studentpartners.com.br
24. Introdução ao .NET Framework
.NET Framework
System.Collections
//Cria um ArrayList e adiciona objetos
ArrayList arr = new ArrayList();
arr.Add(‚Cachoeiro‛);
arr.Add(‚Alegre‛);
arr.AddRange(new string[]{‚Vitória‛, ‚Rive‛});
//Obtem Cachoeiro, Alegre e Vitória
ArrayList tresPrimeiros = arr.GetRange(0, 3);
arr.Remove(‚Rive‛);
object primeiro = arr[0];
arr.Insert(0, ‚Rio de Janeiro‛);
arr.Sort();
arr.Reverse();
foreach(object item in arrr) { Console.WriteLine(item); }
andre.lopes@studentpartners.com.br
25. Introdução ao .NET Framework
.NET Framework
System.Collections
Fila (Queue)
//Cria uma fila e adiciona objetos
Queue fila = new Queue();
fila.Enqueue(‚Item 1‛);
fila.Enqueue(‚Item 2‛);
fila.Enqueue(‚Item 3‛);
fila.Enqueue(‚Item 4‛);
//Obtém o primeiro item mas não o remove
object item = fila.Peek();
//Desenfileira todos os objetos
while(fila.Count > 0)
{
Console.WriteLine(fila.Dequeue());
}
andre.lopes@studentpartners.com.br
26. Introdução ao .NET Framework
.NET Framework
System.Collections
Pilha (Stack)
//Cria uma pilha e adiciona objetos
Stack pilha = new Stack();
pilha.Push(‚Item 1‛);
pilha.Push(‚Item 2‛);
pilha.Push(‚Item 3‛);
pilha.Push(‚Item 4‛);
//Obtém o primeiro item mas não o remove
object item = pilha.Peek();
//Desenpilha todos os objetos
while(fila.Count > 0)
{
Console.WriteLine(pilha.Pop());
}
andre.lopes@studentpartners.com.br
27. Introdução ao .NET Framework
.NET Framework
System.Collections
Hashtable
Dicionário de chave/Valor
//Cria um hashtable e adiciona entradas de chave/valor
Hashtable Produtos = new Hashtable();
Produtos.Add(‚Macaxera‛,5.9);
Produtos.Add(‚Cane de Sol‛, 7.5);
Produtos.Add(‚Ipioca, 1 Litro‛, 10.0);
Console.WriteLine(‚Porção do cheff‛)
foreach(DictionaryEntry entry in Produtos)
{
Console.WriteLine(string.Format(‚{0} preço {0:C}‛,
entry.Key, entry.Value));
}
andre.lopes@studentpartners.com.br
28. Introdução ao .NET Framework
.NET Framework
System.Collections.Generics
Todos as listas (ArrayList, Queue, Stack, Hashtable, etc) têm
seu tipo genérico implementado
List<T>
List<string>
List<int>
List<object> = ArrayList
Não existe a necessidade de convertermos o tipo para objeto
e na hora de recuperar fazer o unboxing
andre.lopes@studentpartners.com.br
29. Introdução ao .NET Framework
.NET Framework
System.Collections.Generics
//Cria a lista de decimais e adiciona os valores
List<decimal> listValores = new List<decimal>();
listValores.Add(1.5M);
listValores.Add(4.8M);
listValores.Add(0.4M);
listValores.Add(3.9M);
//Não precisamos converter o valor para decimal
decimal vlr = listValores[3];
andre.lopes@studentpartners.com.br
30. Introdução ao .NET Framework
Demo: Trabalhando com
coleções
Collections
Collections.Generics
List
Dictionary
Linq
andre.lopes@studentpartners.com.br
32. Introdução ao .NET Framework
Acesso a dados
Banco de dados
Componentes
Acesso a banco de dados (SQL Server)
Acesso a arquivos XML
Desenvolvimento em camadas
andre.lopes@studentpartners.com.br
33. Introdução ao .NET Framework
Banco de Dados
Conjunto de registros (informações de mesma natureza)
disposto em um estrutura que possibilita a modificação,
inserção, atualização e organização dessas informações.
Está organizado em:
Tabelas
Colunas
Registros
andre.lopes@studentpartners.com.br
34. Introdução ao .NET Framework
Banco de Dados Coluna
ID Nome CPF Cidade
1 Andre 12345678921 Alegre
2 Paulo 12469487670 Cachoeiro
3 Carlos 10457672930 Vitória
4 João 10394874820 Belo Horizonte
5 Maria 05937375958 Guaçui
6 José 30495782845 São Paulo
Registro
Tabela de Pessoas
andre.lopes@studentpartners.com.br
35. Introdução ao .NET Framework
Banco de Dados
Conceitos Importantes
Chave primária
Chave estrangeira
Views
andre.lopes@studentpartners.com.br
36. Introdução ao .NET Framework
SQL
Structured Query Language
DDL
CREATE
CREATE TABLE UF(
ID int,
Nome varchar(100))
DROP
DROP TABLE UF
DML
INSERT
INSERT INTO UF (ID, Nome)
VALUES (1, ‘Alegre’)
UPDATE
UPDATE UF
SET Nome = ‘Guaçui’
WHERE ID = 1
andre.lopes@studentpartners.com.br
37. Introdução ao .NET Framework
SQL
Structured Query Language
DML
DELETE
DELETE FROM UF
WHERE ID = 1
SELECT
SELECT * FROM UF
DCL
GRANT
GRANT SELET OF UF TO ‘user1’
REVOKE
REVOKE SELET OF UF TO ‘user1’
andre.lopes@studentpartners.com.br
38. Introdução ao .NET Framework
Tafera: usando o SQL Server
Vamos agora criar um banco de dados
para o SC2, que será usado posterior-
mente para a prática de acesso a dados
usando o .NET Framework
Tempo Estimado: 20 min
andre.lopes@studentpartners.com.br
39. Introdução ao .NET Framework
Tabelas
Participante
ID int Chave Primária
Nome varchar(120)
CPF numeric(11,0)
IDCidade int
Cidade
ID int Chave Primária
Nome varchar(120)
UF varchar(2)
Minicurso
ID int Chave Primária
Nome varchar(120)
IDParticipante int
Palestra
ID int Chave Primária
Nome varchar(120)
IDParticipante int
andre.lopes@studentpartners.com.br
40. Introdução ao .NET Framework
Tabelas
Participante_Minicurso
IDMinicurso int Chave Primária
IDParticipante int Chave Primária
Participante_Palestra
IDPalestra int Chave Primária
IDParticipante int Chave Primária
Criar diagramas de relacionamento
andre.lopes@studentpartners.com.br
41. Introdução ao .NET Framework
ADO.NET
Microsoft ADO.NET
.NET Framework Data Provider for SQL Server
.NET Framework Data Provider for OLE DB
.NET Framework Data Provider for ODBC
.NET Framework Data Provider for Oracle
.NET Framewor Data Provider
IDbConnection
IDbCommand Banco de Dados
IDataReader
IDataAdapter DataSet
andre.lopes@studentpartners.com.br
42. Introdução ao .NET Framework
ADO.NET
IDbConnection
Banco
De IDbCommand
Dados
IDataReader
Aplicação
andre.lopes@studentpartners.com.br
43. Introdução ao .NET Framework
ADO.NET
IDbConnection
Open()
Close()
ConnectionString
State
andre.lopes@studentpartners.com.br
44. Introdução ao .NET Framework
ADO.NET
SqlConnection
Provedor de acesso ao Sql Server (versão 7.0
ou superior)
Como abrir uma conexão com o banco de dados:
SqlConnection conn = new SqlConnetion();
Conn.ConnectionString = minhaStringDeConexao;
conn.Open();
Conn.Close();
String de Conexão do SQL Server
Data Source=Endereço do SQLServer;
Initial Catalog =Nome do Banco de dados;
Integrated Security=SSPI;
http://www.connectionstrings.com/
andre.lopes@studentpartners.com.br
46. Introdução ao .NET Framework
ADO.NET
SqlCommand
Objeto para conversação com banco de dados SQL Server
7.0 ou superior
SqlCommand command = new SqlCommand();
command.Connection = conn;
command.CommandText = ‚INSERT INTO UF ‚ +
‚(Descricao) VALUES ‛ +
‚(‘es’)‛;
command.ExecuteNonQuery();
andre.lopes@studentpartners.com.br
47. Introdução ao .NET Framework
ADO.NET
ExecuteScalar
SqlCommand command = new SqlCommand();
command.Connection = conn;
command.CommandText = ‚SELECT Descricao ‚ +
‚FROM UF WHERE ID = 1‛;
object obj = command.ExecuteScalar();
otring strDescr = obj.ToString();
andre.lopes@studentpartners.com.br
48. Introdução ao .NET Framework
ADO.NET
ExecuteReader
Só existe enquanto a conexão com o banco está
aberta
SqlConnection CriaConexao()
{
SqlConnectionStringBuilder sqlStrBld = new
SqlConnectionStringBuilder();
sqlStrBld.DataSource = ‚localhost‛;
sqlStrBld.InitialCatalog = ‚SC2‛;
sqlStrBld.IntegratedSecurity = true;
return new SqlConnection(sqlStrBld.ConnectionString);
}
andre.lopes@studentpartners.com.br
49. Introdução ao .NET Framework
ADO.NET
ExecuteReader
SqlCommand sqlCmd = new SqlCommand();
sqlCmd.Connection = CriaConexao();
sqlCmd.CommandText = ‚SELECT * FROM CIDADE‛;
sqlCmd.Connection.Open();
SqlDataReader sqlDr = sqlCmd.ExecuteReader();
List<string> Cidades = new List<string>();
while(sqlDr.Read())
{
Cidades.Add(string.Format("{0} - {1}",
sqlDr["Nome"],
sqlDr["UF"]));
}
sqlCmd.Connection.Close();
andre.lopes@studentpartners.com.br
51. Introdução ao .NET Framework
ADO.NET
SqlCommand sqlCmd = new SqlCommand();
sqlCmd.Connection = CriaConexao();
sqlCmd.CommandText = ‚SELECT * FROM CIDADE‛;
sqlCmd.Connection.Open();
SqlDataReader sqlDr = sqlCmd.ExecuteReader();
DataTable dtCidade = new DataTable(‚Cidade‛);
dtCidade.Load(sqlDr);
sqlCmd.Connection.Close();
string NomeCidade = dtCidade.Rows[0][1].ToString();
string IDCidade = dtCidade.Rows[0][‚ID‛].ToString();
int NumeroDeCidades = dtCidade.Rows.Count;
andre.lopes@studentpartners.com.br
52. Introdução ao .NET Framework
ADO.NET
Controles para manipulação de dados
DataGridView
DataGridView dgvCidades = new DataGridView();
dgvCidade.DataSource = dtCidade;
andre.lopes@studentpartners.com.br
53. Introdução ao .NET Framework
ADO.NET
Controles para manipulação de dados
ComboBox
List<Cidade> Cidades = ObtemCidades();
ComboBox cmbCidades = new ComboBox();
cmbCidades.DisplayMember = ‚Nome‛;
cmbCidades.ValueMember = ‚ID‛;
cmbCidades.SelectedIndex = -1;
cmbCidades.DataSource = from cidade in Cidades
orderby cidade.Nome
select cidade;
andre.lopes@studentpartners.com.br
54. Introdução ao .NET Framework
ADO.NET
XML
Linguagem de marcação de dados
Provê um sistema de tags para organização de dados
estruturados
Baseado em texto
Tag introdutória do xml, versão e encodificação
<?xml version="1.0" encoding="UTF-8"?>
<Pessoa> Abre a tag Pessoa
<Nome>Will</Nome>
<Idade>27</Idade>
</Pessoa> Fecha a tag Pessoa
andre.lopes@studentpartners.com.br
56. Introdução ao .NET Framework
ADO.NET
Demo: Usando XML para acesso a
dados
XML
DataSet
DataTable
DataGridView
andre.lopes@studentpartners.com.br
57. Introdução ao .NET Framework
ADO.NET
Demo: Aplicação multi cama-
da para acesso a dados
SQLServer
ADO.NET
Camadas
Generics
OO
andre.lopes@studentpartners.com.br
59. Introdução ao .NET Framework
Arquivos
File
File.Exists(‚Nome do arquivo‛);
File.Encrypt(‚Nome do arquivo‛);
File.Decrypt(‚Nome do arquivo‛);
File.Delete(‚Nome do arquivo‛);
File.Move(‚Origem‛,‛Destino‛);
File.GetCreationTime(‚Nome do arquivo‛);
File.GetLastAccessTime(‚Nome do arquivo‛);
andre.lopes@studentpartners.com.br
62. Introdução ao .NET Framework
Arquivos
StreamReader
StreamReader sr = new StreamWriter(fs);
StreamReader sr = new StreamWriter(‚Nome Do Arquivo‛);
int i = sr.Read();
string s = sr.ReadLine();
string s = sr.ReadToEnd();
sr.Close();
andre.lopes@studentpartners.com.br
63. Introdução ao .NET Framework
Arquivos
Demo: Aplicação para cópia
de arquivos
File
FileStream
Byte[]
Cópia de arquivos
andre.lopes@studentpartners.com.br
64. Introdução ao .NET Framework
Arquivos
Demo: Leitura e escrita de
arquivos texto
StreamReader
StreamWriter
andre.lopes@studentpartners.com.br
66. Introdução ao .NET Framework
Arquivos
Compactação
Criar um GZipStream para compactar os dados
Ler todos os bytes do arquivo original
Escrever os bytes no destino, objeto GZipStream
FileStream fsDest = File.Create(‚Memorando.zip‛);
byte[] bData = File.ReadAllBytes(‚Memorando.txt‛);
GzipStream ArqCompactado = new GZipStream(fsDest,
CompressioMode.Compress);
ArqCompactado.Write(bData, 0, bData.Length);
ArqCompactado.Flush();
ArqCompactado.Close();
fsDest.Close();
andre.lopes@studentpartners.com.br
67. Introdução ao .NET Framework
Arquivos
Serialização
Altenativa ao banco de dados *
Técnica usada para persistir objetos
Grava em disco
Transmissão pela rede
Formato binário
Formato texto
andre.lopes@studentpartners.com.br
68. Introdução ao .NET Framework
Arquivos
Serialização
O objeto e todos os seus membros devem ser marcados
com o atributo [Serializable]
Membro não serializados [NonSerializable]
System.Runtime.Serialization
System.Runtime.Serialization.Formatters.Binary
System.Runtime.Serialization.Formatters.Soap
Texto
Melhor para tráfego na rede
andre.lopes@studentpartners.com.br
69. Introdução ao .NET Framework
Arquivos
Serialização
System.Xml.Serialization
Transitar dados entre sistemas diferentes
Somente membros públicos
Não precisa estar marcado como Serializable
using System.Xml.Serialization;
using System.IO;
public class SerializaXML
{
internal void Serializa(object Objeto)
{
XmlSerializer xmlSer = new XmlSerializer(Objeto.GetType());
xmlSer.Serialize((new StreamWriter("test.xml")), Objeto);
}
}
andre.lopes@studentpartners.com.br
70. Introdução ao .NET Framework
Arquivos
Demo: Aplicação para
compactação de arquivos
Compactar
Descompactar
andre.lopes@studentpartners.com.br
71. Introdução ao .NET Framework
Arquivos
Demo: Aplicação para
serialização de arquivos
Serializar
Deserializar
Formato Binário
andre.lopes@studentpartners.com.br
73. Introdução ao .NET Framework
Arquivos
DriverInfo
DriverInfo.GetDrives()
DriverInfo di = new DriverInfo(@‚C:‛);
di.DriverType
DriveType.CDRom
DriveType.Fixed
DriveType.Removable
di.TotalSize
di.TotalFreeSpace
andre.lopes@studentpartners.com.br
74. Introdução ao .NET Framework
Arquivos
DriverInfo
//Obtém todos os drives do computador
DriveInfo[] Drives = DriveInfo.GetDrives();
//Percorre cada Drive e mostra suas informações na tela
foreach (DriveInfo di in Drives)
{
Console.WriteLine(di.Name);
Console.WriteLine(di.AvailableFreeSpace);
Console.WriteLine(di.TotalFreeSpace);
Console.WriteLine(di.Totalpace);
}
andre.lopes@studentpartners.com.br
76. Introdução ao .NET Framework
Arquivos
DirectoryInfo
public void MontaDiretorio(string Dir)
{
Console.WriteLine(Dir);
DirectoryInfo di = new DiretoryInfo(Dir);
foreach(FileSystemInfo item in di.GetFileSystemInfos())
{
if(item is FileInfo)
{
Console.WriteLine(string.Format(‚{0}-{1}‛,
(item as FileInfo).Name,
(item as FileInfo).Length));
}
else if(item is DirectoryInfo)
{
Console.WriteLine((item as DirectoryInfo).Name);
}
}
}
andre.lopes@studentpartners.com.br
78. Introdução ao .NET Framework
Arquivos
FileInfo
public void PropriedadesArquivo(string FileName)
{
Console.WriteLine(FileName);
//Cria o objeto com base no nome do
FileInfo fi = new FileInfo(FileName);
//Como o arquivo é medido em bytes, dividimos por
//1024 para encontrar seu tamanho em KBytes
Console.WriteLine(string.Format(‚Tamanho: {0} KB‛,
fi.Length/1024));
Console.WriteLine(string.Format(‚Criação: {0}‛.
fi.CreationTime.ToString(‚dd/MM/yyyy HH:mm:ss‛));
Console.WriteLine(string.Format(‚Caminho: {0}‛,
fi.FullName));
}
andre.lopes@studentpartners.com.br
79. Introdução ao .NET Framework
Arquivos
Directory
Expõe métodos estáticos para criação movimentação e
enumeração de diretórios e subdiretórios.
Directory.CreateDirectory(‚Nome‛);
Directory.GetCurrentDirectory();
Directory.Move(‚Origem‛,‛Destino‛);
Directory.GetDirectories(@‚C:", "p*‚,
SearchOption.TopDirectoryOnly);
SearchOption.TopDirectoryOnly
SearchOption.AllDirectories
andre.lopes@studentpartners.com.br
80. Introdução ao .NET Framework
Arquivos
Path
Executa operações em instâncias de String que contêm
arquivo ou diretório. Multi-plataforma
Path.GetTempFileName();
Path.GetTempPath();
Path.DirectorySeparatorChar;
Path.GetInvalidPathChars();
Path.GetInvalidFileNameChars();
andre.lopes@studentpartners.com.br
81. Introdução ao .NET Framework
Arquivos
FileSystemWatcher
Sinaliza qualquer modificação na estrutura de arquivo informada
FileSystemWatcher fs = new FileSystemWatcher();
fs.Path = @"C:";
fs.IncludeSubdirectories = true;
fs.EnableRaisingEvents = true;
fs.Changed += new FileSystemEventHandler(Modificado);
fs.Created += new FileSystemEventHandler(Modificado);
fs.Deleted += new FileSystemEventHandler(Modificado);
fs.Renamed += new RenamedEventHandler(Renomeado);
andre.lopes@studentpartners.com.br
82. Introdução ao .NET Framework
Arquivos
FileSystemWatcher
private static void Modificado(object source,
FileSystemEventArgs e)
{
// Especifica o arquivo e se foi modificado,
//criado, ou deletado.
Console.WriteLine(‚Arquivo: " + e.FullPath +
" " + e.ChangeType);
}
private static void Renomeado(object source,
RenamedEventArgs e)
{
// Especifica o nome original e o novo do arquivo
Console.WriteLine(‚Arquivo: {0} renomeado para {1}",
e.OldFullPath, e.FullPath);
}
andre.lopes@studentpartners.com.br
83. Introdução ao .NET Framework
Arquivos
TreeView
Controle usado para mostrar informações hierárquicas, estrutura
de arquivos, em uma estrutura de árvore
System.Windows.Forms
- Info1 TreeNode
+Info1.1 TreeNode
+Info1.2
- Info1.3
TreeView +Info1.3.1 TreeNode
+Info1.4
+ Info2
+ Info3
+Info3.1
andre.lopes@studentpartners.com.br
85. Introdução ao .NET Framework
Arquivos
Demo: Aplicação para
gerenciamento de arquivos
DirectoryInfo
FileInfo
TreeView
FileSystemWatcher
DriveInfo
TreeNode
andre.lopes@studentpartners.com.br
86. Introdução ao .NET Framework
Gráficos
Desenhando Gráficos
Trabalhando com imagens
Formatando textos
Customizando controles
andre.lopes@studentpartners.com.br
87. Introdução ao .NET Framework
Gráficos
System.Drawing
Criar gráficos a partir do zero
Adicionar circulos, linhas e outras formas a interface do usuário
dinamicamente.
Editar e redimensionar figuras
Mudar taxa de compressão de imagens salvas no disco
Adicionar logomarcas copyright ou texto a imagens
andre.lopes@studentpartners.com.br
88. Introdução ao .NET Framework
Gráficos
System.Drawing
Graphics
Região onde todo desenho é feito
Form
Button
Panel
etc
Control.CreateGraphics()
andre.lopes@studentpartners.com.br
89. Introdução ao .NET Framework
Gráficos
System.Drawing
Brush
SolidBrush
SolidBrush solido = new SolidBrush(Color.Green);
LinearGradientBrush
Pen
Pen p = new Pen(Color.Red, 5);
Pen p = new Pen(solido,5);
andre.lopes@studentpartners.com.br
90. Introdução ao .NET Framework
Gráficos
System.Drawing
Estilos de lápis
Pen p = new Pen(Color.Red, 5);
P.DashStyle = DashStyle.Dot
P.DashStyle = DashStyle.Dash
P.DashStyle = DashStyle.DashDot
P.DashStyle = DashStyle.Solid
andre.lopes@studentpartners.com.br
91. Introdução ao .NET Framework
Gráficos
System.Drawing
Estilos de lápis
Pen p = new Pen(Color.Red, 5);
p.StartCap = LineCap.ArrowAnchor;
p.EndCap = LineCap.ArrowAnchor;
p.StartCap = LineCap.DiamondAnchor;
andre.lopes@studentpartners.com.br
99. Introdução ao .NET Framework
Gráficos
Textos
FontFamily
FontFamily ff = new FontFamily(‚Consolas‛);
Font
Font font = new Font(ff,16);
font.Bold = true;
font.Italic = false;
FontConverter conversor = new FontConverter();
font = (Font)conversor.ConvertFromString(‚Arial,12‛);
grafico.DrawString(‚.Net Framework‛, font,
Brushes.Black, Point);
andre.lopes@studentpartners.com.br
100. Introdução ao .NET Framework
Gráficos
Demo: Trabalhando imagens
e textos
Pen
SolidBrush
Graphics
andre.lopes@studentpartners.com.br
101. Introdução ao .NET Framework
Gráficos
Customização
A grande maioria dos tipos em .Net são classes
Os controles gráficos (botões, formulários, etc) são classes
Podem ser herdados
Métodos podem ser sobrecarredaos
Todo tipo gráfico tem um evento chamado OnPaint
protected void OnPaint(PaintEventArgs e)
{
e.Grapics.DrawLine(Pen, Point, Point);
base.OnPaint(e);
}
andre.lopes@studentpartners.com.br
102. Introdução ao .NET Framework
Gráficos
Customização
public sealed class ButtonComLinhas : System.Windows.Forms.Button
{
public ButtonComLinhas(){}
protected override void OnPaint(PaintEventArgs e)
{
e.Graphics.DrawRectangle(new Pen(Brushes.Black),
e.ClipRectangle);
base.OnPaint
}
}
andre.lopes@studentpartners.com.br
105. Introdução ao .NET Framework
Threads
Multi Thread
Tarefas que demoram para serem concluídas travam a interface
do usuário durante todo seu processamento
Impressão de relatórios
Download de arquivos
Consultas ao banco de dados
Cálculo complexos
Taferas assíncronas
BackgroundWorker
Várias tarefas ao mesmo tempo
Thread
andre.lopes@studentpartners.com.br
106. Introdução ao .NET Framework
Threads
Multi Thread
10 min 10 min 10 min 10 min
Tarefa 1 Tarefa 2 Tarefa 3 Tarefa 4 40 min
Se, e somente se, as tarefas forem independentes
Tarefa 1
Tarefa 2
10 min
Tarefa 3
Tarefa 4
andre.lopes@studentpartners.com.br
107. Introdução ao .NET Framework
Threads
BackgroundWorker
Não manipular a interface do usuário
ProgressChanged
RunWorkerCompleted
System.ComponentModel
BackgroundWorker bWorker = new BackgroundWorker();
bWorker.DoWork += new DoWorkEventHandler(CalcFatorial);
bWorker.RunWorkerCompleted += new
RunWorkerCompletedEventHandler(Fatorial_Completo);
bWorker.RunWorkerAsync(10);
andre.lopes@studentpartners.com.br