Junio 22, 2018, 05:11:29 am

Autor Tema: Curso de C# para todos los públicos  (Leído 22364 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Mace Windu

  • Yo vivo en CPH
  • ***
  • Mensajes: 538
  • Sexo: Masculino
  • May the force be with you
    • Ver Perfil
Curso de C# para todos los públicos
« en: ſeptiembre 06, 2008, 05:01:40 am »



Hoy empiezan las clases de este estupendo curso :P. Como dice el título, es para todos los público, por lo que no va a hacer falta que tengan conocimientos sobre fundamentos de programación.

Al escribir este curso, doy por supuesto que el estudiante conoce los conceptos fundamentales para utilizar Windows ;).

Todo el curso esta bajo licencia Creative Commons (pulsa en la imagen para ver la licencia):

You are not allowed to view links. Register or Login

Salu2
« Última modificación: Junio 30, 2009, 03:46:51 am por ranefi »

Desconectado Mace Windu

  • Yo vivo en CPH
  • ***
  • Mensajes: 538
  • Sexo: Masculino
  • May the force be with you
    • Ver Perfil
Re: Curso de C# para todos los públicos
« Respuesta #1 en: ſeptiembre 06, 2008, 05:03:01 am »
Índice

You are not allowed to view links. Register or Login

You are not allowed to view links. Register or Login

You are not allowed to view links. Register or Login

You are not allowed to view links. Register or Login

Salu2

Desconectado Mace Windu

  • Yo vivo en CPH
  • ***
  • Mensajes: 538
  • Sexo: Masculino
  • May the force be with you
    • Ver Perfil
Re: Curso de C# para todos los públicos
« Respuesta #2 en: ſeptiembre 06, 2008, 05:03:19 am »



Lo primero que tenemos que hacer es descargarnos Visual C#, y lo podemos hacer en este enlace:

You are not allowed to view links. Register or Login

Pulsamos en Guardar archivo:


Iniciamos el proceso de instalación y hacemos click en Siguiente:


Aceptamos la licencia y pasamos a la siguiente pantalla:


Aquí podemos cambiar la ruta de instalación, una vez hecho esto si queremos, le damos a Siguiente.


En esta pantalla se iniciará la instalación, dependiendo de si tenemos instalado el .NET Framework o el SDK nos aparecerán para instalarse (yo como tengo el VS Team System ya instalado no me aparece ;D, en caso de que no lo tengáis instalado deberéis hacerlo de forma separada):


Y ya tenemos nuestro Visual C# 2008 instalado:


Ejercicio (por MP): Instalar Visual C# 2008 ;).

Salu2

Desconectado Mace Windu

  • Yo vivo en CPH
  • ***
  • Mensajes: 538
  • Sexo: Masculino
  • May the force be with you
    • Ver Perfil
Re: Curso de C# para todos los públicos
« Respuesta #3 en: ſeptiembre 06, 2008, 05:03:39 am »



La segunda clase, como es la única teoría que va ha haber en este curso, para hacerla más amena, he preparado una presentación en Powerpoint :8):. Para los que no dispongan de un software para verla, también os lo dejo en un documento pdf (es exactamente igual, lo único que no van pasando las páginas automáticamente).

You are not allowed to view links. Register or Login

You are not allowed to view links. Register or Login

También hay a su disposición un tema en este subforo que habla también sobre estos conceptos:

You are not allowed to view links. Register or Login

Lo próximo... la sintaxis de C# :D.

Ejercicio (por MP): Corregir este código:

Código: You are not allowed to view links. Register or Login
namespazes MiCasa
{
namespaze MiCuarto
{
puvlic clas Cama
{
};
puvlic clas Ordenador
{
};
};

namespaze Cocina
{
puvlic clas Nevera
{
};
puvlic class Horno
{
};
};
namespaze Salón
{
puvlic clas Televisor
{
};
puvlic clas Sillón
{
};
};
namespaze Aseo
{
puvlic clas Ducha
{
};
puvlic clas Water
{
};
};
};

Salu2

Desconectado Mace Windu

  • Yo vivo en CPH
  • ***
  • Mensajes: 538
  • Sexo: Masculino
  • May the force be with you
    • Ver Perfil
