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

Q & A для профессионалов, преподавателей и студентов, работающих в жизненном цикле разработки систем

2
Почему DVCSs, кажется, все имеют иррациональную фобию незафиксированных изменений?
Исходя из опыта SVN, одна из самых сложных вещей, к которой нужно привыкнуть при работе с системами DVCS, - это то, как все они, похоже, рассматривают любое незавершенное изменение, как бомбу замедленного действия. В Mercurial, если вы пытаетесь получить изменения и у вас есть какие-либо незафиксированные изменения в вашей рабочей …

5
Должен ли вид не выполнять проверку?
Я читал « В MVC должна ли модель обрабатывать проверку? », Потому что мне было любопытно, куда должна идти логика проверки на веб-сайте MVC. Одна строка в верхнем ответе выглядит так: «контроллеры должны обрабатывать проверку, модели должны обрабатывать проверку». Мне это понравилось, но мне стало интересно, почему мы не проводим …
10 architecture  mvc 

3
Существует ли шаблон проектирования для управления глубокими отношениями «многие ко многим»?
У меня проблемы с определением шаблона данных, с которым я столкнулся, работая над несколькими приложениями. Это состоит из: Тип объекта, который состоит из множества объектов. Второй тип объекта, где каждый экземпляр имеет «много» первого объекта И каждый из подобъектов первого объекта является модифицируемым для каждой ассоциации со вторым типом объекта. …

2
Зачем нам нужен экземпляр класса Scanner для получения входных данных на Java?
Java является объектно-ориентированным, но зачем нам нужно создавать объект из класса Scanner для получения ввода? next()Например, не могут ли методы быть статическими? C выглядит для меня довольно просто, как вы только используете scanf(), gets()или fgets(). Я уверен, что у разработчиков Java есть причина для создания класса Scanner, но как это …

2
Как много должно знать представление о модели?
Я строю приложение на Python с оболочкой Python для WPF и с поддержкой DAG. В настоящее время я нахожусь в точке, где я должен выбрать согласованный способ взаимодействия между данными и представлением. Насколько я вижу, в настоящее время есть два очевидных решения. Первый из них похож на структуру приложений Android. …
10 model  view 

4
Семантическая версия в Agile
Допустим, у меня есть 14-дневные итерации спринта, где у меня есть несколько историй о новых функциях, несколько улучшений и некоторые ошибки, которые нужно исправить. Я также внедряю эти изменения, когда они будут готовы, я не жду окончания спринта. Моя проблема - как отследить семантическое управление версиями продуктов, разработанных и поддерживаемых …

4
Уменьшение сложности класса
Я посмотрел на некоторые ответы и искал в Google, но я не смог найти ничего полезного (то есть, это не будет иметь неловких побочных эффектов). Моя абстрактная проблема в том, что у меня есть объект и мне нужно выполнить длинную последовательность операций над ним; Я думаю об этом как о …

3
Что именно представляет собой модель программного обеспечения (MDSE)?
Сегодня я наткнулся на сокращение MDSE на infoq , и информация, которую я смог найти, была довольно непонятной, а описание было полно словечек: MDSE позволяет инженерам-программистам работать на уровне абстракции, где требования, архитектура и информация о дизайне максимально упорядочены (с точки зрения информационной энтропии) и сохранены. (Назовите это «продуктом проектной …

1
Какова мотивация аннотации @ImplementedBy в Guice?
Недавно я прочитал об @ImplementedByаннотации, доступной в Google Guice . Это позволяет программисту определять связь между интерфейсом и его реализацией для будущего использования при внедрении зависимостей. Это пример привязки точно в срок . Я довольно привык определять явные привязки в моих модулях, используя следующий синтаксис: bind(SomeInterface.class).to(SomeInterfaceImplementation.class); Согласно документации, это эквивалентно …

3
Участник: использовать уникальные идентификаторы против объекта домена
После пары полезных ответов о том, должен ли я использовать объект домена или уникальный идентификатор в качестве параметра метода / функции здесь Идентификатор против объекта домена в качестве параметра метода , у меня возникает похожий вопрос re: members (предыдущее обсуждение вопросов не удалось покрыть это). Каковы плюсы и минусы использования …

1
Полезны ли первоклассные продолжения в современных объектно-ориентированных языках программирования?
Продолжения чрезвычайно полезны в функциональных языках программирования (например, в Contмонаде в Haskell), поскольку они допускают простую и регулярную запись кода императивного стиля. Они также полезны в некоторых старых императивных языках, потому что их можно использовать для реализации отсутствующих языковых функций (например, исключений, сопрограмм, зеленых потоков). Но для современного объектно-ориентированного языка …

1
Система уведомлений в социальных сетях
Фон Я работаю над приложением для клиента, которое включает в себя некоторые функции социальных сетей. Первоначально я разрабатывал мобильный интерфейс, но обстоятельства также оставили меня ответственным за разработку этого интерфейса. В целом, наша система позволяет пользователям следить за другими пользователями и получать уведомления о тех, за кем они следуют, как …

2
Ведение государства без присваивания
Я изучаю функциональное программирование, и у меня возникают проблемы с пониманием того, как некоторые конкретные сценарии реализуются без использования заданий. Следующая простая проблема в значительной степени подводит итог моей путаницы. Напишите программу, которая получает события об изменениях в данной структуре данных и генерирует события, когда эта структура данных достигает определенного …

2
Должны ли объекты HTTP Request / Response быть неизменными?
Я думаю, можно с уверенностью сказать, что большинство веб-приложений основаны на парадигме запрос / ответ. В PHP никогда не было формальной абстракции этих объектов. Одна группа пытается изменить это: https://github.com/php-fig/fig-standards/blob/master/proposed/http-message.md Тем не менее, они в некотором роде отслеживаются в вопросе неизменности. С одной стороны, объект запроса / ответа обычно нуждается …

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.