PDF de programación - Lenguajes y herramientas de .NET

Imágen de pdf Lenguajes y herramientas de .NET

Lenguajes y herramientas de .NETgráfica de visualizaciones

Publicado el 19 de Mayo del 2018
796 visualizaciones desde el 19 de Mayo del 2018
505,0 KB
15 paginas
Creado hace 21a (25/04/2003)
La La plataforma

plataforma .NET
.NET

Lenguajes y herramientas de .NET
de .NET
Lenguajes y herramientas

Juan Manuel Cueva Lovelle
Juan Manuel Cueva Lovelle

cueva@@lsi
cueva
www.didi..uniovi
www.

uniovi..eses
uniovi..eses/~/~cueva
cueva

lsi..uniovi

Departamento de Informática
Departamento de Informática
OOTOOTLabLab www.
uniovi..eses

ootlab..uniovi

www.ootlab

.NET Framework
.NET Framework
Reglas de de diseño
diseño
Reglas

•• GranGran simplificación

simplificación del del desarrollo

desarrollo en en

implantación de de aplicaciones
aplicaciones
implantación
Unificación de de los modelos
•• Unificación
Entorno de de programación robusto
•• Entorno
Soporte para múltiples lenguajes de de
•• Soporte para múltiples lenguajes
programación
programación

los modelos de de programación
programación
programación robusto y y seguro
seguro

La plataforma .NET
La plataforma .NET

Panorama General de .NET
Panorama General de .NET
Juan Manuel Cueva Lovelle OOTOOTLabLab
Juan Manuel Cueva Lovelle

DEV200

1

Framework, Lenguajes
Framework,

Lenguajes y y herramientas
herramientas

VBVB

C++C++

C#C#

JScript
JScript

J#J#

Common Language Specification
Common Language Specification

ASP.NET
ASP.NET

Web Forms Web Services
Web Forms Web Services

Mobile Internet Toolkit
Mobile Internet Toolkit

Windows
Windows
Forms
Forms

ADO.NET and XML
ADO.NET and XML

Base Class Library
Base Class Library

Common Language Runtime
Common Language Runtime

Operating System
Operating System

V
V
i
i
s
s
u
u
a
a
l
l



i
i

S
S
t
t
u
u
d
d
o
o
N
N
E
E
T
T

.
.

La plataforma .NET
La plataforma .NET

Panorama General de .NET
Panorama General de .NET
Juan Manuel Cueva Lovelle OOTOOTLabLab
Juan Manuel Cueva Lovelle

CLRCLR

VBVB

C++C++

C#C#

JScript
JScript

J#J#

Common Language Specification
Common Language Specification

ASP.NET
ASP.NET

Web Forms Web Services
Web Forms Web Services

Mobile Internet Toolkit
Mobile Internet Toolkit

Windows
Windows
Forms
Forms

ADO.NET and XML
ADO.NET and XML

Base Class Library
Base Class Library

Common Language Runtime
Common Language Runtime

Operating System
Operating System

i
i

V
V
s
s
u
u
a
a

l
l



i
i

S
S
t
t
u
u
d
d
o
o
N
N
E
E
T
T

.
.

La plataforma .NET
La plataforma .NET

Panorama General de .NET
Panorama General de .NET
Juan Manuel Cueva Lovelle OOTOOTLabLab
Juan Manuel Cueva Lovelle

DEV200

2

La La evolución

evolución de .NET
de .NET

Aplicación
Aplicación

Código y y
Código
Estructuras de de
Estructuras

datos
datos

Aplicaciones desarrolladas
desarrolladas
Aplicaciones
como entidades
entidades separadas
separadas
como

La plataforma .NET
La plataforma .NET

Panorama General de .NET
Panorama General de .NET
Juan Manuel Cueva Lovelle OOTOOTLabLab
Juan Manuel Cueva Lovelle

La La evolución

evolución de .NET
de .NET

COM suministraba
suministraba un un
COM
camino para integrar
camino para integrar
componentes
componentes

La plataforma .NET
La plataforma .NET

Panorama General de .NET
Panorama General de .NET
Juan Manuel Cueva Lovelle OOTOOTLabLab
Juan Manuel Cueva Lovelle

DEV200

3

La La evolución

