SlideShare uma empresa Scribd logo
1 de 13
Baixar para ler offline
¿Qué es Microsoft Visual C#?
C# es un lenguaje de programación que se ha diseñado para compilar diversas
aplicaciones que se ejecutan en .NET Framework. C# es simple, eficaz, con seguridad de
tipos y orientado a objetos. Las numerosas innovaciones de C# permiten desarrollar
aplicaciones rápidamente y mantener la expresividad y elegancia de los lenguajes de estilo
de C.
C# (pronunciado si Sharp en inglés) 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.
Visual C# es una implementación del lenguaje C# de Microsoft. Visual Studio admite Visual
C# con un editor de código con características más completas, compilador, plantillas de
proyecto, diseñadores, asistentes de código, un depurador eficaz y fácil de usar, y otras
herramientas. La biblioteca de clases de .NET Framework ofrece acceso a numerosos
servicios de sistema operativo y a otras clases útiles y adecuadamente diseñadas que
aceleran el ciclo de desarrollo de manera significativa.
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.
El nombre C Sharp fue inspirado por la notación musical, donde '#' (sostenido, en inglés
Sharp) indica que la nota (C es la nota do en inglés) es un semitono más alta, sugiriendo que
C# es superior a C/C++. Además, el signo '#' se compone de cuatro signos '+' pegados.

¿Características de Microsoft Visual C#?
Sencillez:

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
No se incluyen elementos poco útiles de lenguajes como C++ tales como macros, herencia
múltiple o la necesidad de un operador diferente del punto (.) acceder a miembros de
espacios de nombres (::)

Modernidad:

incorpora en el propio lenguaje elementos que son muy útiles para el
desarrollo de aplicaciones y que Java o C++ tienen algo simular, como un tipo
básico decimal que permita realizar operaciones de alta precisión con reales de 128 bits
(muy útil en el mundo financiero), la inclusión de una instrucción foreach que permita
recorrer colecciones con facilidad y es ampliable a tipos definidos por el usuario, la inclusión
de un tipo básico string para representar cadenas o la distinción de un tipo bool específico
para representar valores lógicos.

Orientación a objetos: es un lenguaje orientado a objetos. Una diferencia de este
enfoque orientado a objetos respecto al de otros lenguajes como C++ es que el de C# es
más puro en tanto que no admiten ni funciones ni variables globales sino que todo el código
y datos han de definirse dentro de definiciones de tipos de datos, lo que reduce problemas
por conflictos de nombres y facilita la legibilidad del código.
C# soporta todas las características propias del paradigma de programación orientada a
objetos: encapsulación, herencia y polimorfismo.

Orientación a componentes: La propia sintaxis de C# incluye elementos propios
del diseño de componentes que otros lenguajes tienen mediante construcciones más o
menos
complejas.
Es
decir,
la
sintaxis
de
C#
permite
definir
cómodamente propiedades (similares a campos de acceso controlado), eventos (asociación
controlada de funciones de respuesta a notificaciones) o atributos (información sobre un
tipo o sus miembros)

Gestión automática de memoria: Todo lenguaje de .NET tiene a su disposición el
recolector de basura del CLR. Esto tiene el efecto en el lenguaje de que no es necesario
incluir instrucciones de destrucción de objetos. Sin embargo, dado que la destrucción de los
objetos a través del recolector de basura es indeterminista y sólo se realiza cuando éste se
active –ya sea por falta de memoria, finalización de la aplicación o solicitud explícita en el
fuente-.
C# también proporciona un mecanismo de liberación de recursos determinista a través de
la instrucción using.

Seguridad de tipos:

incluye mecanismos que permiten asegurar que los accesos a
tipos de datos siempre se realicen correctamente, lo que permite evita que se produzcan
errores difíciles de detectar. Para ello se toman ciertas medidas como:
 Sólo se admiten conversiones entre tipos compatibles.
 No se pueden usar variables no inicializadas.
 Se comprueba que todo acceso a los elementos de una tabla se realice con
índices que se encuentren dentro del rango de la misma.
 Se puede controlar la producción de desbordamientos en operaciones
aritméticas, informándose de ello con una excepción cuando ocurra.
 A diferencia de Java, C# incluye delegados, que son similares a los punteros
a funciones de C++ pero siguen un enfoque orientado a objetos,
 Pueden definirse métodos que admitan un número indefinido de
parámetros de un cierto tipo, y a diferencia lenguajes como C/C++, en C#
siempre se comprueba que los valores que se les pasen en cada llamada sean
de los tipos apropiados.

Instrucciones seguras: Para evitar errores muy comunes, en C# se han impuesto una
serie de restricciones en el uso de las instrucciones de control más comunes. Por ejemplo,
la guarda de toda condición ha de ser una expresión condicional y no aritmética, con lo que
se evitan errores por confusión del operador de igualdad (==) con el de asignación (=); y
todo caso de un switch ha de terminar en un break o goto que indique cuál es la siguiente
acción a realizar, lo que evita la ejecución accidental de casos y facilita su reordenación.

Sistema de tipos unificado: A diferencia de C++, en C# todos los tipos de datos que
se definan siempre derivarán, aunque sea de manera implícita, de una clase base común
llamada System.Object, por lo que dispondrán de todos los miembros definidos en ésta
clase (es decir, serán “objetos”)

Extensibilidad de tipos básicos: permite definir, a través de estructuras, tipos de
datos para los que se apliquen las mismas optimizaciones que para los tipos de datos
básicos. Es decir, que se puedan almacenar directamente en pila (luego su creación,
destrucción y acceso serán más rápidos) y se asignen por valor y no por referencia.

