SlideShare una empresa de Scribd logo
1 de 11
Lenguaje de Programación 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 (ECMA-334) e ISO (ISO/IEC 23270). C# es uno de los lenguajes de
programación diseñados para la infraestructura de lenguaje común. También es diseñado
para describir el conjunto de acciones consecutivas que un equipo debe diseñar.
Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma .NET,
similar al de Java, aunque incluye mejoras derivadas de otros lenguajes.
C# contiene dos categorías generales de tipos de datos integrados: tipos de valor y tipos
de referencia. El término tipo de valor indica que esos tipos contienen directamente sus
valores.



Desarrolladores:

Durante el desarrollo de la plataforma .NET, las bibliotecas de clases fueron escritas
originalmente usando un sistema de código gestionado llamado Simple Manged 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, Delphi y J++.

En junio de 2000, Microsoft libero el lenguaje llamado C#. El nuevo lenguaje estaba
diseñado por Anders Hejlsberg (creador de Turbo Pascal y arquitecto de Delphi), Scott
Wiltamuth y Peter Golde. Entonces describieron el lenguaje como "...simple, moderno,
orientado a objetos, de tipiado seguro y con una fuerte herencia de C/C++". Una muestra
de esta nueva tecnología es el nuevo lenguaje de programación C#. Este nuevo lenguaje
orientado a objetos con énfasis en Internet se basa en las lecciones aprendidas de los
lenguajes C, C++, Java y Visual Basic. Por ello se trata de un lenguaje que combina todas
las cualidades que se pueden esperar de un lenguaje moderno (orientación a objetos,
gestión automática de memoria, etc.) a la vez que proporciona un gran rendimiento.

1. Java (James Gosling)

2. C (Ken Thompson Left & Dennis Ritchie Right)
3. C++ (Bjarne Stroustrup)

4. Python (Guido van Rossum )
5. Fortran (John W. Backus)

6. Linux Kernel (Linus Benedict Thorvaldsen)
7. Perl (Larry Wall)

9. Ruby (Yukihiro Matsumoto)
10. Ruby on Rails (RoR) (David Heinemeier Hansson)

11. JavaScript (Brendan Eich)
12. PHP (Rasmus Lerdorf)

 Características principales de C#
Su código se puede tratar íntegramente como un objeto.
Su sintaxis es muy similar a la de JAVA.
Se ahorra tiempo en la programación ya que tiene una librería de clases muy
completas y muy diseñadas.

Sencillez de uso
C# elimina muchos elementos añadidos por otros lenguajes y que facilitan su uso y
compresión, como por ejemplo ficheros de cabecera, o ficheros fuentes IDL1 Es por ello
2
1
.
que se dice que C# es auto contenido. Además, no se incorporan al lenguaje elementos
poco útiles, como por ejemplo macros, herencia múltiple u operadores diferentes al
operador de acceso a métodos (operador punto) para acceder a miembros de espacios de
nombres.

Modernidad
Al ser C# un lenguaje de última generación, incorpora elementos que se ha demostrado a
lo largo del tiempo que son muy útiles para el programador, como tipos decimales o
Booleanos, un tipo básico string, así como una instrucción que permita recorrer
colecciones con facilidad (instrucción foreach). Estos elementos hay que simularlos en
otros lenguajes como C++ o Java.
Orientado a objetos
C# como lenguaje de última generación, y de propósito general, es orientado a objetos.
C# no permite la inclusión de funciones ni variables globales que no estén incluidos en una
definición de tipos, por lo que la orientación a objetos es más pura y clara que en otros
lenguajes como C++. Además, C# soporta todas las características del paradigma de la
programación orientada a objetos, como son la encapsulación, la herencia y el
polimorfismo.

Orientado a componentes
La propia sintaxis de C# incluye elementos propios del diseño de componentes que otros
lenguajes tienen que simular. La sintaxis de C# incluye por ejemplo formas de definir
Propiedades, eventos o atributos.

Recolección de basura
Como ya se comentó, todo lenguaje incluido en la plataforma .NET tiene su disposición el
recolector de basura del CLR. Esto implica que no es necesario incluir instrucciones de
destrucción de objetos en el lenguaje.

Seguridad de tipos
C# incluye mecanismos de control de acceso a tipos de datos, lo que garantiza que no se
produzcan errores difíciles de detectar como un acceso a memoria de ningún objeto,
por ejemplo. Para ello, el lenguaje provee de una serie de normas de sintaxis, como por
ejemplo no realizar conversiones entre tipos que no sean compatibles. Además, no se
pueden usar variables no inicializadas previamente, y en el acceso atablas se hace una
comprobación de rangos para que no se excedan ninguno de los índices de la misma.

 Versiones
