C# -  INTERMEDIÁRIO I By Mateus Alves.
O que não veremos nesse curso: Lógica de programação. Vetores, Matriz, Registro Banco de Dados. Detalhes de como funcionam bancos de dados, tipo de dados, conceitos de banco de dados. Orientação a Objetos. Conceitos. Perfumaria Enfeites.
O que veremos nesse curso: Padrões de Projetos. Transfer Object(Value Object). Data Access Object. Singleton. MVC Separação em Camadas O porquê. Padronização de Código O porquê. Abstração / Composição O Que é? O porquê.
O que veremos nesse curso: Tipo Primitivos. Estrutura de dados. Acesso a Dados em C# SQLConnection/ Derivados. SQLDataReader SQLCommand
O que veremos nesse curso: Formulários:  Criação de Formulários. Customização de formulários. Controles Customizados. Criar controles Customizados. Configurations Configurando sua aplicação
O que veremos nesse curso: ReportView Criar Relatórios Criar Relatórios com sub relatórios. Projetos de Setup
Padrões de Projetos - TO Transfer Object: Conceito: Data transfer object (DTO), formerly known as value objects or VO, is a design pattern used to transfer data between software application subsystems. DTOs are often used in conjunction with data access objects to retrieve data from a database. Vantagens: Fornecer tipagem mais forte – É muito melhor usar BigDecimal do que String na assinatura de um método. Ou Date em vez de três inteiros.  Fornecer métodos de manipulação do valor de forma coesa – Se o objeto representa um numero porque não ter métodos plus() ou mutliply()? Este métodos se fornam aceleradores já que são usado inumeras vezes em vez de código que transforma o valor em algo manipulável e faz a operação e converte de volta. Repetir isso sempre que é necessário torna o codigo poluido e de dificil manutenção ( já para não dizer sensivel a erros)  Desvantagens: Concorrência.
Padrões de Projeto- DAO DAO(DAL)- Data Access Object. Conceito DAO  (acrônimo de  Data Access Object ), é um  padrão  para  persistência de dados  que permite separar regras de negócio das regras de acesso a banco de dados. Todas as funcionalidades de bancos de dados, tais como obter as conexões, mapear objetos C# para tipos de dados  SQL  ou executar comandos SQL, devem ser feitas por classes de DAO.
Padrões de Projeto- DAO Vantagens: Padronização de projetos e de regras de persistências, facilidade em utilização de outros meios de persistência. Desvantagem: seguir rigorosamente os padrões da interface estabelecida, aumento de classes do projeto
Padrões de Projeto - Singleton Singleton: Conceito:  Singleton , é um  padrão de projeto de software  (do  inglês   Design Pattern ). Este padrão garante a existência de apenas uma instância de uma  classe , mantendo um ponto global de acesso ao seu  objeto . Nota linguística: O termo vem do significado em inglês quando se resta apenas uma carta nas mãos, num  jogo de baralho . Muitos projetos necessitam que algumas classes tenham apenas uma instância. Por exemplo, em uma aplicação que precisa de uma infraestrutura de  log  de dados , pode-se implementar uma classe no padrão  singleton . Desta forma existe apenas um objeto responsável pelo log em toda a aplicação que é acessível unicamente através da classe singleton
Padrões de Projetos Singleton Vantagens: Uma única instancia sempre. Desvantagens Testes Unitários.
CHEGA DE ENRROLATION!!! Definindo nossa aplicação. Cliente: Preciso de um sistema que faça cadastro de produtos, vendas,  e que tenha relatórios de Estoque, e caixa detalhado, relatório de comição por usuários.
1° Passo Definirmos Plataforma Windows .Net Framework C# SQLServer Windows Formulários.
2. Passo Ferramentas que iremos utilizar. Micro$oft SqlServer. Micro$oft SqlServer  Manegment Studio. Micro$oft Visual Studio 2008 express Edition.  Micro$oft Report View. Definirmos o banco de dados: Criaremos uma base segundo a figura abaixo.
BD
3. Passo: Criar formulário de Cadastro Criar um formulário para cadastro de usuário. Criar um formulário para pesquisa de usuários. Acesso ao Banco de dados.
4. Passo:Conectar ao Banco de Dados. SqlConnection SQLConnection = new SqlConnection(); try { SQLConnection.ConnectionString = ConnectionString; SQLConnection.Open(); // You can get the server version  // SQLConnection.ServerVersion } catch (Exception Ex) { // Try to close the connection if (SQLConnection != null) SQLConnection.Dispose(); // Create a (useful) error message string ErrorMessage = "A error occurred while trying to connect to the server."; ErrorMessage += Environment.NewLine; ErrorMessage += Environment.NewLine; ErrorMessage += Ex.Message; // Show error message (this = the parent Form object) MessageBox.Show(this, ErrorMessage, "Connection error", MessageBoxButtons.OK, MessageBoxIcon.Error); // Stop here return; }
5. Passo: Persistência Copiar informações da Aplicação para o banco de dados e do banco de dados para aplicação. Aqui iremos usar padrões de projetos visto no inicio dessa aula: Primeiro Padrão que iremos usar é o Singleton: Como? Por que?
6: Passo criação do TO LET’ GO
7. Passo: Criação do DAO Let´s GO.
8. Criando o Negocio. Let´s GO.
Finalizando nosso cadastro.
2. Criando cadastro de Produtos: Seguir os passos anteriores.

Aula1

  • 1.
    C# - INTERMEDIÁRIO I By Mateus Alves.
  • 2.
    O que nãoveremos nesse curso: Lógica de programação. Vetores, Matriz, Registro Banco de Dados. Detalhes de como funcionam bancos de dados, tipo de dados, conceitos de banco de dados. Orientação a Objetos. Conceitos. Perfumaria Enfeites.
  • 3.
    O que veremosnesse curso: Padrões de Projetos. Transfer Object(Value Object). Data Access Object. Singleton. MVC Separação em Camadas O porquê. Padronização de Código O porquê. Abstração / Composição O Que é? O porquê.
  • 4.
    O que veremosnesse curso: Tipo Primitivos. Estrutura de dados. Acesso a Dados em C# SQLConnection/ Derivados. SQLDataReader SQLCommand
  • 5.
    O que veremosnesse curso: Formulários: Criação de Formulários. Customização de formulários. Controles Customizados. Criar controles Customizados. Configurations Configurando sua aplicação
  • 6.
    O que veremosnesse curso: ReportView Criar Relatórios Criar Relatórios com sub relatórios. Projetos de Setup
  • 7.
    Padrões de Projetos- TO Transfer Object: Conceito: Data transfer object (DTO), formerly known as value objects or VO, is a design pattern used to transfer data between software application subsystems. DTOs are often used in conjunction with data access objects to retrieve data from a database. Vantagens: Fornecer tipagem mais forte – É muito melhor usar BigDecimal do que String na assinatura de um método. Ou Date em vez de três inteiros. Fornecer métodos de manipulação do valor de forma coesa – Se o objeto representa um numero porque não ter métodos plus() ou mutliply()? Este métodos se fornam aceleradores já que são usado inumeras vezes em vez de código que transforma o valor em algo manipulável e faz a operação e converte de volta. Repetir isso sempre que é necessário torna o codigo poluido e de dificil manutenção ( já para não dizer sensivel a erros) Desvantagens: Concorrência.
  • 8.
    Padrões de Projeto-DAO DAO(DAL)- Data Access Object. Conceito DAO (acrônimo de Data Access Object ), é um padrão para persistência de dados que permite separar regras de negócio das regras de acesso a banco de dados. Todas as funcionalidades de bancos de dados, tais como obter as conexões, mapear objetos C# para tipos de dados SQL ou executar comandos SQL, devem ser feitas por classes de DAO.
  • 9.
    Padrões de Projeto-DAO Vantagens: Padronização de projetos e de regras de persistências, facilidade em utilização de outros meios de persistência. Desvantagem: seguir rigorosamente os padrões da interface estabelecida, aumento de classes do projeto
  • 10.
    Padrões de Projeto- Singleton Singleton: Conceito: Singleton , é um padrão de projeto de software (do inglês Design Pattern ). Este padrão garante a existência de apenas uma instância de uma classe , mantendo um ponto global de acesso ao seu objeto . Nota linguística: O termo vem do significado em inglês quando se resta apenas uma carta nas mãos, num jogo de baralho . Muitos projetos necessitam que algumas classes tenham apenas uma instância. Por exemplo, em uma aplicação que precisa de uma infraestrutura de log de dados , pode-se implementar uma classe no padrão singleton . Desta forma existe apenas um objeto responsável pelo log em toda a aplicação que é acessível unicamente através da classe singleton
  • 11.
    Padrões de ProjetosSingleton Vantagens: Uma única instancia sempre. Desvantagens Testes Unitários.
  • 12.
    CHEGA DE ENRROLATION!!!Definindo nossa aplicação. Cliente: Preciso de um sistema que faça cadastro de produtos, vendas, e que tenha relatórios de Estoque, e caixa detalhado, relatório de comição por usuários.
  • 13.
    1° Passo DefinirmosPlataforma Windows .Net Framework C# SQLServer Windows Formulários.
  • 14.
    2. Passo Ferramentasque iremos utilizar. Micro$oft SqlServer. Micro$oft SqlServer Manegment Studio. Micro$oft Visual Studio 2008 express Edition. Micro$oft Report View. Definirmos o banco de dados: Criaremos uma base segundo a figura abaixo.
  • 15.
  • 16.
    3. Passo: Criarformulário de Cadastro Criar um formulário para cadastro de usuário. Criar um formulário para pesquisa de usuários. Acesso ao Banco de dados.
  • 17.
    4. Passo:Conectar aoBanco de Dados. SqlConnection SQLConnection = new SqlConnection(); try { SQLConnection.ConnectionString = ConnectionString; SQLConnection.Open(); // You can get the server version // SQLConnection.ServerVersion } catch (Exception Ex) { // Try to close the connection if (SQLConnection != null) SQLConnection.Dispose(); // Create a (useful) error message string ErrorMessage = "A error occurred while trying to connect to the server."; ErrorMessage += Environment.NewLine; ErrorMessage += Environment.NewLine; ErrorMessage += Ex.Message; // Show error message (this = the parent Form object) MessageBox.Show(this, ErrorMessage, "Connection error", MessageBoxButtons.OK, MessageBoxIcon.Error); // Stop here return; }
  • 18.
    5. Passo: PersistênciaCopiar informações da Aplicação para o banco de dados e do banco de dados para aplicação. Aqui iremos usar padrões de projetos visto no inicio dessa aula: Primeiro Padrão que iremos usar é o Singleton: Como? Por que?
  • 19.
    6: Passo criaçãodo TO LET’ GO
  • 20.
    7. Passo: Criaçãodo DAO Let´s GO.
  • 21.
    8. Criando oNegocio. Let´s GO.
  • 22.
  • 23.
    2. Criando cadastrode Produtos: Seguir os passos anteriores.