Re: Curso de C# para todos los públicos
« Respuesta #4 en: ſeptiembre 06, 2008, 05:04:41 am »



A partir de aquí creo que empieza ya lo interesante. Hasta que no dominemos la sintaxis de C# no trabajaremos con aplicaciones "visuales", por lo que trabajaremos por medio de la consola.

A grandes rasgos, se puede decir que una aplicación desarrollada en C# es un conjunto de uno o más ficheros de código fuente con una serie de instrucciones elegidas por nosotros según nuestras necesidades y que son pasadas a un compilador que generará nuestro ejecutable. Uno de estos ficheros es un fichero de texto plano escrito con caracteres Unicode y con la sintaxis de C#, y con la extensión .cs.

Vamos a escribir una aplicación que muestre un mensaje (por consola). Para ello abrimos nuestro VC# y nos aparecerá una imagen como la siguiente:


A continuación ejecutamos la orden Nuevo proyecto del menú Archivo. En este cuadro de diálogo seleccionamos el tipo de proyecto que queramos, en nuestro caso Aplicación de consola y escribimos el nombre de nuestra solución, yo la voy a llamar Prueba1:


Pulsamos Aceptar y nos aparecerá nuestra ventana de código. Antes que nada deciros que la ventana que aparece a la derecha se llama explorador de soluciones y contendrá todos los archivos de nuestra solución.


Por defecto, VC# nos crea la estructura de nuestro programa. Detengámonos en el código que se nos presenta. Las cuatro primeras líneas VC#, como vimos en la anterior clase, importa varios espacios de nombre, que nos serán útiles con posterioridad.

A continuación se define un namespace, con el nombre de nuestro proyecto. En la siguiente línea, se define una clase con el nombre de nuestro archivo (por defecto Program). Fijaos que cada definición está comprendida entre una llave de apertura y su correspondiente llave de cierre.

Otro detalle importante son las tabulaciones. Con ellas veremos fácilmente donde empieza un bloque de código y donde termina. VS lo hace por nosotros, pero lo comento por si hay alguien que las quita porque cree que son inútiles.

Y por último se define un método. Pero, ¿qué es un método? Pues un conjunto de instrucciones asociadas a un nombre por el cual se referenciarán más tarde cuando queramos sin tener que reescribirlas otra vez.

Primer punto importante: todas las instrucciones y declaraciones deben terminar con ; (punto y coma), salvo que haya que abrir un bloque de código. Si programas en Pascal, por ejemplo, no notaras el cambio, pero si vienes de Visual Basic más vale que te conciencies de ello. La razón es porque en Visual Basic debías poner una instrucción de una misma línea a no ser que utilizar el carácter de subrayado, pero en C# no:

Código: You are not allowed to view links. Register or Login
Console.WriteLine("Me cae bien {0} {1}",
                "Mace",
                "Windu");

Dicho esto también cabe destacar que C# distingue entre mayúsculas y minúsculas, por lo que será erróneo escribir console o CONSOLE, ya que es Console.

Ahora VS nos ayuda a la hora de programar, ya que cuando escribimos código de forma incorrecta, nos subrayará dicha palabra al igual que hace el corrector de Microsoft Word, por ejemplo, cuando escribimos de forma errónea.

Los programas escritos en C# se organizan en clases y estructuras, de modo que todo el código que escribas debe ir siempre dentro de una clase o bien de una estructura, salvo la directiva using. Por eso las funciones ahora se llaman métodos, porque serán métodos de la clase donde las pongas, y las variables y constantes pueden ser propiedades de la clase. Si no sabéis que es una función, una constante o una variable no os preocupéis que lo veremos un poco más adelante.

Bien, como decía un método es una serie de instrucciones, y el método que nos aparece en pantalla es el método Main (recuerdo ni main ni MAIN).

El método Main será el que se ejecute en primer lugar. Las instrucciones static y void son modificadores, y string[] args son los argumentos del método, todo ello lo veremos en capítulos próximos.

En cada aplicación que escribas en C# debe de haber un método llamado Main. No importa en qué clase de tu aplicación escribas el método Main,pues este método lo buscará el CLR para ejecutar tu aplicación. A partir de aquí, lo más aconsejable es escribir el método Main en una clase que se llame igual que el programa más las letras App. Por ejemplo, si es un calendario, lo más recomendable es situar el método Main en una clase que se llame CalendarioApp. Aunque lo puedes poner donde quieras, digo esto como recomendación.

