SlideShare une entreprise Scribd logo
1  sur  5
Télécharger pour lire hors ligne
Diagrama de C#
Creado Por:

Alejandro Ismael Hernández Alvarenga

Usis:

006613
Visual C#
Definición:
C# es un lenguaje de programación que se ha diseñado para generar diversas aplicaciones que se ejecutan en
.NET Framework. C# es simple, eficaz, con seguridad de tipos y orientado a objetos. Las numerosas
innovaciones de C# permiten desarrollar aplicaciones rápidamente y mantener la expresividad y elegancia de
los lenguajes de estilo de C.

Visual C# es una implementación del lenguaje de C# de Microsoft. Visual Studio ofrece compatibilidad con
Visual C# con un completo editor de código, un compilador, plantillas de proyecto, diseñadores, asistentes
para código, un depurador eficaz y de fácil uso y otras herramientas. La biblioteca de clases de .NET
Framework ofrece acceso a numerosos servicios de sistema operativo y a otras clases útiles y adecuadamente
diseñadas que aceleran el ciclo de desarrollo de manera significativa.

¿Qué es visual C#?
C# es un lenguaje con seguridad de tipos y orientado a objetos, sencillo pero eficaz, que permite que los
programadores creen una gran variedad de aplicaciones. Junto a .NET Framework, Visual C# 2008 permite
la creación de aplicaciones para Windows, servicios web, herramientas de bases de datos, componentes,
controles, etc

Historia:
La historia de C parte de un lenguaje anterior, el lenguaje B, escrito por Ken Thompson en 1970 con el
objetivo de recodificar el sistema operativo UNIX, que hasta el momento se había programado en
ensamblador. La pega del ensamblador era que lo ligaba a una serie de máquinas concretas, por lo que
conseguir un lenguaje abstraído de cada máquina conseguiría una portabilidad del sistema muchísimo mayor.
A su vez B fue inspirado en el BCPL de Martin Richard, diseñado tres años antes.
En 1972 es Dennis Ritchie (de los Laboratorios Bell de AT&T) quien diseña finalmente C a partir del B de
Thompson, aportando un diseño de tipos y estructuras de datos que consiguen una claridad y eficacia en el
lenguaje muy superior. Es un lenguaje que permite realizar una programación estructurada economizando las
expresiones, con abundancia de operadores y tipos de datos (aunque los básicos sean pocos), codificando en alto
y bajo nivel simultáneamente, reemplazando ventajosamente la programación en ensamblador y permitiendo
una utilización natural de las funciones primitivas del sistema. Además, no está orientado a ningún área en
especial y sobre todo consigue un código objeto altamente optimizado que repercute en que los programas son
muy rápidos.
Durante muchos años no existen reglas estándar para el lenguaje, pero en 1983 se decide formar un comité con
el objetivo de crear el estándar ANSI (Instituto Nacional Americano de Estándares). El proceso dura seis años
y a principios de los 90 el estándar es reconocido por la ISO (Organización Internacional de Estándares) y
comienza a comercializarse con el nombre ANSI C.
Paralelamente, en 1980 surge C++ de la mano de Bjarne Stroustrup (también de Laboratorios Bell de AT&T).
Diseña este lenguaje con el objetivo de añadir a C nuevas características: clases y funciones virtuales (de
SIMULA67), tipos genéricos y expresiones (de ADA), la posibilidad de declarar variables en cualquier punto
del programa (de ALGOL68), y sobre todo, un auténtico motor de objetos con herencia múltiple que permite
combinar la programación imperativa de C con la programación orientada a objetos. Estas nuevas
características mantienen siempre la esencia del lenguaje C: otorgan el control absoluto de la aplicación al
programador, consiguiendo una velocidad muy superior a la ofrecida por otros lenguajes.El siguiente hecho
fundamental en la evolución de C++ es sin duda la incorporación de la librería STL años más tarde, obra de
Alexander Stepanov y Adrew Koening. Esta librería de clases con contenedores y algoritmos genéricos
proporciona a C++ una potencia única entre los lenguajes de alto nivel.
Debido al éxito del lenguaje, en 1990 se reúnen las organizaciones ANSI e ISO para definir un estándar que
formalice el lenguaje. El proceso culmina en 1998 con la aprobación del ANSI C++.
La última variante que ha surgido de C es el moderno C#. En el año 2000, Microsoft presenta su plataforma
.NET junto con un nuevo lenguaje, C# (diseñado por Anders Hejlsberg), que servirá de lenguaje principal de la
plataforma. C# es un híbrido de C++ y Java que fusiona, principalmente, la capacidad de combinar
operadores propia del primero (no incorpora la herencia múltiple) con la plena orientación a objetos del
segundo. La orientación a objetos es tal que el propio programa está encapsulado en una clase.Actualmente
C# se encuentra entre los 10 lenguajes más utilizados. A pesar de su corta historia, ha recibido la aprobación
del estándar de dos organizaciones: en el 2001 se aprueba el ECMA y en el 2003 el ISO.

