Introdução ao C# . Visão geral do.net Framework



Documentos relacionados
Fundament n os s da platafo f rm r a. NE N T André Menegassi

Professor: Douglas Sousa Cursos de Computação

DESENVOLVIMENTO DE SOFTWARE AULA 1

Framework.NET, Microsoft Visual C# 2010 Express e Elementos da Linguagem C#

Orientação a Objetos

Introdução a Java. Hélder Nunes

Programando em C# Orientado a Objetos. By: Maromo

Implementando uma Classe e Criando Objetos a partir dela

FERRAMENTAS NECESSÁRIAS PARA O DESENVOLVIMENTO EM C#

Ambiente de Programação Visual. Framework.NET. Prof. Mauro Lopes. Ambiente de Programação Visual Prof. Mauro Lopes

Trabalho Prático Nº1 Introdução ao C#.NET

Ambiente de Programação Visual. Framework.NET. Prof. Mauro Lopes. Ambiente de Programação Visual Prof. Mauro Lopes

Desenvolvimento de Aplicação Windows Mobile Acessando um WebService

Seminário - C# DSO II. Desenvolvimento de Sistemas Orientados a Objetos 2. Equipe: Diorges, Leonardo, Luís Fernando, Ronaldo

Parte I Princípios básicos do Microsoft.NET Framework

CURSO DE PROGRAMAÇÃO EM JAVA

Linguagem de Programação Procedural (VB) Prof. MSc Eng Marcelo Bianchi AULA 01 - INTRODUÇÃO AO VB

PADI 2015/16. Aula 1 Introdução à Plataforma.NET

Alfamídia Programação: Desenvolvendo com C#

Projeto de Software Orientado a Objeto

Programação de Computadores - I. Profª Beatriz Profº Israel

Desenvolvimento Web TCC Turma A-1

Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP

19/05/2009. Módulo 1

Aula 2. Objetivos Conceitos; Instalação do Text Pad; Entendendo o código java do AloMundo1 Codificação do AloMundo2,AloMundo3 e AloMundo4.

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Orientação a Objetos

Lógica de Programação

Programação de Computadores II TCC Turma A-1

Java Laboratório Aula 1. Divisões da Plataforma. Introdução a Plataforma Java. Visão geral da arquitetura da

Na disciplina de Cálculo Numérico, vamos trabalhar com a linguagem C++ e o compilador que vamos usar é o Dev C++.

Comparando Java e C#

ASP.NET 2.0 e PHP. Autor: Glauber de Almeida e Juarez Fernandes

DESENVOLVIMENTO DE SOFTWARE. Introdução ao Visual Studio VB.Net. Programação Estruturada. Prof. Celso Candido ADS / REDES / ENGENHARIA

Introdução a lógica de programação. Aula 02: Linguagens de Programação e Introdução ao Visual C# Express

DESENVOLVIMENTO DE SOFTWARE II. Aula 07 A linguagem de programação C# e sua sintaxe

AULA 4 VISÃO BÁSICA DE CLASSES EM PHP

Programação online em Java

ATRIBUTOS PRIVADOS 6. ENCAPSULAMENTO MÉTODOS PRIVADOS MÉTODOS PRIVADOS

RevISTa: Publicação técnico-científica do IST-Rio. nº 05 Data: Dezembro / 2012 ISSN

Java - Introdução. Professor: Vilson Heck Junior. vilson.junior@ifsc.edu.br

PROGRAMAÇÃO ESTRUTURADA. CC 2º Período

1. Apresentação Objetivos

Prof. Esp. Adriano Carvalho

FERRAMENTAS PARA DESENVOLVIMENTO EM C#

ASP.NET. Guia do Desenvolvedor. Felipe Cembranelli. Novatec Editora.

Linguagem de Programação III

OOP - Java. Artur Duque Rossi Mestrado em Modelagem Computacional Universidade Federal de Juiz de Fora

A interface do Microsoft Visual Studio 2005

Introdução ao Paradigma Orientado a Objetos. Principais conceitos

Desenvolvimento de Aplicações Locais na Plataforma Microsoft

Desenvolvendo Websites com PHP

O Primeiro Programa em Visual Studio.net

Linguagens de. Aula 02. Profa Cristiane Koehler

Prototype, um Design Patterns de Criação

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Engenharia de Software e Gerência de Projetos Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

Capítulo 2. Processos de Software Pearson Prentice Hall. Todos os direitos reservados. slide 1

Qualidade de Software

Artur Petean Bove Júnior Tecnologia SJC

Algoritmos I Aula 13 Java: Tipos básicos, variáveis, atribuições e expressões

PROGRAMAÇÃO ORIENTADA A OBJETOS -TRATAMENTO DE EXCEÇÕES. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

INTRODUÇÃO AO JAVA PARA PROGRAMADORES C

NOVIDADES DO JAVA PARA PROGRAMADORES C