Para mostrar el mensaje que queremos a través de la consola, deberemos utilizar el método Write o WriteLine de la clase Console del namespace System. Como este espacio de nombres lo importamos al principio, no necesitaremos escribirlo para llamar a dicha clase.

Para llamar a un método de una clase deberemos escribir dicha clase seguida de un punto y a continuación del método. A través del punto se pueden ir anidando namespaces, clases y métodos, siempre y cuando se haga en ese orden.

Las diferencias entre Write y WriteLine son muy sencillas. Con Write escribiremos en la consola pero sin retorno de carro y con WriteLine con retorno. Con un ejemplo se verá más fácil.

En nuestro método Main escribimos el siguiente fragmento de código:

Código: You are not allowed to view links. Register or Login
Console.Write(" Hola ");
Console.Write("soy Mace Windu.");
Console.Write(" Tu tutor.");

Y pulsamos F5 o ejecutamos la orden Iniciar depuración del menú Depurar. El resultado es el siguiente:


Si nos damos cuenta, la consola se muestra en un tiempo escaso para que el usuario pueda visualizar el mensaje. Para ello, escribimos al final del método Main:

Código: You are not allowed to view links. Register or Login
Console.ReadKey(true);
Ya explicaré más detenidamente este método de la clase Console. Por ahora basta decir que pasando como argumento el valor true, el programa no continuará hasta que no se pulse cualquier tecla.

Ahora ejemplifiquemos el método WriteLine:

Código: You are not allowed to view links. Register or Login
Console.Write(" Hola ");
Console.WriteLine("soy Mace Windu.");
Console.Write(" Tu tutor.");

Ejecutamos y ahora, el resultado es el siguiente:


Si queremos conseguir el mismo efecto que el anterior pero utilizando el método Write, deberemos introducir la sentencia de escape \n. Al decir esto, me refiero que cuando se ejecute nuestro programa, esta sentencia se traducirá como un retorno de carro, por lo que el texto pospuesto a esta estará introducido en una nueva línea. Veamos un ejemplo:

Código: You are not allowed to view links. Register or Login
Console.Write(" Hola ");
Console.Write("soy Mace Windu.");
Console.Write("\n Tu tutor.");

El efecto será el mismo que el anterior:


Para borrar la pantalla de la consola, debemos invocar el método Clear de la clase Consola:

Código: You are not allowed to view links. Register or Login
Console.Clear();
Si queremos cambiar el título de la consola, deberemos utilizar el método Title de la misma clase;

Código: You are not allowed to view links. Register or Login
Console.Title="El título que queramos";
Esta misma clase, nos da la posibilidad de cambiar el color del texto y del fondo de la consola. Para cambiar el color de texto, igualamos la propiedad ForegroundColor a el valor que queramos:

Este valor lo recoge la enumeración ConsoleColor (ya veremos más adelante que es una enumeración) cuyos valores son:

Black           Color negro.
Blue                   Color azul.
Cyan           Color aguamarina (verde azulado claro).
DarkBlue           Color azul marino.
DarkCyan    Color verde azulado (verde azulado oscuro).
DarkGray           Color gris oscuro.
DarkGreen   Color verde oscuro.
DarkMagenta   Color fucsia oscuro (púrpura).
DarkRed           Color rojo oscuro.
DarkYellow   Color amarillo oscuro (ocre).
Gray                   Color gris.
Green           Color verde.
Magenta           Color fucsia (rojo purpúreo).
Red                   Color rojo.
White           Color blanco.
Yellow           Color amarillo.

Por ejemplo, si queremos cambiar el color a verde, deberemos escribir:

Código: You are not allowed to view links. Register or Login
Console.ForegroundColor = ConsoleColor.Green;
Para cambiar el color de fondo, basta con seguir el mismo procedimiento, pero ahora cambiando la propiedad BackgroundColor. Por ejemplo:

