Ответ: Проблемы разработки от EvilOkta
Цитата:
|
Ответ: Проблемы разработки от EvilOkta
при 100000 вызовах что foreach, что linq выражение даст такой же эффект, зато строк стало поменьше
|
Ответ: Проблемы разработки от EvilOkta
подскажите по использованию UI системы. В общем какая проблема возникла:
Меню может появляться/исчезать по щелчку мыши на игровом поле. Управляется это так PHP код:
PHP код:
Планируемый алгоритм: - Меню появляется при щелчке мыши по игровому объекту - Меню пропадает при щелчке мыши по игровому полю - Когда меню активно в логике кода должна происходить проверка на пересечение курсора мыши области UI. Где копать? |
Ответ: Проблемы разработки от EvilOkta
А если так?
PHP код:
|
Ответ: Проблемы разработки от EvilOkta
Подскажите, в новой системе UI каким образом можно снять выделение "Highlighted" с кнопки с помощью кода? Не могу найти какое свойство за это отвечает...
|
Ответ: Проблемы разработки от EvilOkta
Цитата:
GetComponent<Button>().transition = Selectable.Transition.None; Или руками настроить цвет для хайлаита: Создать ColorBlock. Настроить у него highlightedColor и присвоить его к button.colors. |
Ответ: Проблемы разработки от EvilOkta
Возник вопрос, для понимания ситуации.
Есть субклассы, наследуемые от базового класса. Если создан экземпляр одного субкласса, может он каким-то образом превратиться в экземпляр другого субкласса? Паттерн состояние - это то? Мне пока на ум пришло только уничтожение экземпляра субкласса и создание нового другого субкласса с переносом необходимых данных - так вообще делают или это плохая практика? |
Ответ: Проблемы разработки от EvilOkta
Цитата:
Паттерн состояние не превращает один класс в другой. Данные можно перетащить из треугольника в квадрат через reflection в рамках родительского класса (фигуры). |
Ответ: Проблемы разработки от EvilOkta
Ясно, спасибо! А как тогда лучше всего проектировать? Про треугольники и квадраты аналогия понятна.
Допустим базовый класс "работник"; субклассы "электрик", "менеджер", "ремонтник". Экземпляр класса "электрик" сменил работу и стал "менеджер" и должен теперь реализовывать другой набор функций. Upcasting и Downcasting тоже не помогут? |
Ответ: Проблемы разработки от EvilOkta
Цитата:
|
Ответ: Проблемы разработки от EvilOkta
Еще вопрос. Как вести документацию по составу класса? Для описания методов есть XML комментарии - это понятно, но интересует другое. Когда кол-во классов становится большим становится сложно в голове удерживать какие методы они реализуют, интерфейсы наследуют и какими свойствами обладают.
Может есть какие-то инструменты для создания базы данных о классах, их взаимодействии и структуре? Интересно для общего развития. Или все банально сводится к тому, что в коде открываешь сам класс и вспоминаешь?) |
Ответ: Проблемы разработки от EvilOkta
Вложений: 1
В VS (не Community) есть средство создания диаграмм классов
Вложение 23060 |
Ответ: Проблемы разработки от EvilOkta
Цитата:
2EvilOkta: Лучше называть классы именами, описывающими функции, которые они выполняют. И организовывать в пространства имен/папки по тому же принципу. Ничего вспоминать не потребуется, все будет понятно по наименованию классов. Много ли вы диаграмм видели в справке по .net? Я часто так же использую ключевое слово partial, чтобы разделить класс на несколько частей, если часть функций можно объединить в группы. Тогда в структуре проекта это представлено несколькими файлами, имена которых так же отвечают на вопрос, что там внутри (например LevelEditor.cs и LevelEditor.LoadSave.cs). |
Ответ: Проблемы разработки от EvilOkta
Спасибо ) энтерпрайз дорого (я ж не зарабатываю программированием), идея с partial интересная. Параллельно в Excel заношу публичные методы классов и их сигнатуры, на всякий случай.
Продолжаю закидывать страшными вопросами. Я наконец-то разобрался со свойствами (pax за это отдельное спасибо), но терзают сомнения, можно ли их применять вот так: PHP код:
|
Ответ: Проблемы разработки от EvilOkta
Цитата:
PHP код:
|
Часовой пояс GMT +4, время: 20:33. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot