anti-patterns

Если я запрашиваю объект, скажем, для животного, и возвращаемый объект не является нулевым, но содержит нулевые переменные, это неправильно? Например, я могу вызвать animal.getDeathDate(); и поскольку он еще не мертв, он возвращает null. Для черепахи getFlightSpeed() вернет null, так как она не может летать, ...

Имя переменных может быть изменено и не должно влиять на логику. Но метод name() в Enum возвращает постоянное имя в качестве значения, поэтому он может разбить существующий код. Следует ли мне избегать использования name()? Например, public enum Example1 {FOO, BAR} Рефакторинг FOO name to FOO2 будет торм...

Возможный дубликат:Почему одноэлементные объекты более ориентированы на объект? Почему Scala имеет языковую поддержку для синглетного анти-паттерна? Если бы Scala унаследовала ключевое слово static от Java, какиедопустимые варианты использования ключевого слова object остались бы?...

Итак, у нас есть этот огромный (это 11000 строк огромный?) mainmodule.исходный файл cpp в нашем проекте и каждый раз, когда я прикоснуться к нему, меня коробит. поскольку этот файл настолько Центральный и большой, он продолжает накапливать все больше и больше кода, и я не могу придумать хороший способ застав...

все мы, кто работает с реляционными базами данных узнали (или учатся), что SQL отличается. Получение желаемых результатов и эффективное выполнение этой задачи включает в себя утомительный процесс, частично характеризующийся изучением незнакомых парадигм и выяснением того, что некоторые из наших самых знакомых...

Я изучаю паттерны и анти-паттерны. У меня есть четкое представление о паттернах, но я не получаю анти-паттернов. Определения из интернета и Википедии меня очень смущают. может кто-нибудь объяснить мне простыми словами, что анти-паттерн? Какова же цель? Что они делают? Это плохо или хорошо?...

общий антипаттерн в Python заключается в объединении последовательности строк с помощью + в цикле. Это плохо, потому что интерпретатор Python должен создавать новый строковый объект для каждой итерации, и это в конечном итоге занимает квадратичное время. (Последние версии CPython, по-видимому, могут оптимизир...

Subversion позволяет внедрять рабочие копии других репозиториев с помощью внешние ссылки, что позволяет легко контролировать версию программного обеспечения сторонних библиотек в вашем проекте. хотя они кажутся идеальными для повторного использования библиотек и контроля версий поставщик программного обеспеч...

этот вопрос был вызван дискуссией вокруг в этой статье, где я не получил никаких хороших ответов. почему регистрация вашего исключения, а затем его повторное создание (сохранение исходной трассировки стека, конечно) - плохая идея, если вы не можете справиться с этим иначе?...

Я немного путают о том, как лучше выполнить рефакторинг мой код в нечто более читаемым. рассмотрим этот фрагмент кода: var foo = getfoo(); if(foo!=null) { var bar = getbar(foo); if(bar!=null) { var moo = getmoo(bar); if(moo!=null) { var cow = getcow(moo); ...