Динамічна мова програмуванняДинамі́чна мо́ва дозволяє визначати типи даних і здійснювати синтаксичний аналіз та компіляцію «на льоту», безпосередньо на етапі виконання програми. До динамічних мов відносяться: PHP, Ruby, JavaScript, Python, Lua. Visual Basic можна розглядати як певний різновид динамічної мови, йому завжди були властиві деякі динамічні риси. Типізація в динамічних мовахОсновним, але не єдиним критерієм динамічної мови програмування є динамічна типізація. У динамічно типізованих мовах не вимагається обов’язково вказувати значення оголошеної в коді змінної. Тобто нова змінна має бути оголошена, але не очевидно декларована і зв’язана з певним типом даних. Це дозволяє використовувати одну й ту ж саму змінну у різних ділянках програми, де вона може приймати значення різних типів. Статично типізовані мови, в свою чергу, обмежують типи змінних: якщо в коді була оголошена змінна із присвоєним значенням, скажімо, «42» (числовий тип даних), то пізніше в коді не вдасться змінити значення цієї змінної на «true» (логічний тип даних). Компілятор відмовиться компілювати подібний код і ви не зможете його навіть запустити. Переваги та недолікиВважається, що динамічні мови програмування зручніші для швидкої розробки застосунків. Код в даному випадку виходить більш компактний, оскільки в ньому, наприклад, відсутня необхідність обов’язкової декларації типів змінних. Прихильники статично типізованих мов вважають, що відсутність чіткої системи типів може призводити до проблем в кінцевій програмі через прості помилки. Однак, все залежить від можливостей обраної мови та задачі, яку необхідно вирішити з її допомогою.
|
Portal di Ensiklopedia Dunia