A partir de la versión 2005 Microsoft ofrece gratuitamente las Ediciones Express, que son
versiones básicas separadas por lenguajes de programación o plataforma enfocadas; para
estudiantes y programación amateur. Estas ediciones son iguales al entorno de desarrollo
comercial, pero sin características avanzadas de integración. Dichas ediciones son:
Visual Basic Express Edition
Visual C# Express Edition
Visual C++ Express Edition
Visual J# Express Edition (Desapareció en Visual Studio 2008)
Visual Web Develo per Express Edition (para programar en ASP.NET)
Visual F# (Apareció en Visual Studio 2010, es parecido al J#)*
Windows Phone 8 SDK
Windows Azure SDK
Adicionalmente, Microsoft ha puesto gratuitamente a disposición de todo el mundo una
versión reducida de MS SQL Server llamada SQL Server Express Edition cuyas únicas
limitaciones son que no soporta bases de datos superiores a 4 GB de tamaño, se ejecuta
en un procesador, y no cuenta con el Agente de SQL Server.
En el pasado se incluyeron los siguientes productos:
Visual InterDev
Visual J++
Visual FoxPro
Visual SourceSafe

Visual Studio 6.0
Se lanzó en 1998 y fue la última versión en ejecutarse en la plataforma Win9x. Los
números de versión de todas las partes constituyentes pasaron a 6.0, incluyendo Visual
J++ y Visual InterDev, que se encontraban en las versiones 1.1 y 1.0 respectivamente. Esta
versión fue la base para el sistema de desarrollo de Microsoft para los siguientes 4 años,
en los que Microsoft migró su estrategia de desarrollo al .NET Framework.
Visual Studio 6.0 fue la última versión en que Visual Basic se incluía de la forma en que se
conocía hasta entonces; versiones posteriores incorporarían una versión muy diferente
del lenguaje con muchas mejoras, fruto de la plataforma .NET. También supuso la última
versión en incluir Visual J++, que proporcionaba extensiones de la plataforma Java, lo que
lo hacía incompatible con la versión de Sun Microsystems. Esto acarreó problemas legales
a Microsoft, y se llegó a un acuerdo en el que Microsoft dejaba de comercializar
herramientas de programación que utilizaran la máquina virtual de Java.
Aunque el objetivo a largo plazo de Microsoft era unificar todas las herramientas en un
único entorno, esta versión en realidad añadía un entorno más a Visual Studio 5.0: Visual
J++ y Visual InterDev se separaban del entorno de Visual C++, al tiempo que Visual FoxPro
y Visual Basic seguían manteniendo su entorno específico.

Visual Studio .NET (2002)
En esta versión se produjo un cambio sustancial, puesto que supuso la introducción de la
plataforma .NET de Microsoft. .NET es una plataforma de ejecución intermedia
multilenguaje, de forma que los programas desarrollados en .NET no se compilan
en lenguaje máquina, sino en un lenguaje intermedio (CIL Common Intermediate
Language) denominado Microsoft Intermediate Language (MSIL). En una aplicación MSIL,
el código no se convierte a lenguaje máquina hasta que ésta se ejecuta, de manera que el
código puede ser independiente de plataforma (al menos de las soportadas actualmente
por .NET). Las plataformas han de tener una implementación de Infraestructura de
Lenguaje Común (CLI) para poder ejecutar programas MSIL. Actualmente se pueden
ejecutar programas MSIL en Linux y Mac OS X usando implementaciones de .NET que no
son de Microsoft, tales como Mono y DotGNU.
Visual Studio .NET 2002 supuso también la introducción del lenguaje C#, un lenguaje
nuevo diseñado específicamente para la plataforma .NET, basado en C++ y Java. Se
presentó también el lenguaje J# (sucesor de J++), el cual, en lugar de ejecutarse en una
máquina virtual de Java, se ejecuta únicamente en el framework .NET. El lenguaje Visual
Basic fue remodelado completamente y evolucionó para adaptarse a las nuevas
características de la plataforma .NET, haciéndolo mucho más versátil y dotándolo con
muchas características de las que carecía. Algo similar se llevó a cabo con C++, añadiendo
extensiones al lenguaje llamadas Manged Extensions For C++ con el fin de que los
programadores pudieran crear programas en .NET. Por otra parte, Visual FoxPro pasa a
comercializarse por separado.

