Skip to content

kichiro-kun/noKami-SQL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

noKami-SQL

SocialPreview

The project is a completely individual and non-commercial development.
Проект полностью является индивидуальной и некоммерческой разработкой.


*Important note - until the first release version, which is 1.0.0, the project will have support for Russian localization only.
*Важное замечание: до выхода первой стабильной версии, а это 1.0.0 проект будет поддерживать только русскоязычную локализацию.

Оглавление

Глоссарий

  • Проект - совакупность файлов любого формата, обеспечивающих работоспособность или являющихся частью данного репозитория, является общим/глобальным обозначением процесса разработки.
  • Продукт - конечное представление настоящего проекта с точки зрения завершённости и готовности к эксплуатации.
  • Пользователь - разработчик, человек использующий конечный продукт в своих целях.
  • Программное обеспечение (ПО) - компьютерная программа выполняющая некие алгоритмы. В контексте, что пользователь является её владельцем или же разработчиком.
  • API - application program interface, интерфейс/контракт определяющий правила обращения/использования конечного продукта, программными продуктами пользователей.

Краткие сведения о продукте

Общее описание

Проект noKami-SQL — представляет собой фреймворк, обеспечивающий единый интерфейс для работы с различными реляционными СУБД, поддерживающими SQL.

Главная цель проекта — создать высокий уровень абстракции, который отделяет ПО пользователя от особенностей реализации конкретных СУБД и самого фреймворка.

noKami-SQL упрощает и облегчает разработку программ, взаимодействующих с SQL базами данных, за счёт предоставления прозрачного механизма смены СУБД без необходимости значительных изменений в коде ПО.

Компонентная архитектура проекта позволяет гибко интегрировать новые СУБД и обеспечивает независимость ПО от используемых технологий.

Задачи конечного продукта

1. Предоставить единый, понятный и удобный API для взаимодействия с различными СУБД на основе SQL

Основная задача проекта — разработать единый программный интерфейс, который позволял бы пользователям работать с разными SQL-СУБД через общий набор методов и абстракций. Такой API должен быть интуитивно понятен, хорошо документирован и обеспечивать удобства для быстрой разработки. Это снимает необходимость изучать и учитывать особенности каждого отдельного драйвера или клиента СУБД, а также упрощает поддержку кода на стороне пользователя.

Использование официальных библиотек (коннекторов) для каждой СУБД осуществляется внутри проекта, однако все низкоуровневые детали сокрыты за слоем абстракции, предоставляя единый и предсказуемый интерфейс.

2. Обеспечить поддержку популярных реляционных баз данных: MySQL, PostgreSQL, SQLite и Access

noKami-SQL изначально ориентирован на работу с 4-мя наиболее востребованными реляционными СУБД — MySQL, PostgreSQL, SQLite и Microsoft Access. Проект реализует адаптеры и компоненты, которые взаимодействуют с каждой из этих СУБД, используя их официальные API и драйверы.

Такая поддержка делает проект применимым для разнообразного ПО и сценариев: от лёгких локальных приложений (на SQLite или Access) до масштабируемых серверных решений (на MySQL и PostgreSQL).

3. Гарантировать полную независимость ПО пользователя от конкретной выбранной СУБД, позволяя легко переключаться между ними без необходимости переработки кода

Одна из ключевых задач — обеспечить гибкость ПО пользователя, чтобы смена используемой СУБД не требовала глубоких изменений в логике приложения или его архитектуре. Это достигается за счёт высокого уровня абстракции API, где детали конкретной базы данных полностью инкапсулируются внутри адаптеров noKami-SQL.

В результате пользователь может переключать СУБД, например, с MySQL на PostgreSQL, просто поменяв конфигурацию, не переписывая бизнес-логику и не меняя обращения к базе данных.

4. Обеспечить архитектурную независимость ПО пользователя от внутренней реализации фреймворка noKami-SQL

Архитектура noKami-SQL проектируется таким образом, чтобы минимизировать связность между конечным ПО пользователя и внутренними механизмами фреймворка. Это означает, что изменения и обновления внутри noKami-SQL, а также рефакторинг или расширение фреймворка, не должны повлиять на продукты пользователей.

Такой подход достигается через хорошо продуманные контракты API, использование интерфейсов и паттернов проектирования, которые абстрагируют детали реализации и позволяют поддерживать долгосрочную стабильность и совместимость.

5. Создать гибкую и расширяемую компонентную архитектуру, упрощающую сопровождение не только настоящего проекта, но и ПО пользователей

noKami-SQL реализован с использованием компонентной архитектуры, где каждая СУБД и связанные с ней функции выносятся в отдельные модули или адаптеры. Такой подход облегчает добавление новых СУБД в будущем, а также позволяет быстро и безопасно модифицировать или расширять функциональность без значительного риска для стабильности настоящего проекта.

Для пользователей это означает более простое сопровождение собственного ПО, т.к. замена или обновление компонентов noKami-SQL производится независимо от бизнес-логики приложений, снижая трудозатраты на поддержку и развитие.

Краткие техничекие сведения о проекте

Основные технические сведения о продукте

Поддерживаемые платформы: Windows, Linux, Docker.
Основной язык программирования: Python 3.13.x.
Вспомогательные средства разработки: ...
Основной листинг используемых библиотек: ...

Основные технические сведения о среде разработки

Основные программные средства: VSCode, StarUML, ...
Вспомогательные программные средства: ...
Языковые средства: ...
Основные библиотеки/фреймворки: ...
Тестируемые платформы: Windows 10/11, ...

Внутренние ссылки проекта

  • Архитектура программного продукта в .pdf формате (Диаграмма классов);
  • Архитектура программного продукта в .html формате (HTML view)

Дополнительные сведения проекта

Сведения о разработчике

Внутренние ссылки

Внешние ссылки

Сведения об используемых изображениях и иных материалах

  • noKami-SQL view хоть и является бесспорной частью проекта noKami-SQL, но является отдельным проектом. В силу этого, лицензирование происходит иначе.
    Ознакомится с лицензией можно в html вариации noKami-SQL view или использовав следующую ссылку на копию лицензии: https://creativecommons.org/licenses/by/4.0/.