RSS

SoftJournal - IT новости/ IT news

14.08.2007 в 13:00

Платформа .Net: достоинства и недостатки/ Platform .Net: merits and demerits

Размещено в: Технологии и подходы/ Technologies and Frameworks

Microsoft .NET — платформа для создания программ и веб-приложений, представленная Microsoft в 2000 году.

Платформа .NET основана на единой объектно-ориентированной модели; все сервисы оформлены в виде единой иерархии классов. Это решает проблемы программирования на платформе Win32, когда большинство функций сосредоточены в COM-объектах, а некоторые функции необходимо было вызывать через DLL.

Промежуточное представление .NET не привязано к платформе, поэтому приложения в архитектуре .NET - многоплатформенные.

Код, сгенерированный для .NET, может быть проверен на безопасность. Это гарантирует, что приложение не может навредить пользователю или нарушить функционирование ОС.

Обработка ошибок в .NET производится через механизм исключительных ситуаций. Это позволяет избежать разногласий, которые возникали при программировании под Win32.

Самым большим обещанием .NET остается межъязыковое взаимодействие. Впервые в истории программирования появляется единая модель, позволяющая на равных пользоваться различными языками для создания приложений. Так как MSIL не зависит от исходного языка программирования или от целевой платформы, в рамках .NET становится возможным развивать новые программы на базе старых.

Особенности платформы позволяют повторно использовать код. Платформа Win32 позволяла такое только на уровне COM-компонент; теперь можно повторно использовать классы и наследовать от них свои приложения.

Самым ощутимым недостатком является замедление выполнения программ. Между исходным языком и машинным кодом вводится дополнительный уровень, MSIL. Однако промежуточное представление .NET с начала проектировалось с прицелом на компиляцию времени, что дает дополнительные возможности по борьбе с замедлением.

Но наблюдается и движение с противоположной стороны: уже сегодня стандарты некоторых языков программирования претерпевают значительные изменения для того, чтобы эти языки могли быть поддержаны в .NET.

© Itransition .NET Разработка

Microsoft .NET is a program technology for creating ordinary programs as well as web applications, which was presented by Microsoft in 2000.

Platform .NET is based on a unified object-oriented model; all services, which the platform provides to a programmer, are arranged in the form of a unified class hierarchy. It solves many problems of programming on a platform Win32 when most functions were concentrated in COM-objects, and some functions were to be called through DLL.

Because .NET intermediate presentation is not bound to any platform, applications created in .NET architecture are multi-platform.

The code, generated for .NET can be checked for safety. It guarantees that the application can’t do harm to user or impair operating system functioning (the so-named “sand-box model”).

Mistakes’ processing in .NET is always executed through the exceptional situations mechanism. It allows to avoid discords, which sometimes occurred during programming within Win32.

Probably the greatest promise of .NET is language interoperability. Such kind of a unified model, allowing to use different languages for creating applications on equal terms, appears in the history of programming for the first time. For MSIL doesn’t depend on an initial programming language or a target platform, it becomes possible to develop new programs on the base of old ones in frames of .NET.

Features of .NET platform allow to achieve simplicity in repeated code usage. Before, Win32 platform allowed repeated usage at COM-component level only; now it is possible to use classes repeatedly and inherit personal applications from them.

The most felt disadvantage is delay of program performance. It is no wonder, because an additional level, MSIL is introduced between the initial language and machine code. However, .NET intermediate presentation from the very beginning was projected with an aim at time compilation, which provides certain additional abilities in struggle against deceleration.

At the same time there is movement from the opposite side, though – already today standards of some programming languages undergo considerable changes in order to be supported in .NET.

© Itransition .NET Development