Código: You are not allowed to view links. Register or Login
Console.BackgroundColor= ConsoleColor.White;
En C# hay dos tipos de comentarios. Para hacer un comentario de una sola línea se utiliza la doble barra:
Código: You are not allowed to view links. Register or Login
//Esto es un comentario de una línea
Y también se pueden hacer un bloque que sea un comentario. Dicho bloque debería comenzar por /* y terminar en */:

Código: You are not allowed to view links. Register or Login
/* Esto es un bloque de comentario.
   Como ves podemos hacer tantas líneas de comentario como queramos.
   
   Otra línea de comentario*/

Un comentario es texto que se incluye en el código fuente para facilitar su lectura a los programadores y cuyo contenido es, por defecto, completamente ignorado por el compilador.

Suelen usarse para incluir información sobre el autor del código, para aclarar el significado o el por qué de determinadas secciones de código, para describir el funcionamiento de los métodos, de las clases, etc.


You are not allowed to view links. Register or Login


Esta vez quiero que los ejercicios los publiquéis, ya que la solución no es la misma para todos y así aumentan su creatividad para que sus códigos no sean parecidos a los de los demás.

Ejercicio 1: Publicar un código que contenga todo lo que hemos visto en 40 líneas (mínimo).


Salu2
« Última modificación: Marzo 11, 2009, 10:19:19 am por Mace Windu »

Desconectado Mace Windu

  • Yo vivo en CPH
  • ***
  • Mensajes: 538
  • Sexo: Masculino
  • May the force be with you
    • Ver Perfil
Re: Curso de C# para todos los públicos
« Respuesta #5 en: ſeptiembre 06, 2008, 05:05:12 am »



La sintaxis de C# es muy similar a JAVA, C, C++ y Delphi.Cabe decir que C# fue creado especialmente para .NET. Debido a que C# es orientado a objetos y componentes, requiere que las aplicaciones programadas en él estén definidas mediante clases.
Para que el compilador interprete el código que hemos escrito, existen una serie de palabras que tienen un significado especial para éste (keywords). Son las siguientes:

You are not allowed to view links. Register or Login

Un identificador es un nombre que nos servirá para referenciar a "algo", como por ejemplo un método, variable, clase, etc. Hay una serie de normas a la hora de escribirlos, como que deben empezar por una letra o el carácter de subrayado ("_") y nunca por un número. A continuación puede ser cualquiera de los tres carácteres comentados: número, letra o el carácter de subrayado. Algunos ejemplos serían: cliente, _servidor...

Los identificadores no pueden ser las palabras clave de la tabla (en minúsculas, claro), y en caso de utilizarlo con mayúsculas es recomendable utilizar doble subrayado antes. Por ejemplo: __for.

Como ya dijimos, C# distingue de las mayúsculas y las minúsculas, por lo que el identificador cliente es distinto de Cliente. Es recomendable no utilizar identificadores iguales.

Los caracteres espacio en blanco, tabulador horizontal, tabulador vertical, avance de línea y nueva línea, son caracteres denominados espacios en blanco, porque la labor que despempeñan es la misma que la del espacioen blanco: actuar como sepradores entere los elmentos de un programa, lo cual permite escribir programas más legibles. Por ejemplo, este código:

Código: You are not allowed to view links. Register or Login
main() { Console.Write ("Ya llegó la nueva clase"); }
sería lo mismo que:

Código: You are not allowed to view links. Register or Login
main()
{
   Console.Write ("Ya llegó la nueva clase");
}

Los espacios en blanco en exceso son ignorados por el compilador. Según esto, el siguente código sería el mismo al anterior:

Código: You are not allowed to view links. Register or Login
main()
{
   



                             Console.Write ("Ya llegó la nueva clase");
}

Las expresiones en C# están formadas por operadores y operandos. Los operadores indican que operación se debe realizar con los operandos. En el caso de que haya varios operadores, se sigue un orden establecido

He recogido en esta tabla todos los operadores de C# ordenados por orden de preferencia:


Dentro de poco se detallarán como usar cada uno correctamente.

Una sentencia completa también es llamada statement (en inglés ), y como ya dijimos, siempre termina con punto y coma (; ).
Se podría decir que un statement es la unidad básica de ejecución de C# y que el conjunto de estas forman nuestro programa.
Un statement puede ser de muchos tipos: declaracción de una variable, expresiones, sentencias de control, etc.
Como ya se comentó, creo recordar, se pueden agrupar mediante bloques {...}. Un ejemplo:

