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

40
Смешивание угловых и ASP.NET MVC / Web API?

Я пришел с использованием ASP.NET MVC / Web API, и теперь я начинаю использовать Angular, но я не знаю, как правильно их смешивать. После того, как я использую Angular, концепции на стороне сервера MVC все еще дают какое-либо значение? Или я должен строго использовать веб-API исключительно для...

40
Можно ли когда-нибудь зафиксировать неработающий код?

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

40
Хорошая идея поместить номера ошибок в комментарии в начале исходного файла? [закрыто]

Является ли хорошей практикой помещать номера ошибок в самом файле внутри заголовка комментария? Комментарии будут выглядеть примерно так: MODIFIED (MM/DD/YY) abc 01/21/14 - Bug 17452317 - npe in drill across in dashboard edit mode cde 01/17/14 - Bug 2314558 - some other error description Это...

40
Что, по отношению к DDD, является ограниченным контекстом?

Работая с книгой Вона Вернона «Внедрение доменного дизайна», я не смог понять, что такое ограниченный контекст на самом деле. Книга определяет ограниченный контекст как «концептуальную границу, к которой применима модель предметной области. Она предоставляет повсеместный язык, на котором говорит...

40
AngularJS: структурирование веб-приложения с помощью нескольких ng-приложений

В блогосфере есть ряд статей на тему руководств по структурированию приложений AngularJS, таких как эти (и другие): http://www.johnpapa.net/angular-app-structuring-guidelines/ http://codingsmackdown.tv/blog/2013/04/19/angularjs-modules-for-great-justice/...

40
Что такое помощник? Это шаблон дизайна? Это алгоритм?

Может быть, немного насмешливо, но так как я не могу найти этот ответ нигде в Google, чтобы убедиться, что у Software Engineering есть ответ: Что такое помощник? Я видел, как имя используется везде (имена модулей, имена классов, имена методов), как будто семантика была глубокой и содержательной, но...

40
Передача функций в другие функции в качестве параметров, плохая практика?

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

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

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

40
Должен ли я принимать пустые коллекции в моих методах, которые проходят по ним?

У меня есть метод, где вся логика выполняется внутри цикла foreach, который перебирает параметр метода: public IEnumerable<TransformedNode> TransformNodes(IEnumerable<Node> nodes) { foreach(var node in nodes) { // yadda yadda yadda yield return transformedNode; } } В этом случае...

40
Как вы работаете с общими понятиями в микросервисной архитектуре?

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

40
Какая польза от .Any () в C # List <>?

Я обсуждал это с коллегами, и мы не могли понять, какая польза от них .Anyдля List<>C #. Вы можете проверить правильность элемента в массиве, как следующий оператор: if (MyList.Any()){ ...} //Returns true or false Что точно так же, как if (MyList.Count() != 0) { ... } и является гораздо более...

40
Должен ли я создать класс, если моя функция сложна и имеет много переменных?

Этот вопрос несколько не зависит от языка, но не полностью, поскольку объектно-ориентированное программирование (ООП) отличается, например, в Java , которая не имеет функций первого класса, чем в Python . Другими словами, я чувствую себя менее виноватым за создание ненужных классов в таком языке,...

40
Можно ли говорить об анемичной модели в контексте функционального программирования?

Большинство шаблонов тактического проектирования DDD относятся к объектно-ориентированной парадигме, а анемичная модель описывает ситуацию, когда вся бизнес-логика помещается в сервисы, а не в объекты, что делает их своего рода DTO. Другими словами, анемичная модель является синонимом процедурного...

40
Является ли нежелательным создание функции, которая по существу переименовывает встроенную функцию?

Я запутался в функциях min и max в определенных контекстах. В одном контексте, когда вы используете функции для получения большего или меньшего из двух значений, это не проблема. Например, //how many autographed CD's can I give out? int howManyAutographs(int CDs, int Cases, int Pens) { //if no...

40
Что такого плохого в goto, когда оно используется для этих очевидных и актуальных случаев?

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

40
Как согласовать время разработчиков между двумя разными проектами в Scrum?

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

40
Применимость принципа единой ответственности

Недавно я столкнулся с кажущейся тривиальной архитектурной проблемой. У меня был простой репозиторий в моем коде, который назывался так (код на C #): var user = /* create user somehow */; _userRepository.Add(user); /* do some other stuff*/ _userRepository.SaveChanges(); SaveChanges была простая...

40
Лучше ли объединять «часто» или только после завершения делать большое объединение ветвей функций?

Скажем, разрабатываются несколько веток, AиB , а также пошаговый ветвь «исправлена ошибка» C. Сейчас Cуже «закончен» и объединен в мастера.Aи Bвсе еще находятся в разработке и не будут исправлены до (возможно), когда другая ветвь исправления ошибок будет объединена с главной. Является ли хорошей...

40
Почему логический оператор NOT в языках стиля C «!», А не «~~»?

Для бинарных операторов у нас есть как побитовые, так и логические операторы: & bitwise AND | bitwise OR && logical AND || logical OR NOT (унарный оператор) ведет себя по-другому, хотя. Существует ~ для побитового и! для логики. Я признаю, что NOT - это унарная операция, в отличие от...

39
Как вы сосредоточены на работе? [закрыто]

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