📝 Cómo crear una calculadora en C# paso a paso

🎯 Objetivo del artículo

En este tutorial vamos a construir una calculadora básica en C# que permita sumar, restar, multiplicar y dividir dos números. El programa será interactivo, mostrará un menú de opciones y validará las entradas para evitar errores. Además, veremos cómo mostrar el resultado en formato matemático, por ejemplo:

  • 12 + 12 = 24

🔧 Conceptos básicos que usaremos

  • Clases y métodos: para organizar el código en bloques (Sumar, Restar, Multiplicar, Dividir).
  • Console.WriteLine y Console.ReadLine: para interactuar con el usuario.
  • int.TryParse: para validar que la entrada sea un número entero.
  • Bucles while y do-while: para repetir acciones hasta que el usuario elija salir.
  • switch: para ejecutar la operación elegida en el menú.

📜 Código completo con explicaciones

🖥️ Ejemplo de ejecución

Seleccione una operación:

1. Sumar

2. Restar

3. Multiplicar

4. Dividir

5. Salir

Opción: 1

——————————ESTÁS EN SUMA———————————–

Ingrese el primer número: 12

Ingrese el segundo número: 12

12 + 12 = 24

Presione una tecla para continuar… 

🎓 Conclusión

Con este ejercicio hemos aprendido:

  • Cómo organizar un programa en clases y métodos.
  • Cómo validar entradas para evitar errores.
  • Cómo usar un menú interactivo con bucles y switch.
  • Cómo mostrar resultados en un formato claro y matemático.

Este es un excelente primer proyecto para principiantes en C#, porque combina lógica básica, interacción con el usuario y buenas prácticas de programación.




🔹 ¿Qué es una variable en C#?

Al igual que en C, una variable es un espacio en memoria con un nombre y un tipo de dato.
La diferencia es que C# es un lenguaje orientado a objetos y más moderno, con reglas más estrictas y características adicionales como var, dynamic y const.

🔹 Sintaxis básica

tipo nombreVariable = valorInicial;

Ejemplo:

  • int edad = 25;
  • float altura = 1.75f; // el sufijo f indica float
  • char inicial = ‘D’;
  • string nombre = «Daniel»; // cadenas de texto

🔹 Tipos de variables más comunes

Tipo Descripción Ejemplo
int Enteros int contador = 10;
float Decimales de precisión
simple
float pi = 3.14f;
double Decimales de precisión
mayor
double e = 2.718281828;
char Un solo carácter char letra = 'A';
string Texto string saludo = "Hola";
bool Verdadero/Falso bool activo = true;

🔹 Variables especiales en C#

  • var → El compilador infiere el tipo según el valor asignado.

    • var numero=42; // se convierte en int
    • var mensaje =» Hola «; // Se convierte en string

  • dynamic → Tipo flexible que puede cambiar en tiempo de ejecución.

    • dynamic dato =10;
    • dato = » Texto «; // Permitido

  • const → Valor constante que nunca cambia.

    • const double PI = 3,14159;

  • readonly → Similar a const, pero puede asignarse en el constructor de una clase.

🔹 Ámbito y vida de las variables

  • Locales → Dentro de un método, solo existen mientras se ejecuta.
  • Globales (campos estáticos) → Dentro de una clase, accesibles por toda la aplicación.
  • Campos de instancia → Variables asociadas a un objeto específico.
  • Variables automáticas (var) → Solo dentro de métodos, no se pueden usar como campos globales.

Ejemplo:

  • using System;
  • class Programa {

    • static int global = 10; // variable global (campo estático)
    • static void Ejemplo() {

      • int local = 5; // variable local
      • Console.WriteLine(«Local: » + local);
      • Console.WriteLine(«Global: » + global);
      • }

    • static void Main() {

      • Ejemplo();

    • }

  • }

🔹 Buenas prácticas en C#

  • Usa nombres descriptivos y estilo camelCase para variables locales (contadorTotal).
  • Usa PascalCase para propiedades y métodos (CalcularPromedio).
  • Inicializa siempre las variables.
  • Prefiere var cuando el tipo es obvio, pero evita abusar de dynamic.



Creación de Aplicaciones de Escritorio con C#

Introducción:

Qué es C#?

C# es un lenguaje de programación desarrollado por Microsoft que se utiliza para una amplia variedad de aplicaciones, incluyendo las aplicaciones de escritorio. Es conocido por su simplicidad y potencia, lo que lo convierte en una opción ideal para los desarrolladores.

Claro, ¡vamos a ello! C# (pronunciado como C-Sharp) es un lenguaje de programación orientado a objetos desarrollado por Microsoft. Su historia comenzó a mediados de la década de 1990 y tiene muchas etapas interesantes:

