C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais -...

21
Artur Rauen Luciano Peixoto

Transcript of C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais -...

Page 1: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Artur RauenLuciano Peixoto

Page 2: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Resumo

• - O que é C#• - Histórico• - Características gerais• - Programa usado para desenvolvimento• - Ligações com .NET e linguagens Java e C• - Características mais detalhadas• - Códigos• - Componentes• - Projetos escritos em C#

Page 3: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

O que é C#• Linguagem de programação orientada a objetos ideal

para desenvolvimento de aplicaçoes web

• É considerado uma evolução do C++, do qual são utilizadas algumas características, como declarações, expressões e operadores.

• Utiliza muitas de regras de programação para reduzir a possibilidade de erros

• C# também tem como objetivo permitir o desenvolvimento de qualquer tipo de aplicação: Web service, aplicação Windows convencional, aplicações para serem executadas num palmtop ou handheld, aplicações para Internet etc.

Page 4: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Histórico e curiosidades• Criada pela Microsoft especificamente para a

plataforma .NET

• Inicada em 1999 por Anders Hejlsberg e equipe, com nome de Cool.

• .NET é apresentada em 2000, e linguagem Cool é renomeada para C#.

• O símbolo real seria o ♯ e não o #. Porém, devido a limitação de telas, fontes, teclados e alguns navegadores, no momento da normalização junto a ECMA, foi feita a opçao pelo #

• Foi criada baseando-se nas linguagens C++ e Java.

• Tem como um dos principais editores, o Visual Studio

Page 5: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Microsoft Visual Studio• O Microsoft Visual Studio é um pacote de

programas da Microsoft para desenvolvimento, dedicado ao framework .NET e às linguagens Visual Basic (VB), C , C++, C# e J#. Trata tambem de desenvolvimento web na plataforma do ASP.NET tendo como linguagens mais frequentes VB.NET (Visual Basic .Net) e o C#.

• Versão atual é o Visual Studio 2010,

lançado em 12 de Abril.

Page 6: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Microsoft Visual Studio

Page 7: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

C# e .NET

• C# é considerada a linguagem símbolo do .NET da Microsoft

• Foi criada praticamente do zero, sem preocupações de compatibilidade com código legado

• Seu compilador foi o primeiro a ser desenvolvido

• A maior parte das classes do .NET Framework foram desenvolvidas em C#

• C# não possui em nenhuma implementação, qualquer conjunto de bibliotecas. Elas são obtidas diretamente do .NET

Page 8: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Introdução às características • Simplicidade

• Completamente orientada a objetos

• Fortemente tipada

• Geração de código gerenciado

• Tudo é um objeto

• Controle de versões

• Suporte a código legado

• Flexibilidade

Page 9: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Características

• As operações aritméticas são verificadas contra transbordamento de dados

• Suporta Garbage Collector, usado para a manutenção de memória

• Suporta sobrecarga de métodos e de operadores, mas não suporta argumentos padrão.

Page 10: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Comparações entre C# com C e C++

• Ponteiros sem checagem só podem ser utilizados em modo inseguro (unsafe mode).

• Objetos não são liberados explicitamente, só através do Garbage Collector quando não há referências aos mesmos, prevenindo assim referências inválidas

• Não é permitida herança múltipla, mas uma classe pode implementar várias interfaces abstratas

• Algumas sintaxes diferentes, como por exemplo, na declaração de vetores ("int[] a = new int[5]" ao invés de "int a[5]").

Page 11: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Comparações entre C# Java

• O Java não implementa o goto como estrutura de controle

• O Java utiliza comentários Javadoc e o C# utiliza comentários baseados em XML.

• O C# possui indexadores. O Java tem Listeners.• O Java utiliza a JVM, o C# o .Net Framework, Mono e

DotGnu.• O Java pode ser compilado em qualquer plataforma,

o C# possui compiladores para Windows e Windows Mobile(.NET) e Linux, Mac OS X e Solaris (Mono)

Page 12: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Assistente de conversão Java

• O Java Language Conversion Assistent (JLCA) é uma ferramenta que, automaticamente, converte códigos da linguagem Java em linguagem C# para desenvolvedores que querem migrar seus aplicativos.

• Atualmente na versão 3.0, foi construído sobre a tecnologia de migração ArtinSoft e converte automaticamente a maior parte de códigos-fonte

Page 13: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Mais detalhes

• Tipos parciais e Generics, trabalham com declarações de classes, estruturas e interfaces. Tipos Parciais permitem que eles sejam divididas em múltiplas partes em diferentes arquivos fontes, e Generics permite que sejam parametrizados pelos tipos de dados que eles armazenam e manipulam

• Implementaçao de Generic: StackGenericsT<int> st = new StackGenerics( );

Page 14: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Mais detalhes

• Programas escritos em C# rodam sob um ambiente gerenciável: todo o controle de memória é feito pelo .NET Framework, reduzindo assim falhas na programação enquanto a alocação e liberação de um objeto na memória.

• Classes agrupadas com funções similares– System.Drawing para gráficos, – System.Collections para estrutura de dados – System.Windows.Forms para o sistema

Windows Form.

Page 15: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Implementações• Instanciação de objeto – exemplo:

– Pessoa pessoa = new Pessoa {nome = “João”};

• Propriedades automáticas– public string nome {get; private set};

• Métodos extendidos– Adicionar métodos a classes incluindo a palavra-chave this no

parâmetro do método em outra classe (estática)

public class HelloWorld{ public static void Main() { System.Console.WriteLine(“Hello, world!"); }}

Page 16: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Exemplos de codigos

Page 17: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Palavras Chaves C#

Page 18: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Componentes• Qualquer objeto escrito em C# é um

Component Object Model (COM)

• COM – É uma plataforma da Microsoft para componentes de software. Eles são reutilizaveis e podem ser desenvolvidos na maiorias das linguagens de programação.

• DLL de negócio –É um COM, e contém uma classe que pode ser reutilizada em vários programas, linkado dinamicamente ao programa.

Page 19: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Projetos Baseados em C#• http://www.youtube.com/watch?v=nCP5X2odU_M&feature=player_embedded#!

• XNA Framework da Microsoft para jogos, no qual são feitos jogos

de XBOX 360

Page 20: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Projetos Baseados em C#

Page 21: C# Artur Rauen Luciano Peixoto. Resumo - O que é C# - Histórico - Características gerais - Programa usado para desenvolvimento - Ligações com.NET e linguagens.

Bibliografia• A Linguagem C# - Parte 3, Antonio J. V. Tavares• http://pt.wikipedia.org/wiki/C%E2%99%AF• http://pt.wikipedia.org/wiki/Microsoft_XNA• C# e .NET – Guia do Desenvolvedor, Edwin Lima e Eugenio

Reis• Como Programar ASP.NET e C#, Alfredo Lotar• Logica de Programaçao II – Aula 6: C#, Interfaces Graficas,

sem autor declarado• Exemplos Práticos de Programação Visual em C#, Paulo

Cortez e Helder Quintela• Guia para iniciantes em C# e .NET Micro Framework, GHI

Eletronics• http://www.arquivodecodigos.net/arquivo/tutoriais/

csharp/curso_completo/