Мастера могут запускать функции. Они также могут запутать ваш код и являются анти-YAGNI.
В целом, как вы думаете, мастера более полезны или более вредны?





Они здесь по какой-то причине - чтобы облегчить вашу жизнь. Они могут быть полезны и сэкономить вам 5 или 10 минут набора текста. Конечно, лучше всего прочитать и убедиться, что вы понимаете то, что они написали для вас.
Если вы используете их, не понимая, то они могут считаться вредными, поскольку позволяют вам не изучать то, что вам, вероятно, следует знать, но в целом я считаю, что они полезны.
Они более полезны, чем вредные если, и только если вы понимаете код, который они генерируют. Только после того, как вы освоите проблему, мастер пытается ее решить, они действительно полезны. В противном случае вы столкнетесь со стенами позже в проекте, потому что сгенерированный код воля в какой-то момент потребует изменений.
"Закон дырявых абстракций" действительно прибивает его по голове.
Мастера «в основном безвредны», когда они генерируют инкапсулированный объект - функцию, класс или набор классов, - которые вам не нужно изменять и с которыми вы взаимодействуете через четко определенный, хорошо спроектированный интерфейс.
На другом конце спектра находится мастер, который генерирует скелетный код, который необходимо расширить и изменить. Это особенно неприятно, если вы не можете изменить некоторые параметры мастера позже, не потеряв свои правки.
Они по-прежнему подходят для профессионалов, которые могут написать тот же код самостоятельно и использовать мастер для экономии времени. Однако, когда они используются, чтобы что-то сложное выглядело легким для новичков, они превращают ржавую машину в покраску: они помогают продать то, что в противном случае вы бы не купили.
На практике они все еще могут быть полезны для облегчения внедрения платформы. Но это бизнес-аспект, и могут ли бизнес-аспекты оправдать грубые ошибки кода - это вопрос среды разработки.
Мастера хороши тогда и только тогда, когда вы можете уйти с никогда, редактируя код, который они генерируют. В этой ситуации они, по сути, являются языком программирования очень высокого уровня. Когда вы передумаете относительно чего-то, что было сгенерировано мастером, вы можете снова запустить мастер.
Мастера - самое ужасное зло, если вы должны Когда-либо редактировать код, который они генерируют. Если вы сделаете это, а позже передумаете по поводу одного из вариантов, сделанных вами в мастере, вы будете вынуждены выбирать между двумя очень плохими вариантами. Вы можете повторно запустить мастер и повторно применить внесенные вручную изменения или попытаться отредактировать несколько копий стандартного кода, созданного мастером в первый раз. В первом случае вы, вероятно, забудете хотя бы одно из ваших правок, а во втором случае вы, вероятно, пропустите хотя бы одно из мест в коде, на которое повлиял ваш выбор во время работы мастера.