Diferencia entre revisiones de «Lenguaje de Programación C Sharp»

Línea 1: Línea 1:
= C# =
+
'''C#'''
  
 
{{Aplicación|nombre=C#|logo=Cshar1.JPG|descripcion=C #|creador=Microsoft Corporation|fecha_de_creacion=2001|sitio_web=http://www.microsoft.com/net}}C# (pronunciado si sharp en inglés) es un lenguaje de programación orientado a objetos desarrollado y estandarizado por Microsoft como parte de su plataforma .NET, que después fue aprobado como un estándar por la ECMA e ISO.<br>Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma.NET el cual es similar al de Java aunque incluye mejoras derivadas de otros lenguajes (entre ellos Delphi).<br>La creación del nombre del lenguaje, C♯, proviene de dibujar dos signos positivos encima de los dos signos positivos de "C++", queriendo dar una imagen de salto evolutivo del mismo modo que ocurrió con el paso de C a C++.<br>C♯, como parte de la plataforma.NET, está normalizado por ECMA desde diciembre de 2001 (C# Language Specification "Especificación del lenguaje C♯"). El 7 de noviembre de 2005 salió la versión 2.0 del lenguaje que incluía mejoras tales como tipos genéricos, métodos anónimos, iteradores, tipos parciales y tipos anulables. El 19 de noviembre de 2007 salió la versión 3.0 de C# destacando entre las mejoras los tipos implícitos, tipos anónimos y LINQ (Language Integrated Query -consulta integrada en el lenguaje).<br>Aunque C♯ forma parte de la plataforma.NET, ésta es una interfaz de programación de aplicaciones (API); mientras que C♯ es un lenguaje de programación independiente diseñado para generar programas sobre dicha plataforma. Ya existe un compilador implementado que provee el marco de DotGNU - Mono que genera programas para distintas plataformas como Win32, UNIX y Linux.<br><br>  
 
{{Aplicación|nombre=C#|logo=Cshar1.JPG|descripcion=C #|creador=Microsoft Corporation|fecha_de_creacion=2001|sitio_web=http://www.microsoft.com/net}}C# (pronunciado si sharp en inglés) es un lenguaje de programación orientado a objetos desarrollado y estandarizado por Microsoft como parte de su plataforma .NET, que después fue aprobado como un estándar por la ECMA e ISO.<br>Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma.NET el cual es similar al de Java aunque incluye mejoras derivadas de otros lenguajes (entre ellos Delphi).<br>La creación del nombre del lenguaje, C♯, proviene de dibujar dos signos positivos encima de los dos signos positivos de "C++", queriendo dar una imagen de salto evolutivo del mismo modo que ocurrió con el paso de C a C++.<br>C♯, como parte de la plataforma.NET, está normalizado por ECMA desde diciembre de 2001 (C# Language Specification "Especificación del lenguaje C♯"). El 7 de noviembre de 2005 salió la versión 2.0 del lenguaje que incluía mejoras tales como tipos genéricos, métodos anónimos, iteradores, tipos parciales y tipos anulables. El 19 de noviembre de 2007 salió la versión 3.0 de C# destacando entre las mejoras los tipos implícitos, tipos anónimos y LINQ (Language Integrated Query -consulta integrada en el lenguaje).<br>Aunque C♯ forma parte de la plataforma.NET, ésta es una interfaz de programación de aplicaciones (API); mientras que C♯ es un lenguaje de programación independiente diseñado para generar programas sobre dicha plataforma. Ya existe un compilador implementado que provee el marco de DotGNU - Mono que genera programas para distintas plataformas como Win32, UNIX y Linux.<br><br>  
 
{| cellspacing="1" cellpadding="1" border="1" align="left" style="width: 236px; height: 308px;"
 
|-
 
|
 
'''Contenido'''
 
 
'''• 1 Historia<br>• 2 Tipos de datos<br>• 3 Constantes<br>• 4 Variables<br>• 5 Operadores<br>• 6 Instrucciones de control<br>• 7 Métodos<br>• 8 Clases y objetos<br>• 9 Matrices<br>• 10 Cadenas de caracteres<br>• 11 Ejemplos<br>• 12 Compiladores<br>• 13 Metas del diseño del lenguaje'''<br>
 
 
|}
 
  
 
<br>  
 
<br>  
Línea 17: Línea 8:
  
 
[[Image:Cshar3.JPG|thumb|right|300x250px|Entorno de C#]]  
 
[[Image:Cshar3.JPG|thumb|right|300x250px|Entorno de C#]]  
 
<br>
 
 
<br>
 
 
<br>
 
 
<br>
 
 
<br>
 
 
<br>
 
 
<br>
 
 
<br>
 
  
 
<br>  
 
<br>  
Línea 161: Línea 136:
 
== Constantes<br>  ==
 
== Constantes<br>  ==
  
Las constantes en C♯ se denominan literales. Todas las constantes tienen un tipo de dato, en caso de ser una constante entera se usa la de menor tamaño que pueda alojarla, empezando por int. En caso de punto flotante se considera como un double. Sin embargo se puede especificar explícitamente el tipo de dato que una constante deberá usar, por medio de los sufijos:<br>
+
Las constantes en C♯ se denominan literales. Todas las constantes tienen un tipo de dato, en caso de ser una constante entera se usa la de menor tamaño que pueda alojarla, empezando por int. En caso de punto flotante se considera como un double. Sin embargo se puede especificar explícitamente el tipo de dato que una constante deberá usar, por medio de los sufijos:<br>  
  
 
{| width="200" cellspacing="1" cellpadding="1" border="1" align="center"
 
{| width="200" cellspacing="1" cellpadding="1" border="1" align="center"
 
|-
 
|-
| Sufijo<br>
+
| Sufijo<br>  
| Tipo de dato<br>
+
| Tipo de dato<br>  
 
| Ejemplo<br>
 
| Ejemplo<br>
 
|-
 
|-
| L<br>
+
| L<br>  
| long<br>
+
| long<br>  
 
| 12L<br>
 
| 12L<br>
 
|-
 
|-
| UL<br>
+
| UL<br>  
| ulong<br>
+
| ulong<br>  
 
| 68687UL<br>
 
| 68687UL<br>
 
|-
 
|-
| F<br>
+
| F<br>  
| float<br>
+
| float<br>  
 
| 10,19F<br>
 
| 10,19F<br>
 
|-
 
|-
| M<br>
+
| M<br>  
| decimal<br>
+
| decimal<br>  
 
| 9,95M<br>
 
| 9,95M<br>
 
|}
 
|}
  
En ocasiones, resulta más sencillo usar un sistema numérico basado en 16 en lugar de 10, para tal caso C♯ permite especificar constantes enteras en formato hexadecimal, y se hace empezando con 0x. Por ejemplo: 0xFF equivale a 255 en decimal.<br>C♯ tiene caracteres denominados secuencias de escape para facilitar la escritura con el teclado de símbolos que carecen de representación visual. Estos son:<br>
+
En ocasiones, resulta más sencillo usar un sistema numérico basado en 16 en lugar de 10, para tal caso C♯ permite especificar constantes enteras en formato hexadecimal, y se hace empezando con 0x. Por ejemplo: 0xFF equivale a 255 en decimal.<br>C♯ tiene caracteres denominados secuencias de escape para facilitar la escritura con el teclado de símbolos que carecen de representación visual. Estos son:<br>  
  
 
{| cellspacing="1" cellpadding="1" border="1" align="center" style="width: 268px; height: 287px;"
 
{| cellspacing="1" cellpadding="1" border="1" align="center" style="width: 268px; height: 287px;"
 
|-
 
|-
| Secuencia de escape<br>
+
| Secuencia de escape<br>  
 
| Descripción<br>
 
| Descripción<br>
 
|-
 
|-
| \a<br>
+
| \a<br>  
 
| Alerta (timbre)<br>
 
| Alerta (timbre)<br>
 
|-
 
|-
| \b<br>
+
| \b<br>  
 
| Retroceso<br>
 
| Retroceso<br>
 
|-
 
|-
| \f<br>
+
| \f<br>  
 
| Avance de página<br>
 
| Avance de página<br>
 
|-
 
|-
| \n<br>
+
| \n<br>  
 
| Nueva línea<br>
 
| Nueva línea<br>
 
|-
 
|-
| \r<br>
+
| \r<br>  
 
| Retorno de carro<br>
 
| Retorno de carro<br>
 
|-
 
|-
| \t<br>
+
| \t<br>  
 
| Tabulador horizontal<br>
 
| Tabulador horizontal<br>
 
|-
 
|-
| \v<br>
+
| \v<br>  
 
| Tabulador vertical<br>
 
| Tabulador vertical<br>
 
|-
 
|-
| \0<br>
+
| \0<br>  
 
| Nulo<br>
 
| Nulo<br>
 
|-
 
|-
| \'<br>
+
| \'<br>  
 
| Comilla sencilla<br>
 
| Comilla sencilla<br>
 
|-
 
|-
| \"<br>
+
| \"<br>  
 
| Comilla doble<br>
 
| Comilla doble<br>
 
|-
 
|-
| \\<br>
+
| \\<br>  
 
| Diagonal invertida<br>
 
| Diagonal invertida<br>
 
|}
 
|}
  
C♯, al igual que C++, es compatible con el tipo de constante cadena de caracteres. Dentro de la cadena de caracteres se pueden usar secuencias de escape. Una cadena de caracteres puede iniciarse con el símbolo @ seguido por una cadena entre comillas, en tal caso, las secuencias de escape no tienen efecto y además la cadena puede ocupar dos o más líneas.<br>
+
C♯, al igual que C++, es compatible con el tipo de constante cadena de caracteres. Dentro de la cadena de caracteres se pueden usar secuencias de escape. Una cadena de caracteres puede iniciarse con el símbolo @ seguido por una cadena entre comillas, en tal caso, las secuencias de escape no tienen efecto y además la cadena puede ocupar dos o más líneas.<br>  
  
== Variables<br> ==
+
== Variables<br> ==
  
Toda variable se debe declarar antes de ser utilizada. La forma en que se declara una variable en C♯ es la siguiente:<br>tipo nombre_variable;<br>Para asignar un valor a una variable:<br>nombre_variable = valor;<br>Las conversiones de tipo de variables en C♯ se representan en la siguiente tabla en donde la fila es el origen y la columna el destino. Los significados de las letras son:'''A''' (Conversión automática o implícita), '''E''' (Conversión explícita), '''I''' (Conversión incompatible).<br><br>
+
Toda variable se debe declarar antes de ser utilizada. La forma en que se declara una variable en C♯ es la siguiente:<br>tipo nombre_variable;<br>Para asignar un valor a una variable:<br>nombre_variable = valor;<br>Las conversiones de tipo de variables en C♯ se representan en la siguiente tabla en donde la fila es el origen y la columna el destino. Los significados de las letras son:'''A''' (Conversión automática o implícita), '''E''' (Conversión explícita), '''I''' (Conversión incompatible).<br><br>  
  
<br>
+
<br>  
  
 
[[Category:Lenguajes_de_programación_orientada_a_objetos]]
 
[[Category:Lenguajes_de_programación_orientada_a_objetos]]

Revisión del 16:42 30 mar 2010

C#

C#
Información sobre la plantilla
CreadorMicrosoft Corporation

C# (pronunciado si sharp en inglés) es un lenguaje de programación orientado a objetos desarrollado y estandarizado por Microsoft como parte de su plataforma .NET, que después fue aprobado como un estándar por la ECMA e ISO.
Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma.NET el cual es similar al de Java aunque incluye mejoras derivadas de otros lenguajes (entre ellos Delphi).
La creación del nombre del lenguaje, C♯, proviene de dibujar dos signos positivos encima de los dos signos positivos de "C++", queriendo dar una imagen de salto evolutivo del mismo modo que ocurrió con el paso de C a C++.
C♯, como parte de la plataforma.NET, está normalizado por ECMA desde diciembre de 2001 (C# Language Specification "Especificación del lenguaje C♯"). El 7 de noviembre de 2005 salió la versión 2.0 del lenguaje que incluía mejoras tales como tipos genéricos, métodos anónimos, iteradores, tipos parciales y tipos anulables. El 19 de noviembre de 2007 salió la versión 3.0 de C# destacando entre las mejoras los tipos implícitos, tipos anónimos y LINQ (Language Integrated Query -consulta integrada en el lenguaje).
Aunque C♯ forma parte de la plataforma.NET, ésta es una interfaz de programación de aplicaciones (API); mientras que C♯ es un lenguaje de programación independiente diseñado para generar programas sobre dicha plataforma. Ya existe un compilador implementado que provee el marco de DotGNU - Mono que genera programas para distintas plataformas como Win32, UNIX y Linux.



Archivo:Cshar3.JPG
Entorno de C#



Historia

Durante el desarrollo de la plataforma .NET, las bibliotecas de clases fueron escritas originalmente en el lenguaje compilador Simple Managed C. En enero de 1999, Anders Hejlsberg formó un equipo con la misión de desarrollar un nuevo lenguaje de programación llamado Cool (C Orientado a Objetos). Este nombre tuvo que ser cambiado debido a problemas de marca pasando a llamarse C♯ aunque habitualmente se escribe C#. La biblioteca de clases de la plataforma .NET fue migrada entonces al nuevo lenguaje.
Hejlsberg lideró el proyecto de desarrollo de C♯. Anteriormente, ya participó en el desarrollo de otros lenguajes como Turbo Pascal, J++ y Borland Delphi

Tipos de datos

C♯ contiene dos categorías generales de tipos de datos integrados: tipos de valor y tipos de referencia. El término tipo de valor indica que esos tipos contienen directamente sus valores.
C♯ define ocho tipos de enteros, a saber:

Tipo de datos de enteros
Tipo
Ancho en bits
Rango
Significado
byte
8
De 0 a 255
Entero sin signo de 8 bits
sbyte
8
De -128 a 127
Entero con signo de 8 bits
short
16
De -32.768 a 32.767
Entero corto
ushort
16
De 0 a 65.535
Entero corto sin signo
int
32
De -2.147.483.648 a 2.147.483.647
Entero medio
uint
32
De 0 a 4.294.967.295
Entero medio sin signo
long
64
De -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807
Entero largo
ulong
64
De 0 a 18.446.744.073.709.551.615
Entero largo sin signo

Los tipos de punto flotante pueden representar números con componentes fraccionales. Existen dos clases de tipos de punto flotante; float y double. El tipo double es el más utilizado porque muchas funciones matemáticas de la biblioteca de clases de C♯ usan valores double. Quizá, el tipo flotante más interesante de C♯ es decimal, dirigido al uso de cálculos monetarios. La aritmética de punto flotante normal está sujeta a una variedad de errores de redondeo cuando se aplica a valores decimales. El tipo decimal elimina estos errores y puede representar hasta 28 lugares decimales.

Tipo de datos de punto flotante
Tipo
Ancho en bits
Rango
Significado
float
32
De 1,5E-45 a 3,4E+38
Punto flotante corto
double
64
De 5E-324 a 1,7E+308
Punto flotante largo
decimal
128
De 1E-28 a 7,9E+28
Punto flotante monetario

Los caracteres en C♯ no son cantidades de 8 bits como en otros muchos lenguajes de programación. Por el contrario, C♯ usa un tipo de caracteres de 16 bits llamado Unicode al cual se le llama char. No existen conversiones automáticas de tipo entero a char.

Tipo de datos de caracteres
Tipo
Ancho en bits
Rango
Significado
char
16
De 0 a 65,535 (código Unicode)
Carácter


Tipo de datos lógicos
Tipo
Ancho en bits
Rango
Significado
bool
1
true or false, no se usa 1 ó 0 ya que no hay conversión definida
true or false

No existe una conversión definida entre bool y los valores enteros (1 no se convierte a verdadero ni 0 se convierte a falso).

Constantes

Las constantes en C♯ se denominan literales. Todas las constantes tienen un tipo de dato, en caso de ser una constante entera se usa la de menor tamaño que pueda alojarla, empezando por int. En caso de punto flotante se considera como un double. Sin embargo se puede especificar explícitamente el tipo de dato que una constante deberá usar, por medio de los sufijos:

Sufijo
Tipo de dato
Ejemplo
L
long
12L
UL
ulong
68687UL
F
float
10,19F
M
decimal
9,95M

En ocasiones, resulta más sencillo usar un sistema numérico basado en 16 en lugar de 10, para tal caso C♯ permite especificar constantes enteras en formato hexadecimal, y se hace empezando con 0x. Por ejemplo: 0xFF equivale a 255 en decimal.
C♯ tiene caracteres denominados secuencias de escape para facilitar la escritura con el teclado de símbolos que carecen de representación visual. Estos son:

Secuencia de escape
Descripción
\a
Alerta (timbre)
\b
Retroceso
\f
Avance de página
\n
Nueva línea
\r
Retorno de carro
\t
Tabulador horizontal
\v
Tabulador vertical
\0
Nulo
\'
Comilla sencilla
\"
Comilla doble
\\
Diagonal invertida

C♯, al igual que C++, es compatible con el tipo de constante cadena de caracteres. Dentro de la cadena de caracteres se pueden usar secuencias de escape. Una cadena de caracteres puede iniciarse con el símbolo @ seguido por una cadena entre comillas, en tal caso, las secuencias de escape no tienen efecto y además la cadena puede ocupar dos o más líneas.

Variables

Toda variable se debe declarar antes de ser utilizada. La forma en que se declara una variable en C♯ es la siguiente:
tipo nombre_variable;
Para asignar un valor a una variable:
nombre_variable = valor;
Las conversiones de tipo de variables en C♯ se representan en la siguiente tabla en donde la fila es el origen y la columna el destino. Los significados de las letras son:A (Conversión automática o implícita), E (Conversión explícita), I (Conversión incompatible).