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

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

1
Общественная лицензия Microsoft против MIT?
Я работаю с новым плагином ( flexbox ) и столкнулся с лицензией MS-PL, с которой раньше не сталкивался. Раньше я использовал в основном лицензионные проекты MIT и Apache, поэтому я понятия не имею, в чем основные отличия от этого. Вот ссылка на него: http://opensource.org/licenses/MS-PL Может кто-нибудь помочь объяснить мне разницу? …

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

5
Могут ли несколько процессоров / ядер получать доступ к одной и той же оперативной памяти одновременно?
Это то, что я думаю , произойдет: Если два ядра попытались получить доступ к одному и тому же адресу в ОЗУ, одному пришлось бы ждать, пока другое получит доступ к ОЗУ. Во второй раз, когда каждое ядро ​​будет пытаться получить доступ к одному и тому же адресу, они могут все …

2
Лицензия с открытым исходным кодом, которая предотвращает перепродажу
У меня есть проект с открытым исходным кодом, который является надстройкой к TFS (то есть для разработчиков и тех, кто использует TFS.) В настоящее время используется GPL. Но мне приходит в голову, что GPL на самом деле не отражает того, что я пытаюсь сделать с моей лицензией. Я хочу, чтобы …

5
Правильный обходной путь для множественного наследования в Java (Android)
У меня есть концептуальная проблема с правильной реализацией кода, которая, по-видимому, требует множественного наследования, что не было бы проблемой во многих языках ОО, но поскольку проект для Android, такого понятия, как множественное, не существует extends. У меня есть куча деятельности, полученная от различных базовых классов, таких как простой Activity, TabActivity, …

5
Ищем лучшие практики для нумерации версий зависимых программных компонентов
Мы пытаемся выбрать хороший способ нумерации версий для программных компонентов, которые зависят друг от друга. Давайте будем более конкретными: Программный компонент A - это встроенное программное обеспечение, работающее на встроенном устройстве, а компонент B - его соответствующий драйвер для обычного ПК (компьютера с Linux / Windows). Они общаются друг с …
15 versioning 

2
Структура Git-репозитория
Извините, если это дубликат, я посмотрел. Мы переезжаем в Git. В Subversion я привык иметь папки \ trunk, \ branch и \ tags. С Git переключение между ветвями заменит содержимое рабочего каталога, так что я прав, если предположить, что способ, которым мы привыкли работать, не применим к Git? Я предполагаю, …

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

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

2
Построить один, чтобы выбросить против эффекта второй системы
С одной стороны, есть совет, который гласит: «Построить, чтобы выбросить». Только после завершения программной системы и просмотра конечного продукта мы понимаем, что пошло не так на этапе проектирования, и понимаем, как мы должны были это сделать. С другой стороны, есть «эффект второй системы», который говорит, что вторая система того же …

5
Что считается сторонним кодом?
Вдохновленный этим вопросом Использование сторонних библиотек - всегда использовать обертку? Я хотел знать, что люди на самом деле считают сторонними библиотеками. Пример из PHP: Если я создаю приложение с использованием Zend Framework, я должен рассматривать библиотеки Zend Framework как сторонний код? Пример из C #: если я создаю настольное приложение, …

2
Лицензирует ли НАСА программное обеспечение, которое оно разрабатывает?
НАСА предоставляет программное обеспечение для визуализации под названием Panoply . Существует страница Credits and Acknowledgements, которая подтверждает и перечисляет лицензии на зависимости программного обеспечения, но не предоставляет информации о собственной лицензии. Я посмотрел на другое программное обеспечение, произведенное НАСА , включая исходный код для GISS, и не могу найти какую-либо …

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

1
Правильный ответ для вставки REST - полная новая запись или просто значение идентификатора записи?
Я создаю REST API, который позволяет вставлять (POST, не идемпотент) и обновлять (PUT, идемпотент) запросы на добавление / обновление базы данных для нашего приложения. Мне интересно, есть ли какие-либо стандарты или лучшие практики относительно того, какие данные мы отправляем обратно клиенту в ответ на операцию POST (вставка). Нам необходимо отправить …
15 rest 

1
Есть ли разница между аргументами и параметрами?
Это может быть так: Параметр означает от POV вызывающих, а аргументы означают внутри процедуры, или наоборот. Или нет разницы? Обновить В шведском языке мы говорим «anropsparametrar», то есть «параметры, которые вызывают процедуру», и мы не будем говорить «anropsargument» («аргументы, которые вызывают процедуру»).

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