Показать сообщение отдельно
Непрочитано 06.01.2012, 02:26   #28
Аватар для n3k0nation
Antihero

По умолчанию Re: Идеальная сборка

Цитата:
Сообщение от Azagthtot Посмотреть сообщение
Вообще, пректирование информационных систем, это целая дисциплина. И в одном-пяти-десяти постах это не опишешь.
Но в кратце, основные моменты
- родители не знают своих детей. Ну зачем, скажите мне, L2Character использовать или ссылаться на L2Boss? Он вообще про него знать не должен!
- разделение получения и обработки данных. На кой черт в пакете писать все проверки и работу? Отправляешь пакет MultisellList - ставь чару мультисел с которым он работает. Получил пакет MultisellChoose, сверил ИД листа, передал данные в мультисел на обработку.
- БД нужна только для хранения динамических данных. Для всего остального есть xml/txt/csv/что-угодно
- не нарушайте прицип Оккама, не плодите сущностей, сверх необходимости! Зачем разделять Stats и Status? Не свести ли это в один класс Info.
- не делай одно и то же двумя способами. Зачем хранить инфу о субклассе в одном типе данных, а о базовом - в другом?
- хороший программист - ленивый программист. Не изобретай велосипед, пользуйся готовыми шаблонами и наработками.
Тут можно написать еще 100500 тезисов.
ИМХО надо начинать с более абстрактных вещей
Мне кажется, что основной тезис, это ДУМАТЬ перед тем, как писать код и планировать все, а для этого нужно знать четкую концепцию проекта и видеть всю картину, которая и создается.

Добавлено через 6 минут
Т.е. грубо говоря, на примере l2j-эмулятора, в лоб:
Хочешь написать осады - подумай прежде чем начинать, попробуй посмотреть, как лучше всего это положить в код с минимальными изменениями/костылями. Лучше всего вообще выделить отдельный движек и АПИ для создания таких массовых эвентов, осада же эвент, если подумать, и уже пилить этот гребанный эвент, как отдельный подключаемый и конфигурируемый модуль, выделить его в отдельный круг, где все это крутится, чтобы из-за падения, ака ошибки в осаде, не падало вообще все.
__________________
m0nster.art - clear client patches, linkz to utils & code.
Гадаю по капче.

Последний раз редактировалось n3k0nation; 06.01.2012 в 02:33. Причина: Добавлено сообщение
n3k0nation вне форума Ответить с цитированием