2. C#
Es un lenguaje de programación
orientado a objetos desarrollado y
estandarizado por Microsoft como
parte de su plataforma .NET, que
después fue aprobado como un
estándar por la ECMA.C# es uno de
los lenguajes de programación
diseñados para la infraestructura de
lenguaje común.
3. Historia
Durante el desarrollo de la plataforma .NET, las
bibliotecas de clases fueron escritas originalmente
usando un sistema de código gestionado llamado
Simple Managed C (SMC). En enero de
1999, Anders Hejlsberg formó un equipo con la
misión de desarrollar un nuevo lenguaje de
programación llamado Cool (Lenguaje C orientado
a objetos). Este nombre tuvo que ser cambiado
debido a problemas de marca, pasando a llamarse
C#. La biblioteca de clases de la plataforma .NET
fue migrada entonces al nuevo lenguaje.
Hejlsberg lideró el proyecto de desarrollo de C#.
Anteriormente, ya había participado en el
desarrollo de otros lenguajes como Turbo Pascal, J++
4. Contexto General de C#
Aunque es posible escribir código para la
plataforma .NET C# ha sido diseñada
específicamente para ser utilizada en ella, por lo
que utilizarla es mucho mas sencilla. Por eso se
dice que c# es el lenguaje nativo de .NET.
C# Toma las mejores características de programas
como visual Basic, java o C++ y las combina en uno
solo.
5. Sencillez
Modernidad
Orientación a Objetos
Orientación a Componentes
Gestión Automática de Memoria
Seguridad de Tipos
Extensibilidad.
Eficiente.
Características de C#
6. SENCILLEZ
C# elimina muchos elementos que otros lenguajes
incluyen y que son innecesarios en .NET por
ejemplo:
El código escrito en c# es auto contenido, lo que
significa que no necesita de ficheros adicionales al
propio fuente tales como ficheros de cabecera o
ficheros IDL
7. Modernidad
C# incorpora en el propio lenguaje elementos
que son muy útiles para desarrollar
aplicaciones y que java o c++ tiene algo similar,
como un tipo básico decimal que permite
realizar operaciones de alta precisión con reales
de 128 bits(muy útil en le mundo financiero), la
inclusión de un tipo básico string para
representar cadenas.
8. Orientación a Objetos
Encapsulación: Contiene los modificadores public,
private y protected c# añade un cuarto modificador
llamado internal.
Herencia: Admite herencia simple de clases ya que la
múltiple admite muchos quebraderos de cabeza que
facilidades.
Polimorfismo: Capacidad que tiene una clase en
convertirse en un nuevo objeto sin cambiar su esencia
luego volver al objeto original de donde salió
9. Orientación a componentes
La propia Sintaxis de C# incluye elementos
propios de componentes que otros lenguajes
tiene mediante construcción mas o menos
complejas, la sintaxis de C# permite definir
cómodamente propiedades , eventos o
atributos
10. Gestión Automática de
memoria
Todo Lenguaje de .NET tiene a su disposición
el recolector de basura de CLR. Esto tiene el
efecto en el lenguaje de que no es necesario
incluir instrucciones de destrucción de
objetos.
11. Seguridad de Tipos
C# Incluye mecanismo que permiten asegurar que
los accesos a tipos de datos siempre se realicen
correctamente lo que permita y evita que se
produzcan errores difíciles de detectar se toman
algunas medidas:
-solo se admiten conversiones entre tipos de
compatibles.
-no usar variables no inicializadas.
-se comprueba que todo acceso a los tipos de datos
se realicen correctamente.
12. Extensibilidad
C# permite definir a través de estructuras
tipos de datos para los que aplican las
misma las mismas optimizaciones que
para los tipos de datos básicos, es decir
que se pueden almacenar directamente en
pila( luego su creación, su destrucción y
acceso serán mas rápidos) y se asigne por
valor y no por referencia
13. Eficiente
En C# todo código incluye numerosas
restricciones para asegurar su seguridad y
no permite el uso de punteros . Sin embargo
es posible saltarse dichas restricciones
manipulando objetos atreves de punteros
19. VENTAJAS DE C#
Declaraciones en el espacio de nombres: al empezar a
programar algo, se puede definir una o más clases dentro
de un mismo espacio de nombres.
En C# existe un rango muy amplio definido de tipos de
datos.
cada miembro de una clase tiene un atributo de acceso
del tipo público, protegido, interno, interno protegido y
privado.
un objeto tiene intrínsecamente propiedades, y debido a
que las clases en C# pueden ser utilizadas como objetos,
C# permite la declaración de propiedades dentro de
cualquier clase.
20. DESVENTAJAS
Se debe conseguir una versión reciente de
Visual Studio .NET.
Se debe tener algunos requerimientos
mínimos del sistema para poder trabajar
adecuadamente tales como contar con
Windows NT 4 o superior, tener alrededor de
4 gigas de espacio libre para la pura
instalación.
Además para quien no está familiarizado con
ningún lenguaje de programación, le costará
más trabajo iniciarse en su uso.