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

54
Когда бы вы использовали длинный строковый идентификатор вместо простого целого числа? [закрыто]

Я хотел бы использовать Youtube в качестве примера: они используют идентификаторы в виде PEckzwggd78. Почему они не используют простые целые числа? Или imgur.com - они также используют идентификаторы, например, 9b6tMZSдля изображений и галерей. Непоследовательные целые числа. Почему они не...

54
Как бороться со страхом перед зависимостями

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

53
Как проверить тесты?

Мы проверяем наш код, чтобы сделать его более правильным (на самом деле, менее вероятно, что он будет неправильным ). Тем не менее, тесты также являются кодом - они также могут содержать ошибки. И если ваши тесты содержат ошибки, они вряд ли улучшат ваш код. Я могу думать о трех возможных типах...

53
Куда вы идете, чтобы прочитать хорошие примеры исходного кода? [закрыто]

Я слышал, как несколько человек говорили, что один из лучших способов улучшить ваши навыки кодирования - это читать код других и понимать его. Мой вопрос, как относительно нового программиста, где я могу найти хорошие примеры исходного кода, которые не слишком далеко у меня над...

53
Действительно ли TDD работает для сложных проектов?

Я задаю этот вопрос относительно проблем, с которыми я столкнулся во время проектов TDD. Я заметил следующие проблемы при создании модульных тестов. Генерация и ведение фиктивных данных Поддерживать большие фиктивные данные сложно и нереально. Еще сложнее, когда структура базы данных претерпевает...

53
Что означает «Ночные сборки»?

Я использовал проекты с открытым исходным кодом некоторое время и разрабатывал приложения с открытым исходным кодом, и время от времени я сталкивался со словами «Ночная сборка», и мне всегда было любопытно, что это на самом деле означает. Означает ли это буквально, что проекты выполняются...

53
Лучшие практики для регистрации и трассировки в .NET

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

53
Почему не XHTML5?

Итак, HTML5 - это большой шаг вперед, мне сказали. Последний шаг вперед, о котором я знаю, это введение XHTML. Преимущества были очевидны: простота, строгость, возможность использовать стандартные парсеры и генераторы XML для работы с веб-страницами и так далее. Как странно и расстраивает то, что...

53
Получить 100 старших чисел из бесконечного списка

Один из моих друзей задал этот вопрос интервью - «Существует постоянный поток чисел, поступающих из некоторого бесконечного списка чисел, из которого вам необходимо поддерживать структуру данных, чтобы возвращать первые 100 старших чисел в любой заданный момент времени. Предположим, что все числа...

53
Почему void не разрешен как универсальный тип в C #

Каковы были дизайнерские решения, которые приводили доводы в пользу того, что они voidне конструируемы и не допускаются в качестве универсального типа? В конце концов, это просто специальная пустая ячейка, structкоторая позволила бы избежать общего PITA, состоящего из отдельных участников Funcи...

53
Участие в Github (как найти проекты) [закрыто]

Я хочу внести свой вклад в проекты с открытым исходным кодом на Github. В основном, я бы хотел начать с исправления небольших ошибок или добавления новых функций. У меня нет конкретного проекта. Я бы хотел работать над проектами C, C ++, Python, .NET, Java и т. Д. Однако моя проблема в том, что я...

53
Кто создал идею первой конструкции цикла?

while (1) { if (1+1==2) { print "Yes, you paid attention in Preschool!"; } else { print "Wait... I thought 1+1=2"; } } Как разработчик, мы все должны использовать циклы очень часто. Мы знаем это. Что мне было интересно, так это то, кто думал об идее иметь петли? На каком языке введены циклы? Какой...

53
Что-то не так с тем, как мы делаем контроль версий?

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

53
Как сделать шаг назад и посмотреть на код свежим взглядом? [закрыто]

Я провел прошлый год как команда из одного человека, разрабатывающая приложение для богатых клиентов (35 000+ LoC, для чего это стоит). Это в настоящее время стабильно и в производстве. Однако я знаю, что мои навыки были ржавыми в начале проекта, поэтому, без сомнения, в коде есть серьезные...

53
TDD - снаружи внутрь против снаружи

В чем разница между созданием приложения Outside In и Inside Out с использованием TDD? Это книги, которые я прочитал о TDD и модульном тестировании: Разработка через тестирование: на примере Разработка через тестирование: Практическое руководство: Практическое руководство Реальные решения для...

53
Должны ли методы класса вызывать свои собственные методы получения и установки?

Где я работаю, я вижу много классов, которые делают такие вещи: public class ClassThatCallsItsOwnGettersAndSetters { private String field; public String getField() { return field; } public void setField(String field) { this.field = field; } public void methodWithLogic() { setField("value"); //do...

53
Каков правильный баланс между целостностью кода и улучшением кода?

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

53
Насколько часто команды пишут все своими силами? [закрыто]

В одном из недавних интервью я спросил интервьюеров: «Как вы оцениваете новые технологии и библиотеки (такие как SignalR) и вводите их в действие?». Они сказали, что не делают, что вместо этого они пишут все сами, чтобы им не пришлось полагаться ни на кого другого. Фирма не работает на...

53
Индивидуальный разработчик против командного разработчика: я должен двигаться дальше? [закрыто]

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

53
Что такое код «зависти к особенностям» и почему он считается запахом кода?

Этот вопрос о SO говорит о том, чтобы исправить то, что OP считал кодом зависти к функциям . Другой пример, где я видел, как цитируется эта изящная фраза, - недавно полученный ответ здесь, в programmers.SE. Несмотря на то, что я добавил комментарий к этому ответу с просьбой предоставить информацию,...