Visual Studio .NET 2003
Visual Studio .NET 2003 supone una actualización menor de Visual Studio .NET. Se
actualiza el .NET Framework a la versión 1.1. También se añade soporte con el fin de
escribir aplicaciones para determinados dispositivos móviles, ya sea con ASP.NET o con el
.NET Compact Framework. Además, el compilador de Visual C++ se mejora para cumplir
con más estándares: el Visual C++ Toolkit 2003.
Visual Studio 2003 se lanza en 4 ediciones: Academic, Professional, Enterprise Develo per
y Enterprise Architect. La edición Enterprise Architect incluía una implementación de la
tecnología de modelado Microsoft Visio, que se centraba en la creación de
representaciones visuales de la arquitectura de la aplicación basadas en UML. También se
introdujo "Enterprise Templates", para ayudar a grandes equipos de trabajo a estandarizar
estilos de programación e impulsar políticas de uso de componentes y asignación de
propiedades.
Microsoft lanzó el Service Pack 1 para Visual Studio 2003 el 13 de septiembre de 2006.
La versión interna de Visual Studio .NET 2003 es la 7.1 aunque el formato del archivo que
emplea es el 8.0.
Es compatible solo con Windows XP, Windows Server 2003 o anteriores

Visual Studio 2005
Visual Studio 2005 se empezó a comercializar a través de Internet a partir del 4 de octubre
de 2005 y llegó a los comercios a finales del mes de octubre en inglés. En castellano no
salió hasta el 4 de febrero de 2006. Microsoft eliminó la coletilla .NET de su nombre, pero
eso no indica que se alejara de la plataforma .NET, de la cual se incluyó la versión 2.0.
La actualización más importante que recibieron los lenguajes de programación fue la
inclusión de tipos genéricos, similares en muchos aspectos a las plantillas de C++. Con esto
se consigue encontrar muchos más errores en la compilación en vez de en tiempo de
ejecución, incitando a usar comprobaciones estrictas en áreas donde antes no era posible.
C++ tiene una actualización similar con la adición de C++/CLI como sustituto de C#
manejado.
Se incluye un diseñador de implantación, que permite que el diseño de la aplicación sea
validado antes de su implantación. También se incluye un entorno para publicación web y
pruebas de carga para comprobar el rendimiento de los programas bajo varias
condiciones de carga.
Visual Studio 2005 también añade soporte para arquitecturas de 64 bits. Aunque el
entorno de desarrollo sigue siendo una aplicación de 32 bits, Visual C++ 2005 soporta
compilación para x86-64 (AMD64, Intel 64) e IA-64 (Itanium). El SDK incluye compiladores
de 64 bits así como versiones de 64 bits de las librerías.
Visual Studio 2005 tiene varias ediciones radicalmente distintas entre sí: Express,
Standard, Professional, Tools For Office y 5 ediciones Visual Studio Team System. Éstas
últimas se proporcionaban conjuntamente con suscripciones a MSDN cubriendo los 4
principales roles de la programación: Architect, Software Developers, Testers y Data base
Professionals. La funcionalidad combinada de las 4 ediciones Team System se ofrecía
como la edición Team Suite. Por otra parte, Tools For the Microsoft Office System está
diseñada para extender la funcionalidad a Microsoft Office.
Las ediciones Express se han diseñado para principiantes, aficionados y pequeños
negocios, todas disponibles gratuitamente a través de la página de Microsoft. 4 Se incluye
una edición independiente para cada lenguaje: Visual Basic, Visual C++, Visual C#, Visual J#
para programación .NET en Windows y Visual Web Develo per para la creación de sitios
web ASP.NET. Las ediciones Express carecen de algunas herramientas avanzadas de
programación así como de opciones de extensibilidad.
Se lanzó el Service Pack 1 para Visual Studio 2005 el 14 de diciembre de 2006.
La versión interna de Visual Studio 2005 es la 8.0, mientras que el formato del archivo que
emplea es la 9.0.

Más contenido relacionado

La actualidad más candente

Users c#guia total del programador
Users c#guia total del programadorUsers c#guia total del programador
Users c#guia total del programadorSantos Rivera Luján
 
Manual de el lenguaje de programacion c# ( español spanish) x richy
Manual de el lenguaje de programacion c# ( español spanish) x richyManual de el lenguaje de programacion c# ( español spanish) x richy
Manual de el lenguaje de programacion c# ( español spanish) x richyRoberto Lll
 
C# para desarrolladores VB6
C# para desarrolladores VB6C# para desarrolladores VB6
C# para desarrolladores VB6Tonymx
 
Programacion c# vbnet
Programacion c# vbnetProgramacion c# vbnet
Programacion c# vbnetKevin Reaño
 
Reporte_de_microsoft_visual_c#
Reporte_de_microsoft_visual_c#Reporte_de_microsoft_visual_c#
Reporte_de_microsoft_visual_c#José García
 
Lenguaje de programacion c
Lenguaje de programacion cLenguaje de programacion c
Lenguaje de programacion c1002pc1
 