¿Quiénes son sus principales desarrolladores?
Sus principales creadores son Scott Wiltamuth y Anders Hejlsberg

Ventajas de Visual C#:
Las ventajas que ofrece C# frente a otros leguajes de programación son:

Declaraciones en el espacio de nombres: al empezar a programar algo, se puede definir una o más clases dentro
de un mismo espacio de nombres.

Tipos de datos: en C# existe un rango más amplio y definido de tipos de datos que los que se encuentran en C,
C++ o Java.

Atributos: cada miembro de una clase tiene un atributo de acceso del tipo público, protegido, interno, interno
protegido y privado.

Pase de parámetros: aquí se puede declarar a los métodos para que acepten un número variable de parámetros.
De forma predeterminada, el pase de parámetros es por valor, a menos que se use la palabra reservada ref, la
cual indica que el pase es por referencia.

Métodos virtuales y redefiniciones: antes de que un método pueda ser redefinido en una clase base, debe
declararse como virtual. El método redefinido en la subclase debe ser declarado con la palabra override

Propiedades: un objeto tiene intrínsecamente propiedades, y debido a que las clases en C# pueden ser
utilizadas como objetos, C# permite la declaración de propiedades dentro de cualquier clase.
Inicializador: un inicializador es como una propiedad, con la diferencia de que en lugar de un nombre de
propiedad, un valor de índice entre corchetes se utiliza en forma anónima para hacer referencia al miembro de
una clase.

Control de versiones: C# permite mantener múltiples versiones de clases en forma binaria, colocándolas en
diferentes espacios de nombres. Esto permite que versiones nuevas y anteriores de software puedan ejecutarse
en forma simultánea.

Desventajas de Visual C#:
Las desventajas que se derivan del uso de este lenguaje de programación son que en primer lugar se tiene que
conseguir una versión reciente de Visual Studio .NET, por otra parte se tiene que tener algunos requerimientos
mínimos del sistema para poder trabajar adecuadamente tales como contar con Windows NT 4 o superior,
tener alrededor de 4 gigas de espacio libre para la pura instalación, etc.

Además para quien no está familiarizado con ningún lenguaje de programación, le costará más trabajo
iniciarse en su uso, y si se quiere consultar algún tutorial más explícito sobre la programación en C# se tendría
que contar además con una conexión a Internet.

Versiones de Visual C#:
C# Version 1.0
Microsoft lanzó la primera versión de C # con Visual Studio 2002 (Enero 2002).
El uso de código administrado se introdujo con esta versión. C # 1.0 fue el primer idioma que el desarrollador
ha adoptado para construir. NET.
C# Version 2.0
Microsoft la lanzó en noviembre de 2005 la segunda versión del lenguaje de programación C#, introduciendo
a esta edición las siguiente caracteristicas.
Genéricos
Métodos anónimos
Se utilizan con el fin de pasar un bloque de código como parámetro de un delegado (Referencia que encapsula
un método con nombre o anónimo) con la finalidad de ahorrar código.
Tipo variable Null
Tipos de datos que aceptan valores NULL, el cual puede ser útil en el manejo de BD ya que pueden existir
tipos de datos (variables) que pueden o no contener un valor asignado.
Clase parcial
Separación de una clase en 2 archivos distintos para permitir el trabajo (Modicficaciones) simultaneo en ellos.
C# Versión 3.0
Visual Studio 2008 llegó con C # versión 3.0 (Noviembre de 2007) y tiene nuevas características.
Es una función o subrutina y es la que entra a reemplazar a los métodos anónimos de la versión anterior.
Lambda Expresión
Método de
extensión
Árbol de Expresión
Tipos anónimos
Lenguaje de consulta integrado
C# Version 4.0
Fue lanzado con Visual Studio 2010 con. NET Framework 4 (Abril de 2010). Con la introducción de las
siguientes caracteristicas tipos dinámicos, los parámetros opcionales, argumentos con nombre y varianza
genérica.
C# Versión 5.0
Esta version llega con caracteristicas como lo son La introducción de funciones asíncronas, atributos info
llamantes, y un pellizco de foreach iteración captura de variables.

