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

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

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

5
Предоставление дружественных URL для веб-сайта в сравнении с реалиями идентификаторов базы данных.
У нас есть база данных ресурсов, будь то продукты, сообщения в блогах или что-то в этом роде. Нам нужно разработать схему URL для их решения для общедоступного веб-сайта. Вот два примера, которые привязаны к идентификатору базы данных: https://www.youtube.com/watch?v=7FPS6llqhXw http://www.amazon.co.uk/gp/product/B000NHOMSQ Вот пример, который дружелюбен: http://en.wikipedia.org/wiki/LED_circuit (Небольшое представление о моей жизни там …

4
Что предотвращает состояние гонки на замке?
Я понимаю основы того, что такое гонки данных, и как блокировки / мьютексы / семафоры помогают предотвратить их. Но что произойдет, если у вас будет «состояние гонки» на самом замке? Например, два разных потока, возможно, в одном приложении, но работающие на разных процессорах, пытаются получить блокировку в одно и то …

2
Общественная лицензия Mozilla (MPL 2.0) и Стандартная общественная лицензия Lesser GNU (LGPL 3.0)
Я хотел бы выпустить библиотеку программного обеспечения, написанную на классовом объектно-ориентированном языке программирования (Java), на веб-сервисе размещения исходного кода , который позволяет объединять разветвления проекта с основным проектом (GitHub через pull). Запросы). Я исследовал в Интернете и много думал о том, как лицензировать программное обеспечение. Я прав в следующих предположениях …

5
Как провести рефакторинг, когда вся ваша разработка идет по отраслям?
В моей компании все наши разработки (исправления ошибок и новые функции) выполняются в отдельных ветках. Когда он будет завершен, мы отправим его в QA, который тестирует его в этой ветви, и когда нам дают зеленый свет, мы объединяем его с нашей основной веткой. Это может занять от одного дня до …

4
async + await == синхронизация?
Наткнулся на этот пост, в котором говорится о создании асинхронных веб-запросов. Не говоря уже о простоте, если в реальном мире все, что вы делаете, это делаете асинхронный запрос и ждете его в следующей строке, разве это не то же самое, что вначале выполнять вызов синхронизации?

4
Системы типов: номинальные и структурные, явные и неявные.
Меня немного смущает разница между системами номинального и структурного типов. Может кто-нибудь объяснить, чем они отличаются? Из того, что я понимаю: Номинал: Совместимость типов основана на имени типа. Структурный: Совместимость типов основана на структуре типов, например, в C, если 2 переменные являются типами структур с разными именами, но с одинаковой …

6
Что означает закон Джейми Завински?
Мне нужно правильное объяснение закона разработки программного обеспечения Джейми Завински : Каждая программа пытается развернуться, пока не сможет прочитать почту. Те программы, которые не могут расширяться, заменяются теми, которые могут.
24 history  concepts 

8
Есть ли принципиальное отличие Unix от Linux в дизайне и других аспектах? [закрыто]
Закрыто. Этот вопрос не по теме . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме разработки программного обеспечения в стеке. Закрыто 7 лет назад . Я продолжаю читать это предложение: Linux - это Unix-подобная система, но это не Unix. Я не знаю, …

8
Когда Agile идет не так [закрыто]
В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и, возможно, вновь открыть, обратитесь за …
24 agile 

6
Зачем нам куча, если в стеке все можно сделать намного эффективнее?
На самом деле это в некоторой степени связано с вопросом, который я задал вчера о том, почему в приложениях, которые мы используем сегодня , необходимы и стек, и куча (и почему мы не можем просто использовать кучу вместо обоих, чтобы иметь простой единый стандарт, чтобы пройти). Однако во многих ответах …
24 stack  heap 

10
Конечные автоматы против потоков
Алан Кокс однажды сказал: «Компьютер - это конечный автомат. Потоки предназначены для людей, которые не могут программировать конечные автоматы». Поскольку прямое обращение к Алану - это не вариант для меня, я бы предпочел спросить: как можно достичь многопоточности в языке высокого уровня, например Java, используя только один поток и конечный …

9
Мой коллега хороший парень, но его производительность ниже среднего. Должен ли я сказать своему боссу? [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 4 года назад . Я был вовлечен в проект около трех месяцев назад, который до этого разрабатывался одним …

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

6
Каковы реальные издержки TDD, когда вся команда привыкла к этому?
Какой процент времени экономится и стоит на TDD. Я предполагаю, что этот процент изменений стоимости и вознаграждения в течение жизненного цикла проекта. Я предполагаю, что начальная фаза имеет гораздо больше затрат, но мало призов. В дальнейшем (во время ре-факторинга ) вы получите пользу от ваших тестов. Я слышал, что где-то …
24 productivity  tdd 

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