Mi lenguaje de programación de preferencia es C++
Mi lenguaje de programación de preferencia es C++Mi lenguaje de programación de preferencia es C++
Mi lenguaje de programación de preferencia es C++N_Alejandrino
 
Zanjai-como-entorno-de-programacion
Zanjai-como-entorno-de-programacionZanjai-como-entorno-de-programacion
Zanjai-como-entorno-de-programacionjuanpi1991
 
Características de c sharp
Características de c sharpCaracterísticas de c sharp
Características de c sharpuccvirtual
 
Presentación de C++
Presentación de C++Presentación de C++
Presentación de C++Sylvert
 
Programa en lenguaje C, Hildemaro Sequera, MI-42
Programa en lenguaje C, Hildemaro Sequera, MI-42Programa en lenguaje C, Hildemaro Sequera, MI-42
Programa en lenguaje C, Hildemaro Sequera, MI-42Hildemaro Sequera
 

La actualidad más candente (20)

1. introducción a c#
1.  introducción a c#1.  introducción a c#
1. introducción a c#
 
Consulta c++
Consulta c++Consulta c++
Consulta c++
 
Users c#guia total del programador
Users c#guia total del programadorUsers c#guia total del programador
Users c#guia total del programador
 
Manual de el lenguaje de programacion c# ( español spanish) x richy
Manual de el lenguaje de programacion c# ( español spanish) x richyManual de el lenguaje de programacion c# ( español spanish) x richy
Manual de el lenguaje de programacion c# ( español spanish) x richy
 
C sharp
C sharpC sharp
C sharp
 
C# para desarrolladores VB6
C# para desarrolladores VB6C# para desarrolladores VB6
C# para desarrolladores VB6
 
Programacion c# vbnet
Programacion c# vbnetProgramacion c# vbnet
Programacion c# vbnet
 
Reporte_de_microsoft_visual_c#
Reporte_de_microsoft_visual_c#Reporte_de_microsoft_visual_c#
Reporte_de_microsoft_visual_c#
 
C++
C++C++
C++
 
Grupo 201
Grupo 201Grupo 201
Grupo 201
 
Informe lpi
Informe lpiInforme lpi
Informe lpi
 
Lenguaje de programacion c
Lenguaje de programacion cLenguaje de programacion c
Lenguaje de programacion c
 
Mi lenguaje de programación de preferencia es C++
Mi lenguaje de programación de preferencia es C++Mi lenguaje de programación de preferencia es C++
Mi lenguaje de programación de preferencia es C++
 
Manual de c/c++
Manual de c/c++Manual de c/c++
Manual de c/c++
 
Zanjai-como-entorno-de-programacion
Zanjai-como-entorno-de-programacionZanjai-como-entorno-de-programacion
Zanjai-como-entorno-de-programacion
 
Tarea3
Tarea3 Tarea3
Tarea3
 
Características de c sharp
Características de c sharpCaracterísticas de c sharp
Características de c sharp
 
Como usar el lenguaje c++
Como usar el lenguaje c++Como usar el lenguaje c++
Como usar el lenguaje c++
 
Presentación de C++
Presentación de C++Presentación de C++
Presentación de C++
 
Programa en lenguaje C, Hildemaro Sequera, MI-42
Programa en lenguaje C, Hildemaro Sequera, MI-42Programa en lenguaje C, Hildemaro Sequera, MI-42
Programa en lenguaje C, Hildemaro Sequera, MI-42
 

Destacado

Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguajeLenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguajeDunkherz
 
5 diapositivas para programar
5 diapositivas para programar5 diapositivas para programar
5 diapositivas para programarLmartinez45564646
 
Lenguaje de programacion en c
Lenguaje de programacion en cLenguaje de programacion en c
Lenguaje de programacion en cNelly Gonzalez
 
Introduccion al lenguaje c
Introduccion al lenguaje cIntroduccion al lenguaje c
Introduccion al lenguaje cMaylin25
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje cwuaro1
 
Microcontroladores pic diseño practico de aplicaciones
Microcontroladores pic diseño practico de aplicacionesMicrocontroladores pic diseño practico de aplicaciones
Microcontroladores pic diseño practico de aplicacionesCarlos Tovar
 
Introduction to .NET Framework and C# (English)
Introduction to .NET Framework and C# (English)Introduction to .NET Framework and C# (English)
Introduction to .NET Framework and C# (English)Vangos Pterneas
 
Tipos de Datos en C++
Tipos de Datos en C++Tipos de Datos en C++
Tipos de Datos en C++ivanjvic
 