Contenu connexe

Tendances

Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)
YJGG
 
Lenguajes de Programación
Lenguajes de ProgramaciónLenguajes de Programación
Lenguajes de Programación
Sandra Esposito
 
Proyecto de informatica ii visual basic 2008
Proyecto de informatica ii visual basic 2008Proyecto de informatica ii visual basic 2008
Proyecto de informatica ii visual basic 2008
Julio Ayala Rolón
 
Variables de-programación
Variables de-programaciónVariables de-programación
Variables de-programación
KarenNaranjoH
 
Lenguaje de programacion presentacion.
Lenguaje de programacion presentacion.Lenguaje de programacion presentacion.
Lenguaje de programacion presentacion.
Fj Lezama
 

Tendances (20)

Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)Lenguajes de programacion (exposicion)
Lenguajes de programacion (exposicion)
 
Sintaxis funciones c++
Sintaxis funciones c++Sintaxis funciones c++
Sintaxis funciones c++
 
Linea de tiempo de la historia de los lenguajes de programacion
Linea de tiempo de la historia de los lenguajes de programacionLinea de tiempo de la historia de los lenguajes de programacion
Linea de tiempo de la historia de los lenguajes de programacion
 
Ansi c
Ansi cAnsi c
Ansi c
 
Lenguaje de programación
Lenguaje de programaciónLenguaje de programación
Lenguaje de programación
 
Lenguajes de Programación
Lenguajes de ProgramaciónLenguajes de Programación
Lenguajes de Programación
 
Clases/Tipos de lenguajes de programación
Clases/Tipos de lenguajes de programaciónClases/Tipos de lenguajes de programación
Clases/Tipos de lenguajes de programación
 
TIPOS DE DATOS PARA C++
TIPOS DE DATOS PARA C++TIPOS DE DATOS PARA C++
TIPOS DE DATOS PARA C++
 
c++ introduccion
c++ introduccionc++ introduccion
c++ introduccion
 
Introduccion a la programacion
Introduccion a la programacionIntroduccion a la programacion
Introduccion a la programacion
 
Proyecto de informatica ii visual basic 2008
Proyecto de informatica ii visual basic 2008Proyecto de informatica ii visual basic 2008
Proyecto de informatica ii visual basic 2008
 
Historia de los Lenguajes de Programacion
Historia de los Lenguajes de ProgramacionHistoria de los Lenguajes de Programacion
Historia de los Lenguajes de Programacion
 
Tipos de librería en c++
Tipos de librería en c++Tipos de librería en c++
Tipos de librería en c++
 
Gramática Libre de Contexto
Gramática Libre de ContextoGramática Libre de Contexto
Gramática Libre de Contexto
 
Historia de los lenguajes de programación power point
Historia de los lenguajes de programación power pointHistoria de los lenguajes de programación power point
Historia de los lenguajes de programación power point
 
Variables de-programación
Variables de-programaciónVariables de-programación
Variables de-programación
 
INSTRUCCIONES BÁSICAS PARA C++
INSTRUCCIONES BÁSICAS PARA C++INSTRUCCIONES BÁSICAS PARA C++
INSTRUCCIONES BÁSICAS PARA C++
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Programación de microcontrolador
Programación de microcontroladorProgramación de microcontrolador
Programación de microcontrolador
 
Lenguaje de programacion presentacion.
Lenguaje de programacion presentacion.Lenguaje de programacion presentacion.
Lenguaje de programacion presentacion.
 

