Architecture Decision Record

Active theme: Light

← Приклади записів рішень

Запис архітектурного рішення: мова програмування Java

Назва: вибір мови програмування Java для проєкту

Рішення: оцінивши кілька мов програмування, ми вирішили використовувати Java для нашого проєкту.

Передумови

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

Міркування

  1. Безпека: Java забезпечує чудові можливості безпеки завдяки чітко визначеним політикам безпеки та контролю доступу. Вона також містить такі можливості, як перевірка байт-коду, що допомагає не допустити запуску шкідливого програмного забезпечення в системі.

  2. Паралелізм: Java має вбудовану підтримку багатопотоковості, що дозволяє застосункам виконувати кілька завдань одночасно. Ця можливість робить Java чудовим вибором для розробки великих складних застосунків з багатьма функціями та функціональностями.

  3. Великі кодові бази: Java підтримує об’єктно-орієнтоване програмування, що робить її придатним вибором для розробки великих кодових баз. Її модульність і використання патернів інкапсуляції та абстракції додатково полегшують процес розробки програмного забезпечення.

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

Результат рішення

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

Наслідки

  1. Нам знадобляться розробники, які мають досвід роботи з Java і вміють вільно нею користуватися.

  2. Будь-який код, написаний цією мовою, має бути сумісним із віртуальною машиною Java (JVM).

  3. Впровадження нових функцій, функціональностей чи фреймворків може становити певні труднощі.

  4. Великі складні проєкти на Java можуть вимагати більше часу та ресурсів для розробки.

Подяка: цю сторінку згенерував ChatGPT, після чого її відредагували для ясності та формату.