Мені важко зрозуміти, чому слід розробити внутрішні бібліотеки, які використовуються виключно для розробки внутрішніх додатків. Я розумію, що якщо я хочу використовувати програмне забезпечення, яке написав хтось поза організацією, то вони можуть надіслати мені свої заголовні файли та файли .a або .so, і я можу просто зв’язати це зі своїм проектом (якщо вважати, що вони складені в одному середовищі) .
Але чому слід розробити внутрішню бібліотеку просто для того, щоб вона була пов'язана з внутрішньою програмою, коли я маю доступ до заголовків та файлів реалізації, і я можу просто включити їх у своє джерело і скласти їх разом?
Іншими словами: якщо записаний якийсь вихідний код, як ви вирішите, чи слід його збирати у бінарну бібліотеку та пов’язувати з вашою програмою чи просто включати у вихідні файли проекту та збирати регулярно?
Коли я кажу "включити" файли у кожен проект, я не маю на увазі копіювати та вставляти кожен файл у дерево джерела проекту, який зараз розробляється. Я маю на увазі розробку деякого каталогу / бібліотеки (окремо для будь-якого проекту), що містить загальний вихідний код, який можна включити у файли проекту звичайним способом, тобто #include.
ps Я тут говорю про розробку c / c ++ для декількох настільних додатків.