
- •1.Загальний розділ
- •1.1 Графічні бібліотеки для роботи з 3d графікою
- •1.1.1 Gd Graphics Library
- •1.1.2 OpenGl
- •1.2 Структура сценаріїв для 3d графіки
- •1.2.2 JavaScript
- •1.3.1 Денвер
- •1.3.3 MonoDevelop
- •2 Розробка технічного та робочого проекту
- •2.1 Аналіз серидовища програмування Unity
- •2.2.1Мова програмування с#
- •2.2.2 JavaScript
- •3 Розрахунковий розділ
- •3.1 Скриптування та аналіз об’єктів програми
- •3.2 Тестування та виправлення помилок
- •5. Охорона праці та безпека життєдіяльності
- •Висновки
- •Література
- •Джейсон, Прайс; Майк, Гандэрлой Visual c# .Net. Полное руководство; корона принт, 2012. - 960 c.
2.2.2 JavaScript
JavaScript — назва реалізації стандарту мови програмування ECMAScript компанії Netscape, базується на принципах прототипного програмування. Найпоширеніше і найвідоміше застосування мови — написання сценаріїв для веб-сторінок, але, також, використовується для впровадження сценаріїв керування об’єктами вбудованими в інші програми.
Незважаючи на схожість назв, JavaScript та мова програмування Java мають дуже мало спільного. Права на назву Java належать компанії Sun Microsystems.
JavaScript розроблений у компанії Netscape. На сьогоднішній день підтримується більшістю браузерів. Текст програми включається безпосередньо в HTML-документ і інтерпретується самим браузером (точніше, вбудованим у браузер рушієм JavaScript). Застосовується в основному для часткової автоматизації обробки і маніпуляції даними, які використовує сторінка.
Станом на 2006 рік, останній стандарт мови — JavaScript 1.7. Якщо спрощено, то ECMA-262 є стандартизованим варіантом мови JavaScript. Стандартом ECMA-357 визначено E4X, розширення мови для роботи з XML.
JavaScript має низку властивостей об’єктно-орієнтованої мови, але завдяки концепції прототипів підтримка об’єктів в ній відрізняється від традиційних мов ООП. Крім того, JavaScript має ряд властивостей, притаманних функціональним мовам, — функції як об’єкти першого рівня, об’єкти як списки, каррінг (currying), анонімні функції, замикання (closures) — що додає мові додаткову гнучкість.
JavaScript має C-подібний синтаксис, але в порівнянні з мовою Сі має такі корінні відмінності:
об’єкти, з можливістю інтроспекції і динамічної зміни типу через механізм прототипів
функції як об’єкти першого класу
обробка винятків
автоматичне приведення типів
автоматичне прибирання сміття
анонімні функції
JavaScript містить декілька вбудованих об’єктів: Global, Object, Error, Function, Array, String, Boolean, Number, Math, Date, RegExp. Крім того, JavaScript містить набір вбудованих операцій, які, строго кажучи, не обов’язково є функціями або методами, а також набір вбудованих операторів, що управляють логікою виконання програм. Синтаксис JavaScript в основному відповідає синтаксису мови Java (тобто, зрештою, успадкований від C), але спрощений порівняно з ним, щоб зробити мову сценаріїв легкою для вивчення. Так, приміром, декларація змінної не містить її типу, властивості також не мають типів, а декларація функції може стояти в тексті програми після неї
Семантика мови схожа з семантикою мови Self.
Приклад оголошення і використання класу в JavaScript (клас є одночасно функцією, оскільки функції — це об’єкти першого рівня):
JОдна з популярних технологій, що дозволила зробити сторінки динамічнішими і забезпечити нові можливості — це динамічне завантаження і вставка даних в документ, що отримала назву AJAX. При розробці великих і нетривіальних веб-застосунків з використанням JavaScript, критично важливим є доступ до інструментів зневадження. Оскільки браузери від різних виробників дещо відрізняються у поведінці JavaScript і реалізації Об'єктної Моделі Документа, треба мати в руках зневаджувач для кожного браузера, якщо веб-застосування орієнтовано на нього.
На даний час Internet Explorer, Firefox, Opera, Google Chrome та Safari мають зневаджувачі для себе.
Internet Explorer має три звеваджувача для себе: Microsoft Visual Studio є найпотужнішим з цих трьох, слідом йде Microsoft Script Editor (компонента Microsoft Office), і нарешті існує безплатний Microsoft Script Debugger з базовими функціями. Веб-застосування для Firefox допоможе привести до розуму додаток Firebug (зручно вбудований безпосередньо в браузер), або давніший відладчик Venkman, котрий також працює з браузером Mozilla. Drosera — це зневаджувач з WebKit engine, що супроводжує Apple Safari.
Також існують кілька інструментів, як вільних, наприклад JSLint, інструмент перевірки якості коду, що сканує JavaScript програму, шукаючи проблеми коду, так і комерційних продуктів типу інструменту з назвою JavaScript Debugger.
Оскільки JavaScript є інтерпретатором, без строгої типізації, і може виконуватися в різних середовищах, кожне зі своїми власними особливостями сумісності, програміст має бути дуже уважним, і повинен перевіряти, що його код виконується як очікується в широкому переліку можливих конфігурацій. Дуже часто трапляються випадки, коли скрипт, що чудово працює в одному середовищі, видає некоректні результати в іншому.
Кожен блок сценарію інтерпретатор розбирає окремо. На веб-сторінках, коли треба комбінувати блоки JavaScript та HTML, синтаксичні помилки найти легше, якщо тримати функції сценарію в окремому блоці коду, або (ще краще) використовувати багато малих пов’язаних .js файлів. В такий спосіб синтаксична помилка не спричинятиме «падіння» цілої сторінки, і можна надати допомогу, елегантно вийшовши зі сторінки.
Реальний звіт про використання JavaScript в браузерах свідчить, що
біля 90 % користувачів мають встановленим JavaScript версії 1.3,
близько 4 % — версію 1.0,
близько 3.5 % — версію 1.5,
близько 2.5 % — версію 1.6,
решта версій зустрічається в долях відсотка (джерело — spylog.ru на січень 2008).