You are on page 1of 8

C sharp C#

C# es un lenguaje orientado a objetos, un programa C# se compone slo de


objetos. Vamos recordando que un objeto es la concrecin de una clase, y que
una clase equivale a la generalizacin de un tipo especfico de objetos. Todo
programa C# se est formado por al menos una clase que define un mtodo
nombrado Main.
Estructura de un programa de C sharp
using System;
using System.Collections.Generic;
using System.Text;
namespace programa1
//se define espacio de nombre
{
class Program
{
static void Main(string[] args) //comienzo del programa
{
Console.writeline(PRIMER PROGRAMA!);
}
}
}
using
System:

Nos permitir usar miembros de este espacio de nombres sin


poner la palabra System delante.
Si no se escribe esto sera necesario escribir la instruccin:
System.Console.WriteLine("PRIMER PROGRAMA!");

Un
namespace

Constituye una forma lgica de organizar y estructura nuestro


cdigo de forma que podamos organizar la funcionalidad con un
determinado sentido semntico.

Console

Es una clase que no existe en el espacio de nombres global,


sino en el espacio de nombres System.
Es un mtodo de la clase Consola, que sirve para imprimir en la
pantalla el mensaje que deseemos, en este caso Hola Mundo.

Write

Identificadores
Los identificadores son los nombres que utilizas para nombrar los elementos en
tus programas, tales como espacios de nombres, clases, mtodos y variables.
En C# se deben elegir las siguientes reglas de sintaxis para construir
identificadores:
nicamente se pueden utilizar letras (maysculas y minsculas), dgitos y
guin bajo.
Un identificador debe iniciar con una letra o un guin bajo.
Ejemplos de identificadores vlidos:
Nombre, _apellido, numero1.
El lenguaje C# reserva 77 identificadores para su propio uso y no puedes
utilizar estos identificadores para tu propsito ya que son exclusivos del
lenguaje y tiene un significado especial para el compilador.
Estos identificadores reciben el nombre de palabras clave y cada una tiene un
significado particular..

abstract
as
base
bool
break
byte
case
catch
char
checked
class
const
continue
decimal
default
delegate
Do
double
else
enum

event
explicit
extern
false
finally
fixed
float
for
foreach
goto
if
implicit
in
int
interface
internal
is
lock
long
namespace

new
null
object
operator
out
override
params
private
protected
public
readonly
ref
return
sbyte
sealed
short
sizeof
stackalloc
static
string

struct
switch
this
throw
true
try
typeof
uint
ulong
unchecked
unsafe
ushort
using
virtual
void
volatile
while

Palabras reservadas
Las palabras reservadas son identificadores reservados predefinidos que
tienen un significado especial y no se pueden utilizar como identificadores en
sus programas, excepto si llevan delante el carcter @ como prefijo. As, por
ejemplo @for es un identificador vlido, pero no for ya que es una palabra
reservada.

abstract
as
base
bool
break
byte
case
catch
char
checked
class
const
continue
decimal
default
delegate
Do
double
else
enum

event
explicit
extern
false
finally
fixed
float
for
foreach
goto
if
implicit
in
int
interface
internal
is
lock
long
namespace

new
null
object
operator
out
override
params
private
protected
public
readonly
ref
return
sbyte
sealed
short
sizeof
stackalloc
static
string

struct
switch
this
throw
true
try
typeof
uint
ulong
unchecked
unsafe
ushort
using
virtual
void
volatile
while

C++
Las palabras reservadas son identificadores predefinidos reservados que
tienen significados especiales y no se pueden utilizar como identificadores de
sus programas. Los nombres con subrayados a la izquierda son extensiones de
Microsoft .
__abstract 2 __alignof __asm __assume __based __box 2 __cdecl
__declspec __delegate 2 __event __except __fastcall __finally
__forceinline __gc 2 __hook 3 __identifier __if_exists __if _not
_exists __inline __int8 __int16 __int32 __int64 __interface
__leave
__m64 __m128 __m128d __m128i __multiple_inheritance
__nogc 2 __noop __pin 2 __property 2 __raise __sealed 2 __single
_inheritance __stdcall __super __try _cast 2 __try/ __except,
__unhook 3 __uuidof

Declaracin de clase
Una declaracin de clase o struct es como un plano que se utiliza
para crear instancias u objetos en tiempo de ejecucin.
Un struct es un tipo de valor. Cuando se crea un struct, la variable a la
que se asigna incluye los datos reales del struct. Cuando el struct se
asigna a una nueva variable, se copia.
Una clase es un tipo de referencia. Cuando se crea un objeto de la
clase, la variable a la que se asigna el objeto solo incluye una
referencia a dicha memoria.

