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

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

4
Имеет ли смысл когда-либо НЕ сводить отношения один к одному?
Если у нас есть таблица A, которая имеет отношение один к одному с таблицей B, имеет ли смысл когда-нибудь их разделять? Или никогда не помешает объединить их в один стол? Влияет ли какой-либо из этих сценариев (две таблицы против одной объединенной таблицы) на что-либо относительно его нормальной формы (1NF, 2NF, …

9
Почему используются числа без знака?
Я не могу понять, почему микропроцессорные системы используют числа без знака. Я полагаю, что стоимость просто вдвое превышает число условных веток, так как для алгоритма, отличного от .etc, нужен алгоритм, отличный от подписанного, но есть ли еще алгоритмы, для которых числа без знака являются существенным преимуществом? Отчасти мой вопрос: почему …
12 numbers 

2
Микросервисная архитектура моделей общих доменов
Предположим, у нас есть приложение Spring Boot, которое использует архитектуру микросервисов. Каждая из служб имеет свои собственные доменные модели, но каждая служба должна ссылаться на объект домена пользователя. Каков наилучший подход к решению этой проблемы? Было бы лучше, если бы у каждой службы был просто идентификатор пользователя, а затем, при …

1
Алгоритм рассадки Зомбини на пароме капитана Кахуна?
Я недавно играл в переиздание The Logical Journey of Zoombinis и пытаюсь реализовать некоторые компьютерные алгоритмы, которые могут решать различные головоломки. Я застрял на том, как подойти к загадке парома Капитана Каджуна. Для тех, кто незнаком, Zoombini - это существо с 4 атрибутами: волосы, глаза, нос и ступни. Каждый из …
12 algorithms 

6
Как большие JavaScript-приложения должны быть структурированы?
Недавно мне показали несколько плагинов JavaScript, написанных для разработчика мобильных приложений OBIEE, а также несколько пользовательских библиотек для различных проектов. Исходя из опыта ООП, я немного запутался в структуре этих проектов. Я вижу файлы длиной в тысячи строк. Я привык разбивать вещи на файлы и классы, но я понимаю, что …

2
Различия между тестом и спецификацией
У меня возникла проблема с концепцией, и я не могу найти информацию о различиях между Test (UnitTest и т. Д.) И Spec (Rspec и т. Д.). Насколько я знаю, спецификации - это интеграционные тесты, а тесты - в UnitTest, но только это. Можете ли вы объяснить, в чем различия?

4
Это плохая практика, чтобы повторно использовать параметры метода?
Есть моменты, когда мне нужно изменить значение, переданное в метод изнутри самого метода. Примером может служить очистка строки, такой как этот метод, здесь: void SanitizeName(string Name) { Name = Name.ToUpper(); //now do something here with name } Это чисто безвредно, поскольку Nameаргумент не передается по ссылке. Однако, если по какой-либо …

2
Как именно программа общается с драйвером устройства?
Поэтому я не совсем понимаю, как именно мы, программисты, общаемся с устройствами на компьютере. Сейчас я не говорю о больших идеях. Я знаю, что есть драйверы устройств, которые устанавливаются поверх аппаратного обеспечения, чтобы различные программы могли использовать их функции. А вообще кто конкретно разговаривает с водителями? Записывает ли программист приложение …
12 hardware  drivers 

3
Что делать, если критическая функциональность зависимости нарушена и препятствует развитию?
Вчера я работал над проектом API на Rails 5, который использует библиотеку actions-as-taggable-on, чтобы вещи могли иметь теги (например, вопросы по SE). Rails 5 сейчас находится в альфа-поддержке. В настоящее время существует PR, чтобы исправить ошибку, ожидающую слияния с мастером; ошибка привела к тому, что моя функциональная ветвь остановилась на …

2
Шаблоны для поддержания согласованности в распределенной системе источников событий?
В последнее время я читал об источниках событий и мне действительно нравятся идеи, стоящие за ним, но я застрял со следующей проблемой. Допустим, у вас есть N одновременных процессов, которые получают команды (например, веб-серверы), генерируют в результате события и сохраняют их в централизованном хранилище. Давайте также предположим, что все переходные …

2
Почему массивы переменной длины стали необязательными в C 2011?
Когда в 1999 году были введены VLA, я подумал, что это отличная инновация для языка. Однако, узнав, что это стало необязательным в C 2011, мне интересно, что привело к его изменению статуса, и означает ли это, что функция фактически устарела. Если да, существует ли эквивалентное понятие автоматического управления данными динамического …

5
Наследование против дополнительного свойства с нулевым значением
Для классов с необязательными полями лучше использовать наследование или свойство, допускающее значение NULL? Рассмотрим этот пример: class Book { private String name; } class BookWithColor extends Book { private String color; } или class Book { private String name; private String color; //when this is null then it is "Book" …
12 java  inheritance  class  null 

1
Что означает здесь Google, когда говорят «не копируйте и не вставляйте этот код»?
Вот выдержка из кода API Google recaptcha ( https://www.google.com/recaptcha/api.js ): /* PLEASE DO NOT COPY AND PASTE THIS CODE. */ (function() { if (!window['___grecaptcha_cfg']) { window['___grecaptcha_cfg'] = {}; }; if (!window['___grecaptcha_cfg']['render']) { window['___grecaptcha_cfg']['render'] = 'onload'; }; window['__google_recaptcha_client'] = true; var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src …

3
Лучшие практики для использования публичного, защищенного, частного?
Справедливо ли говорить, что privateпри кодировании чего-либо является хорошей практикой по умолчанию все по умолчанию ? А затем обновите его только до того момента, protectedкогда это потребуется подклассу, или publicесли это понадобится другому классу?

3
Это нормально, если я не могу решить проблему, сидя перед компьютером? [закрыто]
Закрыто. Этот вопрос не по теме . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме разработки программного обеспечения стека Exchange. Закрыто 4 года назад . Я программист-любитель и начинающий. Большую часть времени я не могу решить проблему, сидя перед компьютером. Например, …

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