Orígenes y Desarrollo Inicial

  • 1999: Microsoft comienza el desarrollo de un nuevo lenguaje de programación bajo el nombre clave «Cool» (C-like Object Oriented Language).
  • 2000: C# fue presentado oficialmente por Microsoft junto con la plataforma .NET Framework en julio de este año. El objetivo era ofrecer un lenguaje que permitiera el desarrollo sencillo de aplicaciones para Windows y la Web.

Evolución del Lenguaje

  • C# 1.0 (2002): La primera versión de C# se lanzó con el .NET Framework 1.0. Incluía características básicas de POO (Programación Orientada a Objetos) e integración con la plataforma .NET.
  • C# 2.0 (2005): Introdujo características como genéricos, tipos nulos y métodos anónimos, entre otras.
  • C# 3.0 (2007): Añadió el soporte para consultas integradas en el lenguaje (LINQ), expresiones lambda, y métodos de extensión.
  • C# 4.0 (2010): Introdujo características como parámetros opcionales, co-variancia y contra-variancia en tipos genéricos.
  • C# 6.0 (2015): Mejoras en la sintaxis del lenguaje y nuevas características como interpolación de cadenas y excepciones filandesas.
  • C# 8.0 (2019): Presentó características importantes como tipos referencia anulables, la construcción de rangos e índices, y nuevas mejoras en la programación asíncrona.

Versión Actual

  • C# 9.0 (2020) y siguientes: C# sigue evolucionando con características avanzadas como registros, patrones mejorados y mejoras en la programación funcional. Cada versión se alinea con las actualizaciones del .NET.

C# ha sido fundamental en el desarrollo de múltiples aplicaciones empresariales, videojuegos (con el motor Unity), y sistemas integrados.

Si tienes alguna característica específica que te gustaría explorar con más detalle, no dudes en decírmelo. ¿Interesado en saber más sobre alguna versión en particular o alguna funcionalidad específica?

Un entorno de trabajo para el desarrollo en C# puede abarcar varios componentes según las necesidades del proyecto. Aquí te describo algunos de los elementos más comunes que forman un entorno de trabajo típico para desarrollar aplicaciones en C#.

Herramientas de Desarrollo

  • IDE (Entorno de Desarrollo Integrado):

    • Visual Studio: Es la herramienta más completa y oficial de Microsoft para desarrollar en C#. Ofrece un conjunto de herramientas avanzadas como depuración, pruebas, integración continua y más.
    • Visual Studio Code: Un editor de código ligero pero potente que es altamente personalizable y soporta extensiones para trabajar con C# a través de la extensión C# for Visual Studio Code (powered by OmniSharp).
    • Rider: Un IDE de JetBrains basado en IntelliJ que también soporta desarrollo en C# y .NET.

  • Compilador:

    • Roslyn: Es el compilador de C# actual, conocido también como .NET Compiler Platform. Además de compilar, ofrece APIs para analizar y realizar transformaciones en el código.
    • dotnet CLI: Una línea de comandos para .NET Core y .NET 5+, que permite compilar, ejecutar y publicar aplicaciones C#.

Gestión de Dependencias

  • NuGet: Es el gestor de paquetes oficial para .NET y C#. Permite gestionar librerías de terceros y otras dependencias fácilmente.

Control de Versiones

  • Git: El sistema de control de versiones más usado. Se puede integrar con Visual Studio y Visual Studio Code a través de extensiones.
  • Github/Azure DevOps/GitLab: Repositorios donde puedes alojar tu código fuente y gestionar tus proyectos.

Entornos de Ejecución

  • .NET Framework: El entorno de ejecución original para aplicaciones en Windows.
  • .NET Core: Más moderno y multiplataforma, permite desarrollar y ejecutar aplicaciones en Windows, Linux y macOS.
  • .NET 5+: La evolución unificada de .NET Framework y .NET Core.

bases de datos

  • SQL Server: La base de datos relacional de Microsoft que se integra fácilmente con aplicaciones .NET.
  • SQLite, MySQL, PostgreSQL: Alternativas populares que también se pueden usar con aplicaciones C#.

Frameworks y Librerías

  • ASP.NET Core: Para el desarrollo de aplicaciones web y APIs.
  • Entity Framework Core: Una ORM (Mapeo de Objetos Relacionales) para trabajar con base de datos de manera más sencilla y eficiente.
  • Xamarin: Para desarrollo de aplicaciones móviles con C# y .NET.
  • Unity: Un motor de desarrollo de juegos que usa C# como lenguaje de scripting.

