Elementos de C#
C#
Para
entender lo que es C# es imprescindible decir antes lo que es Microsoft .NET
Framework o abreviadamente .NET. Se trata de un entorno de desarrollo
multilenguaje diseñado por Microsoft para simplificar la construcción,
distribución y ejecución de aplicaciones para Internet. Tiene fundamentalmente
tres componentes: una máquina virtual (CLR: Common Language Runtime) que
procesa código escrito en un lenguaje intermedio (MSIL: Microsoft Intermediate Language),
una biblioteca de clases (biblioteca .NET) y ASP.NET que proporciona los
servicios necesarios para crear aplicaciones Web. Precisamente C# es uno de los
lenguajes de programación de alto nivel que pertenecen al paquete .NET (otros
lenguajes son Visual Basic, C/C++, etc.). C# es una evolución de C/C++. Con él
se pueden escribir tanto programas convencionales como para Internet.
Palabras
reservadas
Las
palabras clave de C# En sus cimientos, un lenguaje de computación es definido
por sus palabras clave, y C# ofrece un conjunto rico y diverso. C# define dos
tipos generales de palabras clave: reservadas y contextuales. Las reservadas no
pueden ser utilizadas como nombres de variable, clases ni métodos; sólo pueden
ser utilizadas como palabras clave, por eso reciben el nombre de reservadas. En
ocasiones también reciben el nombre de términos reservados e identificadores reservados.
Actualmente existen 77 palabras clave reservadas definidas en la versión 3.0
del lenguaje C# 3.0. Todas ellas se muestran en la tabla 1-1.
C# 3.0
define 13 palabras clave contextuales que tienen un significado especial en
ciertos contextos. En tales contextos, actúan como palabras clave y fuera de
ellos pueden ser utilizadas como nombres para otros elementos del programa,
como las variables. Así pues, técnicamente no son palabras reservadas, pero
como regla general debes considerar las palabras clave contextuales como
reservadas y evitar su uso para cualquier otro propósito diferente al que le
asigna el lenguaje. Utilizar palabras clave contextuales como nombre para
cualquier otro elemento del programa puede causar confusión y es considerada
una mala práctica por la mayoría de los programadores. Las palabras clave contextuales
aparecen en la tabla 1-2.
Identificadores
En C# un
identificador es un nombre asignado a un método, a una variable o a cualquier
otro elemento definido por el usuario. Los identificadores pueden tener una
longitud variada. Los nombres de las variables pueden comenzar con cualquier
letra del alfabeto o con un guion bajo; después pueden continuar con más
letras, números o guiones bajos. Los guiones bajos pueden utilizarse para
incrementar la legibilidad de un nombre de variable, como cuenta_línea.
Las
mayúsculas y las minúsculas son diferentes, lo cual quiere decir que para C#
mivar y MiVar son dos nombres diferentes. He aquí algunos ejemplos de
identificadores aceptables:
Recuerda
que no puedes iniciar un identificador con un número, por lo que 12x es
inválido, por ejemplo. Las buenas prácticas de programación indican que
utilices nombres de indicadores que reflejen el significado o el uso del
elemento al que pertenecen. Aunque no puedes utilizar ninguna palabra clave de
C# como identificador, el lenguaje te permite colocar una arroba (@) antes de
la palabra clave para convertirla en un identificador legal. Por ejemplo, @ for
es un identificador legal; en este caso, el identificador es de hecho la
palabra for y la @ es ignorada. Sinceramente, el uso de la arroba para legalizar
palabras clave no es recomendable, salvo propósitos muy especiales. La arroba
también puede anteceder a cualquier identificador, pero se considera una mala
práctica.
Literales
En C# el
término literales se refiere a valores fijos que son representados en su forma
comprensible para los humanos. Por ejemplo, el número 100 es una literal. Las
literales y su uso son tan intuitivos que ya las hemos utilizado de una manera
u otra en todos los ejemplos anteriores. Ahora es momento de explicarlas
formalmente. Las literales de C# pueden representar cualquier valor de todos
los tipos de datos. La forma de representar cada literal depende del tipo de
dato al que pertenece. Como se explicó con anterioridad, las literales de
carácter van encerradas entre comillas simples, por ejemplo ‘a’ y ‘%’ son
literales de carácter. Las literales de entero son especificadas como números
sin componentes decimales. Por ejemplo, 10 y –100 son literales de entero. Las
literales de punto flotante requieren el uso del punto decimal seguido por los
decimales correspondientes. Por ejemplo, 11.123 es una literal de punto. Como C# es
un lenguaje estrictamente tipificado, las literales también tienen un tipo. Primero,
para literales de enteros, el tipo de la literal es el tipo de entero más
pequeño que puede contenerla, comenzando con int. De esta manera, una literal
de entero es de tipo int, uint, long o ulong, dependiendo del valor que
represente. Segundo, las literales de punto flotante son del tipo double. Si el
tipo asignado en automático por C# no es el que requieres en una literal,
puedes especificar explícitamente un nuevo tipo incluyendo el sufijo
correspondiente. Para especificar una literal tipo long añade al final una l o L. Para
especificar una literal float, añade f o F. Como acabo de mencionar, las
literales de punto flotante son de tipo double por defecto. Para especificar
una literal decimal, añade al valor una m o M. Por ejemplo, 9.95M es una
literal decimal. Aunque las literales de entero crean valores int, uint, long y
ulong por defecto, también pueden ser asignadas a variables tipo byte, sbyte,
short y ushort, siempre y cuando el valor asignado pueda ser representado por
el tipo que lo contiene.
Literales
hexadecimales
En
programación, a veces es más fácil utilizar un sistema numérico base 16 en
lugar de la base 10. El sistema numérico base 16 es llamado hexadecimal y
utiliza los dígitos del 0 al 9, más las letras de la A a la F, que representan
10, 11, 12, 13, 14 y 15. Por ejemplo, la representación hexadecimal del número
10 es 16. Dada la frecuencia con que son utilizados los números hexadecimales,
C# te permite especificar literales de entero con formato hexadecimal. Una
literal hexadecimal debe comenzar con 0x (un cero seguido por una equis
minúscula, x). He aquí algunos ejemplos: cuenta = 0xFF; // 255 incremento =
0x1a; // en 26 el sistema decimal en el sistema decimal
Operadores
C#
proporciona un rico ambiente de operadores. Un operador es un símbolo que
ordena al compilador la realización de una manipulación matemática o lógica
específica. C# cuenta con cuatro clases generales de operadores: aritméticos, bitwise,
relacionales y lógicos. También tiene otros varios operadores que pueden manejar
ciertas situaciones especiales. En este capítulo estudiaremos los operadores
aritméticos, relacionales y lógicos. También veremos el operador de asignación.
Los operadores especiales, incluyendo bitwise, serán estudiados más tarde.
Operadores
lógicos y de relación
En las expresiones operador relacional y
operador lógico, el término relacional hace referencia a las mutuas relaciones
que pueden darse entre diferentes valores, y el término lógico se refiere a las
reglas de interconexión entre los valores verdadero y falso. Como los
operadores relacionales producen valores verdadero y falso, suelen trabajar en
conjunto con los operadores lógicos. Por tal razón, los analizaremos juntos en
esta sección. Los operadores relacionales son los siguientes:
El resultado
que presentan los operadores relacionales y lógicos es un valor tipo bool. En
general, los objetos pueden ser comparados por su semejanza o diferencia
utilizando == y! = . Sin embargo, los operadores de comparación < , > ,
<= , >= , sólo pueden aplicarse a los tipos que soportan una relación
ordenada. Por tanto, todos los operadores relacionales pueden aplicarse a todos
los tipos numéricos. Sin embargo, los valores tipo bool sólo pueden ser
comparados para obtener similitud o diferencia porque los valores true
(verdadero) y false (falso) no tienen un orden predeterminado. Por ejemplo,
true > false no tiene significado en C#. En lo que respecta a los operadores
lógicos, los operandos deben ser de tipo bool y el resultado de una operación
lógica es también de este tipo. Los operadores lógicos & , | , ^ y !
soportan las operaciones lógicas básicas dictadas por AND, OR, XOR y NOT de
acuerdo con la siguiente tabla de verdad:
Operadores
lógicos de circuito corto
C#
proporciona versiones especiales de los operadores lógicos AND y OR, llamados
circuitos cortos, que pueden ser utilizados para producir código más eficiente.
Delimitadores
El método
ReadLine lee hasta encontrar el carácter ‘ \r ’, ‘ \n ’ o los caracteres ‘ \r\n
’ introducidos al pulsar la tecla Entrar ; estos caracteres son leídos pero no
almacenados, simplemente son interpretados como delimitadores.
Comentario
Un
comentario es un mensaje dirigido a cualquiera que lea el código fuente. Añadiendo
comentarios se hace más fácil la comprensión de un programa. Tienen como
finalidad explicar el código fuente. Se pueden utilizar comentarios acotados o
de una sola línea. Un comentario acotado empieza con los caracteres /* y
finaliza con los caracteres */. Estos comentarios pueden ocupar más de una
línea, pero no pueden anidarse. Un comentario de una sola línea
comienza con una doble barra (//) y se extiende hasta el final de la línea.
Mapa Conceptual de los Elementos de C#
No hay comentarios:
Publicar un comentario