En vedette

Lenguaje de programacion c++ basico 2da parte instalación del compilador
Lenguaje de programacion c++ basico 2da parte instalación del compiladorLenguaje de programacion c++ basico 2da parte instalación del compilador
Lenguaje de programacion c++ basico 2da parte instalación del compilador
Dunkherz
 
Lenguaje de programacion C++ 2
Lenguaje de programacion C++ 2Lenguaje de programacion C++ 2
Lenguaje de programacion C++ 2
David
 
Certificat de soudage SN EN 287-1 Martins
Certificat de soudage SN EN 287-1 MartinsCertificat de soudage SN EN 287-1 Martins
Certificat de soudage SN EN 287-1 Martins
Miro Martins
 
Diagramas de flujo, especificaciones y diseño de procesos
Diagramas de flujo, especificaciones y diseño de procesosDiagramas de flujo, especificaciones y diseño de procesos
Diagramas de flujo, especificaciones y diseño de procesos
Ivan Vera Montenegro
 

En vedette (13)

Lenguaje de programacion c++ basico 2da parte instalación del compilador
Lenguaje de programacion c++ basico 2da parte instalación del compiladorLenguaje de programacion c++ basico 2da parte instalación del compilador
Lenguaje de programacion c++ basico 2da parte instalación del compilador
 
Lenguaje de-programacion-c++
Lenguaje de-programacion-c++Lenguaje de-programacion-c++
Lenguaje de-programacion-c++
 
Lenguaje de programacion C++ 2
Lenguaje de programacion C++ 2Lenguaje de programacion C++ 2
Lenguaje de programacion C++ 2
 
Java script
Java scriptJava script
Java script
 
Certificat de soudage SN EN 287-1 Martins
Certificat de soudage SN EN 287-1 MartinsCertificat de soudage SN EN 287-1 Martins
Certificat de soudage SN EN 287-1 Martins
 
Antracnosis y Lasiodiplodia en Mango
Antracnosis y Lasiodiplodia en MangoAntracnosis y Lasiodiplodia en Mango
Antracnosis y Lasiodiplodia en Mango
 
Lenguaje de Programación Ruby
Lenguaje de Programación RubyLenguaje de Programación Ruby
Lenguaje de Programación Ruby
 
Sistema locomotor expo trabajo escritp
Sistema locomotor expo trabajo escritpSistema locomotor expo trabajo escritp
Sistema locomotor expo trabajo escritp
 
Lenguaje phython
Lenguaje phythonLenguaje phython
Lenguaje phython
 
Presentación1
Presentación1Presentación1
Presentación1
 
Lenguaje de Programación PHP
Lenguaje de Programación PHPLenguaje de Programación PHP
Lenguaje de Programación PHP
 
Java orientado a objetos
Java orientado a objetosJava orientado a objetos
Java orientado a objetos
 
Diagramas de flujo, especificaciones y diseño de procesos
Diagramas de flujo, especificaciones y diseño de procesosDiagramas de flujo, especificaciones y diseño de procesos
Diagramas de flujo, especificaciones y diseño de procesos
 

Similaire à Todo sobre C#

C# documento de texto junto con mapa conceptual
C# documento de texto junto con mapa conceptualC# documento de texto junto con mapa conceptual
C# documento de texto junto con mapa conceptual
Fernando Jose
 
Reporte de visual c#(jose gonzalo estrada lopez)
Reporte de visual c#(jose gonzalo estrada lopez)Reporte de visual c#(jose gonzalo estrada lopez)
Reporte de visual c#(jose gonzalo estrada lopez)
josegonzalo130
 
Historia del C++ y JAVA
Historia del C++ y JAVAHistoria del C++ y JAVA
Historia del C++ y JAVA
Nohemi Cuesta
 
Reporte_de_microsoft_visual_c#
Reporte_de_microsoft_visual_c#Reporte_de_microsoft_visual_c#
Reporte_de_microsoft_visual_c#
José García
 
Mi lenguaje de programación de preferencia
Mi lenguaje de programación de preferenciaMi lenguaje de programación de preferencia
Mi lenguaje de programación de preferencia
monty19
 

