890 likes | 1k Views
Visual C# Express Edition. Sumário. Introdução Aplicações Console e Windows. Ferramentas. Compiladores Debuggers Linguagens de programação Motor (“Engine”) de execução. Microsoft Visual Studio.
E N D
Sumário • Introdução • Aplicações Console e Windows
Ferramentas • Compiladores • Debuggers • Linguagens de programação • Motor (“Engine”) de execução
Microsoft Visual Studio • O Microsoft Visual Studio não é explicitamente necessário para o desenvolvimento de aplicações .NET porém ele fornece várias vantagens • É possível desenvolver aplicações usando Notepad + o compilador via linha de comando
Versões do Visual Studio • Visual Studio 2008 Standard Edition • Visual Studio 2008 Professional Edition • Visual Studio 2008 Enterprise Edition • Visual C# 2008 Express Edition
Microsoft Visual C# 2008 Express Edition • É uma ferramenta de desenvolvimento voltada a produtividade • É uma ferramenta RAD (Rapid Application Development) • Permite desenvolver aplicações Windows • É voltada para programadores iniciantes
C# • C# é uma das linguagens de programação disponível para o .NET Framework (outros exemplos de linguagens são: VB, C++, JScript, J#) • C# é uma linguagem Orientada a Objetos (ela permite que sejam desenvolvidas aplicações procedurais, aplicações puramente OO ou uma mistura das duas)
Tipos de Aplicações • Windows Applications (com GUI) • Console Applications (usa modo texto) • Componentes Reutilizáveis (Reusable Components) ou Biblioteca de Classes ( Class Libraries)
Diferença entre Console Applications e Windows Applications • Aplicações de Console não possuem interface gráfica e simplesmente usa o modo texto para comunicar com o usuário • Aplicações Windows são aplicações que possuem interface gráfica com o usuário (GUI), com menus, botões, janelas, barra de ferramentas, etc
IDE (Integrated Development Environment) • Ambiente de Desenvolvimento Integrado • É a aplicação que prove todas as ferramentas necessárias para projetar, planejar, desenvolver e distribuir suas aplicações
Iniciando o Visual C# Express Edition • Clique em Iniciar Programas Microsoft Visual C# 2008 Express Edition
Visual C# 2008 Express Edition barra de menus barra de ferramentas
Página de Início (Start Page) • Projetos Recentes (Recent projects) • Exibe a lista de projetos ou soluções que foram recentemente abertos • Iniciando (Getting Started) • Essa seção permite a busca de ajuda quando necessário • Visual C# Express Headlines • Onde encontramos notícias específicas sobre o Visual C# • MSDN Visual C# RSS Feed
Componentes do IDE • Barra de Menus (Menu bar) • É onde podemos selecionar e executar quase todas as ações relacionadas ao projeto, arquivos e Help (ajuda) • Barra de Ferramentas Principal (Main Toolbar) • Contem icons que são atalhos para opções também presentes na barra de menu • Caixa de Ferramentas (Toolbox) • Contem os controles que podem ser usados pela aplicação • Solution Explorer (Explorador da Solução) • Lista os arquivos e componentes no projeto • Barra de Status (Status Bar) • Exibe informações correspondentes ao estado de certas operações ativas
Criando uma aplicação console • Selecione File / New Project na Barra de Menu • Selecione Console Application na caixa de diálogos New Project e digite PrimeiraAplicacaoConsole e clique no botão OK
Construindo e Executando a Aplicação • Para fazer o build da aplicação, selecione Build / Build Solution a partir da barra de menu ou pressione F6 • Para executar a aplicação, pressione Ctrl+F5 (quando usamos o Start Without Debug, as aplicações console exibem uma mensagem para pressionar uma tecla)
Aplicação Console gerada pelo Visual C# Express Edition using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { } } }
Aplicação válida mais simples em C# class Programa { static void Main() { } }
Criação de um Programa • Problema Algoritmo implementação em uma linguagem de programação (C#, C, etc)
Classe System.Math • Provê constantes e métodos estáticos para trigonometria, logaritmos e outras funções matemáticas comuns
Math.Sqrt() O método Math.Sqrt() recebe como argumento um número formato double e retorna um número também no formato double: double Math.Sqrt(double valor); Observe que não podemos atribuir uma variável double em uma variável float Exemplo: double raiz = Math.Sqrt(25);
Math.Pow() O método Math.Pow() recebe como argumento uma base e um expoente no formato double e retorna a potência também no formato double: double Math.Pow(double b, double e); Exemplo: double valor = Math.Pow(5,2);
Exemplo: Calculo da Área de um Retângulo • Entre o valor da base • Entre o valor da altura • Calcule a area = base * altura • Exiba a base, altura e a area
Código para Cálculo da Área de um Retâgulo // obtém a altura do retângulo int altura; // obtém a largura do retângulo int largura; string strAltura; string strLargura; System.Console.Write("Entre com a altura: "); strAltura=System.Console.ReadLine(); altura = int.Parse(strAltura); System.Console.Write("Entre com a largura: "); strLargura = System.Console.ReadLine(); largura = int.Parse(strLargura); //área do retângulo int area; area = altura * largura; System.Console.WriteLine("Area = " + area.ToString());
Cálculo de Média • Entre com a primeira nota (n1) • Entre com a segunda nota (n2) • Calcule a média (m), onde m = (n1+n2)/2 • Exibe as notas e a média final
Cálculo de Média using System; class Program { static void Main(string[] args) { String notaDigitada; Console.WriteLine("Entre com a primeira nota (N1): "); // Le a primeira nota digitada notaDigitada = Console.ReadLine(); float n1 = float.Parse(notaDigitada); Console.WriteLine("Entre com a segunda nota (N2): "); // Le a segunda nota digitada notaDigitada = Console.ReadLine(); float n2 = float.Parse(notaDigitada); // Calcula a média entre n1 e n2 float media = (n1 + n2) / 2; // Exibe a média calculada Console.WriteLine("A média entre {0} e {1} eh {2}", n1, n2, media); } }
Saudação • Entre com o nome • Entre com a idade • Exibe o nome e a idade
Saudação using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Hello { class Saudacao { static void Main(string[] args) { String nome; String idade; System.Console.Write("Qual e seu nome: "); nome = System.Console.ReadLine(); System.Console.Write("Qual e sua idade: "); idade = System.Console.ReadLine(); System.Console.WriteLine("Ola " + nome + ". Voce tem " + idade + " anos."); } } } namespace
Construindo uma Aplicação Windows • Selecione File / New Project na Barra de Menu • Selecione Windows Form Application na caixa de diálogos New Project e digite PrimeiraAplicacaoWindows e clique no botão OK
Projeto • Um projeto é um container para todos os itens da aplicação, tais como: formulários, código fonte e recursos • Ele também guarda informações sobre as configurações
Namespace (Espaço de Nomes) • Os namespaces permitem que identificadores sejam nomeados de forma que não haja colisão entre seus nomes, isto é, dois identificadores iguais no mesmo código • Uma instrução using adiciona um namespace a um escopo
Name collision (Colisão de Nomes) • Ocorre quando dois identificadores possuem o mesmo nome dentro de um namespace • A colisão de nomes deve ser evitada
Fully Qualified Name • O nome totalmente qualificado (fully qualified name) é formado pelo <namespace> mais o <nome da classe> • <namespace>.<nome da classe> Exemplo: System.Console, onde System representa o Namespace e Console é a classe
Design Layout • Form designer (projeto do formulário) • Basic layout (layout básico) • Advanced layout (layout avançado)
Janela de Propriedades (Properties Window) • Selecione View / Properties Window
Properties Window (janela de propriedades) • As propriedades influenciam como o controle se comporta ou qual a sua aparência quando executamos a aplicação • Exemplo de propriedades de um formulário: • Text: texto exibido na janela • Size:Width: largura da janela • Size:Height: altura da janela
Window Form Controls (Controles dos Formulários Windows) • Text box • Button • Web browser
Controles Comuns de Aplicação no Windows • Button • TextBox • Label • RadioButton • CheckBox • ComboBox • ListBox • ToolTip • NumericUpDown
Pointer Button CheckBox CheckedListBox ComboBox DateTimePicker Label LinkLabel ListBox ListView MarkedTextBox MonthCalendar Notification NumericUpDown PictureBox ProgressBar RadioButton RichTextEditor TextBox ToolTip TreeView WebBrowser Controles Comuns
Button CheckBox CheckedListBox ComboBox Label ListBox RadioButton TextBox Controles mais comuns
Algumas propriedades • Text - texto associado com o controle • Name - indica o nome usado no código para identificar o objeto • BackColor - a cor de fundo do componente • Enabled - indica se o controle está habilitado ou não • ForeColor - a cor de frente do componente, que é usado para exibir o texto • ReadyOnly - controla se o texto no controle poderá ser editado ou não • Visible - determina se o controle é visível ou escondido
Exemplo de Formulário textBox1 button1.Text = “Preenche’ button2.Text = “Limpa” form1.Text = “Formulário de Teste” textBox1 button button1
Exemplo using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); button2.Enabled = false; } private void button1_Click(object sender, EventArgs e) { textBox1.Text = "nome"; button2.Enabled = true; } private void button2_Click(object sender, EventArgs e) { textBox1.Text = ""; button2.Enabled = false; } } }
Namespaces using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms;
public partial class Form1 : Form { public partial class Form1 : Form { public Form1() { InitializeComponent(); button2.Enabled = false; } private void button1_Click(object sender, EventArgs e) { textBox1.Text = "nome"; button2.Enabled = true; } private void button2_Click(object sender, EventArgs e) { textBox1.Text = ""; button2.Enabled = false; } } }
Button • Indica que o usuário fez uma decisão e quer comunicar sua ação. Em sua aplicação, o botão clicado pelo usuário dispara um evento que o código precisa lidar
TextBox • A caixa de texto é usada para obter uma entrada do usuário • É boa para entrada de nomes, endereços, telefones, URLs, etc