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

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

3
Кто должен управлять навигацией в приложении MVVM?
Пример # 1: у меня есть представление, отображаемое в моем приложении MVVM (давайте использовать Silverlight для целей обсуждения), и я нажимаю кнопку, которая должна перенести меня на новую страницу. Пример # 2: В этом же представлении есть еще одна кнопка, которая при нажатии открывает окно подробностей в дочернем окне (диалоге). …


3
Способы обмена DTO между микросервисами?
Мой сценарий таков. Я разрабатываю систему, предназначенную для получения данных от различных типов датчиков, а также для преобразования и последующего сохранения этих данных для последующего использования различными интерфейсными и аналитическими службами. Я стараюсь сделать все сервисы максимально независимыми, но у меня возникли некоторые проблемы. Команда определилась с DTO, которое мы …

3
Readme.txt против README.txt
Я только что разработал проект в Github, внес свои изменения и т. Д. Это заставило меня задуматься: в основном я вижу README.txt в проектах с открытым исходным кодом, а файл, который я редактировал, был Readme.txt. Это своего рода стандартизация или я должен был оставить все как есть?

6
Должен ли я использовать одну базу данных для одного приложения или использовать одну базу данных для нескольких приложений [закрыто]
У меня есть несколько приложений, некоторые из которых используют данные из одних и тех же источников. Это лучшая практика (или каковы плюсы / минусы), чтобы: оставить данные в базах данных, совместно используемых несколькими приложениями экономит место, так как нужна только одна база данных усложняет индексацию, так как разные приложения имеют …

7
Моделирование имени и фамилии отдельно
Какие аргументы следует учитывать при проектировании новой системы и нужно ли хранить имя человека как одно поле или отдельно как имя / фамилию? Плюсы для одного поля: Упрощенный интерфейс Нет двусмысленности при попытке ввести имя человека, у которого очень длинное имя (часто неясно, какая фамилия / имя ...) Меньшая сложность …

3
Занимает ли хранение простых текстовых данных меньше места, чем хранение эквивалентного сообщения в двоичном формате
Как веб-разработчик, я очень мало разбираюсь в двоичных данных. Если я возьму предложение «Hello world.», Преобразую его в двоичный файл и сохраню как двоичный файл в базе данных SQL, кажется, что 1 и 0 занимают больше места, чем буквы. Мне кажется, что использование букв будет похоже на сжатие, когда один …

5
Должен ли я проверить, существует ли что-то в БД и быстро потерпеть неудачу, или дождаться исключения БД
Имея два класса: public class Parent { public int Id { get; set; } public int ChildId { get; set; } } public class Child { ... } При назначении ChildIdна Parentя должен проверить первый , если он существует в БД или ждать DB бросить исключение? Например (с использованием Entity …

5
Откуда мы знаем, что следующее поколение будет лучше?
Недавно я познакомился с генетическими алгоритмами в этой статье MSDN , в которой он называет их комбинаторной эволюцией, но, похоже, это одно и то же, и я пытаюсь понять, как объединение двух потенциальных решений всегда приведет к новому решению, которое по крайней мере хорошо, как его родители. Почему это так? …

4
Стратегии слияния 1 год разработки в Visual Studio
У меня есть клиент, который настаивал на том, чтобы мы полностью отделили нашу новую разработку от основных веток на весь 2016 год. У них было 3-4 другие команды, работающие над приложением в различных областях. Многочисленные большие изменения были внесены (переключение, как делается внедрение зависимостей, очистка кода с помощью ReSharper и …

8
Где изучение новых навыков вписывается в Agile?
Я начинаю финансовую компанию, занимающуюся разработкой программного обеспечения, и в процессе я изучаю принципы и методы Agile, и один аспект разработки, который я еще не рассматривал, заключается в том, где удовлетворить постоянную потребность разработчиков в освоении новых навыков и технологий в процессе разработки. процесс. Прежде чем работать над финансовым программным …
32 agile 

8
Включает ли «переменные в минимально возможную область видимости» случай «переменные не должны существовать, если возможно»?
Согласно принятому ответу « Обоснование предпочтения локальных переменных переменным экземпляра? », Переменные должны жить в наименьшей возможной области видимости. Упростите проблему в моей интерпретации, это означает, что мы должны реорганизовать такой код: public class Main { private A a; private B b; public ABResult getResult() { getA(); getB(); return ABFactory.mix(a, …

10
Является ли «Parent x = new Child ();» вместо «Child x = new Child ();» плохой практикой, если мы можем использовать последний?
Например, я видел несколько кодов, которые создают такой фрагмент: Fragment myFragment=new MyFragment(); которая объявляет переменную как Fragment вместо MyFragment, а MyFragment является дочерним классом Fragment. Я не удовлетворен этой строкой кодов, потому что я думаю, что этот код должен быть: MyFragment myFragment=new MyFragment(); что более конкретно, это правда? Или в …

5
Зачем нам нужны перечисления в динамически типизированных языках?
Я читал некоторый код здесь и увидел, что enum используется для хранения имен тегов html. Почему мы когда-либо должны это делать? Какую выгоду я получу от этой стратегии? Я знаю, насколько полезны перечисления в скомпилированных или статически типизированных языках, но когда я вижу перечисления в динамически типизированных языках, мне становится …

7
Что означает это утверждение о том, что C # и Java являются половиной языка? [закрыто]
В статье: Почему POCO , есть это предложение: Мачей Собчак хорошо говорит: «Мне просто не нравится, когда кто-то дает мне половину языка и говорит, что это для моей собственной защиты». Я не понимаю, что он имеет в виду, хотя C # принадлежит Microsoft, а Java принадлежит Oracle , это не …
32 java  c#  microsoft  oracle 

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