Extensibilidad de operadores:

Las redefiniciones de operadores se hacen de
manera inteligente, de modo que a partir de una única definición de los operadores ++ y - el compilador puede deducir automáticamente como ejecutarlos de manera prefijas y
postfija; y definiendo operadores simples (como +), el compilador deduce cómo aplicar
su versión de asignación compuesta (+=) Además, para asegurar la consistencia, el
compilador vigila que los operadores con opuesto siempre se redefinan por parejas

Extensibilidad de modificadores:

ofrece, a través del concepto de atributos, la
posibilidad de añadir a los metadatos del módulo resultante de la compilación de cualquier
fuente información adicional a la generada por el compilador que luego podrá ser
consultada en tiempo ejecución a través de la librería de reflexión de .NET . Esto, que más
bien es una característica propia de la plataforma .NET y no de C#, puede usarse como un
mecanismo para definir nuevos modificadores.

Versionable: incluye una política de versionado que permite crear nuevas versiones de
tipos sin temor a que la introducción de nuevos miembros provoquen errores difíciles de
detectar en tipos hijos previamente desarrollados y ya extendidos con miembros de igual
nombre a los recién introducidos.
Eficiente: En C# todo código incluye numerosas restricciones para asegurar su seguridad
y no permite el uso de punteros. Sin embargo, y a diferencia de Java, en C# es posible
saltarse dichas restricciones manipulando objetos a través de punteros. Para ello basta
marcar regiones de código como inseguras (modificador unsafe) y podrán usarse en ellas
punteros de forma similar a cómo se hace en C++, lo que puede resultar vital para
situaciones donde se necesite una eficiencia y velocidad procesamiento muy grandes.

Compatible:

Para facilitar la migración de programadores, C# no sólo mantiene una
sintaxis muy similar a C, C++ o Java que permite incluir directamente en código escrito en
C# fragmentos de código escrito en estos lenguajes, sino que el CLR también ofrece, a
través de los llamados PlatformInvocationServices (PInvoke) También es posible acceder
desde código escrito en C# a objetos COM. Para facilitar esto, el .NET Framework
SDK incluye una herramientas llamadas tlbimp yregasm mediante las que es posible generar
automáticamente clases proxy que permitan, respectivamente, usar objetos COM desde
.NET como si de objetos .NET se tratase y registrar objetos .NET para su uso desde COM.
Finalmente, también se da la posibilidad de usar controles ActiveX desde código .NET y
viceversa. Para lo primero se utiliza la utilidad aximp, mientras que para lo segundo se usa
la ya mencionada regasm.

Desarrolladores de Microsoft Visual C#
Anders Hejlsberg nació en 1960 (algunas fuentes señalan que fue en 1961, pero durante el
TechEd 2006 en Barcelona, el propio Hejlsberg confirmó que nació en Diciembre de 1960).
Es un destacado ingeniero de software danés que co-diseñó varios lenguajes de
programación e instrumentos de desarrollo populares y comercialmente acertados.
Actualmente trabaja para Microsoft, donde es el arquitecto jefe del lenguaje de
programación C#.
Hejlsbergs nació en Copenhague, Dinamarca, y estudió ingeniería en la Universidad
Técnica de Dinamarca, pero nunca se graduó. Mientras estaba en la universidad, en 1981,
comenzó a escribir programas para el microordenador Nascom, incluyendo un compilador
de Pascal que se llamaba Blue Label Pascal compiler (el compilador de Pascal para el
Nascom-2). Sin embargo, pronto lo reescribió para CP/M y MS-DOS. El compilador fue
conocido inicialmente como Compas Pascal y más tarde como PolyPASCAL. Más adelante
el producto fue concedido bajo licencia a Borland, y, combinado con otras herramientas
de programación, se convirtió en el sistema Turbo Pascal. Dicho compilador se inspiró en
gran medida en el compilador Tiny Pascal, descrito en el libro "Algorithms + Data
Structures = Programs" de Niklaus Wirth, uno de los libros más influyentes en el área de
ciencias computacionales de aquel tiempo. Anders y sus colegas fundaron una tienda de
informática en Copenhague donde vendían aplicaciones de contabilidad. Su compañía,
PolyData, distribuía productos de Microsoft en Dinamarca, lo que les supuso algunos
conflictos con Borland.