evolución de .NET
de .NET

Con .NET Framework y CLR
Con .NET Framework y CLR
todos los componentes
todos los componentes
tienen un un substrato común
substrato común
tienen

La plataforma .NET
La plataforma .NET

Panorama General de .NET
Panorama General de .NET
Juan Manuel Cueva Lovelle OOTOOTLabLab
Juan Manuel Cueva Lovelle

Compilación y y Ejecución
Ejecución
Compilación

Código
Código
fuente
fuente

Compilación
Compilación
Compilador
Compilador
del del lenguaje
lenguaje

Recursos
Recursos

Código (IL)
(IL)
Código
Assembly
Assembly
Metadatos
Metadatos

Código + +
Código
Recolector
Recolector
de de Basura
Basura

Evaluación
Evaluación

JITJIT

Ejecución (CLR)
(CLR)
Ejecución

La plataforma .NET
La plataforma .NET

Panorama General de .NET
Panorama General de .NET
Juan Manuel Cueva Lovelle OOTOOTLabLab
Juan Manuel Cueva Lovelle

DEV200

4

Desarrollos más simplificados ……
Desarrollos más simplificados

necesario conocer

conocer COMCOM

=>=>aplicaciones

aplicaciones auto

auto descritas
descritas

=>namespaces jerarquicos
jerarquicos
=>namespaces
=>=>modelo
=>=>manejo
=>=>Todo hereda

objetos unificado
modelo de de objetos unificado
manejo de de excepciones
excepciones
Todo hereda de object
de object

=>=>Recolector

Recolector de de basura
basura

=>=>operador

operador ”new”
”new”

Panorama General de .NET
Panorama General de .NET
Juan Manuel Cueva Lovelle OOTOOTLabLab
Juan Manuel Cueva Lovelle

•• No No eses necesario
•• No No másmás……
Register
–– Register
GUIDs
–– GUIDs
.IDL files
–– .IDL files
HRESULTs
–– HRESULTs
IUnknown
–– IUnknown
AddRef//Liberación
Liberación
–– AddRef
CoCreateInstance
–– CoCreateInstance

La plataforma .NET
La plataforma .NET

Desarrollo simplificado
Desarrollo simplificado

Definición de de tipos

•• Establece una

instancias comunes
tipos e e instancias comunes
POO más límpia
más límpia

Common Type System
•• Common Type System
–– Definición
Establece una POO
Clases and interfaces
and interfaces
–– Clases
Constructores, properties, methods, events
, properties, methods, events
–– Constructores
Herencia entre lenguaje
–– Herencia entre lenguaje
Compatibilidad hacia atrás
•• Compatibilidad hacia atrás
con COM
–– con COM
con DLLs nativas
–– con DLLs