Testing

  • xUnit, NUnit, MSTest: Frameworks para realizar pruebas unitarias de tu código.
  • Moq: Una librería de mocking para facilitar las pruebas unitarias.

Otras Herramientas Útiles

  • Docker: Para contenerizar aplicaciones.
  • Kubernetes: Para orquestar contenedores en producción.
  • Azure: La nube de Microsoft que ofrece servicios para hospedar y escalar aplicaciones .NET.



Calculadora en C# parte 1ª

En el código siguiente esta lo aprendido hasta los operadores:

En otro artículo te dejo los condicionales que es lo que falta para elegir en tipo de operación a realizar.




Introducir datos por el teclado

Para introducir un valor en una variable en C#, puedes utilizar la clase Console para leer la entrada del teclado.

Aquí tienes un ejemplo sencillo:

En este ejemplo:

  1. Console.WriteLine se utiliza para mostrar un mensaje al usuario.
  2. Console.ReadLine lee la entrada del teclado como una cadena (string).
  3. int.TryParse intenta convertir la cadena a un número entero y verifica si la conversión fue exitosa.

Console.ReadLine es un método en C# que se utiliza para leer una línea completa de la entrada del teclado. Esto es especialmente útil para capturar datos ingresados por el usuario.

Aquí tienes un ejemplo simple de cómo usarlo:

En este ejemplo:

  1. Console.WriteLine muestra un mensaje solicitando al usuario que introduzca su nombre.
  2. Console.ReadLine lee la entrada del teclado y la almacena en la variable nombre.
  3. Finalmente, se muestra un saludo personalizado con el nombre ingresado.



Definición de variables

Son datos que necesitamos guardar para ser utilizados, se almacenan en la memoria de P.C.

Tienen estas características:

  • Nombres:

    • Con lo que se identifican dentro del codigo.
    • Se definen usando letras y números, pero no poniendo números delante del nombre.

  • Tipos:

    • Es el dato para difencialas.

Tenemos estos tipos:

  1. Entero (int): Almacena números enteros
  2. Flotante (float): Almacena números decimales. Para mayor precisión, puedes usar double.
  3. Cadena (string): Almacena texto.
  4. Booleano (bool): Almacena valores verdaderos o falsos.
  5. Carácter (char): Almacena caracteres únicos.
  6. Arreglo: Almacena múltiples valores del mismo tipo.
  7. Objeto: Almacena instancias de clases.

  • Valor:

    • Forma de almacenarlas.

Ejemplo de código:

  • int edad; (Declara una variable entera a edad, siempre termina la línea de código con ‘ ; ‘ )
  • string nombre; (declaración de una variable de caracteres)

En C#, necesitas especificar el tipo de dato que una variable contendrá al declararla.




Entendiendo las Variables en C#

En el mundo de la programación, las variables son el corazón de cualquier lenguaje. En el caso de C#, estas se utilizan para almacenar y manipular datos.

¿Qué son las Variables en C#?
En términos simples, una variable es un contenedor que almacena datos durante la ejecución de un programa. En C#, cada variable tiene un tipo que define qué tipo de datos puede almacenar, como números, texto o valores booleanos.

Declaración de Variables
Para declarar una variable en C#, necesitas especificar su tipo seguido de su nombre. Aquí tienes un ejemplo básico:

  • int edad = 25; // Variable de tipo entera
  • string nombre = » Daniel «; // Variable de tipo cadena
  • bool esProgramador = true; // Variable de tipo booleano

En este caso:

  • int es un número entero.
  • string almacena un texto.
  • bool representa un valor de verdadero o falso.

Tipos de Datos en C#
Algunos de los tipos de datos más comunes en C# incluyen:

  • Enteros (int, long, short): Para números sin decimales.
  • Flotantes (float, double, decimal): Para números con decimales.
  • Cadenas (string): Para texto.
  • Caracteres (char): Un único carácter.
  • Booleanos (bool): Para verdadero o falso.

Por ejemplo:

  • float precio = 19,99;
  • char inicial = ‘ D’;

Variables y Alcance (Scope)
El alcance de una variable define dónde puede ser utilizada dentro de tu programa. En C#, las variables pueden ser:

  • Locales: Declaradas dentro de un método y accesibles solo ahí.
  • Globales (campos): Declaradas dentro de una clase y accesibles por sus métodos.

Constantes y Variables de Solo Lectura

  • const: Para valores que no cambiarán.
  • readonly: Asignadas en la declaración o en el constructor.

Buenas Prácticas

Usa nombres descriptivos para las variables: en lugar de x usa edad o precio.