Microcontroladores pic, diseño práctico de aplicaciones 2da parte 16 f87x
Microcontroladores pic, diseño práctico de aplicaciones 2da parte 16 f87xMicrocontroladores pic, diseño práctico de aplicaciones 2da parte 16 f87x
Microcontroladores pic, diseño práctico de aplicaciones 2da parte 16 f87xMiguel Angel Corona Lòpez
 
Curso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xxCurso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xxfreddymadriz
 

Destacado (20)

Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguajeLenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
Lenguaje de programacion c++ basico 1ra parte elementos basicos del lenguaje
 
Introduccion del Lenguaje C
Introduccion del Lenguaje CIntroduccion del Lenguaje C
Introduccion del Lenguaje C
 
Introducción al lenguaje c++
Introducción al lenguaje c++Introducción al lenguaje c++
Introducción al lenguaje c++
 
5 diapositivas para programar
5 diapositivas para programar5 diapositivas para programar
5 diapositivas para programar
 
Lenguaje de programacion en c
Lenguaje de programacion en cLenguaje de programacion en c
Lenguaje de programacion en c
 
manual de c# (1)
manual de c# (1)manual de c# (1)
manual de c# (1)
 
Introduccion al lenguaje c
Introduccion al lenguaje cIntroduccion al lenguaje c
Introduccion al lenguaje c
 
Lenguaje c
Lenguaje cLenguaje c
Lenguaje c
 
Introduction to c#
Introduction to c#Introduction to c#
Introduction to c#
 
Lenguaje c++
Lenguaje c++Lenguaje c++
Lenguaje c++
 
C# guia total del programador
C# guia total del programadorC# guia total del programador
C# guia total del programador
 
Lenguaje C (pdf)
Lenguaje C (pdf)Lenguaje C (pdf)
Lenguaje C (pdf)
 
Tipos Datos y Operadores en Visual C# (C sharp)
Tipos Datos y Operadores en Visual C# (C sharp)Tipos Datos y Operadores en Visual C# (C sharp)
Tipos Datos y Operadores en Visual C# (C sharp)
 
Introducción a la Programación en Visual C# (C Sharp)
Introducción a la Programación en Visual C# (C Sharp)Introducción a la Programación en Visual C# (C Sharp)
Introducción a la Programación en Visual C# (C Sharp)
 
Microcontroladores pic diseño practico de aplicaciones
Microcontroladores pic diseño practico de aplicacionesMicrocontroladores pic diseño practico de aplicaciones
Microcontroladores pic diseño practico de aplicaciones
 
Introduction to .NET Framework and C# (English)
Introduction to .NET Framework and C# (English)Introduction to .NET Framework and C# (English)
Introduction to .NET Framework and C# (English)
 
Tipos de Datos en C++
Tipos de Datos en C++Tipos de Datos en C++
Tipos de Datos en C++
 
C# basics
 C# basics C# basics
C# basics
 
Microcontroladores pic, diseño práctico de aplicaciones 2da parte 16 f87x
Microcontroladores pic, diseño práctico de aplicaciones 2da parte 16 f87xMicrocontroladores pic, diseño práctico de aplicaciones 2da parte 16 f87x
Microcontroladores pic, diseño práctico de aplicaciones 2da parte 16 f87x
 
Curso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xxCurso de programacion en c++ para microcontroladores pic 16 f87xx
Curso de programacion en c++ para microcontroladores pic 16 f87xx
 

Similar a Lenguaje C sharp

Similar a Lenguaje C sharp (20)

C# documento de texto junto con mapa conceptual
C# documento de texto junto con mapa conceptualC# documento de texto junto con mapa conceptual
C# documento de texto junto con mapa conceptual
 
Programacion
ProgramacionProgramacion
Programacion
 
Microsoft Visual Studio Universidad OYM Seccion 0435
Microsoft Visual Studio Universidad OYM Seccion 0435Microsoft Visual Studio Universidad OYM Seccion 0435
Microsoft Visual Studio Universidad OYM Seccion 0435
 
P R O G R A M A V I S U A L C++
P R O G R A M A  V I S U A L  C++P R O G R A M A  V I S U A L  C++
P R O G R A M A V I S U A L C++
 
Caracteristicas lenguajes
Caracteristicas lenguajesCaracteristicas lenguajes
Caracteristicas lenguajes
 
Lenguaje cc++
Lenguaje cc++Lenguaje cc++
Lenguaje cc++
 
Visual studio 2010
Visual studio 2010Visual studio 2010
Visual studio 2010
 
El lenguaje c#
El lenguaje c#El lenguaje c#
El lenguaje c#
 
Introducción al lenguaje c# eidos
Introducción al lenguaje c# eidosIntroducción al lenguaje c# eidos
Introducción al lenguaje c# eidos
 
