Baixe o app para aproveitar ainda mais
Prévia do material em texto
Desenvolvimento de software Fabiano Gonçalves dos Santos Aula 3 Programação Modular • Os módulos são uma forma de compartimentar partes do código fonte de um programa, dividindo-o em trechos que estão ligados a funções e objetivos comuns • Dividir para conquistar 2 M ó d u lo s b á s ic o s o fe re c id o s p e lo . N E T F ra m e w o rk 3 Módulo Descrição Constants Contém diversas constantes que são utilizadas para compatibilidade com código Visual Basic antigo. ControlChars Contém constantes que representam caracteres de controle para impressão e exibição de texto. Conversion Contém métodos para converter números decimais em outras bases, dígitos de números para sequências de caracteres, sequências de números e dados de um tipo para outro. DateAndTime Contém membros que obtém a data ou hora atual, realizam cálculos de data, retornam uma data ou hora, configuram uma data ou hora e medem a duração de um processo. ErrObject Contém informações sobre erros de tempo de execução e métodos para alertar ou eliminar uma mensagem de erro. FileSystem Contém métodos que executam operações de arquivo, diretório ou pasta do sistema. Financial Contém procedimentos que são usados para cálculos financeiros. Globals Contém informações sobre a versão atual do mecanismo de execução de script. Information Contém os membros que retornam, testam ou verificam informações como, por exemplo, o tamanho de uma matriz, os nomes de tipos de dados e assim por diante. Interaction Contém membros que interagem com objetos, aplicativos e sistemas. Strings Contém membros que executam operações em cadeia de caracteres, como pesquisar conteúdo em uma seqüência de caracteres, obter o comprimento de uma seqüência de caracteres, reformatação e assim por diante. VBMath Contém os métodos que realizam operações matemáticas. Exemplo 4 Métodos • Os termos Sub-rotina, Função e Método são praticamente sinônimos no contexto geral das linguagens de programação • No Visual Basic há diferenças no uso dos três termos • Os Métodos podem ser Funções ou Sub- rotinas • Os Métodos são utilizados para compartimentar código e devem estar contidos em Módulos e Classes. 5 Exemplo 6 Vantagens • O uso da programação modular e a compartimentação de métodos pode trazer várias vantagens no desenvolvimento de software –Eliminação de redundância de códigos –Reaproveitamento dos métodos em outros aplicativos. –Mais organizado e legível, de mais fácil correção; –Com a modularização, é possível que cada programador trabalhe em partes específicas do código 7 Sub-rotinas e Funções • Funções e Sub-rotinas podem ser definidos, resumidamente, como um bloco de código que pode ser invocado dentro de outros blocos 8 E x e m p lo d e s o b re c a rg a d e fu n ç ã o 9 Module1.vb 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 Module Module1 Sub Main() Console.WriteLine(somador()) Console.WriteLine(somador(5)) Console.WriteLine(somador(5, 7)) Console.ReadLine() End Sub Function somador() As String Return "A soma 0 + 0 é igual a 0" End Function Function somador(ByVal val1 As Integer) As String Dim soma As Integer = val1 + val1 Return String.Format("A soma {0} + {1} é igual a {2}", val1, val1, soma) End Function Function somador(ByVal val1 As Integer, ByVal val2 As Integer) As String Dim soma As Integer = val1 + val2 Return String.Format("A soma {0} + {1} é igual a {2}", val1, val2, soma) End Function End Module E n c a d e a m e n to d e F u n c õ e s e S u b -r o ti n a s 10 Module1.vb 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 Module Module1 Function AreaQuadrado(ByVal Comprimento As Double) 'Calcula a área do quadrado Return Comprimento * Comprimento End Function Function VolumeCubo(ByValComprimento As Double) 'Chama a função AreaQuadrado e com ela calcula o volume do cubo Return AreaQuadrado(Comprimento) * Comprimento End Function Sub Main() Console.WriteLine(VolumeCubo(3.0)) Console.ReadKey() End Sub End Module E s c o p o d e V a ri á v e is 11 Module1.vb 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 Module Module1 Private Numero As Double Sub Duplicar() 'Acessa número declarado foram da sub-rotina e o duplica Numero = Numero * 2 End Sub Sub Triplicar() 'Acessa número declarado foram da sub-rotina e o triplica Numero = Numero * 3 End Sub Sub Main() Numero = 1 Duplicar() Triplicar() Console.WriteLine(Numero) Console.ReadKey() End Sub End Module A palavra "escopo", no contexto das linguagens de programação, significa limite, abrangência ou alcance. E s c o p o d e V a ri á v e is 12 Module1.vb 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 Module Module1 Private Numero As Double Sub Duplicar() 'Acessa número declarado foram da sub-rotina e o duplica Numero = Numero * 2 End Sub Sub Triplicar() 'Acessa número declarado foram da sub-rotina e o triplica Numero = Numero * 3 End Sub Sub Main() Numero = 1 Duplicar() Triplicar() Console.WriteLine(Numero) Console.ReadKey() End Sub End Module Console 6 E s c o p o d e M é to d o s 13 exemplo.vb 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Module Temperatura Public Function CParaF(ByVal temp_celsius As Decimal) Dim temp_fahrenheit As Decimal temp_fahrenheit = temp_celsius * 1.8 + 32 Return temp_fahrenheit End Function Public Function FParaC(ByRef temp_fahrenheit As Decimal) Dim temp_celsius As Decimal temp_celsius = (temp_fahrenheit - 32) / 1.8 Return temp_celsius End Function End Module Module Module1 Sub Main() Dim temp, temp_convertida As Decimal Console.WriteLine("Digite uma temperatura em graus Celsius:") temp = Console.ReadLine() temp = Convert.ToDecimal(temp) temp_convertida = Temperatura.CParaF(temp) Console.WriteLine("A temperatura digitada equivale a {0} Fahrenheit.", temp_convertida) Console.ReadKey() End Sub End Module Desenvolvimento de software Fabiano Gonçalves dos Santos Atividade 3 14 Vamos praticar 15 © A lp h a s p ir it | D re a m s tim e .c o m
Compartilhar