C # – розберемося, що ж це, C / C + +, Програмування, статті

Сергій Коломієць, www.i.com.ua/~srk

Розглянемо спочатку, без зайвих слів, два приклади:

Приклад 1.

namespace HW;

using System;

class HW

{

static void Main(String[] args)

{

Console.WriteLine(“Hello World!”);

}

}

Приклад 2.

package HW;

import java.lang.*

class HW

{

public static void main(String[] args)

{

System.out.println(“Hello World!”

}

}

Ну що, знайдете 10 відмінностей? Насилу: Як бачимо, тенденція зближення різних мовою програмування тут проявляється як ніде чітко. Перший приклад написаний на новій мові C #, розробленому фірмою Microsoft, другий – на старій добрій Java.
Мова C # був випущений в середині 2000 року групою програмістів компанії Microsoft під керівництвом відомого в програмістскіх колах людини Anders Hejlsberg. Того самого, хто створив Turbo Pascal і Delphi.
Хоча це і не визнається офіційно, але мова C # явно створювався як альтернатива і як прямий конкурент Java. Це чітко видно як з наведених прикладів, так і з більш детального аналізу структури двох мов.
Головна особливість нової мови (як і основне його гідність) – це велика кількість коштів для розробника програм – простий доступ до компонентів і низькорівневим бібліотекам платформи Win32, можливість використання системи обміну повідомленнями з об’єктами і компонентами на базі XML і протоколу SOAP.
Основою мови є, безсумнівно, C + +. Проте, деякі деталі були запозичені з мови Java, як то простору імен etc. Ще одне перекочувало з Java гідність, це система автоматичного управління пам’яттю. На систему покладено функції виділення пам’яті для різних класів, і її звільнення після припинення використання класів. Реалізація інтерфейсів в C # ідентична реалізації в мові Java. 
Наступні можливості були взяті зі старих мов програмування, наприклад, з Паскаля. Перша – чітка типізація змінних. При описі змінної необхідно вказати її тип, чого не було в С + +. Друга – Автоматична ініціалізація змінних. Ось цієї можливості і немає в Java.
Технології COM + і Windows API повністю підтримуються C #. Так як мова C # сам не містить бібліотек класів, то в ньому з’явилася можливість використання бібліотек інших систем програмування, розроблених фірмою Microsoft, як, наприклад, Visual Basic.
Але, не все добре, як здається на перший погляд. Перший, самий значний недолік – повна відсутність платформ, тобто програми на C # можуть бути використані тільки в системах на основі Win32. 
Другий недолік – в середовищі виконання, роль якої грає IL Common Language Runtime. Віртуальна машина Java має достатню продуктивність, і невідомо, чи буде вище ефективність першої. Ну, і третє – Java володіє значно більшою кількістю коштів для розробки багатопотокових додатків.
Системні вимоги: поки доступна версія тільки під Windows 2000. Обов’язкова наявність IIS, Internet Explorer 5.5 і бібліотеки MDAC 2.6. Пакет можна завантажити з сайту Microsoft: http://msdn.microsoft.com/code/sample.asp?url=/msdn-files/027/000/976/msdncompositedoc.xml
Які ж перспективи цього гарного починання? Java, на сьогоднішній день є стандартом, і цього не може заперечувати навіть Microsoft. І останнім знадобиться багато часу, сил і грошей для просування свого C # в якості нового відкритого стандарту. А для цього необхідно усунути вищенаведені недоліки, що, звичайно, зводить шанси на просування до мінімуму.

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*