1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/liangxiegame-QFramework

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README_EN.md

Логотип

Статус сборки

Введение в QFramework

中文|English

QFramework — это фреймворк. Он поддерживает жесткие принципы, дизайн домена, событийное программирование, управление данными, слоистую структуру, MVC, CQRS, модульность, расширяемость и масштабируемость. Простой, но мощный! В нем всего 800 строк кода, которые можно сохранить в приложении для заметок.

Схема архитектуры

Пример (😂)

Схема различных ситуаций

Правила архитектурыАрхитектура дизайна системы QFramework состоит из 4 слоев:

  • Слой Отображения: Слой ViewController. Использует интерфейс IController, получает ввод от пользователя и события изменения состояния от модели. В Unity MonoBehaviour находится на слое отображения.

    • Может получить System
    • Может получить Model
    • Может отправить Command
    • Может слушать Event
  • Слой Системы: Использует интерфейс ISystem. Поддерживает часть обязанностей IController. Поддерживает логику, распространяющуюся на несколько слоев отображения, такие как система времени, система магазина, система достижений.

    • Может получить System
    • Может получить Model
    • Может слушать Event
    • Может отправить Event
  • Слой Модели: Использует интерфейс IModel. Отвечает за определение данных, добавление, удаление, запрос и изменение данных.

    • Может получить Utility
    • Может отправить Event
  • Слой Утилит: Использует интерфейс IUtility. Отвечает за предоставление инфраструктуры, таких как методы хранения, сериализации, подключения к сети, Bluetooth, SDK, наследование фреймворков и т. д. Ничего не может быть сделано. Можно интегрировать сторонние библиотеки или упаковывать API.

  • Ключевое понятие - команда:

    • Может получить System
    • Может получить Model
    • Может отправить Event
    • Может отправить Command
  • Правила Слоев:

    • IController изменяет состояние ISystem и IModel с помощью Command * IController уведомляется ISystem и IModel после их изменения с помощью события или bindableproperty
    • IController может получить ISystem и IModel для запроса данных
    • ICommand не может иметь состояния
    • Верхний слой может напрямую получить нижний слой, а нижний слой не может получить верхний объект
    • События используются для коммуникации между нижним и верхним слоями
    • Коммуникация между верхним и нижним слоями осуществляется методом (только для запроса и команды для изменения состояния). Логика взаимодействия IController специфична, и команда может использоваться только для этого. (запись из: студентский классный журнал 1)### Окружение
  • Unity 2018.4.x ~ 2021.x

Установка

  • QFramework.cs

  • QFramework.cs с примерами

  • QFramework.ToolKits

  • QFramework.ToolkitsPro

    • установите через Asset Store ## Ресурсы| Версия | | | | ------------------------------------------- | ------------------------------------------------------------ | ------------------------------------------------------------ | | QFramework. cs | Реализация архитектуры онтологии QFramework | файл кода | | QFramework. cs с примерами | QFramework. cs и примеры: CounterApp, Point Point Point, CubeMaster, FlappyBird, ShootingEditor2D, SnakeGame и т. д. (QFramework. cs включено) | скачать unitypackage | | QFramework. ToolKits | QFramework. cs с UIKit/ActionKit/ResKit/PackageKit/AudioKit (QFramework. cs и примеры включены) | скачать unitypackage | | QFramework. Toolkits. Demo. WuZiQi | Пример Gobang с использованием QFramework. Toolkits (Необходимо установить QFramework. Toolkits) | скачать unitypackage | | QFramework. Toolkits. Demo. Saolei | Пример разминирования с использованием QFramework. Toolkits (Необходимо установить QFramework. Toolkits) | скачать unitypackage | | QFramework. ToolKitsPro | Более мощная версия инструментов на основе QFramework. Toolkits (QFramework. Toolkits включены) | AssetStore | | Комьюнити | | | | github issue | сообщество GitHub | адрес | | gitee issue | сообщество Gitee | адрес || ShowCase | Напишите мне или опубликуйте на github's issue. Моя почта: liangxiegame@163.com | | Box Bakery | Steam | | X-teroids | Steam | | Последний день династии Хан | Steam | | Привет, баклажан: Рождение спрайтов | Steam | | Когда поезд гудит три секунды | Steam | TapTap | | Привет, баклажан | Steam | | Первая гора | Steam | | Привет, баклажан | Steam | | Под горой призраков | Steam |

Звездные тенденцииStargazers over time

Автор

Вкладчики

Другие замечательные фреймворки

  • ET:ET Unity3D Client And C# Server Framework
  • JEngine:The solution that allows unity games update in runtime.
  • TinaX Framework:“开箱即用”的Unity独立游戏开发工具

Стиль кода:

QCSharpStyleGuide

Донат:

  • Если вам понравилось, вы можете оставить 5 звезд на Asset Store
  • Или дать этому репозиторию звезду~ star this repository
  • Все это будет стимулировать нас, чтобы мы предоставляли лучшие技术服务!

Благодарности:

Благодарим JetBrains Company за поддержку лицензий

JetBrains的Logo

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Архитектура системного дизайна Unity3D Развернуть Свернуть
C#
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/liangxiegame-QFramework.git
git@api.gitlife.ru:oschina-mirror/liangxiegame-QFramework.git
oschina-mirror
liangxiegame-QFramework
liangxiegame-QFramework
master