Hejlsberg se convirtió en uno de los objetivos principales de Microsoft y, tras una sucesión
de ofertas, Borland no pudo igualar la oferta hecha por Microsoft. En 1996 Hejlsberg
abandonó Borland y se unió a Microsoft. Uno de sus primeros logros fue el lenguaje de
programación J++. También se convirtió en un Ingeniero distinguido y Técnico de
Microsoft. Desde 2000, ha sido el arquitecto principal del equipo que desarrolla el
lenguaje de programación C#. En 2012 Hejsberg anunció su nuevo proyecto TypeScript.
Versiones de Microsoft Visual C#.
Visual F#
Es un lenguaje de programación multiparadigma de código abierto, para la plataforma
.NET, que conjunta la programación funcional con las disciplinas imperativa y orientada a
objetos. Es una variante del lenguaje de programación ML y es compatible con la
implementación Objective Caml. F# fue inicialmente desarrollado por Don Syme de
Microsoft Research, pero actualmente está siendo desarrollado por la División de
Desarrolladores de Microsoft y es distribuido como un lenguaje totalmente soportado en
la plataforma .NET y Visual Studio
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 C++
Visual C++ (también conocido como Mvs}C, Microsoft Visual C++) es un entorno de
desarrollo integrado (IDE) para lenguajes de programación C, C++ y C++/CLI.
Visual C++ engloba el desarrollo de aplicaciones hechas en C, C++ y C++/CLI en el entorno
Windows. Visual C++ incluye además las bibliotecas de Windows (WinApi), las bibliotecas
MFC y el entorno de desarrollo para .NET Framework. Visual C++ cuenta con su propio
compilador (de igual nombre) y otras herramientas como IntelliSense, TeamFoundation
Server, Debug,... Además provee de bibliotecas propias de cada versión del sistema
operativo y sockets. Como otros compiladores, se le pueden añadir nuevas bibliotecas
como DirectX, wxWidgets o SDL.
Visual FoxPro
Visual FoxPro es un lenguaje de programación procedural, orientado a objetos que posee
un Sistema Gestor de Bases de datos o Database Management System (DBMS) y Sistema
administrador de bases de datos relacionales, producido por Microsoft.
Visual FoxPro ofrece a los desarrolladores un conjunto de herramientas para crear
aplicaciones de bases de datos para el escritorio, entornos cliente/servidor, tablet PC o
para la Web.
Visual InterDev
Microsoft Visual InterDev, parte de Microsoft Visual Studio 97 y 6.0, es un entorno de
desarrollo integrado (IDE) usado para crear aplicaciones web usando las tecnologías de
Microsoft Active Server Pages (Páginas de Servidor Activo o ASP). Puede completar código,
tiene herramientas de administración de servidor de base de datos y un compilador
integrado.
El IDE extenso de InterDev está compartido con Microsoft Visual J++ y es el precursor del
IDE de Microsoft Visual Studio .Net. Posteriormente, Visual Web Developer reemplazó a
InterDev en la suite de herramientas de Visual Studio.

Entre sus características se pueden enumerar:







Capacidades para el manejar datos nativos y remotos.
Flexibilidad para crear soluciones de bases de datos.
Lenguaje de Programación Orientado a objetos.
Utilización de Sentencias SQL en forma nativa.
Manejo de vistas, cursores y control completo de estructuras relacionales.
Su propio gestor de base de datos incorporado. Sin embargo, también puede
conectarse con servidores de base de datos, tales como Oracle, Microsoft SQL
Server o MySQL.



Cuenta con un motor de generación de informes renovado y flexible para
soluciones más robustas.
Desde la versión 9.0, amplio soporte de XML, tanto como fuente de datos (por ej.,
servicios Web basados en XML) como por generar reportes en formato XML.

Microsoft Visual J++
Visual J++ es la ahora descontinuada implementación de Microsoft de un IDE para el
lenguaje de programación Java. Creado para la plataforma Windows, los programas
escritos en J++ pueden correr sólo en la MSJVM (Microsoft Virtual Machine for Java,
Máquina Virtual Java de Microsoft), que era el intento propietario de Microsoft de un
intérprete Java. La sintaxis, palabras clave y convenciones gramáticas de Java eran
respetadas.
Visual J++ ha sido reemplazado por J#, que es capaz de compilar código Java/J++ al
lenguaje intermedio MSIL de la plataforma .NET.
Visual C#
C# es un lenguaje de programación que se ha diseñado para compilar diversas aplicaciones
que se ejecutan en .NET Framework. C# es simple, eficaz, con seguridad de tipos y orientado
a objetos. Las numerosas innovaciones de C# permiten desarrollar aplicaciones
rápidamente y mantener la expresividad y elegancia de los lenguajes de estilo de C.
Visual C# es una implementación del lenguaje C# de Microsoft. Visual Studio admite Visual
C# con un editor de código con características más completas, compilador, plantillas de
proyecto, diseñadores, asistentes de código, un depurador eficaz y fácil de usar, y otras
herramientas. La biblioteca de clases de .NET Framework ofrece acceso a numerosos
servicios de sistema operativo y a otras clases útiles y adecuadamente diseñadas que
aceleran el ciclo de desarrollo.

Algunos de los desarrolladores de los distintos lenguajes de
programación son:
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 Torvalds)

7- Perl (Larry Wall)
8- C# (equipo de desarrollo liderado por Anders Hejlsberg)

9- Ruby (Yukihiro Matsumoto)
10-

Ruby on Rails (RoR) (David Heinemeier Hansson)

11-

JavaScript (Brendan Eich)

12-

PHP (Rasmus Lerdorf)

Mais conteúdo relacionado

Mais procurados

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
 
Características de c sharp
Características de c sharpCaracterísticas de c sharp
Características de c sharpuccvirtual
 
Caracteristicas de C Sharp
Caracteristicas de C SharpCaracteristicas de C Sharp
Caracteristicas de C SharpEdgardo Martinez
 
Fundamentos de programamacion c#
Fundamentos de programamacion c# Fundamentos de programamacion c#
Fundamentos de programamacion c# Robert Rodriguez
 