Código: You are not allowed to view links. Register or Login
Console.Title = "Clase 4"; // Una sentencia, por ejemplo

{
Console.ForegroundColor = ConsoleColor.GreenLime;
Console.BackgroundColor = ConsoleColor.Black;
/*
  Un conjunto de statements
  recogidos en un bloque.
*/
}

Una variable representa un determinado espacio en la memoria que almacena un valor determinado de un tipo predeterminado. Queremos reservar un espacio de memoria con el nombre de un alumno, éste es una cadena alfanumérica, por lo tanto el tipo será string (ahora veremos los tipos). Para definir una variable habría que escribir el tipo seguido del identificador:

Código: You are not allowed to view links. Register or Login
string Alumno;
Veamos un ejemplo:

Código: You are not allowed to view links. Register or Login
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Clase4
{
    class Ejemplo1
    {
        static void Main(string[] args)
        {
            string Alumno;

            Alumno = "CHR0N05";
            Console.Write("Hola {0}",Alumno);
            Alumno = "Rakzo-Fimbres";
            Console.WriteLine("Hola {0}",Alumno);
            Console.ReadKey(true);
        }
    }
}

Mediante el operador de asignación = modificamos el valor de nuestra variable. En C#, se puede inicializar la variable con un valor en el momento de declararla:

Código: You are not allowed to view links. Register or Login
string Alumno = "k1dogy";
Estos son los principales tipos en C#:


Un miembro se refiere a los campos, propiedades, métodos, eventos, clases anidadas, etc.

Existen unas palabras reservadas llamadas modificadores y su función es modificar, valga la redundancia, el ámbito del miembro (más adelante veremos que existen más tipos de identificadores y se utilizan en otros contextos). Los modificadores de acceso son:


Todo miembro es declarado private por defecto.

Cuando se declara una variable o constante dentro de un bloque, estás siempre serán privadas para ese bloque, por lo que no podremos acceder a ellas fuera de éste.



Salu2


xx
Curso de C# para todos los públicos

Iniciado por Mace Windu

27 Respuestas
16426 Vistas
Último mensaje Octubre 06, 2009, 01:26:45 pm
por Ñogoice
xx
Microsoft lanza Photosynth para todos los públicos

Iniciado por juanpidial

0 Respuestas
888 Vistas
Último mensaje Agosto 21, 2008, 01:48:04 pm
por juanpidial
xx
como consigo los codigos de telefonos publicos para hacer llamadas gratis

Iniciado por killer zombie

1 Respuestas
3956 Vistas
Último mensaje Octubre 17, 2007, 03:14:45 pm
por hack teuton
xx
Curso Rompiendo algoritmos (Todos los capitulos)

Iniciado por Punk-Rock

2 Respuestas
2151 Vistas
Último mensaje Junio 14, 2007, 07:19:31 am
por vVegeta
xx
Duda troyanos publicos

Iniciado por Ninfrock

4 Respuestas
1315 Vistas
Último mensaje Noviembre 17, 2014, 11:46:17 am
por Ninfrock
xx
como llamar a telefonos publicos?

Iniciado por shirase

7 Respuestas
10657 Vistas
Último mensaje Agosto 22, 2008, 02:46:17 pm
por EdRoNo
exclamation
Facebook - Perfiles totalmente publicos !!!

Iniciado por SpyX

17 Respuestas
7300 Vistas
Último mensaje Enero 16, 2010, 07:45:20 am
por mDrinky
question
Lista de proxys públicos sin registro? ayuda!!

Iniciado por pacosn1111

1 Respuestas
1422 Vistas
Último mensaje Junio 22, 2012, 12:20:45 pm
por .xAk.
xx
Google hará públicos algunos de sus algoritmos

Iniciado por Axus

0 Respuestas
811 Vistas
Último mensaje Mayo 23, 2008, 12:54:44 pm
por Axus
question
Telefonos publicos Gratis... Alguien se acuerda?

Iniciado por afc_x

10 Respuestas
3656 Vistas
Último mensaje Junio 28, 2010, 06:31:32 pm
por Spalk