Movatterモバイル変換


[0]ホーム

URL:


Ir al contenido
WikipediaLa enciclopedia libre
Buscar

Microsoft .NET

De Wikipedia, la enciclopedia libre
Microsoft .NET

Esquema de .NET Framework
Información general
Tipo de programaFramework
DesarrolladorMicrosoft
Lanzamiento inicial13 de febrero de 2002
LicenciaDualMIT/Propietaria
Versiones
Última versión estable4.8.1(9 de agosto de 2022 (3 años, 6 meses y 10 días))
Lanzamientos
Microsoft .NET
.NET
Archivos legibles
              
varios
  • Microsoft .NET XML Resource template (UTF-8)
  • Microsoft .NET XML Resource template
  • .NET Framework Resource data
  • .NET Micro Framework TinyFont
  • .NET Micro Framework PE executable
Archivos editables
              
varios
  • Microsoft .NET XML Resource template (UTF-8)
  • Microsoft .NET XML Resource template
  • .NET Framework Resource data
  • .NET Micro Framework TinyFont
  • .NET Micro Framework PE executable
Enlaces

.NET es unframework deMicrosoft que hace un énfasis en latransparencia deredes, con independencia de plataforma dehardware y que permite un rápido desarrollo deaplicaciones. Basada en ella, la empresa intenta desarrollar una estrategia horizontal que integre sus productos, desde elsistema operativo hasta las herramientas de mercado.

.NET podría considerarse una respuesta de Microsoft al creciente mercado de los negocios en entornosWeb, como competencia a laplataforma Java deOracle Corporation y a los diversosframework de desarrollo web basados enPHP. 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.

Consideraciones

[editar]

La plataforma .NET deMicrosoft es un componente desoftware que puede ser añadido alsistema operativoWindows. Provee un extenso conjunto de soluciones predefinidas para necesidades generales de laprogramación de aplicaciones, y administra la ejecución de los programas escritos específicamente con la plataforma. Esta solución es el producto principal en la oferta de Microsoft, y pretende ser utilizada por la mayoría de las aplicaciones creadas para la plataforma Windows.

.NET Framework se incluye enWindows Server 2008,Windows Vista yWindows 7. De igual manera, la versión actual de dicho componente puede ser instalada enWindows XP, y en la familia de sistemas operativosWindows Server 2003. Una versión "reducida" de .NET Framework está disponible para la plataformaWindows Mobile, incluyendoteléfonos inteligentes.

La norma (incluido en ECMA-335, ISO/IEC 23271) que define el conjunto de funciones que debe implementar la biblioteca de clases base (BCL por sus siglas en inglés, tal vez el más importante de los componentes de la plataforma), define un conjunto funcional mínimo que debe implementarse para que el marco de trabajo sea soportado por un sistema operativo. AunqueMicrosoft implementó esta norma para susistema operativoWindows, la publicación de la norma abre la posibilidad de que sea implementada para cualquier otro sistema operativo existente o futuro, permitiendo que las aplicaciones corran sobre la plataforma independientemente del sistema operativo para el cual haya sido implementada. ElProyecto Mono emprendido porXimian pretende realizar la implementación de la norma para varios sistemas operativos adicionales bajo el marco del código abierto.

Componentes

[editar]

Los principales componentes del marco de trabajo son:

  • El conjunto delenguajes de programación.
  • Labiblioteca de clases base oBCL.
  • Elentorno común de ejecución para lenguajes, oCLR (Common Language Runtime) por sus siglas en inglés.

Debido a la publicación de la norma para lainfraestructura común de lenguajes (CLI por sus siglas en inglés), el desarrollo de lenguajes se facilita, por lo que el marco de trabajo .NET soporta ya más de 20 lenguajes de programación y es posible desarrollar cualquiera de los tipos de aplicaciones soportados en la plataforma con cualquiera de ellos, lo que elimina las diferencias que existían entre lo que era posible hacer con uno u otro lenguaje.

Algunos de los lenguajes desarrollados para el marco de trabajo .NET son:C#,Visual Basic .NET,Delphi (Object Pascal),C++,F#,J#,Perl,Python,Fortran,Prolog (existen al menos dos implementaciones, elP#[1]​ y el Prolog.NET[2]​),Cobol yPowerBuilder.

Common Language Runtime

[editar]
Artículo principal: Common Language Runtime
Estructura interna del entorno de ejecución en lenguaje común.

