Curso .Net Clase 1
-
Upload
marcelo-gonzalez -
Category
Documents
-
view
227 -
download
0
Transcript of Curso .Net Clase 1
-
8/8/2019 Curso .Net Clase 1
1/52
Clase ICurso Programacin para .NET
-
8/8/2019 Curso .Net Clase 1
2/52
Software Windows Visual Studio
.NET Framework
Conocer la Interfaz de Visual Studio .NET Desarrollo de una aplicacin en C/C++
Manejo de Excepciones
Temario Clase I
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 2 de 52
-
8/8/2019 Curso .Net Clase 1
3/52
Software
-
8/8/2019 Curso .Net Clase 1
4/52
Aplicacin Informtica desarrollada con el fin desolucionar el problema de un cliente, sistema uorganizacin
Es la interfaz entre el Sistema Operativo y el Usuario
Hoy en da, las Aplicaciones Web son tambinconsideradas como un Software, pero que nointeracta directamente con el Sistema operativo, si
no que se centra en solucionar un problema delusuario
Definicin y conceptos de Software
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 4 de 52
-
8/8/2019 Curso .Net Clase 1
5/52
Hardware
Sistema Operativo
Windows, Linux, Mac OS, Etc
Software
Usuario
Cliente, Sistema, Organizacin, Etc
Posicin en la Pila del Sistema
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 5 de 52
-
8/8/2019 Curso .Net Clase 1
6/52
Nace Vive Muere
Etapas de Vida
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 6 de 52
-
8/8/2019 Curso .Net Clase 1
7/52
Ciclo de Vida de un Software
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 7 de 52
-
8/8/2019 Curso .Net Clase 1
8/52
Alpha
Beta
Release Candidate (RC)
Release to Manufacturing (RTM)
Generally Avaiable (GA)
Etapas de Desarrollo
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 8 de 52
-
8/8/2019 Curso .Net Clase 1
9/52
1. Un problema o necesidad que no este resuelto2. Un lenguaje de programacin que satisfaga las
necesidades de la solucin que se desea construir
3. Un Sistema Operativo cuyas polticas y directivaspermitan un buen desempeo de nuestra solucin
4. El Hardware adecuado para que el softwarefuncione correctamente
Que se necesita para hacer un software?
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 9 de 52
-
8/8/2019 Curso .Net Clase 1
10/52
1980 Funcin
1990 Solucin
2000 Diseo
2010 Integracin
Orientaciones del Software por aos
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 10 de 52
-
8/8/2019 Curso .Net Clase 1
11/52
Cmo entenderemos el Software?
Curso .NET | Clase I Universidad Tecnolgica Metropolitana
SoftwareDatos (Parmetros) Informacin
11 de 52
-
8/8/2019 Curso .Net Clase 1
12/52
La necesidad de los Sistemas OperativosWindows
-
8/8/2019 Curso .Net Clase 1
13/52
Desarrollado por Microsoft en 1981 y puesto en elmercado en 1985 (Windows 1.0)
Nace a partir de MS-DOS
Basado en un sistema Xerox que permita entornosgrficos
Mouse implementado en la popular versinWindows 3.1 lanzada en 1992, Esta es la ms
semejante a las versiones Windows 95 y Windows 98que son la base de los Sistemas Windows actuales
Programado presumiblemente en C/C++
Microsoft Windows
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 13 de 52
-
8/8/2019 Curso .Net Clase 1
14/52
Hasta Windows 95, Windows estaba orientado aUsuarios Finales
Windows NT orientado a servidores basado en
paradigmas UNIX Windows 3.1 for Workgroups es considerado
tambin como Windows-Server Windows XP unifico ambos ncleos
2000 Server, 2003 Server, 2008 Server mspoderosos que XP, Vista, 7 desde la vista operacional
Windows User / Windows Server
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 14 de 52
-
8/8/2019 Curso .Net Clase 1
15/52
Programacin compleja Solo expertos en el rea desarrollaban aplicaciones
fiables
Pocas empresas (Norteamericanas principalmente)controlaban el mercado informtico, poco popularen esos aos.
Windows no le hizo un favor a la informtica enaquel entonces.
Aplicaciones de hace 20-30 aos
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 15 de 52
-
8/8/2019 Curso .Net Clase 1
16/52
Si programar para consola ya era complejo,programar adems un entorno grafico eraimpensado.
Poco Software para Windows: Se vea bien, pero sepoda hacer poco con el.
Apple Macintosh sufra del mismo problema, lo quehacia poco popular la programacin grafica entre los
desarrolladores Para que hacer algo visualmente mejor si esto no
har que funcione mejor?
Aplicaciones para Windows
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 16 de 52
-
8/8/2019 Curso .Net Clase 1
17/52
Basado -hipotticamente- en el lenguaje BASIC, deuna modificacin hecha por Microsoft llamadaQuickBasic 1.0 .
Aplicaciones rpidas, con entorno grafico agradabley permitiendo a los desarrolladores centrarse en elque y no en el como.
Cdigo y aplicaciones no portables, lo que supona
una ventaja para Microsoft Windows (principalmotivo de su victoria en el emergente mercado delos Sistemas Operativos)
Visual Basic
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 17 de 52
-
8/8/2019 Curso .Net Clase 1
18/52
Visual Basic 1.0
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 18 de 52
-
8/8/2019 Curso .Net Clase 1
19/52
Microsoft sabia que Visual Basic permitasimplicidad, pero paradjicamente, no permitacomplejidad.
No haba vinculacin a Bases de Datos u otrosmedios de almacenamiento.
Capacidades de red sobre protocolo TCP/IP y UDPestaban tomando fuerza y Visual Basic se poda
quedar atrs.
Microsoft decide crear Visual Studio.
Y los dems lenguajes?
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 19 de 52
-
8/8/2019 Curso .Net Clase 1
20/52
Entorno de Desarrollo para WindowsVisual Studio
-
8/8/2019 Curso .Net Clase 1
21/52
Entornos de Programacin divididos por lenguajescomo C/C++, Visual Basic y J++
Permite Programacin Nativa y en MFC
Orientado al desarrollo de aplicaciones rpidas La ultima y ms popular versin de esta suite es
Visual Studio 6.0 lanzada en 1998 que cuenta convarios Services Pack a la fecha
Cada lenguaje se compila para ser entendidadirectamente por el sistema
Qu es Visual Studio?
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 21 de 52
-
8/8/2019 Curso .Net Clase 1
22/52
DLL Hell el Infierno de las DLL Limitaciones de conectividad en redes, bases de
datos e incompatibilidad entre los mismos sistemas
Windows Drivers de Hardware Limitaciones de Hardware
Qu fracaso?
Productividad
Problemas
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 22 de 52
-
8/8/2019 Curso .Net Clase 1
23/52
MFC (Microsoft Foundation Classes) OWL (Object Windows Libraries de Borland) VCL (Visual Common Libraries de Borland)
Herramientas y programacin Visual que competan conVisual Studio basados en Delphi, una modificacin deObject Pascal.
Muchas versiones, incompatibilidades ydesacuerdos hicieron que Microsoft determinarainiciar desde 0 y crear Visual Studio .NET
Intentos de Solucin
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 23 de 52
-
8/8/2019 Curso .Net Clase 1
24/52
Entorno Integrado de Desarrollo (IDE) Orientado al modelado y desarrollo de aplicaciones Permite el desarrollo en lenguajes basados en el
Framework .NET Estndar en el desarrollo visual para aplicaciones de
Windows Vista y Windows 7 Integra a C/C++, C++.NET, Visual Basic.NET, C#, F#,
J#, ASP.NET adems de InterOp, InterDev y otrasherramientas
Todos los lenguajes son OOP
Qu es Visual Studio .NET?
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 24 de 52
-
8/8/2019 Curso .Net Clase 1
25/52
Marco de trabajo ManejadoFramework .NET
-
8/8/2019 Curso .Net Clase 1
26/52
Interprete de aplicaciones al estilo Java VirtualMachine
Cuenta con su propio Garbage Collector
Interoperabilidad de lenguajes del Marco .NET conimplementaciones no-Microsoft como P#
Cada versin es independiente, no son acumulativasni excluyentes (es decir, la versin 2.0 no incluye la
1.0) Targeting
Framework .NET
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 26 de 52
-
8/8/2019 Curso .Net Clase 1
27/52
Compilacin(Generacincdigo MSIL
basado en CLS)
Invocacindel CLR
InvocacinJIT
Ejecucin dela Aplicacin
Como Funciona .NET
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 27 de 52
-
8/8/2019 Curso .Net Clase 1
28/52
Arquitectura .NET
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 28 de 52
-
8/8/2019 Curso .Net Clase 1
29/52
Arquitectura CLR
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 29 de 52
-
8/8/2019 Curso .Net Clase 1
30/52
Ensamblados en MSIL
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 30 de 52
-
8/8/2019 Curso .Net Clase 1
31/52
Visual Studio es para los informticos comoAutoCAD para los arquitectos o Photoshop para losDiseadores.
El Marco .NET es un interprete estilo JVM, peropotenciado para mucho ms lenguajes yaplicaciones.
Es portable basado en mociones libres como Mono.
Gran aceptacin por la comunidad de desarrollo. Windows Vista incluye la versin 3.0, Windows 7 la
versin 3.5 y con VS 2010 se libero .NET 4.0
Cmo entenderemos .NET?
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 31 de 52
-
8/8/2019 Curso .Net Clase 1
32/52
Aplicaciones rpidas, fiables y good-looking Herramientas para bases de datos, estimacin de
costos, modelado y anlisis permiten centrarse en el
que y no en el como. Sobre el Marco .NET las aplicaciones siempre sernseguras,
Varios lenguajes, clases, bibliotecas y mdulos
simplifican el acceso a Hardware, Software y redes.
Por qu usar Visual Studio?
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 32 de 52
-
8/8/2019 Curso .Net Clase 1
33/52
Conociendo la InterfazVisual Studio
Las imgenes a continuacin son solo referenciales.Las imgenes a continuacin corresponden a Visual Studio 2010 Ultimate RTM, pero el
funcionamiento es idntico en otras versiones de Visual Studio a partir de la versin .NET2002.
-
8/8/2019 Curso .Net Clase 1
34/52
Pantalla de Bienvenida
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 34 de 52
-
8/8/2019 Curso .Net Clase 1
35/52
Creacin de Solucin / Proyecto
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 35 de 52
-
8/8/2019 Curso .Net Clase 1
36/52
Cual es el proyecto adecuado?
Curso .NET | Clase I Universidad Tecnolgica Metropolitana
C/C++ ANSI equivalente
C/C++ CLI (.NET)
36 de 52
-
8/8/2019 Curso .Net Clase 1
37/52
Opciones en el Wizard para C++ ANSI
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 37 de 52
-
8/8/2019 Curso .Net Clase 1
38/52
Explorador de Soluciones
Curso .NET | Clase I Universidad Tecnolgica Metropolitana
Permite ver archivos yconfiguraciones vinculadas a lasolucin en desarrollo.
Libreras
Recursos, como imgenes,iconos, textos, etc
Archivos Fuente
Dependencias de librerasdinmicas, objetos COM, etc
38 de 52
-
8/8/2019 Curso .Net Clase 1
39/52
Agregar un Elemento
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 39 de 52
-
8/8/2019 Curso .Net Clase 1
40/52
Seleccionar archivo C/C++
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 40 de 52
-
8/8/2019 Curso .Net Clase 1
41/52
Intellisense
Curso .NET | Clase I Universidad Tecnolgica Metropolitana
1. Ayuda de completacin de cdigo.2. Se puede llamar presionando CRTL+J
41 de 52
-
8/8/2019 Curso .Net Clase 1
42/52
Cdigo 1: Aplicacin bsica C/C++
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 42 de 52
-
8/8/2019 Curso .Net Clase 1
43/52
Compilar y configuracin de Compilacin
Curso .NET | Clase I Universidad Tecnolgica Metropolitana
Presionar para compilar con laConfiguracin Seleccionada (F5)
Plataforma de Compilacin
Configuraciones de Compilacin:1. Debug: Admite cambios inline en TDE, trackeo, etc2. Release: Genera una Major Release del Software
43 de 52
-
8/8/2019 Curso .Net Clase 1
44/52
Cdigo 2: Divisin Simple
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 44 de 52
-
8/8/2019 Curso .Net Clase 1
45/52
Excepcin no Manejada
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 45 de 52
-
8/8/2019 Curso .Net Clase 1
46/52
Ventana de Locales y Pila de Llamadas
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 46 de 52
-
8/8/2019 Curso .Net Clase 1
47/52
Una Excepcin es, como su nombre dice, algo queno estaba previsto.
Una computadora al encontrar una Excepcin,
aborta la aplicacin, provocando un MemoryOverflow, Desvolcamiento de Pila, u otros errores(BSOD).
Los lenguajes de programacin llaman a estos
errores unhandled Exception, o Excepcin nomanejada.
Qu es Manejar una Excepcin?
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 47 de 52
-
8/8/2019 Curso .Net Clase 1
48/52
try{
//Lo que debera funcionar
}
catch(/*Que va a manejar*/){//Lo que pasa si no funciona
}
throw lo que se enva;1. : Lo que sea
2. Otra cosa: lo que se envie
Manejo de una Excepcion
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 48 de 52
-
8/8/2019 Curso .Net Clase 1
49/52
Cdigo 3: Ejemplo de Excepcin manejada
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 49 de 52
-
8/8/2019 Curso .Net Clase 1
50/52
Cdigo 4: Manejo mltiple
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 50 de 52
-
8/8/2019 Curso .Net Clase 1
51/52
Wikipedia Visual Studio Windows Framework .NET
Microsoft Visual Basic .NET Editorial Alfaomega, 2008, Francisco Javier Ceballos
C++/CLI - The Visual C++ Language for .NET Editorial Apress, 2006, Gordon Hogenson
Visual C# 2008 Step by Step Microsoft Partner Document, 2008, John Sharp
Bibliografa
Curso .NET | Clase I Universidad Tecnolgica Metropolitana 51 de 52
-
8/8/2019 Curso .Net Clase 1
52/52
Sebastin Ortiz Lira @2010Fin Clase I