Members (miembros)
Todos los mtodos, campos, constantes, propiedades y eventos se
deben declarar dentro de un tipo; estos elementos se
denominan miembros del tipo. En C#, no existen variables ni mtodos
globales como en otros lenguajes. Incluso el punto de entrada de un
programa, el mtodo Main, se debe declarar dentro de una clase o
struct.
Campos

Constantes

Propiedades

Mtodos

Constructores

Un campo es una variable de cualquier tipo que se declara


directamente en una clase o struct. Los campos
son miembros de su tipo contenedor. Por regla general,
solo debe utilizar campos para variables con accesibilidad
privada o protegida.
Las constantes son valores inmutables que se conocen en
tiempo de compilacin y no cambian mientras dura el
programa. Las constantes se declaran con el
modificador const. Las constantes se pueden marcar
como public, private, protected, internal o protectedinternal.
Una propiedad es un miembro que ofrece un mecanismo
flexible para leer, escribir o calcular el valor de un campo
privado. Las propiedades pueden utilizarse como si fuesen
miembros de datos pblicos, aunque en realidad son
mtodos especiales denominadosdescriptores de acceso.
Un mtodo es un bloque de cdigo que contiene una serie
de instrucciones. Los programas hacen que las
instrucciones se ejecuten mediante una llamada al mtodo
y la especificacin de los argumentos de mtodo
necesarios.
Cada vez que se crea una clase o struct, se llama a su
constructor. Una clase o struct puede tener varios
constructores que toman argumentos diferentes. Los
constructores permiten al programador establecer valores
predeterminados, limitar la creacin de instancias y escribir

Destructores
Eventos

Indizadores
Operadores
Tipos anidados

cdigo flexible y fcil de leer.


Los destructores se utilizan para destruir instancias de
clases.
Cuando ocurre algo interesante, los eventos habilitan
una clase u objeto para notificarlo a otras clases u
objetos. La clase que enva (produce) el evento recibe el
nombre de editor y las clases que reciben (o controlan) el
evento se denominan suscriptores.
Los indizadores permiten indizar las instancias de una
clase o struct igual que como se hace con las matrices.
Un operando puede ser una expresin vlida que se
compone de cdigo de una longitud indeterminada y puede
incluir un nmero cualquiera de subexpresiones.
Un tipo definido dentro de una clase o struct se denomina
tipo anidado. Con independencia de si el tipo externo es
una clase o struct, los tipos anidados se establecen de
forma predeterminada en private, pero pueden definirse
como public, protected
internal, protected, internal o private.

Accesibilidad
A algunos mtodos y propiedades se les llama o se accede a ellos desde
cdigo fuera de su clase o struct, conocido como cdigo de cliente. Puede que
otros mtodos y propiedades solo se utilicen en la propia clase o struct. Es
importante limitar la accesibilidad del cdigo para que solo el cdigo de cliente
previsto pueda llegar a l. La accesibilidad del cdigo de cliente a los tipos y
sus miembros se especifica mediante los modificadores de
acceso public, protected, internal, protected internal y private.

Variables tipos de datos


A toda variable que se use en un programa, se deber declarar de
preferencia al principio del programa.
Existen los siguientes tipos de variables:
.Net
Bytes
C# Tipo
Framework
Signed? en
Rango
(System) type
Ram
sbyte
System.Sbyte
Yes
1
-128 a 127
short
System.Int16
Yes
2
-32768 a 32767
int
System.Int32
Yes
4
-2147483648 a 2147483647
-9223372036854775808 a
long
System.Int64
Yes
8
9223372036854775807

byte
ushort
uint
ulong

System.Byte
System.Uint16
System.UInt32
System.Uint64

No
No
No
No

float

System.Single

Yes

double

System.Double

Yes

decimal

System.Decimal Yes

char
bool

System.Char
N/A
System.Boolean N/A

Tipos genricos

Tipos estticos

Tipos anidados
Tipos parciales

Tipos annimos

1
2
4
8

0 a 255
0 a 65535
0 a 4294967295
0 a 18446744073709551615
Aprox. 1.5 x 10-45 a 3.4 x
4
1038 con 7 decimales
Aprox. 5.0 x 10-324 a 1.7 x
8
10308 con 15 o 16 decimales
Aprox. 1.0 x 10-28 a 7.9 x
12
1028 con 28 o 29 decimales
2
Cualquier caracter Unicode
1 / 2 true o false

