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

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

5
Что такое хорошая практика проектирования, чтобы не задавать тип подкласса?
Я читал, что когда вашей программе нужно знать, к какому классу относится объект, обычно это указывает на недостаток дизайна, поэтому я хочу знать, что такое хорошая практика для этого. Я реализую класс Shape с различными подклассами, унаследованными от него, такими как Circle, Polygon или Rectangle, и у меня есть разные …

1
Диаграмма последовательности: объекты актеров?
Наиболее вероятный ответ - нет, но я пришел с этим сомнением. Может ли актер выступать в качестве класса? Я знаю, что актеры инициируют события и могут иметь приглашения, но если есть класс, моделирующий актера (например, пользовательский класс), можем ли мы вызывать методы над ними? Или это полное недопонимание роли актера, …

9
Каким должен быть вклад команды Scrum?
Наша команда Scrum состоит из обычных ролей Scrum. У нас нет дизайнера UI / UX, и разработчики работают с UI / UX с владельцем продукта. Здесь кроется проблема. Каждый раз, когда мы собираемся создать резерв, и мы не определяем точный дизайн UI / UX до начала спринта, мы заканчиваем тем, …
11 agile  scrum 

3
Можно ли реализовать хорошо распределенную хеш-таблицу без использования оператора%?
Я ищу реализовать быструю, хорошо распределенную хэш-таблицу в C #. У меня возникают проблемы с выбором моей функции ограничения хеша, которая берет произвольный хеш-код и «ограничивает» его, чтобы его можно было использовать для индексации сегментов. Пока я вижу два варианта: С одной стороны, вы можете убедиться, что в ваших корзинах …

3
стратегия github для сохранения одной версии файла в секрете
Я лектор, пишущий проблемы кодирования для студентов. Что я хочу сделать, так это дать учащимся шаблонный код с заполнителями для функций, которые студенты должны выполнять. Я дам студентам доступ к частному репозиторию Github, чтобы клонировать это. Однако я также хочу версию кодовой базы, дополненную примерами решений. Очевидно, я не хочу, …
11 git  github 

5
Как предотвратить одновременную регистрацию двух пользователей с одинаковым именем пользователя?
Мы не можем сериализовать регистрации, поскольку одновременно регистрируются миллионы пользователей. Параллельные регистрации должны произойти. Допустим, база данных не содержит имя пользователя 'user1'. Когда два пользователя пытаются зарегистрироваться одновременно с 'user1', он примет это. Но позже это вызовет проблемы. Этого не должно быть. Я ищу логичное решение. Ничего конкретного. Просто идея, …

7
Реализация состояния объекта на ОО языке?
Мне дали посмотреть на Java-код, который имитирует гонку автомобиля, включая реализацию базового автомата. Это не классическая машина состояний компьютерных наук, а просто объект, который может иметь несколько состояний и может переключаться между его состояниями на основе серии вычислений. Чтобы описать только проблему, у меня есть класс Car с вложенным классом …

2
Объем рутинной работы по разработке программного обеспечения и ее влияние на оценку
Я убежден, что объем рутинной работы по разработке программного обеспечения - и должен быть - относительно мал, если не пренебрежимо мал, и что это является фундаментальной проблемой оценки программного обеспечения. Позвольте мне описать, как я пришел к такому выводу и сказать, есть ли в аргументации серьезные недостатки: Все, что можно …

3
Каковы преимущества XML по сравнению с S-выражениями (-ish)?
Я хотел бы задать вопрос о нотации XML и S-выражений (-ish). S-выражения довольно старые; они также очень просты. Мы могли бы рассмотреть две формы, которые одинаковы по значению, разные по синтаксису: (XML-код взят из польской википедии ) <?xml version="1.0" encoding="UTF-8"?> <ksiazka-telefoniczna kategoria="bohaterowie książek"> <!-- komentarz --> <osoba charakter="dobry"> <imie>Ambroży</imie> <nazwisko>Kleks</nazwisko> …
11 xml 

7
Какие принципы выучены на C, которые нельзя выучить на языках более высокого уровня? [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 3 года назад . Я считаю, что C - это хороший язык для изучения принципов программирования. Что …
11 c  low-level 

6
Является ли степень двух бит на слово «удобной»? Если это так, то почему?
Я нахожу несколько источников, утверждающих, что степень двоичных разрядов в двоичном слове (например, 8 бит на байт) является «хорошей вещью» или «удобной». Я не нахожу источника, указывающего почему. Из какой истории почему байты восемь бит? мы читаем в утвержденном ответе: Бинарные компьютеры побуждают дизайнеров делать размеры двух степеней. Хорошо, но …
11 hardware  byte  bit 

3
Как спроектировать REST API для обработки операций без CRUD?
Я пытаюсь преобразовать набор сервисов на основе SOAP в API RESTful. Я начал с определения ресурсов путем анализа имен операций и получил ресурс Subscription. Когда мне нужно обновить состояние подписки, я не могу просто отправить POSTзапрос на сервер, потому что у меня нет прямого доступа к ресурсам, но мне нужно …

1
Луковая архитектура против 3-уровневой архитектуры
Я вижу только преимущества для луковой архитектуры по сравнению с 3-уровневой архитектурой, где BL должен вызывать методы для DAL (или интерфейса DAL) для выполнения CRUD. Лук имеет лучшее разделение проблем, тестируемость, ремонтопригодность и чище. Итак, действительно ли луковая архитектура действительно лучше во всех аспектах, а 3-уровневая архитектура - это просто …

2
Лучше ли полагаться на транзитивные зависимости или явно объявлять их?
У меня есть такая структура проекта: My Project - Other Team's Project -Third Party Dependency My Projectтребует Other Team's Projectфункционировать, и то и другое My Projectи Other Team's Projectтребует Third Party Dependencyфункционировать. Мы используем систему управления зависимостями для управления ими. С точки зрения дизайна, лучше ли My Projectпереходить на переходный …

3
Как должен быть разработан класс «Сотрудник»?
Я пытаюсь создать программу для управления сотрудниками. Однако я не могу понять, как спроектировать Employeeкласс. Моя цель - иметь возможность создавать и управлять данными о сотрудниках в базе данных, используя Employeeобъект. Базовая реализация, о которой я подумал, была такой простой: class Employee { // Employee data (let's say, dozens of …

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