Дисклеймер

Інформація на сайті tseivo.com є суб'єктивною та відображає особисті погляди та досвід авторів та авторок блогів.

Використовуйте цей ресурс як одне з декількох джерел інформації під час своїх досліджень та прийняття рішень. Завжди застосовуйте критичне мислення. Людина сама несе відповідальність за свої рішення та дії.

Обкладинка нотатки: Що таке Environment Variables в розробці ПЗ?

Що таке Environment Variables в розробці ПЗ?

Environment Variables (Змінні середовища) - це конфігураційні налаштування, які зберігаються на рівні операційної системи (наприклад використовуються Ruby on Rails додатками під час роботи). Вони дозволяють керувати чутливою (конфіденційною) інформацією, такою як облікові дані бази даних або ключі API, а також налаштовувати поведінку додатка в різних середовищах розгортання, таких як development, testing та production.

Які типи інформації можуть бути збережені в Environment Variables?

У Environment Variables можна зберігати різноманітну інформацію, включаючи дані для підключення до бази даних, ключі API, секретні токени, налаштування локального середовища розробки та інше.

Як отримати доступ до Environment Variables у Ruby on Rails додатку?

У Ruby on Rails додатках доступ до Environment Variables можна отримати за допомогою спеціального об'єкта ENV, який надає доступ до всіх змінних середовища, збережених в операційній системі.

Приклад використання Environment Variables

Уявімо, що у нас є додаток, який використовує ключ API для взаємодії зі стороннім сервісом. Замість жорстко закодованого (hardcoding) ключа API безпосередньо в коді, ми можемо зберегти його як Environment Variable. 
Наприклад:
# Код у Ruby on Rails додатку для отримання ключа API з Environment Variable
api_key = ENV['API_KEY']
Таким чином, ми можемо зберігати конфіденційну інформацію, таку як ключі API, в Environment Variables, що зробить наш додаток більш безпечним та гнучким у різних середовищах розгортання.
Головне правило - не комітити ключі у Git-репозиторій. Використовуйте Env variables натомість.
📝 Більше публікацій:
Обкладинка нотатки: Що таке DDL (Data Definition Language) та DML (Data Manipulation Language)? Коли та для чого використовуються?
Обкладинка нотатки: Що таке ТCL (Transaction Control Language), DCL (Data Control Language) та DQL (Data Query Language)