tema 0: introducció - users.dsic.upv. jlinares/csharp/curs_c_  · programació amb c# .net

Download Tema 0: Introducció - users.dsic.upv. jlinares/csharp/Curs_C_  · Programació amb C# .NET

Post on 05-Jul-2018

215 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • ProgramaciProgramaci amb C# .NETamb C# .NETTema Tema 0:0: IntroducciIntroducci

    ndexndex

    Introducci

    C#: Orgens i evoluci

    Objectius del mdul

    Continguts del curs

  • IntroducciIntroducciEl disseny i la programaci daplicacions ha canviat molt des dels seus comenaments.

    Microsoft ens ofereix un nou entorn i una nova plataforma de programaci:

    .NET 2.0 Framework i Visual Studio 2005

    Els programadors tenen ara al seu abast unes avanades eines per a construir la nova generaci daplicacions descriptori i dinternet.

    En este context, Microsoft presenta un llenguatge de programaci nou: C#

    C# s una eina ms de treball per adaptada a les noves tecnologies i a les necessitats actuals del programadors.

    Amb .NET sobtenen aplicacions de major qualitat duna forma senzilla i que requereixen menys temps de desenvolupament.

  • C#: OrC#: Orgens i Evolucigens i EvoluciFins ara C i C++ han sigut els llenguatges escollits pels programadors per a crear aplicacions que requereixen un nivell alt de control.

    Malgrat la seua potncia, C i C++ requereixen un gran esfor per part del programador si els comparem amb altres com Visual Basic.

    Es necessitava dun llenguatge senzill que permetera crear aplicacions duna forma rpida per que, a la volta, oferira al programador un gran control i sintegrara b amb les noves tecnologies existents i futures.

    Microsoft presenta C# a lany 2000, fruit de lesfor i treball de moltes persones, destaquen Anders Hejlsberg* i Scott Wiltamuth.

    C# combina la potncia i flexibilitat de C++ amb la simplicitat i les capacitats RAD de Visual Basic.

    C# hereta el millor de C++, Java i Visual Basic, aix s relativament fcil adaptar-se a ell.

    .NET est programat principalment amb C#.

    C# es presenta com un llenguatge orientat a objectes i al treball amb components, modern, flexible, segur i productiu.

  • Objectius del mdulObjectius del mdulEste mdul tractar la programaci daplicacions en lentorn .NET

    Sutilitzar el nou llenguatge C# i Visual Studio 2005.

    Al llarg del curs saprendn, entre altres:Les estructures del llenguatge,

    Lentorn de treball Visual Studio i la plataforma .NET,

    La programaci orientada a objectes amb C#,

    El treball amb bases de dades amb ADO.NET,

    La creaci daplicacions de consola i daplicacions Windows,

    Creaci daplicacions Web.

    Continguts del cursContinguts del cursBloc 1: Introducci

    INTRODUCCIPRIMER CONTACTE AMB LENTORN Visual Studio.NETLA PLATAFORMA MICROSOFT.NET

    Bloc 2: El llenguatge C#EL LLENGUATGE DE PROGRAMACI C# CREACI DAPLICACIONS DE CONSOLAPROGRAMACI OO EN C#

    Bloc 3: ProgramacidAplicacions Windows

    INTRODUCCI A WINDOWS FORMSCONTROLS DUS HABITUALDISSENY DINTERFCIES DUSUARI

    Bloc 4: Manipulaci de Bases de Dades

    ACCS A DADES AMB ADO.NETDISSENY DINFORMES AMB CRYSTAL REPORTS.NET

    Bloc 5: CreacidAplicacions Web

    INTRODUCCI A ASP.NETWEB FORMSACCS A DADES AMB WEB FORMSCREACI i S DUN SERVEI WEB

  • ProgramaciProgramaci amb C# .NETamb C# .NET

    Tema Tema 1:1: La plataforma .NET La plataforma .NET (.Net (.Net FrameworkFramework))

    ndicendice

    IntroduccinCaractersticas de .NETComponentes .NETPlataforma .NETNovedades Framework 2.0EjemploEnlaces de inters

  • IntroducciIntroduccinnMicrosoft.NET es el conjunto de nuevas tecnologas en las que Microsoft ha estado trabajando durante los ltimos aos.NET ofrece una plataforma sencilla y potente para distribuir el software en forma de servicios que puedan ser suministrados remotamente y que puedan comunicarse y combinarse unos con otros de manera totalmente independiente de la plataforma, lenguaje de programacin y modelo de componentes con los que hayan sido desarrollados.

    www.microsoft.com/net

    www.microsoft.com/latam/net/

    .NET es una nueva plataforma para el desarrollo y explotacin de aplicaciones gestionadas (managed) modernas y orientadas a objetos.

    Las aplicaciones .NET se pueden desarrollar en cualquier lenguaje de programacin que se ajusta a .NET

    .NET soporta una extensa coleccin de libreras de clases independientes del lenguaje de programacin.

    .NET soporta la creacin de componentes.

    .NET ofrece integracin multi-lenguaje, reutilizacin de componentes, y herencia entre componentes desarrollados en diferentes lenguajes.

    CaracterCaractersticas de .NETsticas de .NET

  • .NET ofrece un nueva manera de desarrollar aplicaciones de sobremesa usando las clases Windows Forms.NET ofrece una nueva manera de desarrollar aplicaciones basadas en navegador Web a travs de ASP.NETLas clases ADO.NET proveen una arquitectura desconectada para acceso a datos a travs de Internet.NET soporta la creacin de Servicios Web XML independientes de la plataforma, a travs de SOAP (Simple Object Access Protocol) y WSDL (Web ServicesDescription Language).NET ofrece una nueva arquitectura para el desarrollo y explotacin de objetos remotos.NET convierte a varias tecnologas y tcnicas Windows en obsoletas

    Componentes de .NETComponentes de .NET

    Microsoft.NET est compuesto de:Plataforma .NET.NET Framework SDKVisual Studio .NETServicios Web (Microsoft .NET myServices)Servidores para empresas (SQL Server.NET...)

  • Plataforma .NETPlataforma .NET

    El concepto en el que se basa .NET no es nuevo.Java y su entorno de ejecucin (JVM) ya utilizan el concepto de encapsulamiento del sistema operativo para permitir la interoperabilidad entre diferentes sistemas operativos.

    Visual Studio.N

    ETVisual S

    tudio.NET

    Base Class LibraryBase Class Library

    Common Language Specification Common Language Specification -- CLSCLS

    Common Language RuntimeCommon Language Runtime

    ADO.NET, XML, Enterprise ServicesADO.NET, XML, Enterprise Services

    VBVB C++C++ C#C#

    ASP.NET: ASP.NET: ServiciosServicios WebWeby Web Formsy Web Forms

    JScriptJScript

    WindowsWindowsFormsForms

    Vista general de la plataforma

  • Novedades Novedades FrameworkFramework 2.02.0Soporte para plataforma de 64-bitLa I/O ha sido mejorada para leer y escribir datos usando compresin GZIP

    Nueva clase GZipStreamLa clase SerialPort permite acceso a puertos y comunicacin con dispositivos serie.Soporte SMTP para envo y recepcin de mensajes de e-mail

    Clase SmtpClient tiene mtodos para enviar mensajes (Send, SendAsync)Los Mensajes en s se manejan como MailAddress, Message, MailAttachment

    Soporte FTP aadido: System.Net.FtpMethodsPing est soportado:

    System.Net.NetworkInformation.Ping

    CommonCommon LanguageLanguage RuntimeRuntime (CLR)(CLR)

    Un Runtime es un entorno en el que se ejecutan los programas.

    El CLR se encarga de gestionar la ejecucin de las aplicaciones .NET.

    Al cdigo escrito para ejecutarse en la plataforma .NET se le llama cdigo gestionado.Al cdigo escrito para ejecutarse directamente se le llama cdigo no gestionado o cdigo nativo.

    El CLR realiza la compilacin Just in Time (JIT) que traduce el cdigo gestionado en cdigo nativo sobre la arquitectura de hardware que est corriendo.

  • Modelo de Modelo de ejecuciejecucinn

    VBC# C++

    Compilador Compilador Compilador Cdigo no manejado

    Cdigomanejado

    Cdigofuente

    Ejecutable (.EXE), Pgina Web (.ASPX), Servicio Local (.DLL), Servicio Web (.ASMX)

    CommonCommon LanguageLanguage RuntimeRuntime

    Compilador JITCompilador JIT

    CCdigodigo NativoNativo

    ServiciosServicios del Sistema del Sistema OperativoOperativo

    Caractersticas y servicios que ofrece:Ejecucin multiplataformaIntegracin de lenguajes Gestin de memoria (Recolector de basura)Tratamiento de excepcionesSoporte multi-hilo (multi-threading)Distribucin transparenteInteroperabilidad con cdigo antiguo

  • Clases de la plataforma .NET (FCL)Clases de la plataforma .NET (FCL)

    La librera de clases (Framework ClassLibrary) es una librera formada por cientos de tipos que permiten acceder a los servicios ofrecidos por el CLR y a sus funcionalidades ms frecuentemente usadas.

    Adems el programador puede crear nuevas clases que extiendan su funcionalidad y se integren perfectamente con el resto de las clases de la FCL.

    Esta librera de clases est escrita en MSIL

    Cualquier lenguaje cuyo compilador genere MSIL podr usarla.

    Con esta librera podemos crear todo tipo de aplicaciones: aplicaciones de consola, de ventanas, servicios Web, ASP.NET...

  • Dada la amplitud de la FCL, ha sido necesario organizar las clases en ella incluida en espacios de nombres(Namespace) que agrupen clases con funcionalidades similares.

    El espacio de nombres System es el espacio raz del que cuelgan todos los dems.

    Espacios de nombres ms usados:

    System: Contiene tipos de datos muy usados, datos bsicos, tablas, excepciones... Es el raz.

    System.Object: Soporta toda la jerarqua de las clases de .NET.

    System.Collections:Colecciones de datos de uso comn como pilas, colas, listas...

    System.Data: Manipulacin de bases de datos. Forma la denominada arquitectura ADO.NET.

    System.IO: Manipulacin de ficheros.

    System.Reflection: Acceso a los metadatos que acompaan a los mdulos de cdigo.

    System.Math: Funciones logartmicas, trigonomtricas...

    System.XML: Acceso a datos en formato XML.

    Sytem.Web: Aplicaciones Web.

  • ASP.NETASP.NET

    ASP.NET es la versin para la plataforma .NET de la tecnologa ASP (Active Server Pages).

    Dentro de esta capa podemos distinguir tres partes muy diferenciadas:

    Web FormsServer ControlsWeb Services

    Windows Windows FormsFormsSon una forma avanzada e integrada de crear aplicaciones de escritorio Win32 estndar.

    Descienden de las Windows FoundationClasses (WFC) de Microsoft.

    Cualquier lenguaje de la pla