(Win32®®))
nativas (Win32

La plataforma .NET
La plataforma .NET

Panorama General de .NET
Panorama General de .NET
Juan Manuel Cueva Lovelle OOTOOTLabLab
Juan Manuel Cueva Lovelle

DEV200

5

Cualquier cosa
Cualquier

cosa eses un un objeto
objeto

Cambia la visión tradicional
•• Cambia la
C++, Java™™
–– C++, Java
Smalltalk, Lisp
–– Smalltalk, Lisp
solución de .NET:
Unifica sin sin costes
Simplicidad a a través

tipos valor
valor
de .NET: tipos
rendimiento
costes de de rendimiento
de la jerarquía

•• La La solución

–– Unifica
–– Simplicidad
Mejora la
–– Nuevos
–– Collections, etc.,

Nuevos tipos
Collections, etc., trabajan

través de la
la extensibilidad

extensibilidad y la
tipos primitivos

•• Mejora

visión tradicional de de los tipos primitivos
los tipos primitivos

jerarquía de de clases
clases
y la reusabilidad
reusabilidad

primitivos: Decimal, SQL…
: Decimal, SQL…

trabajan con

con todos los tipos
todos los tipos

La plataforma .NET
La plataforma .NET

Panorama General de .NET
Panorama General de .NET
Juan Manuel Cueva Lovelle OOTOOTLabLab
Juan Manuel Cueva Lovelle

Las variables directamente contienen datos
directamente contienen datos

Valor y Referencia
Tipos Valor y
Referencia
Tipos
Valor
Tipos Valor
•• Tipos
–– Las variables
–– No No pueden
Tipos Referencia
•• Tipos Referencia
–– Las variables
–– Pueden

Las variables contienen referencias
Pueden ser null
ser null

pueden ser null
ser null

contienen referencias a a objetos
objetos

123123

ii

ss

La plataforma .NET
La plataforma .NET

intint i = 123;
i = 123;
string s = "Hello world";
string s = "Hello world";

"Hello world"
"Hello world"

Panorama General de .NET
Panorama General de .NET
Juan Manuel Cueva Lovelle OOTOOTLabLab
Juan Manuel Cueva Lovelle

DEV200

6

Tipos Valor y
Tipos
•• Tipos

Valor y Referencia
Referencia
Valor
Tipos Valor
Primitivos
–– Primitivos
Enums
–– Enums
Structs
–– Structs
Tipos Referencia
•• Tipos Referencia
Clases
–– Clases
Interfaces
–– Interfaces
Arrays
–– Arrays
Delegados
–– Delegados

class Foo: Bar, IFoo
class Foo: Bar,

IFoo {...}
{...}

interface IFoo
interface

IFoo: : IBar

IBar {...}
{...}

FooFoo[] a = new Foo[10];
[] a = new Foo[10];

delegate void Empty();
delegate void Empty();

intint i; double x;
i; double x;

enum State { Off, On }
State { Off, On }
enum

struct Point {
struct

Point { intint x, y; }
x, y; }

La plataforma .NET
La plataforma .NET

Panorama General de .NET
Panorama General de .NET
Juan Manuel Cueva Lovelle OOTOOTLabLab
Juan Manuel Cueva Lovelle

Sistema de de tipos unificado
tipos unificado
Sistema

•• Todos los tipos heredan
•• Existe

Todos los tipos heredan de object
de object
Existe unauna conversión
implícita de de
cualquier tipotipo a a tipotipo object
object
cualquier

conversión implícita

object
object

Stream
Stream

Hashtable
Hashtable

intint

double
double

MemoryStream
MemoryStream

FileStream
FileStream

La plataforma .NET
La plataforma .NET

Panorama General de .NET
Panorama General de .NET
Juan Manuel Cueva Lovelle OOTOOTLabLab
Juan Manuel Cueva Lovelle

DEV200

7

Sistema de de tipos unificado
tipos unificado
Sistema
Boxing
•• Boxing
–– Asigna

posición de de memoria

Asigna unauna posición
ellaella

memoria y y copia

copia el valor en
el valor en

Unboxing
•• Unboxing
Comprueba el el tipotipo de la
–– Comprueba
el valor en otra posición
otra posición..
el valor en

de la posición

posición de de memoria

memoria y y copia
copia

intint i = 123;
i = 123;
object o = i;
object o = i;
intint j = (

j = (intint)o;)o;

i

o

j

123123

123123

La plataforma .NET
La plataforma .NET

System.Int32
System.Int32

123123

Panorama General de .NET
Panorama General de .NET
Juan Manuel Cueva Lovelle OOTOOTLabLab
Juan Manuel Cueva Lovelle

Entorno robusto
Entorno robusto

•• Gestión

Gestión de de memoria automática
memoria automática
–– Todos los objetos están manejados por

Todos los objetos están manejados por el el
recolector de de basura
basura
recolector

•• Manejo
•• Seguridad

Manejo de de excepciones
excepciones
Seguridad en el
en el manejo
–– No hay cast

No hay cast inseguros
inseguros

manejo de de tipos
tipos

La plataforma .NET
La plataforma .NET

Panorama General de .NET
Panorama General de .NET
Juan Manuel Cueva Lovelle OOTOOTLabLab
Juan Manuel Cueva Lovelle

DEV200

8

Framework, Lenguajes
Framework,

Lenguajes y y herramientas
herramientas

VBVB

C++C++

C#C#

JScript
JScript

J#J#

Common Language Specification
Common Language Specification

ASP.NET
ASP.NET

Web Forms Web Services
Web Forms Web Services

Mobile In
  • Links de descarga
http://lwp-l.com/pdf11108

Comentarios de: Lenguajes y herramientas de .NET (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad