PDF de programación - Características Generales de C#

Imágen de pdf Características Generales de C#

Características Generales de C#gráfica de visualizaciones

Publicado el 11 de Abril del 2018
1.584 visualizaciones desde el 11 de Abril del 2018
773,0 KB
73 paginas
Creado hace 21a (17/07/2002)
Cursos de Verano 2002
Cursos de Verano 2002

UNIVERSIDAD DE OVIEDO
UNIVERSIDAD DE OVIEDO

CodCod. 1728.61
. 1728.61
PLATAFORMA .NET Y
PLATAFORMA .NET Y
SERVICIOS WEB
SERVICIOS WEB

Características Generales de C#
Características Generales de C#

Benjamín López Pérez
Benjamín López Pérez
benja@lsi
benja@

lsi..uniovi

uniovi.es.es

Dpto. de Informática
Dpto. de Informática

OOTOOTLabLab -- Laboratorio de Tecnologías de Orientación a Objetos
Laboratorio de Tecnologías de Orientación a Objetos

http://wwwwww..ootlab
http://

ootlab..uniovi

uniovi.es.es

Contenidos
Contenidos

1.1. Generalidades
Generalidades
2.2. Tipos
Tipos
3.3. Expresiones
Expresiones
4.4. Declaraciones
Declaraciones
5.5. Sentencias
Sentencias
6.6. Clases y estructuras
Clases y estructuras
7.7. Código Inseguro
Código Inseguro

Cursos de Verano 2002
Cursos de Verano 2002

UNIVERSIDAD DE OVIEDO
UNIVERSIDAD DE OVIEDO

Características generales de C#
Características generales de C#
OOTOOTLabLab

Benjamín López Pérez
Benjamín López Pérez

Origen y necesidad de un nuevo lenguaje
Origen y necesidad de un nuevo lenguaje

Creadores: Anders Hejlsberg y Scott Wiltamuth
Necesidad:
 Específico para .NET
 Orientado a componentes
Notas:
 Sintaxis de C/C++/Java con facilidad de VB
 BCL programada en C# -> depurado y optimizado

Cursos de Verano 2002
Cursos de Verano 2002

UNIVERSIDAD DE OVIEDO
UNIVERSIDAD DE OVIEDO

Características generales de C#
Características generales de C#
OOTOOTLabLab

Benjamín López Pérez
Benjamín López Pérez

IDLs, ficheros de cabecera,...)
, ficheros de cabecera,...)

(sin IDLs
inneccesarios (::, macros, etc.)
(::, macros, etc.)

Características de C#
Características de C#
Sencillez
 Sencillez
Autocontenido (sin
 Autocontenido
Sin elementos inneccesarios
 Sin elementos
Tipo básicos de tamaño fijo
 Tipo básicos de tamaño fijo
Modernidad
 Modernidad
Tipos básicos para decimales, cadenas y lógicos
 Tipos básicos para decimales, cadenas y lógicos
Soporte extensible para colecciones
 Soporte extensible para colecciones
Orientado a objetos
 Orientado a objetos
Sin funciones ni variables globales
 Sin funciones ni variables globales
Herencia simple
 Herencia simple
Encapsulación con
con public
 Encapsulación
Redefinibildad explícita (menos errores y más eficiente)
explícita (menos errores y más eficiente)
 Redefinibildad

public,,protected

protected,,private

private e e internal
internal..

Cursos de Verano 2002
Cursos de Verano 2002

UNIVERSIDAD DE OVIEDO
UNIVERSIDAD DE OVIEDO

Características generales de C#
Características generales de C#
OOTOOTLabLab

Benjamín López Pérez
Benjamín López Pérez

Características de C#
Características de C#
Orientado a componentes
 Orientado a componentes
De base soporta propiedades, atributos y eventos
 De base soporta propiedades, atributos y eventos
Seguridad de tipos
 Seguridad de tipos
Control de conversiones
 Control de conversiones
Control de inicialización de variables
 Control de inicialización de variables
Control de índices en accesos a tablas
 Control de índices en accesos a tablas
Control de desbordamientos
 Control de desbordamientos
Control de tipos en “punteros a función”
 Control de tipos en “punteros a función”
Control en parámetros múltiples
 Control en parámetros múltiples
Gestión automática de memoria
 Gestión automática de memoria
Recolector de basura
 Recolector de basura
Liberación recursos determinista con using
using
 Liberación recursos determinista con

Cursos de Verano 2002
Cursos de Verano 2002

UNIVERSIDAD DE OVIEDO
UNIVERSIDAD DE OVIEDO

Características generales de C#
Características generales de C#
OOTOOTLabLab

Benjamín López Pérez
Benjamín López Pérez

Características de C#
Características de C#
Instrucciones seguras
 Instrucciones seguras
Sólo condiciones lógicas
 Sólo condiciones lógicas
Sin traspasos implícitos entre casos de switch
switch
 Sin traspasos implícitos entre casos de
Sistema de tipos unificados
 Sistema de tipos unificados
Clase padre común System
 Clase padre común
Boxing y y unboxing
 Boxing
Tipos básicos de tamaño fijo
 Tipos básicos de tamaño fijo
Extensibilidad de operadores
 Extensibilidad de operadores
Redefiniciones inteligentes y consistentes
 Redefiniciones inteligentes y consistentes
Indizadores
 Indizadores
Extensibilidad de tipos básicos
Extensibilidad de tipos básicos
Posibilidad de paso por referencia para eficiencia
 Posibilidad de paso por referencia para eficiencia

System..Object
Object
unboxing para homogeneidad y eficiencia
para homogeneidad y eficiencia

Cursos de Verano 2002
Cursos de Verano 2002

UNIVERSIDAD DE OVIEDO
UNIVERSIDAD DE OVIEDO

Características generales de C#
Características generales de C#
OOTOOTLabLab

Benjamín López Pérez
Benjamín López Pérez

Características de C#
Características de C#
Extensibilidad de modificadores
Extensibilidad de modificadores
Atributos
–– Atributos
Versionable
Versionable
–– Redefinir virtual con
–– Ocultar con
Compatible
Compatible
Con funciones nativas (ejej: Win32) con
–– Con funciones nativas (
Con objetos COM con tlbimp
tlbimp y y regasm
regasm
–– Con objetos COM con
con aximp
Con controles ActiveX
–– Con controles

Redefinir virtual con override
override
Ocultar con newnew

: Win32) con Pinvoke
Pinvoke

ActiveX con

aximp y y regasm
regasm

Cursos de Verano 2002
Cursos de Verano 2002

UNIVERSIDAD DE OVIEDO
UNIVERSIDAD DE OVIEDO

Características generales de C#
Características generales de C#
OOTOOTLabLab

Benjamín López Pérez
Benjamín López Pérez

Introducción a C#

C# Avanzado

1.1. Generalidades
Generalidades
2.2.
Tipos
Tipos
Expresiones
3.3. Expresiones
4.4. Declaraciones
Declaraciones
Sentencias
5.5. Sentencias
6.6. Clases y Estructuras
Clases y Estructuras

7.7.
Herencia
Herencia
8.8.
Interfaces
Interfaces
9.9.
Delegados
Delegados
10.10. Excepciones
Excepciones
11.11. Namespaces
Namespaces y Ensamblados
y Ensamblados
12.12. Atributos
Atributos
13.13. Threads
Threads
14.14. Comentarios XML
Comentarios XML

Referencias:
B.Albahari, P.Drayton, B.Merrill: C# Essentials. O'Reilly, 2001
S.Robinson et al: Professional C#, Wrox Press, 2001
Documentación en línea en el CD .NET SDK

Cursos de Verano 2002
Cursos de Verano 2002

UNIVERSIDAD DE OVIEDO
UNIVERSIDAD DE OVIEDO

Características generales de C#
Características generales de C#
OOTOOTLabLab

Benjamín López Pérez
Benjamín López Pérez

Características de C#
Características de C#
Muy similar a Java
70% Java, 10% C++, 5% Visual Basic, 15% nuevo

Como en C++

Aritmética punteros en código

(Operador) Sobrecarga

inseguro

Algunos detalles sintácticos

Como en Java
Orientación a Objetos (herencia

simple)
Interfaces


Excepciones
Threads
Namespaces (como Paquetes)
Fuertemente tipado
Recolector de basura
Reflexión
Carga dinámica de código


...

Cursos de Verano 2002
Cursos de Verano 2002

UNIVERSIDAD DE OVIEDO
UNIVERSIDAD DE OVIEDO

Características generales de C#
Características generales de C#
OOTOOTLabLab

Benjamín López Pérez
Benjamín López Pérez

Nuevas caracteríticas
Nuevas

caracteríticas de C#
de C#

Nuevo (comparado con Java)
Referencias y parametros de salida
Objetos en el stack (structs)
Arrays Rectangulares
Enumeraciones
Sistema de tipos Unificado
goto
Versionado

"Simplificaciones Sintácticas"
Programación basada en componentes

- Propiedades
- Eventos
Delegados
Indizadores
Sobrecarga de operadores
Sentencias foreach
Boxing/unboxing
Atributos
...

Cursos de Verano 2002
Cursos de Verano 2002

UNIVERSIDAD DE OVIEDO
UNIVERSIDAD DE OVIEDO

Características generales de C#
Características generales de C#
OOTOOTLabLab

Benjamín López Pérez
Benjamín López Pérez

Hola Mundo
Hola Mundo

Fichero Hola.cs

using System
System;;
using

class Hola {
Hola {
class

static voidvoid MainMain() {() {
static
Console..WriteLine
Console
}}

WriteLine("Hola Mundo");
("Hola Mundo");

}}

Compilación (en la ventana de consola)

csc Hola.cs

Ejecución

Hola Mundo

utiliza el namespace System
el punto de entrada se debe llamar Main

el nombre de fichero y de la clase

la salida va a la consola

no tienen por que ser iguales

Cursos de Verano 2002
Cursos de Verano 2002

UNIVERSIDAD DE OVIEDO
UNIVERSIDAD DE OVIEDO

Características generales de C#
Características generales de C#
OOTOOTLabLab

Benjamín López Pérez
Benjamín López Pérez

Estructura de los Programas en C#
Estructura de los Programas en C#

Programa

Fich. F1.cs

Fich. F2.cs

Fich. F3.cs

namespace A {...}

namespace B {...}

namespace C {...}

clase X {...}

clase Y {...}

clase Z {...}

Si no se especifica namespace

Si no se especifica
Los Los Namespaces

namespace => => namespace
namespace por defecto anónimo
por defecto anónimo
Namespaces pueden contener también estructuras, interfaces,
pueden contener también estructuras, interfaces,

delegados y enumerados
delegados y enumerados
Namespace puede ser "reabierto" en otros ficheros
puede ser "reabierto" en otros ficheros
Caso más simple: clase única, fichero único, namespace

Namespace
Caso más simple: clase única, fichero único,

namespace por defecto
por defecto

Cursos de Verano 2002
Cursos de Verano 2002

UNIVERSIDAD DE OVIEDO
UNIVERSIDAD DE OVIEDO

Características generales de C#
Características generales de C#
OOTOOTLabLab

Benjamín López Pérez
Benjamín López Pérez

Un Programa formado por 2 Ficheros
Un Programa formado por 2 Ficheros

Contador.cs
Contador {{
class Contador
class
int valval = 0;= 0;
int
public voidvoid
  • Links de descarga
http://lwp-l.com/pdf10337

Comentarios de: Características Generales de C# (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