Большие плагины в один класс - плохая практика?

  • Автор темы Автор темы molor
  • Дата начала Дата начала

molor

Активный участник
Пользователь
Баллы
66
Доброе время суток. Меня интересует такой вопрос: в чём основные преимущества написания кода (плагинов) с использованием нескольких классов?

Задав подобный вопрос на stackOverflow некоторое время назад, несколько умных (наверное) людей дали мне понять только одно: такой код выглядит красивее, и разобраться в нём проще. На вопрос о приросте производительности был дан примерно такой ответ: "почти никак не влияет".

Так есть ли действительно смысл писать большие плагины только с использованием нескольких классов, помимо удобочитаемости такого кода? Или можно создать мини-игру вроде spleef'а, воспользовавшись только классом Main, и всё будет работать точно так же?

Чтобы вы понимали, что для меня есть "большие плагины" - это, например, плагины мини-игр или фракций. Спасибо.
 
Последнее редактирование:
У тебя есть большая коробка.Ты закинул в неё несколько книг, карандаши, любимый свитер и ещё кучу других мелочей.Потом, ты хочешь что-либо взять из этой коробки.На поиски нужной вещицы у тебя уйдёт больше времени чем если бы ты разложил вещи по типам в разные коробки, особенно когда "смешанных" коробок у тебя много.Например, коробка с одеждой, коробка с книгами, коробка с карандашами и коробка для разных мелочей.В итоге, если тебе нужен будет твой свитер, ты всегда будешь знать в какой коробке он лежит.В таком случае, времени и усилий на получение нужной вещицы уйдёт меньше.Так что стоит добиваться максимальной связности внутри коробки и минимальной внешней, это нужно для того, что бы, например, когда ты захочешь выбросить всю свою одежду, среди одежды не оказалось хорошей книги или сувенира из Воркуты.А вообще, это полностью вопрос архитектуры.Есть куда больше полезных советов проектирования архитектуры, придерживаясь которых можно забыть о многих проблемах в будущем.Больше информации о проектировании можешь найти в книге Макконнелла "Совершенный код", например.
 
Ужасная практика.
В больших плагинах должно присутствовать что-то вроде модульности. Тоесть, обработка конфигов в одном классе, работа с ентитями в другом и так далее.
Ты просто утонешь в г*вне если у тебя какая-нибудь миниигра (BedWars например) будет написана в один класс. Ибо там больше 10к строк может выйти.
Мало того, я уже молчу про рефакторинг и читабильность кода.
И если ты ещё сможешь разбираться в том, что и где находится, то вот кто-то другой убьёт кучу времени, чтобы переписать то, что ты там в одном классе нацарапал.
 
На скорость это не повлияет, а вот на убитый ооп еще как. Потом сам перестанешь понимать где и что у тебя там.
P.s да и не все получится в одном классе сделать, отдельные трейды сами разделятся при компиляции.
 
У тебя есть большая коробка.Ты закинул в неё несколько книг, карандаши, любимый свитер и ещё кучу других мелочей.Потом, ты хочешь что-либо взять из этой коробки.На поиски нужной вещицы у тебя уйдёт больше времени чем если бы ты разложил вещи по типам в разные коробки, особенно когда "смешанных" коробок у тебя много.Например, коробка с одеждой, коробка с книгами, коробка с карандашами и коробка для разных мелочей.В итоге, если тебе нужен будет твой свитер, ты всегда будешь знать в какой коробке он лежит.В таком случае, времени и усилий на получение нужной вещицы уйдёт меньше.Так что стоит добиваться максимальной связности внутри коробки и минимальной внешней, это нужно для того, что бы, например, когда ты захочешь выбросить всю свою одежду, среди одежды не оказалось хорошей книги или сувенира из Воркуты.А вообще, это полностью вопрос архитектуры.Есть куда больше полезных советов проектирования архитектуры, придерживаясь которых можно забыть о многих проблемах в будущем.Больше информации о проектировании можешь найти в книге Макконнелла "Совершенный код", например.
*like*
 
Меня всегда трясло от таких плагинов, где в Main было > 1000 строк, фу
 
Назад
Верх