Trabajo programación (caracteristicas, versiones y desarrolladores de c#)
Trabajo programación (caracteristicas, versiones y desarrolladores de c#)Trabajo programación (caracteristicas, versiones y desarrolladores de c#)
Trabajo programación (caracteristicas, versiones y desarrolladores de c#)Fidel_Angel
 
Lenguaje de la programación orientada a objetos c#
Lenguaje de la programación orientada a objetos c#Lenguaje de la programación orientada a objetos c#
Lenguaje de la programación orientada a objetos c#Juan Carlos Prieto
 
C# para desarrolladores VB6
C# para desarrolladores VB6C# para desarrolladores VB6
C# para desarrolladores VB6Tonymx
 
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
 
Lenguaje de programacion c++ basico 2da parte instalación del compilador
Lenguaje de programacion c++ basico 2da parte instalación del compiladorLenguaje de programacion c++ basico 2da parte instalación del compilador
Lenguaje de programacion c++ basico 2da parte instalación del compiladorDunkherz
 
Lenguajes diapositivas
Lenguajes diapositivasLenguajes diapositivas
Lenguajes diapositivasstarduslex
 
Lenguaje Borland C - Estructura y Componentes
Lenguaje Borland C - Estructura y ComponentesLenguaje Borland C - Estructura y Componentes
Lenguaje Borland C - Estructura y ComponentesKarina Arguedas Ruelas
 

Mais procurados (20)

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
 
Características de c sharp
Características de c sharpCaracterísticas de c sharp
Características de c sharp
 
Caracteristicas de C Sharp
Caracteristicas de C SharpCaracteristicas de C Sharp
Caracteristicas de C Sharp
 
Fundamentos de programamacion c#
Fundamentos de programamacion c# Fundamentos de programamacion c#
Fundamentos de programamacion c#
 
Trabajo programación (caracteristicas, versiones y desarrolladores de c#)
Trabajo programación (caracteristicas, versiones y desarrolladores de c#)Trabajo programación (caracteristicas, versiones y desarrolladores de c#)
Trabajo programación (caracteristicas, versiones y desarrolladores de c#)
 
Lenguaje de la programación orientada a objetos c#
Lenguaje de la programación orientada a objetos c#Lenguaje de la programación orientada a objetos c#
Lenguaje de la programación orientada a objetos c#
 
Consultas linq
Consultas linqConsultas linq
Consultas linq
 
Introduccion a Visual C Sharp
Introduccion a Visual C SharpIntroduccion a Visual C Sharp
Introduccion a Visual C Sharp
 
Lenguaje C sharp
Lenguaje C sharpLenguaje C sharp
Lenguaje C sharp
 
2. Introduccion A C#
2.  Introduccion A C#2.  Introduccion A C#
2. Introduccion A C#
 
C# para desarrolladores VB6
C# para desarrolladores VB6C# para desarrolladores VB6
C# para desarrolladores VB6
 
C#
C#C#
C#
 
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)
 
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++
 
Aprendiendo Lenguaje C
Aprendiendo Lenguaje CAprendiendo Lenguaje C
Aprendiendo Lenguaje C
 
Lenguaje de-programacion-c++
Lenguaje de-programacion-c++Lenguaje de-programacion-c++
Lenguaje de-programacion-c++
 
Lenguaje de programacion c++ basico 2da parte instalación del compilador
Lenguaje de programacion c++ basico 2da parte instalación del compiladorLenguaje de programacion c++ basico 2da parte instalación del compilador
Lenguaje de programacion c++ basico 2da parte instalación del compilador
 
Procesadores de Lenguajes I
Procesadores de Lenguajes IProcesadores de Lenguajes I
Procesadores de Lenguajes I
 
Lenguajes diapositivas
Lenguajes diapositivasLenguajes diapositivas
Lenguajes diapositivas
 
Lenguaje Borland C - Estructura y Componentes
Lenguaje Borland C - Estructura y ComponentesLenguaje Borland C - Estructura y Componentes
Lenguaje Borland C - Estructura y Componentes
 

Destaque

Power pointsfinal5555.doc
Power pointsfinal5555.docPower pointsfinal5555.doc
Power pointsfinal5555.docjacob650
 
Commune info 45- février 2014
Commune info 45- février 2014Commune info 45- février 2014
Commune info 45- février 2014ATD13
 
Tic y la transformación de la práctica educativa en el contexto de las socied...
Tic y la transformación de la práctica educativa en el contexto de las socied...Tic y la transformación de la práctica educativa en el contexto de las socied...
Tic y la transformación de la práctica educativa en el contexto de las socied...kathyminely
 
Psicopedagogía
PsicopedagogíaPsicopedagogía
Psicopedagogía13041968
 
Ensayo Estrategias Aprendizajes Significativos
Ensayo Estrategias Aprendizajes SignificativosEnsayo Estrategias Aprendizajes Significativos
Ensayo Estrategias Aprendizajes SignificativosHector Reina
 
Report On Missing Indicators In French Public Health Legislation 2004
Report On Missing Indicators In French Public Health Legislation 2004Report On Missing Indicators In French Public Health Legislation 2004
Report On Missing Indicators In French Public Health Legislation 2004guest4c2722c
 
éQuipes De Travail AutogéRéEs
éQuipes De Travail AutogéRéEséQuipes De Travail AutogéRéEs
éQuipes De Travail AutogéRéEsChesnay
 
Ana science test
Ana science test Ana science test
Ana science test criszamu
 
Présentation courte ebloo-group-fev11
Présentation courte ebloo-group-fev11Présentation courte ebloo-group-fev11
Présentation courte ebloo-group-fev11Calloc'h
 
Congregation des temoins de jehovah de frankfort est (ky) au ksu
Congregation des temoins de jehovah de frankfort est (ky) au ksuCongregation des temoins de jehovah de frankfort est (ky) au ksu
Congregation des temoins de jehovah de frankfort est (ky) au ksuourbothy
 
Magento framework ecommerce
Magento framework ecommerceMagento framework ecommerce
Magento framework ecommerceGuillaume Babik
 
Pourquoi manger moins de viande
Pourquoi manger moins de viandePourquoi manger moins de viande
Pourquoi manger moins de viandeApne
 
Presentación13
Presentación13Presentación13
Presentación13briones29
 
Ter kellop
Ter kellopTer kellop
Ter kelloppixtun
 

Destaque (20)

Power pointsfinal5555.doc
Power pointsfinal5555.docPower pointsfinal5555.doc
Power pointsfinal5555.doc
 
Commune info 45- février 2014
Commune info 45- février 2014Commune info 45- février 2014
Commune info 45- février 2014
 
Tic y la transformación de la práctica educativa en el contexto de las socied...
Tic y la transformación de la práctica educativa en el contexto de las socied...Tic y la transformación de la práctica educativa en el contexto de las socied...
Tic y la transformación de la práctica educativa en el contexto de las socied...
 
Bienvenidos a expotit@ 2015
Bienvenidos a expotit@ 2015Bienvenidos a expotit@ 2015
Bienvenidos a expotit@ 2015
 
tgr 1 sistemas operativos
tgr 1 sistemas operativostgr 1 sistemas operativos
tgr 1 sistemas operativos
 
Psicopedagogía
PsicopedagogíaPsicopedagogía
Psicopedagogía
 
Ensayo Estrategias Aprendizajes Significativos
Ensayo Estrategias Aprendizajes SignificativosEnsayo Estrategias Aprendizajes Significativos
Ensayo Estrategias Aprendizajes Significativos
 
Cómo ser exitoso en los negocios
Cómo ser exitoso en los negociosCómo ser exitoso en los negocios
Cómo ser exitoso en los negocios
 
Report On Missing Indicators In French Public Health Legislation 2004
Report On Missing Indicators In French Public Health Legislation 2004Report On Missing Indicators In French Public Health Legislation 2004
Report On Missing Indicators In French Public Health Legislation 2004
 
InfoSACU
InfoSACUInfoSACU
InfoSACU
 
éQuipes De Travail AutogéRéEs
éQuipes De Travail AutogéRéEséQuipes De Travail AutogéRéEs
éQuipes De Travail AutogéRéEs
 
Ana science test
Ana science test Ana science test
Ana science test
 
Présentation courte ebloo-group-fev11
Présentation courte ebloo-group-fev11Présentation courte ebloo-group-fev11
Présentation courte ebloo-group-fev11
 
Congregation des temoins de jehovah de frankfort est (ky) au ksu
Congregation des temoins de jehovah de frankfort est (ky) au ksuCongregation des temoins de jehovah de frankfort est (ky) au ksu
Congregation des temoins de jehovah de frankfort est (ky) au ksu
 
Magento framework ecommerce
Magento framework ecommerceMagento framework ecommerce
Magento framework ecommerce
 
Pourquoi manger moins de viande
Pourquoi manger moins de viandePourquoi manger moins de viande
Pourquoi manger moins de viande
 
Matriz Estrategías de Aprendizaje
Matriz Estrategías de AprendizajeMatriz Estrategías de Aprendizaje
Matriz Estrategías de Aprendizaje
 
Presentación13
Presentación13Presentación13
Presentación13
 
Mecanismos
MecanismosMecanismos
Mecanismos
 
Ter kellop
Ter kellopTer kellop
Ter kellop
 

Semelhante a Reporte_de_microsoft_visual_c#

Semelhante a Reporte_de_microsoft_visual_c# (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
 
Visual basic .NET
Visual basic .NETVisual basic .NET
Visual basic .NET
 
Plataforma net
Plataforma netPlataforma net
Plataforma net
 
Resumen lenguajes c#
Resumen lenguajes c#Resumen lenguajes c#
Resumen lenguajes c#
 
C sharp
C sharpC sharp
C sharp
 
Introducción al c#
Introducción al c#Introducción al c#
Introducción al c#
 
Manual c# 1 o@sis 2017
Manual c# 1 o@sis 2017Manual c# 1 o@sis 2017
Manual c# 1 o@sis 2017
 
Csharp
CsharpCsharp
Csharp
 
Introducción a la programación visual
Introducción a la programación visualIntroducción a la programación visual
Introducción a la programación visual
 
Bbbbbbbbbbbbbb
BbbbbbbbbbbbbbBbbbbbbbbbbbbb
Bbbbbbbbbbbbbb
 
Tutoriales de c
Tutoriales de cTutoriales de c
Tutoriales de c
 
Tutoriales de c#
Tutoriales de c#Tutoriales de c#
Tutoriales de c#
 
Programacion C#.NET
Programacion C#.NETProgramacion C#.NET
Programacion C#.NET
 
Programacion en C#
Programacion en C#Programacion en C#
Programacion en C#
 
Curso.de.introducción.net.con.visual.basic.2010
Curso.de.introducción.net.con.visual.basic.2010Curso.de.introducción.net.con.visual.basic.2010
Curso.de.introducción.net.con.visual.basic.2010
 
Introducción a lenguaje Visual Basic
Introducción a lenguaje Visual BasicIntroducción a lenguaje Visual Basic
Introducción a lenguaje Visual Basic
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Migracion a Visual Basic .NET
Migracion a Visual Basic .NETMigracion a Visual Basic .NET
Migracion a Visual Basic .NET
 
Manual de Programación c/c++ Ricky Bonilla
Manual de Programación c/c++ Ricky BonillaManual de Programación c/c++ Ricky Bonilla
Manual de Programación c/c++ Ricky Bonilla
 
Lenguaje Java
Lenguaje JavaLenguaje Java
Lenguaje Java
 

Último

LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...JAVIER SOLIS NOYOLA
 
Ley 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circularLey 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circularMooPandrea
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA IIAFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA IIIsauraImbrondone
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfPaolaRopero2
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñotapirjackluis
 
Valoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCVValoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCVGiustinoAdesso1
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptxdeimerhdz21
 
Imperialismo informal en Europa y el imperio
Imperialismo informal en Europa y el imperioImperialismo informal en Europa y el imperio
Imperialismo informal en Europa y el imperiomiralbaipiales2016
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Alejandrino Halire Ccahuana
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSYadi Campos
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxnandoapperscabanilla
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 

Último (20)

LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
 
Ley 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circularLey 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circular
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA IIAFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdfTema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
 
Valoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCVValoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCV
 
Sesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronósticoSesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronóstico
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
Imperialismo informal en Europa y el imperio
Imperialismo informal en Europa y el imperioImperialismo informal en Europa y el imperio
Imperialismo informal en Europa y el imperio
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VSOCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
OCTAVO SEGUNDO PERIODO. EMPRENDIEMIENTO VS
 
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática5    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática5    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática5 MPG 2024 Ccesa007.pdf
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 

Reporte_de_microsoft_visual_c#

  • 1. ¿Qué es Microsoft Visual C#? C# es un lenguaje de programación que se ha diseñado para compilar diversas aplicaciones que se ejecutan en .NET Framework. C# es simple, eficaz, con seguridad de tipos y orientado a objetos. Las numerosas innovaciones de C# permiten desarrollar aplicaciones rápidamente y mantener la expresividad y elegancia de los lenguajes de estilo de C. C# (pronunciado si Sharp en inglés) 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. Visual C# es una implementación del lenguaje C# de Microsoft. Visual Studio admite Visual C# con un editor de código con características más completas, compilador, plantillas de proyecto, diseñadores, asistentes de código, un depurador eficaz y fácil de usar, y otras herramientas. La biblioteca de clases de .NET Framework ofrece acceso a numerosos servicios de sistema operativo y a otras clases útiles y adecuadamente diseñadas que aceleran el ciclo de desarrollo de manera significativa. 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. El nombre C Sharp fue inspirado por la notación musical, donde '#' (sostenido, en inglés Sharp) indica que la nota (C es la nota do en inglés) es un semitono más alta, sugiriendo que C# es superior a C/C++. Además, el signo '#' se compone de cuatro signos '+' pegados. ¿Características de Microsoft Visual C#? Sencillez: 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 No se incluyen elementos poco útiles de lenguajes como C++ tales como macros, herencia múltiple o la necesidad de un operador diferente del punto (.) acceder a miembros de espacios de nombres (::) Modernidad: incorpora en el propio lenguaje elementos que son muy útiles para el desarrollo de aplicaciones y que Java o C++ tienen algo simular, como un tipo básico decimal que permita realizar operaciones de alta precisión con reales de 128 bits (muy útil en el mundo financiero), la inclusión de una instrucción foreach que permita
  • 2. recorrer colecciones con facilidad y es ampliable a tipos definidos por el usuario, la inclusión de un tipo básico string para representar cadenas o la distinción de un tipo bool específico para representar valores lógicos. Orientación a objetos: es un lenguaje orientado a objetos. Una diferencia de este enfoque orientado a objetos respecto al de otros lenguajes como C++ es que el de C# es más puro en tanto que no admiten ni funciones ni variables globales sino que todo el código y datos han de definirse dentro de definiciones de tipos de datos, lo que reduce problemas por conflictos de nombres y facilita la legibilidad del código. C# soporta todas las características propias del paradigma de programación orientada a objetos: encapsulación, herencia y polimorfismo. Orientación a componentes: La propia sintaxis de C# incluye elementos propios del diseño de componentes que otros lenguajes tienen mediante construcciones más o menos complejas. Es decir, la sintaxis de C# permite definir cómodamente propiedades (similares a campos de acceso controlado), eventos (asociación controlada de funciones de respuesta a notificaciones) o atributos (información sobre un tipo o sus miembros) Gestión automática de memoria: Todo lenguaje de .NET tiene a su disposición el recolector de basura del CLR. Esto tiene el efecto en el lenguaje de que no es necesario incluir instrucciones de destrucción de objetos. Sin embargo, dado que la destrucción de los objetos a través del recolector de basura es indeterminista y sólo se realiza cuando éste se active –ya sea por falta de memoria, finalización de la aplicación o solicitud explícita en el fuente-. C# también proporciona un mecanismo de liberación de recursos determinista a través de la instrucción using. Seguridad de tipos: incluye mecanismos que permiten asegurar que los accesos a tipos de datos siempre se realicen correctamente, lo que permite evita que se produzcan errores difíciles de detectar. Para ello se toman ciertas medidas como:  Sólo se admiten conversiones entre tipos compatibles.  No se pueden usar variables no inicializadas.  Se comprueba que todo acceso a los elementos de una tabla se realice con índices que se encuentren dentro del rango de la misma.  Se puede controlar la producción de desbordamientos en operaciones aritméticas, informándose de ello con una excepción cuando ocurra.  A diferencia de Java, C# incluye delegados, que son similares a los punteros a funciones de C++ pero siguen un enfoque orientado a objetos,
  • 3.  Pueden definirse métodos que admitan un número indefinido de parámetros de un cierto tipo, y a diferencia lenguajes como C/C++, en C# siempre se comprueba que los valores que se les pasen en cada llamada sean de los tipos apropiados. Instrucciones seguras: Para evitar errores muy comunes, en C# se han impuesto una serie de restricciones en el uso de las instrucciones de control más comunes. Por ejemplo, la guarda de toda condición ha de ser una expresión condicional y no aritmética, con lo que se evitan errores por confusión del operador de igualdad (==) con el de asignación (=); y todo caso de un switch ha de terminar en un break o goto que indique cuál es la siguiente acción a realizar, lo que evita la ejecución accidental de casos y facilita su reordenación. Sistema de tipos unificado: A diferencia de C++, en C# todos los tipos de datos que se definan siempre derivarán, aunque sea de manera implícita, de una clase base común llamada System.Object, por lo que dispondrán de todos los miembros definidos en ésta clase (es decir, serán “objetos”) Extensibilidad de tipos básicos: permite definir, a través de estructuras, tipos de datos para los que se apliquen las mismas optimizaciones que para los tipos de datos básicos. Es decir, que se puedan almacenar directamente en pila (luego su creación, destrucción y acceso serán más rápidos) y se asignen por valor y no por referencia. Extensibilidad de operadores: Las redefiniciones de operadores se hacen de manera inteligente, de modo que a partir de una única definición de los operadores ++ y - el compilador puede deducir automáticamente como ejecutarlos de manera prefijas y postfija; y definiendo operadores simples (como +), el compilador deduce cómo aplicar su versión de asignación compuesta (+=) Además, para asegurar la consistencia, el compilador vigila que los operadores con opuesto siempre se redefinan por parejas Extensibilidad de modificadores: ofrece, a través del concepto de atributos, la posibilidad de añadir a los metadatos del módulo resultante de la compilación de cualquier fuente información adicional a la generada por el compilador que luego podrá ser consultada en tiempo ejecución a través de la librería de reflexión de .NET . Esto, que más bien es una característica propia de la plataforma .NET y no de C#, puede usarse como un mecanismo para definir nuevos modificadores. Versionable: incluye una política de versionado que permite crear nuevas versiones de tipos sin temor a que la introducción de nuevos miembros provoquen errores difíciles de detectar en tipos hijos previamente desarrollados y ya extendidos con miembros de igual nombre a los recién introducidos.
  • 4. Eficiente: En C# todo código incluye numerosas restricciones para asegurar su seguridad y no permite el uso de punteros. Sin embargo, y a diferencia de Java, en C# es posible saltarse dichas restricciones manipulando objetos a través de punteros. Para ello basta marcar regiones de código como inseguras (modificador unsafe) y podrán usarse en ellas punteros de forma similar a cómo se hace en C++, lo que puede resultar vital para situaciones donde se necesite una eficiencia y velocidad procesamiento muy grandes. Compatible: Para facilitar la migración de programadores, C# no sólo mantiene una sintaxis muy similar a C, C++ o Java que permite incluir directamente en código escrito en C# fragmentos de código escrito en estos lenguajes, sino que el CLR también ofrece, a través de los llamados PlatformInvocationServices (PInvoke) También es posible acceder desde código escrito en C# a objetos COM. Para facilitar esto, el .NET Framework SDK incluye una herramientas llamadas tlbimp yregasm mediante las que es posible generar automáticamente clases proxy que permitan, respectivamente, usar objetos COM desde .NET como si de objetos .NET se tratase y registrar objetos .NET para su uso desde COM. Finalmente, también se da la posibilidad de usar controles ActiveX desde código .NET y viceversa. Para lo primero se utiliza la utilidad aximp, mientras que para lo segundo se usa la ya mencionada regasm. Desarrolladores de Microsoft Visual C# Anders Hejlsberg nació en 1960 (algunas fuentes señalan que fue en 1961, pero durante el TechEd 2006 en Barcelona, el propio Hejlsberg confirmó que nació en Diciembre de 1960). Es un destacado ingeniero de software danés que co-diseñó varios lenguajes de programación e instrumentos de desarrollo populares y comercialmente acertados. Actualmente trabaja para Microsoft, donde es el arquitecto jefe del lenguaje de programación C#.
  • 5. Hejlsbergs nació en Copenhague, Dinamarca, y estudió ingeniería en la Universidad Técnica de Dinamarca, pero nunca se graduó. Mientras estaba en la universidad, en 1981, comenzó a escribir programas para el microordenador Nascom, incluyendo un compilador de Pascal que se llamaba Blue Label Pascal compiler (el compilador de Pascal para el Nascom-2). Sin embargo, pronto lo reescribió para CP/M y MS-DOS. El compilador fue conocido inicialmente como Compas Pascal y más tarde como PolyPASCAL. Más adelante el producto fue concedido bajo licencia a Borland, y, combinado con otras herramientas de programación, se convirtió en el sistema Turbo Pascal. Dicho compilador se inspiró en gran medida en el compilador Tiny Pascal, descrito en el libro "Algorithms + Data Structures = Programs" de Niklaus Wirth, uno de los libros más influyentes en el área de ciencias computacionales de aquel tiempo. Anders y sus colegas fundaron una tienda de informática en Copenhague donde vendían aplicaciones de contabilidad. Su compañía, PolyData, distribuía productos de Microsoft en Dinamarca, lo que les supuso algunos conflictos con Borland. Hejlsberg se convirtió en uno de los objetivos principales de Microsoft y, tras una sucesión de ofertas, Borland no pudo igualar la oferta hecha por Microsoft. En 1996 Hejlsberg abandonó Borland y se unió a Microsoft. Uno de sus primeros logros fue el lenguaje de programación J++. También se convirtió en un Ingeniero distinguido y Técnico de Microsoft. Desde 2000, ha sido el arquitecto principal del equipo que desarrolla el lenguaje de programación C#. En 2012 Hejsberg anunció su nuevo proyecto TypeScript.
  • 6. Versiones de Microsoft Visual C#. Visual F# Es un lenguaje de programación multiparadigma de código abierto, para la plataforma .NET, que conjunta la programación funcional con las disciplinas imperativa y orientada a objetos. Es una variante del lenguaje de programación ML y es compatible con la implementación Objective Caml. F# fue inicialmente desarrollado por Don Syme de Microsoft Research, pero actualmente está siendo desarrollado por la División de Desarrolladores de Microsoft y es distribuido como un lenguaje totalmente soportado en la plataforma .NET y Visual Studio 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 C++ Visual C++ (también conocido como Mvs}C, Microsoft Visual C++) es un entorno de desarrollo integrado (IDE) para lenguajes de programación C, C++ y C++/CLI. Visual C++ engloba el desarrollo de aplicaciones hechas en C, C++ y C++/CLI en el entorno Windows. Visual C++ incluye además las bibliotecas de Windows (WinApi), las bibliotecas
  • 7. MFC y el entorno de desarrollo para .NET Framework. Visual C++ cuenta con su propio compilador (de igual nombre) y otras herramientas como IntelliSense, TeamFoundation Server, Debug,... Además provee de bibliotecas propias de cada versión del sistema operativo y sockets. Como otros compiladores, se le pueden añadir nuevas bibliotecas como DirectX, wxWidgets o SDL. Visual FoxPro Visual FoxPro es un lenguaje de programación procedural, orientado a objetos que posee un Sistema Gestor de Bases de datos o Database Management System (DBMS) y Sistema administrador de bases de datos relacionales, producido por Microsoft. Visual FoxPro ofrece a los desarrolladores un conjunto de herramientas para crear aplicaciones de bases de datos para el escritorio, entornos cliente/servidor, tablet PC o para la Web. Visual InterDev Microsoft Visual InterDev, parte de Microsoft Visual Studio 97 y 6.0, es un entorno de desarrollo integrado (IDE) usado para crear aplicaciones web usando las tecnologías de Microsoft Active Server Pages (Páginas de Servidor Activo o ASP). Puede completar código, tiene herramientas de administración de servidor de base de datos y un compilador integrado. El IDE extenso de InterDev está compartido con Microsoft Visual J++ y es el precursor del IDE de Microsoft Visual Studio .Net. Posteriormente, Visual Web Developer reemplazó a InterDev en la suite de herramientas de Visual Studio. Entre sus características se pueden enumerar:       Capacidades para el manejar datos nativos y remotos. Flexibilidad para crear soluciones de bases de datos. Lenguaje de Programación Orientado a objetos. Utilización de Sentencias SQL en forma nativa. Manejo de vistas, cursores y control completo de estructuras relacionales. Su propio gestor de base de datos incorporado. Sin embargo, también puede conectarse con servidores de base de datos, tales como Oracle, Microsoft SQL Server o MySQL.
  • 8.   Cuenta con un motor de generación de informes renovado y flexible para soluciones más robustas. Desde la versión 9.0, amplio soporte de XML, tanto como fuente de datos (por ej., servicios Web basados en XML) como por generar reportes en formato XML. Microsoft Visual J++ Visual J++ es la ahora descontinuada implementación de Microsoft de un IDE para el lenguaje de programación Java. Creado para la plataforma Windows, los programas escritos en J++ pueden correr sólo en la MSJVM (Microsoft Virtual Machine for Java, Máquina Virtual Java de Microsoft), que era el intento propietario de Microsoft de un intérprete Java. La sintaxis, palabras clave y convenciones gramáticas de Java eran respetadas. Visual J++ ha sido reemplazado por J#, que es capaz de compilar código Java/J++ al lenguaje intermedio MSIL de la plataforma .NET. Visual C# C# es un lenguaje de programación que se ha diseñado para compilar diversas aplicaciones que se ejecutan en .NET Framework. C# es simple, eficaz, con seguridad de tipos y orientado a objetos. Las numerosas innovaciones de C# permiten desarrollar aplicaciones rápidamente y mantener la expresividad y elegancia de los lenguajes de estilo de C. Visual C# es una implementación del lenguaje C# de Microsoft. Visual Studio admite Visual C# con un editor de código con características más completas, compilador, plantillas de proyecto, diseñadores, asistentes de código, un depurador eficaz y fácil de usar, y otras herramientas. La biblioteca de clases de .NET Framework ofrece acceso a numerosos servicios de sistema operativo y a otras clases útiles y adecuadamente diseñadas que aceleran el ciclo de desarrollo. Algunos de los desarrolladores de los distintos lenguajes de programación son:
  • 9. 1- Java (James Gosling) 2- C (Ken Thompson Left & Dennis Ritchie Right)
  • 10. 3- C++ (Bjarne Stroustrup) 4- Python (Guido van Rossum)
  • 11. 5- Fortran (John W. Backus) 6- Linux Kernel (Linus Benedict Torvalds) 7- Perl (Larry Wall)
  • 12. 8- C# (equipo de desarrollo liderado por Anders Hejlsberg) 9- Ruby (Yukihiro Matsumoto)
  • 13. 10- Ruby on Rails (RoR) (David Heinemeier Hansson) 11- JavaScript (Brendan Eich) 12- PHP (Rasmus Lerdorf)