Программная инженерия

243
Должны ли мы избегать создания объектов в Java?

Коллега сказал мне, что в Java создание объекта является самой дорогой операцией, которую вы можете выполнить. Поэтому я могу только заключить, чтобы создать как можно меньше объектов. Кажется, это несколько противоречит цели объектно-ориентированного программирования. Если мы не создаем объекты,...

242
Проект почти готов, но процедурный код спагетти. Я переписываю или просто пытаюсь отправить его? [закрыто]

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

238
Цитата Торвальдса о хорошем программисте [закрыто]

Случайно я наткнулся на следующую цитату Линуса Торвальдса: «Плохие программисты беспокоятся о коде. Хорошие программисты беспокоятся о структурах данных и их отношениях». Я думал об этом последние несколько дней, и я все еще в замешательстве (что, вероятно, не очень хороший знак), поэтому я хотел...

237
Что делает среда Spring? Должен ли я использовать это? Почему или почему нет?

Итак, я начинаю новый проект на Java и собираюсь использовать Spring. Почему я рассматриваю весну? Потому что многие люди говорят мне, что я должен использовать Spring! Серьезно, каждый раз, когда я пытался заставить людей объяснить, что такое Spring или что он делает, они никогда не могли дать мне...

236
Что не так с комментариями, которые объясняют сложный код?

Многие люди утверждают, что «комментарии должны объяснять« почему », а не« как »». Другие говорят, что «код должен быть самодокументированным», а комментарии должны быть скудными. Роберт К. Мартин утверждает, что (перефразируя мои собственные слова) часто «комментарии - это извинения за плохо...

236
Поможет ли высокая репутация в Stack Overflow найти хорошую работу?

В своем посте Джоэл Спольски упомянул, что 5-значная репутация переполнения стека может помочь вам заработать работу, заплатив $ 100k +. Насколько это реально? Кто-нибудь хотел бы поделиться своим успехом в получении высокооплачиваемой работы благодаря своей репутации на сайтах Stack Exchange? Я...

234
Почему реклама для инженеров S / W всегда говорит, что они «предлагают быстро меняющуюся среду»?

Кто хочет работать в быстро меняющейся среде? Не я! Я хочу цивилизованную среду, где люди чувствуют равновесие. Так выполняется работа более высокого качества, а трудовая жизнь не полна стресса и...

233
Как редактор кода может эффективно подсказывать на уровне вложенности кода - без использования отступов? [закрыто]

Я написал текстовый редактор XML, который предоставляет 2 варианта просмотра для одного и того же текста XML, один с отступом (виртуально), другой с выравниванием по левому краю. Мотивация для выравнивания по левому краю состоит в том, чтобы помочь пользователям «увидеть» пробельные символы,...

233
Почему Таненбаум ошибался в дебатах о Таненбауме-Торвальдсе?

Мне недавно дали задание читать из дебатов о Таненбауме-Торвальдсе в моем классе ОС. В дебатах Таненбаум делает некоторые прогнозы: Микроядра - это будущее x86 вымрет, а RISC-архитектуры будут доминировать на рынке (Через 5 лет) все будут использовать бесплатную ОС GNU Мне было год, когда проходили...

227
Должны ли имена пакетов быть единственными или множественными?

Часто, особенно в библиотеках, пакеты содержат классы, которые организованы вокруг единой концепции. Примеры: xml, sql, user, config, db . Я думаю, что мы все вполне естественно чувствуем, что эти пакеты правильны в единственном числе . com.myproject. xml. Элемент com.myproject. SQL .Connection...

223
Выбор между одним или несколькими проектами в репозитории git?

В gitсреде, где мы модульно структурировали большинство проектов, мы сталкиваемся с одним проектом на репозиторий или несколькими проектами на проектирование репозитория . Давайте рассмотрим модульный проект: myProject/ +-- gui +-- core +-- api +-- implA +-- implB Сегодня у нас есть один проект на...

223
Новый разработчик не может идти в ногу со слиянием веток

Я новый разработчик - это моя первая должность программиста. Моя проблема заключается в следующем: мы используем git- я вырезаю ветку из нашей developветви, затем начинаю работать над второстепенной задачей, которая мне была назначена. Это очень медленно, потому что я неопытный. К тому времени,...

221
Почему люди не решаются использовать Python 3?

Python 3 был выпущен в декабре 2008 года. С тех пор прошло много времени, но до сих пор многие разработчики не решаются использовать Python 3. Даже популярные фреймворки, такие как Django, пока не совместимы с Python 3, но все еще полагаются на Python 2. Несомненно, Python 3 имеет некоторые...

221
New Team Lead - Как бороться с обиженным бывшим сверстником [закрыто]

Мне сказали, что я должен быть руководителем команды будущего проекта. Раньше я никогда не был руководителем группы, но ответственность - это то, что вы обычно ожидаете, с вращающейся дверью от 3 до 4 других разработчиков в течение 8 или 9 месяцев, необходимых для завершения проекта. Моя проблема...

220
Почему многие сообщения об исключениях не содержат полезных деталей?

Кажется, существует определенное соглашение о том, что сообщения об исключениях должны содержать полезные детали . Почему многие распространенные исключения из системных компонентов не содержат полезных деталей? Несколько примеров: .NET Listдоступ индекса ArgumentOutOfRangeExceptionникак не говорит...

217
Стратегия сохранения секретной информации, такой как ключи API, от контроля версий?

Я работаю над веб-сайтом, который позволит пользователям входить в систему с использованием учетных данных OAuth, таких как Twitter, Google и т. Д. Для этого мне нужно зарегистрироваться у этих различных провайдеров и получить суперсекретный ключ API, который у меня есть. защищать залогами от...

215
Действительно ли преждевременная оптимизация - корень всего зла?

Мой коллега сегодня создал класс под названием ThreadLocalFormat, который в основном переместил экземпляры классов Java Format в локальный поток, поскольку они не безопасны для потоков и «относительно дороги» в создании. Я написал быстрый тест и рассчитал, что смогу создать 200 000 экземпляров в...

215
Что такое каноническая реплика на «это открытый исходный код, отправьте патч»? [закрыто]

Опасность когда-либо предлагать какую-либо функцию для продукта, особенно с открытым исходным кодом, заключается в том, что вы получите ответ: «Почему бы вам не сделать это?». Это действительно так, и это здорово, что вы можете внести изменения самостоятельно. Но мы практически знаем, что продукты...

214
Как можно управлять тысячами правил IF… THEN… ELSE?

Я рассматриваю возможность создания приложения, которое по своей сути будет состоять из тысяч операторов if ... then ... else. Цель приложения - уметь предсказывать, как коровы передвигаются в любом ландшафте. На них влияют такие вещи, как солнце, ветер, источник пищи, внезапные события и т. Д. Как...

214
Сколько я должен использовать 'let' против 'const' в ES6?

Недавно я написал много кода ES6 для io.js. В дикой природе не так уж много полезного, поэтому я чувствую, что по ходу дела определяю свои собственные соглашения. Мой вопрос о том, когда использовать constпротив let. Я применяю это правило: если возможно, используйте const. Используйте только...