Similaire à Todo sobre C# (20)

C# documento de texto junto con mapa conceptual
C# documento de texto junto con mapa conceptualC# documento de texto junto con mapa conceptual
C# documento de texto junto con mapa conceptual
 
C#
C#C#
C#
 
Reporte de visual c#(jose gonzalo estrada lopez)
Reporte de visual c#(jose gonzalo estrada lopez)Reporte de visual c#(jose gonzalo estrada lopez)
Reporte de visual c#(jose gonzalo estrada lopez)
 
C sharp
C sharpC sharp
C sharp
 
Lenguaje C sharp
Lenguaje C sharpLenguaje C sharp
Lenguaje C sharp
 
Historia del C++ y JAVA
Historia del C++ y JAVAHistoria del C++ y JAVA
Historia del C++ y JAVA
 
1. introducción a c#
1.  introducción a c#1.  introducción a c#
1. introducción a c#
 
Consulta c++
Consulta c++Consulta c++
Consulta c++
 
Lenguaje de la programación orientada a objetos c#
Lenguaje de la programación orientada a objetos c#Lenguaje de la programación orientada a objetos c#
Lenguaje de la programación orientada a objetos c#
 
Reporte_de_microsoft_visual_c#
Reporte_de_microsoft_visual_c#Reporte_de_microsoft_visual_c#
Reporte_de_microsoft_visual_c#
 
Informe lpi
Informe lpiInforme lpi
Informe lpi
 
Lenguaje c nardy y daniela
Lenguaje c nardy y danielaLenguaje c nardy y daniela
Lenguaje c nardy y daniela
 
Lenguaje c++
Lenguaje c++Lenguaje c++
Lenguaje c++
 
Actividad sobre el lenguaje c
Actividad sobre el lenguaje cActividad sobre el lenguaje c
Actividad sobre el lenguaje c
 
Csharp
CsharpCsharp
Csharp
 
Mi lenguaje de programación de preferencia
Mi lenguaje de programación de preferenciaMi lenguaje de programación de preferencia
Mi lenguaje de programación de preferencia
 
Caracteristicas lenguajes
Caracteristicas lenguajesCaracteristicas lenguajes
Caracteristicas lenguajes
 
Lenguaje de programación C - Cleibery.
Lenguaje de programación C - Cleibery.Lenguaje de programación C - Cleibery.
Lenguaje de programación C - Cleibery.
 
Programacion en C#
Programacion en C#Programacion en C#
Programacion en C#
 
Programación en c++
Programación en c++Programación en c++
Programación en c++
 

Dernier

6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
Wilian24
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Fernando Solis
 

Dernier (20)

Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.pptFUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
 
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
SESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.docSESION DE PERSONAL SOCIAL.  La convivencia en familia 22-04-24  -.doc
SESION DE PERSONAL SOCIAL. La convivencia en familia 22-04-24 -.doc
 
Desarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresDesarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por Valores
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
 
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
 
Los dos testigos. Testifican de la Verdad
Los dos testigos. Testifican de la VerdadLos dos testigos. Testifican de la Verdad
Los dos testigos. Testifican de la Verdad
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Sesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdfSesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdf
 
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADOTIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
 
AEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptxAEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptx
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
Power Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptxPower Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptx
 
Louis Jean François Lagrenée. Erotismo y sensualidad. El erotismo en la Hist...
Louis Jean François Lagrenée.  Erotismo y sensualidad. El erotismo en la Hist...Louis Jean François Lagrenée.  Erotismo y sensualidad. El erotismo en la Hist...
Louis Jean François Lagrenée. Erotismo y sensualidad. El erotismo en la Hist...
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
 

