Como prog en C# Flashcards
- Que es C#
− Es un lenguaje de programación orientado a objetos.
− Desarrollado por Microsoft (Visual Studio y a la plataforma.NET)
− La plataforma.NET es un framework o entorno de trabajo para el desarrollo de software.
− Con él se pueden crear aplicaciones de escritorio, aplicaciones para móviles, aplicaciones web y hasta videojuegos.
- Visual Studio
− Es el entorno de desarrollo integrado (IDE).
− IDE es un programa informático que permite al programador crear sóftware con código.
- Tipo de aplicaciones que podemos desarrollar
− Aplicaciones de consola (se ejecutan en una ventana de comandos).
− Aplicaciones de escritorio (que se ejecutan en una Interfaz Gráfica de Usuario).
− Aplicaciones web (se ejecutan en un navegador web).
- Crear una aplicación de consola
− Archivo / Nuevo / Proyecto / Aplicación de consola (.NET Framework)
- Código originado de forma automática
- ## Código
- using System;
- namespace Proyecto1 {
- class Program {
- static void Main (string [ ] args) {
}
}
}
——————–
− Línea 1: namespace predefinido que contiene las clases del propio lenguaje C#. Gracias a esta instrucción se importarán las clases predefinidas para que podamos utilizarlas.
− Línea 2: namespace presente es como una carpeta en un sistema de archivos
− Línea 3: nos ha creado una clase (class) llamada Program. Toda aplicación deberá tener un único método Main y será el que se ejecute cuando iniciemos el programa. Desde el mismo se podrán llamar a otros métodos.
− A partir de ahí podemos ver una estructura clara de bloques. Cada bloque estará definido por toda la información que queda encerrada entre dos llaves y dentro de ellos podemos tener otros.
− El lenguaje C# es Case Sensitive, es decir es capaz de diferenciar entre letras mayúsculas y minúsculas.
- Identificadores
− Son las palabras que se utilizan para nombrar los diferentes elementos de un código.
− Serían los nombres que damos a: los namespaces, • a las clases (class), • a los métodos, a las variables • y a las constantes.
− Deben de cumplir unas reglas:
• Sólo aceptarán los siguientes caracteres:
o Letra minúscula (a)
o Letra mayúscula (A)
o Número (1)
o Guión bajo (_)
• No pueden comenzar por un número. Si por cualquier otra letra (mayúscula o minúscula) o por un guión bajo también está permitido.
• No se pueden utilizar como identificadores palabras reservadas en el lenguaje (por ej: la palabra double, que identifica una variable de tipo decimal).
- Imprimir un mensaje por consola
* using System; namespace Proyecto1 { class Program { static void Main (string [ ] args) { Console.WriteLine ("Hola Mundo"); Console.ReadKey(); } } } --------------- ** Con salto de línea \n using System; namespace Proyecto1 { class Program { static void Main (string [ ] args) { Console.WriteLine ("Hola \nMundo"); Console.ReadKey(); } } }
- Ejecutar un programa
Menú Compilar / Compilar solución
- Comentarios en el código
− Son anotaciones que el programador puede hacer sobre el propio código sin que este sea procesado por el compilador a la hora de ejecutar el programa.
− Hay 2 tipos de contenido:
• De una sola línea //
• De más de una línea /* */
- Tipos de datos
− Cada variable, constante, atributo o valor o método va ligado a un tipo de dato.
− ENTEROS CON SIGNO
• int: números enteros | rango -2.147.483.647 hasta +2.147.483.647 | ocupa 4 bytes en memoria.
* long: números enteros muy grandes | necesario añadir sufijo L al final del número - long num = 56765676577L | ocupa 8 bytes en memoria. * sbyte: entero con signo | -128 a 127 | 8 bits • short: entero con signo | -32.768 a 32.767 | 16 bits \_\_\_ − ENTEROS SIN SIGNO • byte: entero sin signo | 0 a 255 | 8 bits • ushort: entero sin signo | 0 a 65-535 | 16 bits • uint: entero sin signo | 0 a 4.294.967.295 | 32 bits • ulong: entero sin signo | 0 a 18.446.744.073.709.551.615 | 64 bits \_\_\_ − PUNTO FLOTANTE • float: números decimales con una parte decimal pequeña (6-7 cifras decimales) | necesario añadir sufijo F al final del número - 54,8454F | ocupa 4 bytes en memoria. • double: números decimales con una parte decimal muy larga (hasta 15 cifras) | ocupa 8 bytes en memoria. \_\_\_ − DECIMAL • decimal: -7.9 x 10-(28) a 7.9 x 10(28) | precisión mínima de 28 dígitos. \_\_\_ • char: para representar caracteres individuales | debe ir ese caracter en comilas simples - 'a' - | ocupa en memoria 2 bytes. • string: para representar cadenas de caracteres | debe ir entre comillas dobles - "hola"- | cada caracter de la cadena ocupa 2 bytes en memoria. \_\_\_ • bool: para representar datos de tipo booleano, es decir un dato que sólo acepta 2 posibles valores: verdadero (True) o falso (False) | cada dato ocupa 1 byte en memoria.
- Variables
− Es un espacio reservado en la memoria RAM de un ordenador que almacenará un valor (que pertenece a un tipo determinado: int, double, bool…) y que puede cambiar a lo largo de la ejecución de un programa.
− Para crear una variable 2 pasos:
• Declarar la variable: especificamos el tipo de dato y el nombre de la variable.
int precio;
• Iniciar la variable: cuando le edamos un valor a la misma.
precio = 10000;
− También podemos declarar e iniciar la variable en la misma línea:
int precio = 10000;
− Importante elegir adecuadamente el tipo de dato:
int precio = 100000; //espacio 4 bytes
long precio = 100000L //espacio 8 bytes
− Se traduciría en una mala optimización de recursos.
− Al nombrar las variables seguir las recomendaciones de los identificadores:
• No comenzar el nombre de la var con un guión bajo (_nombre >NO).
• No crear variables parecidas (nombre/ Nombre / NOMBRE >NO).
• No empezar las variables con letra mayúscula (Nombre >NO).
• Si la var está compuesta por varias palabras se aconseja comenzar la segunda palabra con mayúsculas, estructura tipo camello (nombreAlumno >SI).
• Y por supuesto no utilizar ninguna palabra reservada.
- Constantes
− Al igual que una variable es un espacio reservado en la memoria RAM en la que se almacenará un valor.
− La diferencia con las var es que estos valores NO podrán cambiar durante la ejecución del programa.
− Se crearán usando la palabra reservada const seguido del tipo de dato y del nombre de la variable.
− El nombre de la variable suele escribirse en mayúscula. Esto no es obligatorio pero si recomendable para identificarlas a simple vista.
- const float FUERZAGRAVEDAD = 9.8F;
- Operadores
− ARITMÉTICOS • + Suma • - Resta • * Multiplicación • / División • % Residuo (proporciona el resto de una división)
− INCREMENTO / DECREMENTO
• ++ Incremento del valor en 1
• - - Decremento del valor en 1
• + = n Incremento del valor en n unidades
• - = n Decremento del valor en n unidades
− LÓGICOS / RELACIONALES / BOOLEANOS • > Mayor que • < Menor que • < > Mayor o menor que • != Distinto que • ! Negado: invierte el valor (true / false) de una variable de tipo bool. • = = Igual que • && Y lógico • | | O lógico • + concatenación
- Arrays
− Son estructuras utilizadas en programación consistentes en una colección de valores del mismo tipo de dato y que normalmente tiene algún tipo de relación entre ellos.
− Diferenciamos 2 tipos:
• UNIDIMENSIONALES:
o Agrupa los valores de diferentes variables 1 por cada posición.
o Que pertenecen a un mismo tipo de dato bajo un nombre único.
o Dan lugar a lo que conocemos como vectores.
o Cada var almacenada irá definida por su posición en el vector, teniendo en cuenta que las posiciones (también llamados índices) en un vector comienzan a contarse desde 0.
o Sintaxis:
Tipo [ ] NombreVector = new Tipo [Tamaño]
* using System; namespace Proyecto1 { class Program{ int [ ] vector1 = new int[5]; vector1[0] = 10; vector1[1] = 32; vector1[2] = 74; vector1[3] = 38; vector1[4] = 18; } } } • BIDIMENSIONALES: o Es la intersección de 2 vectores que almecenen el mismo tipo de valor. o Cada var almacenada irá definida por una fila y columna, teniendo en cuenta que las mismas comienzan a contarse desde la posición 0. o Sintaxis: Tipo [ , ] NombreMatriz = new Tipo [Filas, Columnas] ;
** using System; namespace Proyecto1 { class Program{ int [ , ] matriz1 = new int[2 , 3]; matriz1[0, 0] = 10; matriz1[0, 1] = 4; matriz1[0, 2] = 72; matriz1[1, 0] = 83; matriz1[1, 1] = -53; matriz1[1, 2] = 29; } } }
- Uso de valores en cadenas de texto:
- Concatenación
− Para ello utilizaremos el operador + en su vertiente no operacional.
*
Console.WriteLine(“Mi” + “nombre”);
- Interpolación de string
− Con este método hacemos referencias directas a las variables dentro de la cadena de texto.
− Este método podemos usarlo de 2 formas:
a) Numerando las variables: empezamos la numeración con un 0 entre llaves {0} | conforme vayan apareciendo en el texto.
* using System; namespace Proyecto1 { class Program{ static void Main(string[ ] args) { string nombre = "Antonio"; int edad = 25; Console.WriteLine( "Mi nombre es {0} y tengo {1} años", nombre, edad ); Console.ReadKey( ) ; } } }
b) Introduciendo el símbolo $: antes de comenzar la cadena de texto (antes de las dobles comillas "") y nombrando a las variables directamente en el texto, introduciendo su nombre entre llaves {variable}.
* using System; namespace Proyecto1 { class Program{ static void Main(string[ ] args) { string nombre = "Antonio"; int edad = 25; Console.WriteLine( $ "Mi nombre es {nombre} y tengo {edad} años" ); Console.ReadKey( ) ; } } }