2. Objectivos
Tipos de Dados
●
Comparação Progress vs .Net
–
Dimensionar Variáveis
●
Âmbito (scope) das variáveis
●
Conversões entre Tipos de Dados
●
3. Objectivos
Estruturas Condicionais
●
Estruturas de Ciclo
●
Procedimentos e Funções
●
Operadores e Funções Matemáticas
●
Familiarização com o VStudio
●
4. Tipos de Dados (Progress vs .Net)
Progress .Net
Char Char, String
Date Date
Decimal Decimal
Integer Integer
Logical Boolean
5. Tipos de Dados
VB6 .NET Framework VB.Net C# signed bytes valores
Boolean System.Boolean Boolean bool 1 true / false
Byte System.Byte Byte byte sim 1 0 / 255
Integer System.Int16 Short short sim 2 -32768 / 32767
Long System.Int32 Integer int sim 4 -2147483648 /
2147483647
--- System.Int64 Long long sim 8 -9223372036854775808 /
9223372036854775807
Single System.Single Single float sim 4 precisão até 7 digitos
Double System.Double Double double sim 8 precisão até 15 digitos
--- System.Decimal Decimal decimal sim 12 precisão até 28 digitos
6. Declarar Variáveis
Indicar tipo de dados de uma variável
–
Declarar SEMPRE o tipo das variáveis
–
Definir Option explicit On
●
Project / Properties / Common Properties / Build
–
Tools / Options / Projects / VB Defaults
–
Evitamos
●
gralhs gralhas
–
Beneficiamos
●
intellisense
–
verificação no compilador
–
performance
–
7. Instanciar Variáveis
instanciar = criar um objecto concreto a partir de
–
um molde (classe)
Diferença entre Tipo de Dados e Objecto
–
dim i as integer 'valor inicial = 0
●
dim x as TextBox ' valor inicial = nothing
●
x = New TextBox
–
Keyword – Is => comparações entre objectos
–
object1 is object2
●
object1 = object2
●
Keyword – Nothing
–
object1 is nothing
●
9. Exercicio 1
Criar Projecto
●
Visual Studio
nome projecto
–
0201_variaveis
●
testar âmbito das
–
variáveis
10. Exercicio 2
Criar novo
●
módulo
declarar vs
–
instanciar
11. Conversões entre Tipos de Dados
Cancelar SEMPRE conversão implicita de dados
–
Definir Option Strict On
●
Project / Properties / Common Properties / Build
–
Tools / Options / Projects / VB Defaults
–
Option Strict Off = Option Slow On
●
...He also calls this Option
Beneficiamos Slow, referring to the slow,
●
expensive IL that must be
intellisense
– emitted behind the scenes
for this magical type
verificação no compilador
–
conversion scheme to
performance
–
work-- the source of
endless quot;VB.NET is slower
than C#quot; benchmarks.
12. Implicações
Temos que conhecer as funções de conversão de
–
dados
.toString()
●
Convert.To...
●
Cint(), Cdbl(), ...
●
Ctype(expressão, tipo de dados) => funciona desde que
●
haja uma conversão válida.
DirectCast(expressão, tipo de dados) => só funciona se o
●
tipo de dados da expressão for igual ao tipo de dados
especificado
13. Exercicio 3
Criar novo módulo
●
conversões de tipos
–
de dados
14. Constantes
Constante => variável com valor imutável
–
Beneficios
Performance
●
Legibilidade
●
“Avoid using magic numbers and string literals in your code”
–
18. Procedimentos e Funções
Objectivos
●
componentizar
–
dividir para conquistar
–
loosely coupled
–
independencia entre módulos.
●
um módulo não precisa de saber os detalhes de
●
implementação do outro
20. Procedimentos e Funções
Reduzir ao máximo / eliminar o acesso a variáveis
–
que não tenham sido declaradas no procedimento
ou função
passar sempre essas variaveis como parâmetro
●
21. Procedimentos e Funções
ByVal / ByRef
–
By Value (ByVal)
●
copia o valor da variável
–
By Reference (ByRef)
●
copia a variável
–
● menos performante
● causa alteração na variavel do módulo que chamou a função
Enviar sempre valores ByVal
●
22. Exercicio 4
Criar Projecto Visual
●
Studio
nome projecto
–
0202_procedimentos
●
testar passagem de
–
parâmetros
23. Operadores
Aritméticos
Adição + +
Subtração - -
Multiplicação * *
Divisão / /
Exponencial ^ Exp
Resto da Divisão Inteira mod Modulo
Lógicos
E And And
Negação Not Not
Ou Or Or
Ou Exclusivo Xor ---
E Também AndAlso ---
Ou Então OrElse ---
Funções
Valor Absoluto Math.Abs Abs
Arrendondamento Math.Round Round
24. Visual Studio
Solução vs Projecto
●
1 solução > 1 projecto
–
pode ter projectos em linguagens / plataformas
●
diferentes (windows/web; vb.net/c#)
Opção Set as Startup Project
–
Opção Startup Object
–
Opção Project Dependencies
–
Opção Find and Replace
–
25. Objectivos
Tipos de Dados
●
Comparação Progress vs .Net
–
Dimensionar Variáveis
●
Âmbito (scope) das variáveis
●
Conversões entre Tipos de Dados
●
26. Objectivos
Estruturas Condicionais
●
Estruturas de Ciclo
●
Procedimentos e Funções
●
Operadores e Funções Matemáticas
●
Familiarização com o VStudio
●