Las clases y los structs pueden


definirse con uno o ms parmetros
de tipo. El cdigo cliente proporciona
el tipo cuando crea una instancia del
tipo. El cdigo cliente crea una
instancia
de List<string> o List<int> para
especificar el tipo que contendr la
lista.
Las clases (pero no los structs) se
pueden declarar como estticas. Una
clase esttica solo puede contener
miembros estticos y no se pueden
crear instancias de sta con la palabra
clave new.
Una clase o un struct se pueden
anidar en otra clase o struct.
Puede definir parte de una clase,
struct o mtodo en un archivo de
cdigo y otra parte en un archivo de
cdigo independiente.
En situaciones en las que no es
conveniente o necesario crear una
clase con nombre, por ejemplo al
rellenar una lista con estructuras de
datos que no tiene que conservar o
pasar a otro mtodo, utilice los tipos
annimos.

Mtodos
Un mtodo es un bloque de cdigo que contiene una serie de
instrucciones. Los programas hacen que las instrucciones se ejecuten

mediante una llamada al mtodo y la especificacin de los argumentos de


mtodo necesarios. En C#, cada instruccin se ejecuta en el contexto de un
mtodo. (Common Language Runtime (CLR) cuando se inicia el programa.)
Firmas de mtodo
Los mtodos se declaran en una clase o struct mediante la especificacin del
nivel de acceso como public o private, modificadores opcionales
como abstract o sealed, el valor devuelto, el nombre del mtodo y cualquier
parmetro de mtodo.
(Los parmetros del mtodo se encierran entre parntesis y se separan por
comas.)
Acceso al mtodo
Llamar a un mtodo de un objeto es como obtener acceso a un
campo. Despus del nombre de objeto, agregue un punto, el nombre del
mtodo y parntesis.
Los argumentos deben ser compatibles con el tipo de parmetro pero el
nombre del argumento (si existe) que se usa en el cdigo de llamada no tiene
que ser igual que el nombre de parmetro definido en el mtodo. Los mtodos
pueden devolver un valor al llamador. Si el tipo de valor devuelto (el que
aparece antes del nombre del mtodo) no es void, el mtodo puede devolver el
valor mediante la palabra clave return. Utilizando la caracterstica de async,
puede invocar mtodos asincrnicos sin usar devoluciones explcitas o
manualmente dividir el cdigo a travs de varios mtodos o de expresiones
lambda.

Main
El mtodo Main es el punto de entrada de una aplicacin de consola de C#,
Cuando se inicia la aplicacin, el mtodo Main es el primer mtodo que se
invoca.
En un programa de C#, slo puede haber un punto de entrada. Si tiene ms de
una clase con un mtodo Main, debe compilar el programa con la opcin del
compilador /main para especificar qu mtodo Main se va a utilizar como punto
de entrada.

-El mtodo Main es el punto de entrada de un programa .exe, donde se inicia y


finaliza el control del programa.
-Main se declara dentro de una clase o un struct. Main debe ser esttico y no
debe ser pblico.
-Main puede tener un tipo de valor devuelto void o int.

-El mtodo Main se puede declarar con o sin un parmetro string[] que
contenga los argumentos de la lnea de comandos.
Conclusin
En este trabajo aprend y tuve un poco ms de conocimiento sobre
programacin, me doy cuenta que el programa c sharp es un programa amplio

en el cual es muy til y utilizado para muchas cosas, dentro de ello es un


programa que contiene el mayor liderazgo para programar y sobre todo tiene
una gran cantidad de mtodos, clases, palabras, declaraciones, tipos de datos
para un buen desarrollo de programacin de lenguajes, con ello lo convoco a
utilizar en el desarrollo de programas para Windows paginas Web, video juegos
, etc. Lo mas importante en mi opinin sobre este trabajo es que puedo
empezar a trabajar con el, con lo bsico, al paso del tiempo podr tener mas
experiencia y habilidad para trabajar con el programa y a su vez trabajar con
cosas mas grandes y desarrolladas para quizs llegar hacer programas para
Windows o crear paginas Web o incluso crear nuevos video juegos. Lo mas
importante es el aprendizaje que llevo hoy por la investigacin que se hizo por
el programa de C sharp, mismo programa que llevare a cabo en practica.

You might also like