Розробка програмного забезпечення

Питання та відповіді для професіоналів, науковців та студентів, які працюють у життєвому циклі розвитку систем

4
C ++ Кращий метод роботи з реалізацією для великих шаблонів
Зазвичай при оголошенні класу C ++ найкраще застосовувати лише декларацію у файлі заголовка та розміщувати реалізацію у вихідному файлі. Однак, схоже, що ця модель дизайну не працює для шаблонових класів. Якщо ви шукаєте в Інтернеті, існує 2 думки щодо найкращого способу управління шаблонами класів: 1. Вся заява та реалізація в …

2
Чи забороняють функціональні мови програмування побічні ефекти?
Згідно з Вікіпедією, функціональні мови програмування , які є деклараційними, вони забороняють побічні ефекти. Декларативне програмування в цілому намагається мінімізувати або усунути побічні ефекти. Також, за даними Вікіпедії, побічний ефект пов’язаний зі змінами стану. Отже, мови функціонального програмування, в цьому сенсі, вони фактично усувають побічні ефекти, оскільки вони не рятують …

1
Побудова в джерелі та збірка без джерела
У моїй розробці (насамперед C ++) я давно дотримувався використання збірок із вихідних джерел. Тобто, мій джерело , як правило , знаходиться в /project/srcдиректорії і будує жити в /project/build/bin/release, /project/build/bin/debugкаталоги. Я зробив це, тому що він зберігає мої вихідні каталоги чистими від проміжних файлів, у мене є одне розташування для …

2
Що таке правильний код статусу відповіді на POST, коли батьківський ресурс не знайдений?
У мене є така кінцева точка: a/{id}/b і хочете створити запит на bнадсилання POSTдо нього. Якщо aз даними {id}не знайдено, чи слід відповідати 404 NOT_FOUNDчи, можливо, з 409 CONFLICT? Це обробляти просто a/{id}, хитрість полягає в тому, що тут використовується субресурс.

2
Як безпечно запустити міграцію баз даних за допомогою декількох примірників додатків?
У нас є додаток, який поєднує як швидку (<1 секунду), так і повільну міграцію бази даних (> 30 секунд). Зараз ми виконуємо міграцію баз даних як частину CI, але тоді наш інструмент CI повинен знати всі рядки підключення до бази даних для нашого додатка (у різних середовищах), що не ідеально. …

5
Це порушення відкритого закритого принципу для оновлення константи, що представляє цінність у реальному світі?
У мене клас обчислення чистого річного доходу працівників. Він має константу, що представляє відсоток податку. Але одного дня ставка податку змінилася, тому мені потрібно виправити код. Чи вказує акт фіксації цієї константи про порушення принципу відкритого закриття, оскільки він постулює, що клас повинен бути закритий для модифікації?

3
Як розробити програму C ++, щоб дозволити імпорт функцій під час виконання?
сьогодні я люблю задавати вам питання щодо можливостей C ++ для реалізації конкретної архітектури програмного забезпечення. Звичайно, я використовував пошук, але не знайшов жодної прямо пов'язаної відповіді. В основному, моя мета - створити програму, яка дозволяє користувачеві моделювати та моделювати довільно складені фізичні системи, наприклад водіння автомобіля. Я припускаю, що …

6
Який код слід включити до абстрактного класу?
Нещодавно мене турбує використання абстрактних занять. Іноді абстрактний клас створюється заздалегідь і працює як шаблон того, як працювали похідні класи. Це означає, більш-менш, що вони забезпечують функціональність високого рівня, але залишають певні деталі, які можна реалізувати у похідних класах. Абстрактний клас визначає потребу в цих деталях, застосовуючи деякі абстрактні методи. …

2
Що насправді відрізняється між SOA та мікросервісами
Відмова від відповідальності Я сподіваюся, що я не наступаю ні на кого ніг і не ображаю ентузіастів жодної концепції Фон Я шукав реальні відмінності між сервісно-орієнтованою архітектурою та мікросервісами, не знайшовши чіткої відповіді. Я читаю такі речі, як: побічні ефекти SOA SOA як анти-модель Мікросервіси прийшли виправити збої SOA ESB …

4
Яка різниця між стадійними та UAT-середовищами?
Я знаю, що ми повинні мати принаймні 3 різних середовища під час розробки рішення: Розвиток : Програмісти можуть будь-коли змінювати та натискати на зміни, щоб швидко протестувати свій код та інтегруватися з іншими змінами, не боячись щось порушити - це пов'язано з базами даних та послугами TEST; UAT : До …

3
Чому компілятори зазвичай генерують виконувані файли тільки для платформи, на якій вони встановлені?
Я розробник C ++ і, намагаючись краще зрозуміти розробку крос-платформ, я намагаюся краще зрозуміти деякі деталі реалізації компіляторів та те, як саме вони створюють специфічні бінарні файли для ОС. У розпалі свого дослідження я зрозумів, що принаймні на деякий час більшість компіляторів, які ви завантажили на певну платформу, лише компілювали …

3
Як переробляти додаток із кількома випадками комутації?
У мене є додаток, який приймає ціле число як вхідне і базується на статичних методах введення викликів різних класів. Кожного разу, коли додається нове число, нам потрібно додавати інший випадок і викликати інший статичний метод іншого класу. Зараз в комутаторі 50 випадків, і кожен раз, коли мені потрібно додати ще …

1
Інтеграційні тести в проектах OSS - як поводитися з сторонніми сторонами з аутентифікацією?
Один з моїх ( з відкритим вихідним кодом) хобі проектів є резервним інструментом , який робить автономні резервні копії репозиторіїв з GitHub, Bitbucket і т.д. Він називає Інтерфейс API хостерів , щоб отримати список сховищ, а потім він використовує Git / Mercurial / все , щоб клонувати / перетягніть сховища …

2
Чи запах коду має інтерфейс лише з геттерами?
(Я бачив це запитання , але перша відповідь стосується властивостей авто більше, ніж про дизайн, а друга говорить про приховування коду зберігання даних від споживача. Я не впевнений, що я хочу / мій код робить, тому я хотів би почути якусь іншу думку) У мене є два дуже схожих об'єктів, …

1
Як функціональний стиль допомагає знущатися із залежностей?
З інтерв'ю з Кентом Беком у недавньому номері журналу Java: Бінсток: Давайте обговоримо мікросервіси. Мені здається, що перший тест на мікросервісах ускладнився б в тому сенсі, що деяким службам, щоб функціонувати, знадобиться наявність цілого ряду інших сервісів. Ви згодні? Бек: Схоже, той самий набір професійних пропозицій щодо того, щоб мати …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.