Todo sobre C#

  • 1. Diagrama de C# Creado Por: Alejandro Ismael Hernández Alvarenga Usis: 006613
  • 2. Visual C# Definición: C# es un lenguaje de programación que se ha diseñado para generar diversas aplicaciones que se ejecutan en .NET Framework. C# es simple, eficaz, con seguridad de tipos y orientado a objetos. Las numerosas innovaciones de C# permiten desarrollar aplicaciones rápidamente y mantener la expresividad y elegancia de los lenguajes de estilo de C. Visual C# es una implementación del lenguaje de C# de Microsoft. Visual Studio ofrece compatibilidad con Visual C# con un completo editor de código, un compilador, plantillas de proyecto, diseñadores, asistentes para código, un depurador eficaz y de fácil uso y otras herramientas. La biblioteca de clases de .NET Framework ofrece acceso a numerosos servicios de sistema operativo y a otras clases útiles y adecuadamente diseñadas que aceleran el ciclo de desarrollo de manera significativa. ¿Qué es visual C#? C# es un lenguaje con seguridad de tipos y orientado a objetos, sencillo pero eficaz, que permite que los programadores creen una gran variedad de aplicaciones. Junto a .NET Framework, Visual C# 2008 permite la creación de aplicaciones para Windows, servicios web, herramientas de bases de datos, componentes, controles, etc Historia: La historia de C parte de un lenguaje anterior, el lenguaje B, escrito por Ken Thompson en 1970 con el objetivo de recodificar el sistema operativo UNIX, que hasta el momento se había programado en ensamblador. La pega del ensamblador era que lo ligaba a una serie de máquinas concretas, por lo que conseguir un lenguaje abstraído de cada máquina conseguiría una portabilidad del sistema muchísimo mayor. A su vez B fue inspirado en el BCPL de Martin Richard, diseñado tres años antes. En 1972 es Dennis Ritchie (de los Laboratorios Bell de AT&T) quien diseña finalmente C a partir del B de Thompson, aportando un diseño de tipos y estructuras de datos que consiguen una claridad y eficacia en el lenguaje muy superior. Es un lenguaje que permite realizar una programación estructurada economizando las expresiones, con abundancia de operadores y tipos de datos (aunque los básicos sean pocos), codificando en alto y bajo nivel simultáneamente, reemplazando ventajosamente la programación en ensamblador y permitiendo una utilización natural de las funciones primitivas del sistema. Además, no está orientado a ningún área en especial y sobre todo consigue un código objeto altamente optimizado que repercute en que los programas son muy rápidos. Durante muchos años no existen reglas estándar para el lenguaje, pero en 1983 se decide formar un comité con el objetivo de crear el estándar ANSI (Instituto Nacional Americano de Estándares). El proceso dura seis años y a principios de los 90 el estándar es reconocido por la ISO (Organización Internacional de Estándares) y comienza a comercializarse con el nombre ANSI C. Paralelamente, en 1980 surge C++ de la mano de Bjarne Stroustrup (también de Laboratorios Bell de AT&T). Diseña este lenguaje con el objetivo de añadir a C nuevas características: clases y funciones virtuales (de SIMULA67), tipos genéricos y expresiones (de ADA), la posibilidad de declarar variables en cualquier punto del programa (de ALGOL68), y sobre todo, un auténtico motor de objetos con herencia múltiple que permite combinar la programación imperativa de C con la programación orientada a objetos. Estas nuevas características mantienen siempre la esencia del lenguaje C: otorgan el control absoluto de la aplicación al programador, consiguiendo una velocidad muy superior a la ofrecida por otros lenguajes.El siguiente hecho fundamental en la evolución de C++ es sin duda la incorporación de la librería STL años más tarde, obra de
  • 3. Alexander Stepanov y Adrew Koening. Esta librería de clases con contenedores y algoritmos genéricos proporciona a C++ una potencia única entre los lenguajes de alto nivel. Debido al éxito del lenguaje, en 1990 se reúnen las organizaciones ANSI e ISO para definir un estándar que formalice el lenguaje. El proceso culmina en 1998 con la aprobación del ANSI C++. La última variante que ha surgido de C es el moderno C#. En el año 2000, Microsoft presenta su plataforma .NET junto con un nuevo lenguaje, C# (diseñado por Anders Hejlsberg), que servirá de lenguaje principal de la plataforma. C# es un híbrido de C++ y Java que fusiona, principalmente, la capacidad de combinar operadores propia del primero (no incorpora la herencia múltiple) con la plena orientación a objetos del segundo. La orientación a objetos es tal que el propio programa está encapsulado en una clase.Actualmente C# se encuentra entre los 10 lenguajes más utilizados. A pesar de su corta historia, ha recibido la aprobación del estándar de dos organizaciones: en el 2001 se aprueba el ECMA y en el 2003 el ISO. ¿Quiénes son sus principales desarrolladores? Sus principales creadores son Scott Wiltamuth y Anders Hejlsberg Ventajas de Visual C#: Las ventajas que ofrece C# frente a otros leguajes de programación son: Declaraciones en el espacio de nombres: al empezar a programar algo, se puede definir una o más clases dentro de un mismo espacio de nombres. Tipos de datos: en C# existe un rango más amplio y definido de tipos de datos que los que se encuentran en C, C++ o Java. Atributos: cada miembro de una clase tiene un atributo de acceso del tipo público, protegido, interno, interno protegido y privado. Pase de parámetros: aquí se puede declarar a los métodos para que acepten un número variable de parámetros. De forma predeterminada, el pase de parámetros es por valor, a menos que se use la palabra reservada ref, la cual indica que el pase es por referencia. Métodos virtuales y redefiniciones: antes de que un método pueda ser redefinido en una clase base, debe declararse como virtual. El método redefinido en la subclase debe ser declarado con la palabra override Propiedades: un objeto tiene intrínsecamente propiedades, y debido a que las clases en C# pueden ser utilizadas como objetos, C# permite la declaración de propiedades dentro de cualquier clase.
  • 4. Inicializador: un inicializador es como una propiedad, con la diferencia de que en lugar de un nombre de propiedad, un valor de índice entre corchetes se utiliza en forma anónima para hacer referencia al miembro de una clase. Control de versiones: C# permite mantener múltiples versiones de clases en forma binaria, colocándolas en diferentes espacios de nombres. Esto permite que versiones nuevas y anteriores de software puedan ejecutarse en forma simultánea. Desventajas de Visual C#: Las desventajas que se derivan del uso de este lenguaje de programación son que en primer lugar se tiene que conseguir una versión reciente de Visual Studio .NET, por otra parte se tiene que tener algunos requerimientos mínimos del sistema para poder trabajar adecuadamente tales como contar con Windows NT 4 o superior, tener alrededor de 4 gigas de espacio libre para la pura instalación, etc. Además para quien no está familiarizado con ningún lenguaje de programación, le costará más trabajo iniciarse en su uso, y si se quiere consultar algún tutorial más explícito sobre la programación en C# se tendría que contar además con una conexión a Internet. Versiones de Visual C#: C# Version 1.0 Microsoft lanzó la primera versión de C # con Visual Studio 2002 (Enero 2002). El uso de código administrado se introdujo con esta versión. C # 1.0 fue el primer idioma que el desarrollador ha adoptado para construir. NET. C# Version 2.0 Microsoft la lanzó en noviembre de 2005 la segunda versión del lenguaje de programación C#, introduciendo a esta edición las siguiente caracteristicas. Genéricos Métodos anónimos Se utilizan con el fin de pasar un bloque de código como parámetro de un delegado (Referencia que encapsula un método con nombre o anónimo) con la finalidad de ahorrar código. Tipo variable Null Tipos de datos que aceptan valores NULL, el cual puede ser útil en el manejo de BD ya que pueden existir tipos de datos (variables) que pueden o no contener un valor asignado. Clase parcial Separación de una clase en 2 archivos distintos para permitir el trabajo (Modicficaciones) simultaneo en ellos. C# Versión 3.0 Visual Studio 2008 llegó con C # versión 3.0 (Noviembre de 2007) y tiene nuevas características. Es una función o subrutina y es la que entra a reemplazar a los métodos anónimos de la versión anterior. Lambda Expresión Método de extensión Árbol de Expresión
  • 5. Tipos anónimos Lenguaje de consulta integrado C# Version 4.0 Fue lanzado con Visual Studio 2010 con. NET Framework 4 (Abril de 2010). Con la introducción de las siguientes caracteristicas tipos dinámicos, los parámetros opcionales, argumentos con nombre y varianza genérica. C# Versión 5.0 Esta version llega con caracteristicas como lo son La introducción de funciones asíncronas, atributos info llamantes, y un pellizco de foreach iteración captura de variables.