El CLR es el verdadero núcleo del framework de .NET, entorno de ejecución en el que se cargan las aplicaciones desarrolladas en los distintos lenguajes, ampliando el conjunto de servicios del sistema operativo (W2k y W2003). Permite integrar proyectos en distintos lenguajes soportados por la plataforma .Net, como C++, Visual Basic, C#, entre otros.

La herramienta de desarrollo compila el código fuente de cualquiera de los lenguajes soportados por .NET en un código intermedio, elCIL(Common Intermediate Language) antes conocido comoMSIL(Microsoft Intermediate Language), similar al BYTECODE de Java. Para generarlo, el compilador se basa en la especificación CLS(Common Language Specification) que determina las reglas necesarias para crear el código MSIL compatible con el CLR.

Para ejecutarse se necesita un segundo paso, un compiladorJIT(Just-In-Time) es el que genera elcódigo máquina real que se ejecuta en la plataforma del cliente. De esta forma se consigue con .NET independencia de la plataforma de hardware. La compilación JIT la realiza el CLR a medida que el programa invoca métodos. El código ejecutable obtenido se almacena en la memoria caché del ordenador, siendo recompilado de nuevo sólo en el caso de producirse algún cambio en el código fuente.

Características

[editar]

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 automáticamente de memoria objetos no utilizados.
  • Motor de seguridad: administra la seguridad del código que se ejecuta.
  • Motor dedepuración: permite hacer un seguimiento de la ejecución del código aun 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 demultiproceso (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.

Estandarización y licenciamiento

[editar]

En agosto de 2000, Microsoft, Hewlett-Packard e Intel trabajaron conjuntamente para estandarizar el lenguaje de programación C# y una Infraestructura de Lenguaje Común (CLI por sus siglas en inglés). Para diciembre de 2001, ambos fueron ratificados por los estándares Internacionales ECMA.[3][4]​ ISO también siguió los pasos para abril de 2003.

Mientras Microsoft y sus socios de negocios ganaban patentes para los lenguajesCLI yC#,ECMA eISO solicitaron que era esencial que la implementación estuviera disponible bajo “términos no discriminatorios”. Además de alcanzar estos términos, las compañías también accedían a dejar estas patentes disponibles. Sin embargo, esto no aplicó para la parte del .NET Framework, que no está cubierto por los estándares ECMA/ISO. Esto incluyeWindows Forms,ADO.NET yASP.NET.

.NET Core

[editar]
Artículo principal: .NET Core

Hasta 2015, .NET brindaba únicamente soporte para Windows, además de que su código tenía una licencia patentada. Ello derivó en la creación de implementaciones libres, tales comoMono. No obstante, Mono seguía teniendo limitaciones frente a .NET, sobre todo en lo relacionado con WinForms (herramienta para interfaces gráficas de Windows), además de ciertos problemas de patentes. Por ello, Microsoft decidió liberar parte del framework .NET bajo el nombre de .NET Core. Posteriormente, se le añadió soporte para ASP .NET, ML .NET y WinForms. Se espera que .NET Core reemplace a .NET Framework en un futuro.

El futuro de .NET

[editar]

A largo plazoMicrosoft pretende reemplazar elAPIWin32 oWindows API con la plataforma .NET. Esto debido a que elAPIWin32 oWindows API fue desarrollada sobre la marcha, careciendo de documentación detallada, uniformidad y cohesión entre sus distintos componentes, provocando múltiples problemas en el desarrollo de aplicaciones para elsistema operativoWindows. La plataforma .NET pretende solventar la mayoría de estos problemas proveyendo un conjunto único y expandible con facilidad de bloques interconectados, diseñados de forma uniforme y bien documentados, que permitan a los desarrolladores tener a mano todo lo que necesitan para producir aplicaciones sólidas.

Debido a las ventajas que la disponibilidad de una plataforma de este tipo puede darle a las empresas de tecnología y al público en general, muchas otras empresas e instituciones se han unido aMicrosoft en el desarrollo y fortalecimiento de la plataforma .NET, ya sea por medio de la implementación de la plataforma para otrossistemas operativos aparte deWindows (Proyecto Mono deXimian/Novell paraGNU/Linux/Mac OS X/BSD/Solaris), el desarrollo delenguajes de programación adicionales para la plataforma (Lexico para hispanoparlantes,ANSI C de laUniversidad de Princeton, NetCOBOL deFujitsu,Delphi deBorland,PowerBuilder deSybase entre otros) o la creación de bloques adicionales para la plataforma (como controles, componentes y bibliotecas de clases adicionales); siendo algunas de ellassoftware libre, distribuibles bajo la licenciaGPL.

Con estaplataforma,Microsoft incursiona de lleno en el campo de losServicios Web y establece elXML como norma en el transporte de información en sus productos y lo promociona como tal en los sistemas desarrollados utilizando sus herramientas.

Biblioteca de clases base de .NET

[editar]
Diagrama básico de la Biblioteca de Clases Base.

La biblioteca de clases base (BCL por sus siglas eninglés) maneja la mayoría de las operaciones básicas que se encuentran involucradas en el desarrollo de aplicaciones, incluyendo entre otras:

  • Interacción con losdispositivos periféricos
  • Manejo de datos (ADO.NET)
  • Administración de memoria
  • Cifrado de datos
  • Transmisión y recepción de datos por distintos medios (XML,TCP/IP)
  • Administración de componentesWeb que corren tanto en el servidor como en el cliente (ASP.NET)
  • Manejo y administración de excepciones
  • Manejo del sistema de ventanas
  • Herramientas de despliegue de gráficos (GDI+)
  • Herramientas de seguridad e integración con la seguridad delsistema operativo
  • Manejo de tipos de datos unificado
  • Interacción con otras aplicaciones
  • Manejo decadenas de caracteres yexpresiones regulares
  • Operaciones aritméticas
  • Manipulación de fechas, zonas horarias y periodos de tiempo
  • Manejo dearreglos de datos y colecciones
  • Manipulación de archivos de imágenes
  • Aleatoriedad
  • Generación de código
  • Manejo de idiomas
  • Autodescripción de código
  • Interacción con laAPIWin32 oWindows API.
  • Compilación de código

Esta funcionalidad se encuentra organizada por medio de espacios de nombres jerárquicos.

La Biblioteca de Clases Base se clasifica, en cuatro grupos clave:

Ensamblados

[editar]
Artículo principal: Ensamblado (Microsoft .NET)
Diagrama interno de unEnsamble .NET.

Un ensamblado es un compiladoEXE oDLL que contiene códigoCIL que se genera desde los diferentes lenguajes.NET, y que es ejecutado por elCLR. Puede contener una o varias clases al igual que uno o varios namespaces.[5]

Los ensamblados pueden tener diferentes decoradores que definen el entorno de ejecución de los mismos COM+, DCOM, Remoting, etc.

Versiones

[editar]
Número de versiónVersión deCLRLanzamientoIncluido en Windows
1.01.007-08-2002N/A
1.11.130-08-2004N/A
2.02.027-10-2005N/A
3.02.006-11-2006Vista
3.52.011-08-20087
4.0412-04-2010N/A
4.5415-08-20128
4.5.1417-10-20138.1
4.5.2405-05-2014N/A
4.6420-07-201510 v1507
4.6.1430-11-201510 v1511
4.6.2402-08-201610 v1607
4.7405-04-201710 v1703
4.7.1417-10-201710 v1709
4.7.2430-04-201810 v1803 y10 v1809
4.8418-04-201910 v1903,10 v1909,10 v2004,10 v20H2,
10 v21H1,10 v21H2,10 v22H2 y 11 v21H2
4.8.1409-08-202211 v22H2 y 11 v23H2

Notas:

  • Los CDs de instalación de las ediciones Home y Professional de Windows XP SP1 vienen con los paquetes de instalación de .NET Framework 1.0, SP2 y SP3 vienen con los paquetes de instalación de .NET Framework 1.1.
  • .NET Framework 3.5 no se instala automáticamente con Windows 8, 8.1, 10 y 11. Debe instalarse desde los medios de instalación de Windows o desde Internet a pedido.

Véase también

[editar]

Referencias

[editar]
  1. P#: A concurrent Prolog for .NET
  2. Prolog.NET - Logic programming for .NET
  3. Norma ECMA para C# (en inglés)
  4. Norma ECMA para CLI (en inglés)
  5. Understanding and Using Assemblies and Namespaces in .NET

Enlaces externos

[editar]
Control de autoridades

Obtenido de «https://es.wikipedia.org/w/index.php?title=Microsoft_.NET&oldid=166991346»
Categorías:
Categorías ocultas:

[8]ページ先頭

©2009-2026 Movatter.jp