Baixe o app para aproveitar ainda mais
Prévia do material em texto
6 SNIPPETS Fragmentos de códigos são recursos úteis disponíveis na IDE Visual Studio C# para acelerar o processo de desenvolvimento de software. Denominados snippets, os fragmentos de códigos permitem digitar algumas letras e, em seguida, pressionar tab duas vezes para substitui-las pelos trechos de códigos. Snippets podem reduzir declarações repetitivas e evitar Lesões Excesso de Repetição (LER). Abaixo, são apresentados alguns exemplos snippets da IDE Visual Studio C#. Clique com o botão direito e, em seguida, clique em Insert Snippet, a figura abaixo apresenta um das opções para inserção de Snippet. Outra opção para inserir um Snippet é utilizar o recurso disponível das teclas de atalho Ctrl + K, X. A seguir são apresentadas as definições de snippets. # if Cria um # if diretiva e um # endif diretiva. Em qualquer lugar. # region Cria um # Region diretiva e um # endregion diretiva. Em qualquer lugar. ~ Cria um destruidor de classe que contém. Dentro de uma classe. attribute Cria uma declaração de uma classe que deriva de Attribute. Dentro de um espaço para nome (incluindo o namespace global), uma classe ou estrutura. checked Cria um check- bloco. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. class Cria uma declaração de classe. Dentro de um espaço para nome (incluindo o namespace global), uma classe ou estrutura. Construtor Cria um construtor para a classe continente. Dentro de uma classe. Cw Cria uma chamada para WriteLine. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. do Cria um http://msdn.microsoft.com/pt- br/library/370s1zax.aspxwhile loop. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. else Cria um else bloco. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. enum Cria um enum declaração. Dentro de um espaço para nome (incluindo o namespace global), uma classe ou estrutura. é igual a Cria uma declaração de método que substitui o Dentro de uma classe ou Equals método definido na Object classe. estrutura. exceção Cria uma declaração de uma classe que deriva de uma exceção (Exception por padrão). Dentro de um espaço para nome (incluindo o namespace global), uma classe ou estrutura. for Cria um para loop. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. foreach Cria um foreach loop. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. forr Cria um para um loop que decrementa a variável de loop após cada iteração. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. if Cria um Se bloco. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. Indexador Cria uma declaração do indexador. Dentro de uma classe ou estrutura. interface Cria um interface declaração. Dentro de um espaço para nome (incluindo o namespace global), uma classe ou estrutura. invocar Cria um bloco que invoca com segurança um evento. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. iterador Cria um iterador. Dentro de uma classe ou estrutura. iterindex Cria um "nomeado" par iterador e indexador Dentro de uma classe ou usando uma classe aninhada. estrutura. lock Cria um lock bloco. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. correio Cria uma chamada para MessageBox.Show.Talvez você precise adicionar uma referência a System. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. Namespace Cria um namespace declaração. Dentro de um espaço para nome (incluindo o namespace global). prop Cria um propriedade implementada de auto declaração. Dentro de uma classe ou estrutura. propfull Cria uma declaração de propriedade com get e set acessadores. Dentro de uma classe ou estrutura. propg Cria um somente leitura propriedade implementada de auto com uma "conjunto" chaves privadas acessador. Dentro de uma classe ou estrutura. Sim Cria um estáticoint da declaração de método principal. Dentro de uma classe ou estrutura. struct Cria um struct declaração. Dentro de um espaço para nome (incluindo o namespace global), uma classe ou estrutura. Svm Cria um estáticovoid da declaração de método principal. Dentro de uma classe ou estrutura. switch Cria um Alternar bloco. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. try Cria um try-catch bloco. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. tryf Cria um try-finally bloco. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. unchecked Cria um não verificado bloco. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. unsafe Cria um inseguros bloco. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. using Cria um usando diretiva. Dentro de um espaço para nome (incluindo o namespace global). while Cria um enquanto loop. Dentro de um método, um indexador, um acessador de propriedade ou um acessador do evento. 6.1 PROPRIEDADES AUTO-IMPLEMENTADAS As propriedades auto-implementadas são recursos da Linguagem Visual C# nas declarações de atributos de uma classe, sendo uma maneira concisa quando nenhuma lógica adicional é necessária nos assessores (get e set) das propriedades. 6.1.1 Propfull Cria uma declaração de propriedade com get e set acessadores. A seguir será apresentado o exemplo do código: using System; 1 using System.Collections.Generic; 2 using System.Linq; 3 using System.Text; 4 5 namespace Model 6 { 7 class Pessoa 8 { 9 private int codigo; 10 private string nome; 11 12 public int Codigo 13 { 14 get { return codigo; } 15 set { codigo = value; } 16 } 17 18 public string Nome 19 { 20 get { return nome; } 21 set { nome = value; } 22 } 23 } 24 6.1.2 Prop Cria um propriedade implementada de auto declaração. A seguir será apresentado o exemplo do código: namespace Model 1 { 2 class Endereco 3 { 4 public int Codigo { get; set; } 5 public string Logradouro { get; set; } 6 public string Cep { get; set; } 7 8 public Endereco() 9 { 10 } 11 } 12 } 13 6.1.3 Enum O enum é palavra-chave para declarar uma enumeração, um tipo distinto, que consiste em um conjunto de constantes nomeadas denominada lista de enumerador. Geralmente é melhor definir um enum dentro de um namespace para que todas as classes no namespace possam acessá-lo com a conveniência de igualdade. No entanto, um enum também pode ser aninhado dentro de uma classe ou struct. Por padrão, o primeiro enumerador tem o valor 0 e o valor de cada enumerador sucessiva aumenta em 1. A seguir é apresentado um exemplo de enum. enum Semana 1 { 2 domingo, segunda, terça, quarta, quinta, terça, sábado 3 } 4 6.1.4 Na PráticaA seguir, será apresentado um exemplo que envolve os conceitos apresentados. using System; 1 using System.Collections.Generic; 2 using System.Linq; 3 using System.Text; 4 5 namespace Model 6 { 7 class Endereco 8 { 9 public int Codigo { get; set; } 10 public string Logradouro { get; set; } 11 public string Cep { get; set; } 12 public TipoEndereco TipoEndereco { get; set; } 13 14 public Endereco() 15 { 16 } 17 } 18 19 enum TipoEndereco 20 { 21 residencial, 22 comercial 23 } 24 } 25 O intervalo entre as linhas 1 e 4 apresentam as declarações de bibliotecas que serão utilizadas na classe. A linha 6 define o nome do pacote que conterá as classes que pertençam ao modelo. O intervalo entre as linhas 10 e 13 apresentam as propriedades implementadas de auto declaração. A linha 15 apresenta o construtor padrão da classe e o intervalo entre as linhas 20 e 24 apresenta a estrutura enumerada do tipo de endereço. using System; 1 using System.Collections.Generic; 2 using System.Linq; 3 using System.Text; 4 5 namespace Model 6 { 7 class Pessoa 8 { 9 private int codigo; 10 private string nome; 11 Endereco endereco = new Endereco(); 12 13 public int Codigo 14 { 15 get { return codigo; } 16 set { codigo = value; } 17 } 18 19 public string Nome 20 { 21 get { return nome; } 22 set { nome = value; } 23 } 24 25 public Endereco Endereco 26 { 27 get { return endereco; } 28 set { endereco = value; } 29 } 30 } 31 } 32 33 O intervalo entre as linhas 10 e 12 apresentam as declarações de propriedades da classe Pessoa. No intervalo entre as linhas 14 e 30 são apresentados os get e set acessadores das propriedades. using System; 1 using System.Collections.Generic; 2 using System.Linq; 3 using System.Text; 4 using Model; 5 6 namespace Principal 7 { 8 class Program 9 { 10 static void Main(string[] args) 11 { 12 Pessoa pessoa = new Pessoa(); 13 Console.Write("*************************************************\n" + 14 "* Cadastro *\n" + 15 "*************************************************\n"); 16 Console.WriteLine("\nDados Pessoais"); 17 Console.Write("\tcódigo: "); 18 pessoa.Codigo = int.Parse(Console.ReadLine()); 19 Console.Write("\tnome: "); 20 pessoa.Nome = Console.ReadLine(); 21 22 Console.WriteLine("Endereco"); 23 Console.Write("\tTipo de Endereço:\n\t\t" + 24 "1 - residencial\n\t\t" + 25 "2 - comercial\n\t\t"); 26 27 int tipoEndereco = int.Parse(Console.ReadLine()); 28 if (tipoEndereco == 1) 29 { 30 pessoa.Endereco.TipoEndereco = TipoEndereco.residencial; 31 } 32 else if (tipoEndereco == 2) 33 { 34 pessoa.Endereco.TipoEndereco = TipoEndereco.comercial; 35 } 36 37 Console.Write("\tcódigo: "); 38 pessoa.Endereco.Codigo = int.Parse(Console.ReadLine()); 39 Console.Write("\tlogradouro: "); 40 pessoa.Endereco.Logradouro = Console.ReadLine(); 41 Console.Write("\tcep: "); 42 pessoa.Endereco.Cep = Console.ReadLine(); 43 44 Console.Write("*************************************************\n" + 45 "* Saída *\n" + 46 "*************************************************\n"); 47 Console.WriteLine("-Dados Pessoais"); 48 Console.Write("\tcódigo: " + pessoa.Codigo); 49 Console.Write("\tnome: " + pessoa.Nome); 50 51 Console.WriteLine("-Endereco"); 52 Console.WriteLine("\tTipo de Endereço: " + 53 pessoa.Endereco.TipoEndereco); 54 Console.WriteLine("\tcódigo: " + pessoa.Endereco.Codigo); 55 Console.WriteLine("\tlogradouro: " + pessoa.Endereco.Logradouro); 56 Console.WriteLine("\tcep: " + pessoa.Endereco.Cep); 57 Console.ReadKey(); 58 } 59 } 60 } 61
Compartilhar