Conceptos de Plataforma.Net
Conceptos de Plataforma.NetConceptos de Plataforma.Net
Conceptos de Plataforma.Net
 
Robinson & wilfredo
Robinson & wilfredoRobinson & wilfredo
Robinson & wilfredo
 
Presentación1
Presentación1Presentación1
Presentación1
 
Visual Basic .NET
Visual Basic .NETVisual Basic .NET
Visual Basic .NET
 
Deber 130912163339-phpapp01
Deber 130912163339-phpapp01Deber 130912163339-phpapp01
Deber 130912163339-phpapp01
 
Deber
DeberDeber
Deber
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Historia del C++ y JAVA
Historia del C++ y JAVAHistoria del C++ y JAVA
Historia del C++ y JAVA
 
Lenguajes formales
Lenguajes formalesLenguajes formales
Lenguajes formales
 
Características de los 10 lenguajes de programación
 Características de los 10 lenguajes de programación Características de los 10 lenguajes de programación
Características de los 10 lenguajes de programación
 
Diapositivas de compiladores
Diapositivas de compiladoresDiapositivas de compiladores
Diapositivas de compiladores
 

Último

La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son241514984
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 

Último (20)

La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
El uso de las tic en la vida ,lo importante que son
El uso de las tic en la vida ,lo importante  que sonEl uso de las tic en la vida ,lo importante  que son
El uso de las tic en la vida ,lo importante que son
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 