JSP - ORIENTADO A OBJETOS

Desenvolvimento de um aplicativo básico usando o Google Android

Programação Orientada a Objetos em Java

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi

Infracontrol versão 1.0

DEFINIÇÃO DE MÉTODOS

Web Services. Autor: Rômulo Rosa Furtado

Padrões de projeto 1

Unidade Acadêmica: Faculdade de Computação FACOM Disciplina: Programação Orientada a Objetos I Professor: Fabiano Azevedo Dorça Prática 01

Java Básico. Aula 1 por Thalles Cezar

Programação Orientada a Objeto

enbsp - NBioBSP NITGEN Biometric Service Provider SDK Manual do Desenvolvedor SDK version 4.xx

Criando & Consumindo um WebService com ASP.NET 2.0 Publicado em: 25 de Agosto de 2007 Por Herman Ferdinando Arais

Engenharia de Software III

Criando sua primeira aplicação JAVA com o Eclipse

EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS

Ambientes Visuais. Ambientes Visuais

Programação Orientada a Objetos

PARTE I A Linguagem C#

Análise e Projeto Orientados por Objetos

2QRYR&ODULRQ1(73DUWH,

Guião de Introdução ao Eclipse IDE Índice

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

Laboratório de Computação VI JAVA IDL. Fabricio Aparecido Breve

Aula 01: Linguagens de Programação e Introdução ao Visual C# Express

Plugins TerraView. Última revisão: 12/12/32006 Versão TerraLib: 3.1.4

ARRAYS. Um array é um OBJETO que referencia (aponta) mais de um objeto ou armazena mais de um dado primitivo.

Lógica de Programação

Treinar - Cursos e Treinamentos C# Módulo I. Carga horária: 32 Horas

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

TESTES AUTOMATIZADOS COM JUNITE MOCKITO

Transcrição:

Introdução ao C# Microsoft.NET (comumente conhecido por.net Framework - em inglês: dotnet) é uma iniciativa da empresa Microsoft, que visa uma plataforma única para desenvolvimento e execução de sistemas e aplicações. Todo e qualquer código gerado para.net, pode ser executado em qualquer dispositivo que possua um framework de tal plataforma.. Visão geral do.net Framework O.Net Framework é um ambiente fortemente tipado para desenvolvimento e execução de aplicações. O.NET Framework gerencia todos os aspectos de execução de um programa. Ele aloca memória para armazenar dados e instruções, gerencia permissões para execução dos programas. O.NET Framework consistem em dois componentes mestres: A Common Language Runtime e a.net Framework Class Library. O CLR (Common Language Runtime) pode ser ainda o ambiente que gerencia a execução do código. Ele fornece os serviços core como compilação de código, alocação de memória, gerenciamento de thread e coleta de lixo. O CTS (Common Type System) força a tipagem de variáveis e garante que o código é executado em um ambiente seguro e também com segurança ao acesso ao código. A biblioteca de classes do.net Framework fornece uma coleção de tipos úteis e reutilizáveis que foram desenvolvidos para interagir com a Common Language Runtime.

Características do C# A Microsoft desenvolveu a linguagem C# em conjunto com a arquitetura.net, sendo assim uma linguagem de programação especialmente desenvolvida para esta plataforma. Todos sabemos que a plataforma.net suporta uma gama de linguagens de programação como C# (claro), VB.NET, J#, C++, Delphi for.net entre outras, o que torna essa arquitetura produtiva e independente de linguagem, ou seja, o desenvolvedor pode escolher, dentre as linguagens disponíveis, a que mais o agrada. Essa liberdade de escolha da linguagem de programação também aumenta a produtividade de um time de desenvolvimento, pois enquanto parte dos desenvolvedores estão construindo a interface gráfica em VB.NET um outro grupo pode estar desenvolvendo as classes de negócio com C#, por exemplo. Depois é só integrar as duas partes do projeto. Você deve estar se perguntando então, se posso usar qualquer uma dessas linguagens citadas acima porque vou escolher logo C#? Bem a resposta não é nenhuma máxima absoluta, pois acredito que linguagem é como um sapato, devemos usar um que nos deixa confortáveis e mais é adequado para ocasião, ou seja, não basta apenas gostarmos da linguagem, precisamos perceber qual a linguagem ou tecnologia mais se encaixa ao nosso projeto ou cliente. Acredito que não há uma linguagem que seja melhor para todo tipo de projeto, até porque, toda linguagem ou tecnologia é criada para um determinado segmento, mesmo que seja um segmento bem amplo, como é o caso da plataforma.net. C# sofre influência de várias linguagens, mais notadamente do Delphi, C++ e Java. A linguagem C# na verdade é a reunião das principais vantagens dessas linguagens, corrigindo seus defeitos e/ou limitações e acrescentando alguns outros recursos, o que faz do C# uma linguagem muito poderosa e atrativa aos desenvolvedores que desejam migrar para a plataforma Microsoft.NET, pois é fácil de assimilar pelos novatos no mundo do desenvolvimento de softwares e proporciona uma baixa curva de aprendizagem para os mais experientes. É comum escutarmos falar que o C# é tão poderosa quanto C++ e tão organizada, flexível e fácil de programar quanto o Delphi. Vejamos então algumas das características do C#, que é nossa linguagem foco nessa coluna: Como já citei antes, C# foi feita a partir do zero para funcionar especialmente na plataforma.net, sem a necessidade de compatibilidade com código já existente; A maior parte das classes do.net Framework foram desenvolvidos em C#; Primeira linguagem "orientada à componentes" da família C/C++; Segue os padrões de POO, onde tudo deriva de um ancestral comum, no caso System.Object, não existem atributos e métodos stand-alone, tudo é declarado dentro do escopo da classe, contudo é possível declarar tipos struct e enum fora do escopo de classes; Fortemente tipada, o que ajuda a evitar erros oriundos de uma manipulação imprópria de tipo e/ou atribuições;

Suporte à COM, COM+ ou outras DLLs escritas por linguagens que geram código não gerenciado; É case-sensitive, ou seja, faz diferenciação entre maiúsculas e minúsculas, por exemplo, rnet é completamente diferente de RNET; Os programas escritos em C# rodam sob um ambiente gerenciável, o que significa que todo o controle de memória é feito pelo.net Framework e não diretamente pelo programador, reduzindo assim falhas na programação enquanto a alocação e liberação de um objeto na memória. IDE's para desenvolver softwares em C# Por ser uma linguagem padronizada, a linguagem C# não se limita a ter apenas um fornecedor de IDE's. Várias empresas já estão distribuindo suas IDE's para C#, algumas de forma comercial, outras como OpenSouce ou simplesmente gratuitas. É possível inclusive desenvolver aplicações em C# apenas usando o bloco de notas e as ferramentas de linha de comando do Microsoft.NET Framework SDK v1.1. Algumas das mais conhecidas são: Microsoft Visual Studio.NET 2003; Borland Delphi 2005; ASP.NET WebMatrix; #develop (SharpDevelop); Eclipse for C#. Nosso primeiro programa em C# Agora que já sabemos um pouco sobre a linguagem Vamos então fazer nosso primeiro programa em C#, o famoso "Hello World". Logo após comentaremos seu código. using System; class HelloWorld{ public static void Main(string[] args){ Console.WriteLine("Hello World! Bem vindo ao RNET"); Console.ReadLine(); } } Comentando o código do nosso primeiro programa em C#. Na primeira linha temos o carregamento do namespace System que contém a classe Console que estamos utilizando no nosso programa. Em C# usamos a diretiva using seguida do nome do pacote que queremos utilizar. NameSpace no.net tem a função de organizar as classes, para que não se misturem com outras classes de mesmo nome. São equivalentes aos pacotes do Java. Logo a seguir temos a declaração da nossa classe, neste caso HelloWorld. Se você ainda não está familiarizado com o conceito de classes não se preocupe, falaremos sobre esse assunto nas próximas colunas, onde discutiremos POO, UML e Engenharia

de Software. Por enquanto vamos nos limitar a entender a estrutura do código e que, de forma sucinta, classes são tipos de dados abstratos usados para modelar e representar objetos do mundo real em nossas aplicações. Neste nosso exemplo só temos um método, o Main(). Todo programa C# deve ter uma classe que implemente o método Main(), que deve ser declarado com o modificador estático (static), que sinaliza que este é um método que opera sobre a classe e não sobre uma instância dessa classe (objeto). Sendo então, o método Main() o ponto de entrada de execução do programa. O método Main() pode ter algumas variantes com a seguir: Ex. 01: Retornando um vazio Ex. 02: Retornando um inteiro Ex. 03: Recebe argumentos por meio de um array de string e retornando um vazio public static void Main(string[] args) Ex. 04: Recebe argumentos por meio de um array de string e retornando um inteiro public static int Main(string[] args) Conclusão Neste nosso primeiro contato com C# percebemos que é uma linguagem promissora e que oferece uma séria de benefícios para o desenvolvimento na Plataforma.NET, seja para aplicações Windows Forms, Class Library, ASP.NET Web Application, Web Services, Smart Application entra outras. Não percam as próximas colunas, onde estaremos falando um pouco mais sobre essa linguagem do.net. Bibliografia e referências Livro C# E.NET - Guia do Desenvolvedor - 2001 - Editora Campus Edwin Lima, Eugênio Reis Artigo C#: A nova linguagem da arquitetura.net - Por Mauro Sant'Anna http://www.mas.com.br/artigos/csharp_nova%20ling.htm

Outras referências MSDN Brasil http://www.microsoft.com/brasil/msdn/ http://www.microsoft.com/brasil/msdn/tecnologias/visualc/default.mspx