lenguajes de programación:
Visual 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 ofrece compatibilidad con Visual C# con un completo editor de código, un
compilador, plantillas de proyecto, diseñadores, asistentes para código, un
depurador eficaz y de fácil uso 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.
Características principales de C#
A continuación enumeramos las principales características que definen
al lenguaje de programación C#. Algunas de estas características no son propias
del lenguaje, sino de la plataforma .NET, aunque se listan aquí ya que tienen
una implicación directa en ellenguaje.
Sencillez de uso
C# elimina muchos elementos añadidos por otros lenguajes y
quefacilitan su uso y compresión, como por ejemplo ficheros de cabecera,
oficheros fuentes IDL1 .12. Es por ello que se dice que C# esautocontenido.
Además, no se incorporan al lenguaje elementos pocoútiles, como por ejemplo
macros, herencia múltiple u operadoresdiferentes al operador de aceso a métodos
(operador punto) paraacceder a miembros de espacios de nombres.
Modernidad
Al ser C# un lenguaje de última generación, incorpora elementos
que seha demostrado a lo largo del tiempo que son muy útiles para
elprogramador, como tipos decimales o
booleanos
, un tipo básico
string
,así como una instrución que permita recorrer colecciones con
facilidad(instrucción
foreach
). Estos elementos hay que simularlos en otroslenguajes como C++ o
Java.
Orientado a objetos
C# como lenguaje de última generación, y de propósito general,
esorientado a objetos. C# no permite la inclusión de funciones ni
variablesglobales que no estén incluidos en una definición de tipos, por lo que
laorientación a objetos es más pura y clara que en otros lenguajes comoC++.
Además, C# soporta todas las características del paradigma de laprogramación
orientada a objetos, como son la
encapsulación, laherencia
y el
polimorfismo
Orientado a componentes
La propia sintasix de C# incluye elementos propios del diseño
decomponentes 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
tienea su disposición el recolector de basura del CLR. Esto implica que no
esnecesario 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
quegarantiza que no se produzcan errores difíciles de detectar como unacceso a
memoria de ningún objeto, por ejemplo. Para ello, el lenguajeprovee de una
serie de normas de sintaxis, como por ejemplo no realizarconversiones entre
tipos que no sean compatibles. Además, no sepueden usar variables no
inicializadas previamente, y en el acceso atablas se hace una comprobación de
rangos para que no se excedanninguno de los índices de la misma. Se puede
controlar así mismo los
desbordamientos en operaciones aritméticas, produciéndoseexcepciones
cuando se produzcan.
Instrucciones seguras
Para evitar errores comunes como se producían programando en
otroslenguajes, en C# se han impuesto una serie de restricciones en el uso
deinstrucciones de control más comunes. Por ejemplo, la evaluación detoda
condición ha de ser una expresión condicional y no aritmética,como ocurría por
ejemplo en C o en C++. Así se evitan errores porconfusión del operador igualdad
con el de asignación. Otra restricciónque se impone en la instrucción de
selección
switch
, imponiendo quetoda selectora de la instrucción finalice con una
instrucción
break
o
goto
que indique cuál es la siguiente acción a realizar.
Unificación de tipos
En C# todos los tipos derivan de una superclase común llamada
System.Object
, por lo que automáticamente heredarán todos losmiembros definidos en
esta clase. Es decir, son
objetos
. A diferencia de Java, en C# esta característica también se aplica
para los tipos básicos.
Extensión de los operadores básicos
Para facilitar la legibilidad de código y conseguir que los
nuevos tipos dedatos que se definan a través de las estructuras estén al mismo
nivelque los elementos predefinidos en el lenguaje, al igual que C++ pero
adiferencia de Java, C# permite redefinir el significado de la mayoría delos
operadores (incluidos el de la conversión) cuando se apliquen adiferentes tiops
de objetos.
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 cómo ejecutarlos de manera
prefija y postfija. Definiendooperadores simples como la suma, el compilador
deduce como aplicar la versión deasignación compuesta (
+=
). Además, para asegurar la consistencia, el compilador exige que los
operadores con opuesto (como por ejemplo el operador igualdad
==
ysu opuesto
!=
) siempre se redefinan por parejas.
Extensión de modificadores
C# ofrece, a través de los
atributos
, la posiblidad de añadir a losmetadatos del módulo resultante de la
compilación de cualquier fuenteinformación adicional a la generada por el
compilador que luego podráser consultada en tiempo de ejecución a través de la
biblioteca dereflexión de .NET.
Eficiente
En C#, todo el código incluye numerosas restricciones para
garantizar suseguridad, no permitiendo el uso de punteros. Sin embargo, y
adiferencia de Java, existen modificadores para saltarse esta
restricción,pudiendo manipular objetos a través de punteros. Para ello
bastaidentificar regiones de código con el identificador
unsafe
, y podránusarse en ellas punteros de forma similar a como se hace en
C++. Estacaracterística puede resultar de utilidad en situaciones en las que
senecesite gran velocidad de procesamiento
Visual J# permite a los des arrolladores utilizar la sintaxis del
lenguaje Java para generar aplicaciones y servicios que se ejecutarán en .NET
Framework. Visual J# integra la sintaxis de Java en el entorno de desarrollo
integrado (IDE) de Visual Studio®. No es una herramienta para desarrollar
aplicaciones que se ejecuten en una máquina virtual de Java.
Características:
Visual J# tiene como destino de compilación el Common Language Runtime
(CLR) y puede usarse para programar aplicaciones para .NET Framework, incluidos
los servicios Web XML y las aplicaciones Web, que aprovechen al máximo la
funcionalidad de .NET Framework. Las aplicaciones de Visual J# se benefician
de:
· Integración entre
lenguajes.
· Seguridad mejorada.
· Compatibilidad con el
control de versiones y la implementación.
· Servicios de depuración
y generación de perfiles
ASP.NET
es un framework para aplicaciones web desarrollado y
comercializado por Microsoft. Es usado por programadores y diseñadores para
construir sitios web dinámicos, aplicaciones web y servicios web XML. Apareció
en enero de 2002 con la versión 1.0 del .NET Framework, y es la tecnología
sucesora de la tecnología Active Server Pages (ASP). ASP.NET está construido
sobre el Common Language Runtime, permitiendo a los programadores escribir
código ASP.NET usando cualquier lenguaje admitido por el .NET Framework.
Características
Páginas
Las páginas de ASP.NET, conocidas oficialmente como "web forms" (formularios web), son el principal medio de construcción para el desarrollo de aplicaciones web.8 Los formularios web están contenidos en archivos con una extensión ASPX; en jerga de programación, estos archivos típicamente contienen etiquetas HTML o XHTML estático, y también etiquetas definiendo Controles Web que se procesan del lado del servidor y Controles de Usuario donde los desarrolladores colocan todo el código estático y dinámico requerido por la página web. Adicionalmente, el código dinámico que se ejecuta en el servidor puede ser colocado en una página dentro de un bloque <% -- código dinámico -- %> que es muy similar a otras tecnologías de desarrollo como PHP, JSP y ASP, pero esta práctica es, generalmente, desaconsejada excepto para propósitos de enlace de datos pues requiere más llamadas cuando se genera la página.
ASP.NET no sólo funciona sobre el servidor de Microsoft IIS, también lo hace sobre Apache.
Formulario web de ejemplo[editar]
Este es un ejemplo que utiliza código "en línea", opuesto al
código independiente (code-behind).
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
protected void
Page_Load(object sender, EventArgs e)
{
Label1.Text =
DateTime.Now.ToLongDateString();
}
</script
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Página de
Ejemplo</title>
</head>
<body>
<form id="form1"
runat="server">
<div>
<asp:Label
runat="server" id="Label1" />
</div>
</form>
</body>
</html>
Visual NET
es
un framework de Microsoft que hace un énfasis en la transparencia de redes, con
independencia de plataforma de hardware y que permita un rápido desarrollo de
aplicaciones. Basado en ella, la empresa intenta desarrollar una estrategia
horizontal que integre todos sus productos, desde el sistema operativo hasta
las herramientas de mercado.
.NET podría considerarse una respuesta de Microsoft al creciente
mercado de los negocios en entornos Web, como competencia a la plataforma Java
de Oracle Corporation y a los diversos framework de desarrollo web basados en
PHP. Su propuesta es ofrecer una manera rápida y económica, a la vez que segura
y robusta, de desarrollar aplicaciones –o como la misma plataforma las
denomina, soluciones– permitiendo una integración más rápida y ágil entre
empresas y un acceso más simple y universal a todo tipo de información desde
cualquier tipo de dispositivo
Características
Es el encargado de proveer lo
que se llama código administrado, es decir, un entorno que provee servicios
automáticos al código que se ejecuta. Los servicios son variados:
Cargador de clases: permite
cargar en memoria las clases.
Compilador MSIL a nativo:
transforma código intermedio de alto nivel independiente del hardware que lo
ejecuta a código de máquina propio del dispositivo que lo ejecuta.
Administrador de código:
coordina toda la operación de los distintos subsistemas del Common Language
Runtime.
Recolector de basura: elimina
de memoria objetos no utilizados automáticamente.
Motor de seguridad:
administra la seguridad del código que se ejecuta.
Motor de depuración: permite
hacer un seguimiento de la ejecución del código aún cuando se utilicen
lenguajes distintos.
Verificador de tipos:
controla que las variables de la aplicación usen el área de memoria que tienen
asignado.
Administrador de excepciones:
maneja los errores que se producen durante la ejecución del código.
Soporte de multiproceso
(hilos): permite desarrollar aplicaciones que ejecuten código en forma
paralela.
Empaquetador de COM: coordina
la comunicación con los componentes COM para que puedan ser usados por el .NET
Framework.
Biblioteca de Clases
Base que incluye soporte para muchas funcionalidades comunes en las
aplicaciones.
No hay comentarios:
Publicar un comentario