Я створив бібліотеку в Python, яка містить функції доступу до бази даних. Це бібліотека обгортки навколо бази даних сторонніх додатків, написана через те, що стороннє додаток не пропонує гідного API. Тепер я спочатку дозволяв кожній функції відкривати підключення до бази даних протягом тривалості виклику функції, що було в порядку, поки моя логіка програми не використовувала вкладені виклики до функцій, де я б потім викликав певну функцію кілька тисяч разів. Це було не дуже добре. Профілювання цього показало, що накладні витрати були в налаштуваннях підключення до бази даних - один раз на виклик функції. Тож я перенесла відкрите з'єднання зсередини функції (функцій) до самого модуля, щоб з'єднання бази даних було відкрито при імпорті модуля бібліотеки. Це дало мені прийнятну ефективність.
Зараз у мене є два питання щодо цього. По-перше, чи потрібно мене турбувати, що я більше не явно закриваю підключення до бази даних і як я можу це зробити явно за допомогою цієї настройки? По-друге, чи те, що я зробив, потрапляє де-небудь близько до сфери належної практики і як я інакше можу підійти до цього?
openConn
функцію та змусьте користувача передати її до кожної функції, яку вона викликає, таким чином вони зможуть охопити з'єднання уwith
виписці чи будь- якому іншому