Lenguaje C sharp

  • 1. Lenguaje de Programación 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 (ECMA-334) e ISO (ISO/IEC 23270). C# es uno de los lenguajes de programación diseñados para la infraestructura de lenguaje común. También es diseñado para describir el conjunto de acciones consecutivas que un equipo debe diseñar. Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma .NET, similar al de Java, aunque incluye mejoras derivadas de otros lenguajes. C# contiene dos categorías generales de tipos de datos integrados: tipos de valor y tipos de referencia. El término tipo de valor indica que esos tipos contienen directamente sus valores.  Desarrolladores: Durante el desarrollo de la plataforma .NET, las bibliotecas de clases fueron escritas originalmente usando un sistema de código gestionado llamado Simple Manged 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, Delphi y J++. En junio de 2000, Microsoft libero el lenguaje llamado C#. El nuevo lenguaje estaba diseñado por Anders Hejlsberg (creador de Turbo Pascal y arquitecto de Delphi), Scott Wiltamuth y Peter Golde. Entonces describieron el lenguaje como "...simple, moderno,
  • 2. orientado a objetos, de tipiado seguro y con una fuerte herencia de C/C++". Una muestra de esta nueva tecnología es el nuevo lenguaje de programación C#. Este nuevo lenguaje orientado a objetos con énfasis en Internet se basa en las lecciones aprendidas de los lenguajes C, C++, Java y Visual Basic. Por ello se trata de un lenguaje que combina todas las cualidades que se pueden esperar de un lenguaje moderno (orientación a objetos, gestión automática de memoria, etc.) a la vez que proporciona un gran rendimiento. 1. Java (James Gosling) 2. C (Ken Thompson Left & Dennis Ritchie Right)
  • 3. 3. C++ (Bjarne Stroustrup) 4. Python (Guido van Rossum )
  • 4. 5. Fortran (John W. Backus) 6. Linux Kernel (Linus Benedict Thorvaldsen)
  • 5. 7. Perl (Larry Wall) 9. Ruby (Yukihiro Matsumoto)
  • 6. 10. Ruby on Rails (RoR) (David Heinemeier Hansson) 11. JavaScript (Brendan Eich)
  • 7. 12. PHP (Rasmus Lerdorf)  Características principales de C# Su código se puede tratar íntegramente como un objeto. Su sintaxis es muy similar a la de JAVA. Se ahorra tiempo en la programación ya que tiene una librería de clases muy completas y muy diseñadas. Sencillez de uso C# elimina muchos elementos añadidos por otros lenguajes y que facilitan su uso y compresión, como por ejemplo ficheros de cabecera, o ficheros fuentes IDL1 Es por ello 2 1 . que se dice que C# es auto contenido. Además, no se incorporan al lenguaje elementos poco útiles, como por ejemplo macros, herencia múltiple u operadores diferentes al operador de acceso a métodos (operador punto) para acceder a miembros de espacios de nombres. Modernidad Al ser C# un lenguaje de última generación, incorpora elementos que se ha demostrado a lo largo del tiempo que son muy útiles para el programador, como tipos decimales o Booleanos, un tipo básico string, así como una instrucción que permita recorrer colecciones con facilidad (instrucción foreach). Estos elementos hay que simularlos en otros lenguajes como C++ o Java.
  • 8. Orientado a objetos C# como lenguaje de última generación, y de propósito general, es orientado a objetos. C# no permite la inclusión de funciones ni variables globales que no estén incluidos en una definición de tipos, por lo que la orientación a objetos es más pura y clara que en otros lenguajes como C++. Además, C# soporta todas las características del paradigma de la programación orientada a objetos, como son la encapsulación, la herencia y el polimorfismo. Orientado a componentes La propia sintaxis de C# incluye elementos propios del diseño de componentes que otros lenguajes tienen que simular. La sintaxis de C# incluye por ejemplo formas de definir Propiedades, eventos o atributos. Recolección de basura Como ya se comentó, todo lenguaje incluido en la plataforma .NET tiene su disposición el recolector de basura del CLR. Esto implica que no es necesario incluir instrucciones de destrucción de objetos en el lenguaje. Seguridad de tipos C# incluye mecanismos de control de acceso a tipos de datos, lo que garantiza que no se produzcan errores difíciles de detectar como un acceso a memoria de ningún objeto, por ejemplo. Para ello, el lenguaje provee de una serie de normas de sintaxis, como por ejemplo no realizar conversiones entre tipos que no sean compatibles. Además, no se pueden usar variables no inicializadas previamente, y en el acceso atablas se hace una comprobación de rangos para que no se excedan ninguno de los índices de la misma.  Versiones A partir de la versión 2005 Microsoft ofrece gratuitamente las Ediciones Express, que son versiones básicas separadas por lenguajes de programación o plataforma enfocadas; para estudiantes y programación amateur. Estas ediciones son iguales al entorno de desarrollo comercial, pero sin características avanzadas de integración. Dichas ediciones son: Visual Basic Express Edition Visual C# Express Edition Visual C++ Express Edition Visual J# Express Edition (Desapareció en Visual Studio 2008) Visual Web Develo per Express Edition (para programar en ASP.NET) Visual F# (Apareció en Visual Studio 2010, es parecido al J#)* Windows Phone 8 SDK Windows Azure SDK
  • 9. Adicionalmente, Microsoft ha puesto gratuitamente a disposición de todo el mundo una versión reducida de MS SQL Server llamada SQL Server Express Edition cuyas únicas limitaciones son que no soporta bases de datos superiores a 4 GB de tamaño, se ejecuta en un procesador, y no cuenta con el Agente de SQL Server. En el pasado se incluyeron los siguientes productos: Visual InterDev Visual J++ Visual FoxPro Visual SourceSafe Visual Studio 6.0 Se lanzó en 1998 y fue la última versión en ejecutarse en la plataforma Win9x. Los números de versión de todas las partes constituyentes pasaron a 6.0, incluyendo Visual J++ y Visual InterDev, que se encontraban en las versiones 1.1 y 1.0 respectivamente. Esta versión fue la base para el sistema de desarrollo de Microsoft para los siguientes 4 años, en los que Microsoft migró su estrategia de desarrollo al .NET Framework. Visual Studio 6.0 fue la última versión en que Visual Basic se incluía de la forma en que se conocía hasta entonces; versiones posteriores incorporarían una versión muy diferente del lenguaje con muchas mejoras, fruto de la plataforma .NET. También supuso la última versión en incluir Visual J++, que proporcionaba extensiones de la plataforma Java, lo que lo hacía incompatible con la versión de Sun Microsystems. Esto acarreó problemas legales a Microsoft, y se llegó a un acuerdo en el que Microsoft dejaba de comercializar herramientas de programación que utilizaran la máquina virtual de Java. Aunque el objetivo a largo plazo de Microsoft era unificar todas las herramientas en un único entorno, esta versión en realidad añadía un entorno más a Visual Studio 5.0: Visual J++ y Visual InterDev se separaban del entorno de Visual C++, al tiempo que Visual FoxPro y Visual Basic seguían manteniendo su entorno específico. Visual Studio .NET (2002) En esta versión se produjo un cambio sustancial, puesto que supuso la introducción de la plataforma .NET de Microsoft. .NET es una plataforma de ejecución intermedia multilenguaje, de forma que los programas desarrollados en .NET no se compilan en lenguaje máquina, sino en un lenguaje intermedio (CIL Common Intermediate Language) denominado Microsoft Intermediate Language (MSIL). En una aplicación MSIL, el código no se convierte a lenguaje máquina hasta que ésta se ejecuta, de manera que el código puede ser independiente de plataforma (al menos de las soportadas actualmente por .NET). Las plataformas han de tener una implementación de Infraestructura de Lenguaje Común (CLI) para poder ejecutar programas MSIL. Actualmente se pueden ejecutar programas MSIL en Linux y Mac OS X usando implementaciones de .NET que no son de Microsoft, tales como Mono y DotGNU.
  • 10. Visual Studio .NET 2002 supuso también la introducción del lenguaje C#, un lenguaje nuevo diseñado específicamente para la plataforma .NET, basado en C++ y Java. Se presentó también el lenguaje J# (sucesor de J++), el cual, en lugar de ejecutarse en una máquina virtual de Java, se ejecuta únicamente en el framework .NET. El lenguaje Visual Basic fue remodelado completamente y evolucionó para adaptarse a las nuevas características de la plataforma .NET, haciéndolo mucho más versátil y dotándolo con muchas características de las que carecía. Algo similar se llevó a cabo con C++, añadiendo extensiones al lenguaje llamadas Manged Extensions For C++ con el fin de que los programadores pudieran crear programas en .NET. Por otra parte, Visual FoxPro pasa a comercializarse por separado. Visual Studio .NET 2003 Visual Studio .NET 2003 supone una actualización menor de Visual Studio .NET. Se actualiza el .NET Framework a la versión 1.1. También se añade soporte con el fin de escribir aplicaciones para determinados dispositivos móviles, ya sea con ASP.NET o con el .NET Compact Framework. Además, el compilador de Visual C++ se mejora para cumplir con más estándares: el Visual C++ Toolkit 2003. Visual Studio 2003 se lanza en 4 ediciones: Academic, Professional, Enterprise Develo per y Enterprise Architect. La edición Enterprise Architect incluía una implementación de la tecnología de modelado Microsoft Visio, que se centraba en la creación de representaciones visuales de la arquitectura de la aplicación basadas en UML. También se introdujo "Enterprise Templates", para ayudar a grandes equipos de trabajo a estandarizar estilos de programación e impulsar políticas de uso de componentes y asignación de propiedades. Microsoft lanzó el Service Pack 1 para Visual Studio 2003 el 13 de septiembre de 2006. La versión interna de Visual Studio .NET 2003 es la 7.1 aunque el formato del archivo que emplea es el 8.0. Es compatible solo con Windows XP, Windows Server 2003 o anteriores Visual Studio 2005 Visual Studio 2005 se empezó a comercializar a través de Internet a partir del 4 de octubre de 2005 y llegó a los comercios a finales del mes de octubre en inglés. En castellano no salió hasta el 4 de febrero de 2006. Microsoft eliminó la coletilla .NET de su nombre, pero eso no indica que se alejara de la plataforma .NET, de la cual se incluyó la versión 2.0. La actualización más importante que recibieron los lenguajes de programación fue la inclusión de tipos genéricos, similares en muchos aspectos a las plantillas de C++. Con esto se consigue encontrar muchos más errores en la compilación en vez de en tiempo de ejecución, incitando a usar comprobaciones estrictas en áreas donde antes no era posible. C++ tiene una actualización similar con la adición de C++/CLI como sustituto de C# manejado. Se incluye un diseñador de implantación, que permite que el diseño de la aplicación sea validado antes de su implantación. También se incluye un entorno para publicación web y
  • 11. pruebas de carga para comprobar el rendimiento de los programas bajo varias condiciones de carga. Visual Studio 2005 también añade soporte para arquitecturas de 64 bits. Aunque el entorno de desarrollo sigue siendo una aplicación de 32 bits, Visual C++ 2005 soporta compilación para x86-64 (AMD64, Intel 64) e IA-64 (Itanium). El SDK incluye compiladores de 64 bits así como versiones de 64 bits de las librerías. Visual Studio 2005 tiene varias ediciones radicalmente distintas entre sí: Express, Standard, Professional, Tools For Office y 5 ediciones Visual Studio Team System. Éstas últimas se proporcionaban conjuntamente con suscripciones a MSDN cubriendo los 4 principales roles de la programación: Architect, Software Developers, Testers y Data base Professionals. La funcionalidad combinada de las 4 ediciones Team System se ofrecía como la edición Team Suite. Por otra parte, Tools For the Microsoft Office System está diseñada para extender la funcionalidad a Microsoft Office. Las ediciones Express se han diseñado para principiantes, aficionados y pequeños negocios, todas disponibles gratuitamente a través de la página de Microsoft. 4 Se incluye una edición independiente para cada lenguaje: Visual Basic, Visual C++, Visual C#, Visual J# para programación .NET en Windows y Visual Web Develo per para la creación de sitios web ASP.NET. Las ediciones Express carecen de algunas herramientas avanzadas de programación así como de opciones de extensibilidad. Se lanzó el Service Pack 1 para Visual Studio 2005 el 14 de diciembre de 2006. La versión interna de Visual Studio 2005 es la 8.0, mientras que el formato del archivo que emplea es la 9.0.