Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2 Creación y Ejecución de Aplicaciones de Consola de C# Sencillas (Introducción A C#, Parte 2
2 Creación y Ejecución de Aplicaciones de Consola de C# Sencillas (Introducción A C#, Parte 2
Introducción
Imagine que quiere mostrar un mensaje con formato para el usuario final que
contenga diferentes tipos de datos. El mensaje incluirá cadenas codificadas de forma rígida,
pero puede combinarse con información que la aplicación recopila del usuario. Para mostrar
un mensaje con formato, debe crear valores codificados de forma rígida y definir variables
que puedan almacenar datos de un tipo determinado, ya sean numéricos, alfanuméricos, etc.
En este módulo crearemos valores literales codificados de forma rígida que contienen
tipos de datos diferentes. Se crean variables que pueden contener determinados tipos de
datos, se establecen esas variables con un valor y luego se recuperan esos valores en código.
Por último, se aprende a simplificar el código al permitir que el compilador asuma parte del
trabajo.
El tipo de datos de cadena se usa siempre que se tienen palabras, frases o datos
alfanuméricos para presentación, no cálculo.
3. ¿Qué otros tipos de datos literales se pueden imprimir en la salida?
Ejercicio: Impresión de distintos tipos de datos literales
Hay muchos tipos de datos en C#, Aunque para empezar solo es necesario conocer
unos cinco o seis tipos de datos, ya que cubren la mayoría de los escenarios. Vamos a mostrar
una instancia literal de tipo de datos en la salida.
Nota
Console.WriteLine('b');
Observe que la letra b está entre comillas simples 'b'. Las comillas simples crean un
literal de carácter. Recuerde que el uso de comillas dobles crea un tipo de datos string.
Console.WriteLine('Hello World!');
Se obtiene el siguiente error:
Observe las comillas simples que rodean Hello World!. Cuando se usan comillas
simples, el compilador de C# espera un solo carácter. Sin embargo, en este caso, se usó la
sintaxis literal de caracteres, pero en su lugar se proporcionaron 12 caracteres.
Al igual que con el tipo de datos string, usamos char siempre que tengamos un solo
carácter alfanumérico para presentación (no cálculo).
Console.WriteLine(123);
Presione el botón verde Ejecutar para ejecutar el código. Deberíamos ver el resultado
siguiente en la consola de salida:
123
por ejemplo, 3,14159. C# admite tres tipos de datos para representar números
decimales: float, double y decimal. Cada tipo admite distintos grados de precisión.
Console.WriteLine(0.25F);
Para crear un literal decimal float, anexe la letra F después del número. En este
contexto, F se denomina sufijo literal. El sufijo literal le indica al compilador que queremos
trabajar con un valor de tipo float. Puede usar f en minúsculas o F en mayúsculas como sufijo
literal de float.
Presione el botón verde Ejecutar para ejecutar el código. Deberíamos ver el resultado
siguiente en la consola de salida:
0.25
Tenga en cuenta que el tipo de datos float es el menos preciso, por lo que es mejor
usar este tipo de datos para los valores fraccionarios fijos y así evitar errores de cálculo
imprevistos.
Console.WriteLine(2.625);
Presione el botón verde Ejecutar para ejecutar el código. Deberíamos ver el resultado
siguiente en la ventana de salida:
2.625
Console.WriteLine(12.39816m);
Para crear un literal decimal, anexe la letra m después del número. En este contexto,
m se denomina sufijo literal. El sufijo literal le indica al compilador que queremos trabajar
con un valor de tipo decimal. Puede usar m en minúsculas o M en mayúsculas como sufijo
literal de decimal.
Presione el botón verde Ejecutar para ejecutar el código. Deberíamos ver el resultado
siguiente en la consola de salida:
12.39816
True False
Los literales bool representan el concepto de verdad y falsedad. Los valores bool se
usan mucho cuando se comienza a agregar lógica de decisión a las aplicaciones. Vamos a
evaluar las expresiones para ver si son verdaderas o falsas.
Lo mismo puede decirse de bool. Si necesita trabajar con las palabras "true" y "false"
en la aplicación, debe usar un valor string. Pero si necesita trabajar con el concepto de true o
false al realizar una evaluación, use un valor bool.
Es importante saber que estos valores pueden ser similares a sus equivalentes de
literales de cadena. Es decir, puede pensar que estas instrucciones son iguales:
9. Resumen
string para palabras, frases o cualquier dato alfanumérico para presentación, no
cálculo
Cuando necesite trabajar con datos que no están codificados de forma rígida,
declarará una variable.
Un nombre de variable es una etiqueta fácil de usar que el compilador asigna a una
dirección de memoria. Cuando quiera almacenar o cambiar un valor de esa dirección de
memoria, o siempre que quiera recuperar el valor almacenado, simplemente use el nombre de
variable que ha creado.
En este caso, creará una nueva variable de tipo string denominada firstName. A partir
de ahora, esta variable solo puede contener valores de cadena.
Puede elegir cualquier nombre siempre que cumpla algunas reglas de sintaxis de C#
para denominar variables.
11. Reglas y convenciones de nombre de variable
Un desarrollador de software alguna vez dijo la famosa frase "La parte más difícil del
desarrollo de software es asignar nombres a las cosas". El nombre de una variable no solo
tiene que seguir ciertas reglas de sintaxis, sino que también se debe usar para que el código
sea más legible y comprensible. Eso es mucho pedir a una línea de código.
variables:
Los nombres de variable no deben ser una palabra clave de C#. Por ejemplo,
no se pueden usar las siguientes declaraciones de variable: decimal decimal; ni
string string;.
Hay convenciones de creación de código que ayudan a que las variables sean
legibles y fáciles de identificar. A medida que desarrolla aplicaciones más
grandes, estas convenciones de creación de código pueden ayudarle a realizar
un seguimiento de las variables entre otro texto.
Los nombres de variable deben usar camel case, que es un estilo de escritura que usa
una letra en minúscula al principio de la primera palabra y una letra en mayúscula al principio
de cada palabra siguiente. Por ejemplo, string thisIsCamelCase;.
Los nombres de variable deben comenzar con una letra alfabética. Los desarrolladores
usan el carácter de subrayado para un fin especial, así que intente no usarlo por ahora.
Los nombres de variables deben ser descriptivos y significativos en la aplicación.
Elija un nombre para la variable que represente el tipo de datos que va a contener.
Los nombres de variable deben ser una o varias palabras completas anexadas. No use
contracciones ni abreviaturas, ya que el nombre de la variable (y, por tanto, su fin) puede no
quedar claro para otros usuarios que lean el código.
Los nombres de variables no deben incluir el tipo de datos de la variable. Puede que
aparezcan algunas recomendaciones para usar un estilo como string strValue;. Esas
recomendaciones ya no son pertinentes.
Estos son algunos ejemplos de declaraciones de variables que usan los tipos de datos
que ha aprendido hasta ahora:
12. Resumen
o Ahora que sabe cómo declarar una variable, vamos a aprender a establecer,
recuperar e inicializar el valor de una variable.
13. Configuración y obtención de valores de variables
Dado que las variables son contenedores de almacenamiento temporal de datos, están
pensadas para que escribir en ellas y leerlas. En el siguiente ejercicio tendrá la oportunidad de
hacer ambas cosas.
13.1. Creación de la primera variable
Para declarar una variable, escriba el tipo de datos que desee usar seguido de un
nombre para la variable. Para asignar un valor a una variable, se usa el operador de
asignación, que es un carácter de igual =.
Nota
La asignación de un valor también se conoce como "establecimiento de la variable" o,
simplemente, una operación "set".
Hemos aprendido que C# se ha diseñado para aplicar tipos. Cuando trabajamos con
variables, aplicar tipos significa que no se puede asignar un valor de un tipo de datos a una
variable declarada para contener otro distinto.
Puede volver a usar y asignar la variable tantas veces como quiera. Este ejemplo
muestra esa idea.
Debe establecer una variable en un valor para poder obtener el valor de la variable. De
lo contrario, verá un error.
Para que no se quede una variable local sin asignar, se recomienda establecer el valor
lo antes posible después de declararla.
De hecho, puede realizar la declaración y el establecimiento del valor de la variable
en una línea de código. Esta técnica se denomina inicializar la variable.
14. Resumen
Esto es lo que hemos aprendido sobre cómo trabajar con variables hasta ahora:
Se crea una variable local con tipo implícito mediante la palabra clave var seguida de
una inicialización de variable. Por ejemplo:
En este ejemplo, se creó una variable de cadena mediante la palabra clave var en lugar
de la palabra clave string.
La palabra clave var indica al compilador de C# que el tipo de datos está implícito en
el valor asignado. Una vez implícito el tipo, la variable actúa igual que si se hubiera usado el
tipo de datos real para declarar la variable. La palabra clave var se usa para ahorrar en
pulsaciones de teclas cuando los tipos son largos o cuando el tipo es obvio por el contexto.
En el ejemplo:
16. Las variables que usan la palabra clave var deben inicializarse
Es importante entender que la palabra clave var depende del valor que se usa para
inicializar la variable. Si intenta usar la palabra clave var sin inicializar la variable, aparece
un error al intentar compilar el código.
Es probable que vea la palabra clave var mientras lee el código de otras
personas; sin embargo, debe usar el tipo de datos cuando sea posible.
17. Crear una cadena interpolada
Al ejecutar el código, Salida muestra una cadena que incluye su nombre en el saludo.
El argumento de cadena de la llamada al método WriteLine es una expresión de cadena
interpolada. Es un tipo de plantilla que permite construir una sola cadena (denominada
cadena de resultado) a partir de una cadena que incluye código incrustado. Las expresiones
de cadena interpoladas son especialmente útiles para insertar valores en una cadena o para
concatenar (unir entre sí) varias cadenas.
El ejemplo anterior contiene los dos elementos que debe tener toda expresión de
cadena interpolada:
Un literal de cadena que empieza con el carácter $ antes del carácter de comillas de
apertura. No puede haber ningún espacio entre el símbolo $ y el carácter de comillas. (Si
quiere ver qué ocurre si incluye uno, inserte un espacio después del carácter $ en la ventana
interactiva y ejecute el código actualizado. El compilador de C# notifica el error "Carácter '$'
no esperado").
Una o varias expresiones de interpolación. Una expresión de interpolación se indica
mediante una llave de apertura y de cierre ({ y }). Puede colocar cualquier expresión de C#
que devuelva un valor (incluido null) dentro de las llaves.
18. Incluir diferentes tipos de datos
En el paso anterior, se ha usado una interpolación de cadena para insertar una cadena
dentro de otra. Sin embargo, cada expresión de interpolación que forma parte de una
expresión de cadena interpolada puede ser de cualquier tipo de datos. Vamos a incluir valores
de distintas expresiones de tipos de datos en una cadena interpolada.
En el siguiente ejemplo, primero definimos una tupla que tiene Name, Price y
perPackage miembros. Ejecute el código siguiente en la ventana interactiva:
Mi código
Este código es solo una posible solución de cómo crear la salida. Por ejemplo, es posible que
haya usado más instrucciones Console.Write(); sin embargo, debe haber inicializado tres
variables para almacenar los tres valores según las instrucciones del desafío.