Мова і архітектура Java

March 28th, 2009


« Використання мови програмування Java   |   Що таке мобільні java ігри »


Вбудована синхронізація потоків

Java підтримує многопотоковость не тільки на рівні бібліотек, але і на рівні самої мови, що значно полегшує побудову додатків, що надійно працюють в багатопотоковому режимі.

Властивості, присутні в З і С++, і видалені з Java

Конструкція typedef, препроцесор

Конструкція typedef була успадкована С++ з С. Из Java вона викинута зовсім.

Необхідність в макропроцесорі також багато в чому відпала при написанні програм на С++. Майже все, для чого використовувалися макророзширення, можна було зробити елегантнішим і надійнішим чином, використовуючи конструкції самої мови.

Система неявно заохочувала створення кожним програмістом своєї власної підмножини мови, невідомої решті світу. У міру розростання кодів збільшується той смисловий контекст, в якому компілятор інтерпретує кожен рядок програми. Вже в проектах середнього розміру істотно зростає навантаження на компілятор, не говорячи вже про навантаження на пам’ять програміста.

Єдина важлива функція препроцесора, що залишилася — дозволити включення в програму файли-заголовки з описами класом. Ця операція може бути виконана простіше і ефективно, якщо дозволити компілятору читати підготовлені бінарні файли з описом класів. Остання дорога була вибрана при створенні мови Java.

Всі ці міркування дозволили повністю виключити необхідність використання текстового препроцесора в мові Java.

Struct і union

Структури не мають сенсу в Java, їх роль повністю виконують класи. Використання конструкцій типу union для тіпізованних об’єктів також більше не потрібне — мова дозволяє визначити тип об’єкту при виконання програми.

Функції


Tags: , , , , , ,

Використання Java


Схожі записи

Категория: Використання Java |

Комментарии