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

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

3
Чому Swift ініціалізує спочатку власні підкласи підкласу?
Мовою Swift, щоб ініціалізувати екземпляр, потрібно заповнити всі поля цього класу і лише потім викликати суперконструктор: class Base { var name: String init(name: String) { self.name = name } } class Derived: Base { var number: Int init(name: String, number: Int) { // won't compile if interchange lines self.number = …

2
Аполлон-11: Використання включення замість лінкера
Нещодавно оцифровані та перетворені на репо, оригінальний вихідний код комп'ютерного наведення Apollo 11 став доступним для перегляду на Github . У MAIN.agc автор репо коментує, що вони розділити величезний монолітний вихідний код на менші, більш керовані фрагменти - тобто, на окремі # вихідні файли. Трохи пізніше автор констатує Можливо, може …

3
DI / IoC контейнери та заводи: Де я можу налаштувати свою програму і чому?
Я намагаюся розібратися, коли використовувати реєстр DIC / IoC для налаштування мого програмного забезпечення та коли використовувати фабрики, а також міркування щодо будь-якого підходу. Я використовую StructureMap як мій контейнер DI (DIC), який легко налаштувати за допомогою реєстрів. У DIC практично всі зареєстровані об'єкти є статичними в тому сенсі, що …

4
Чи я передчасно оптимізую?
Зараз я перебуваю на стадії проектування архітектури на основі компонентів в C ++. Мій сучасний дизайн включає використання таких функцій, як: std::vectors з std::shared_ptrs для утримання компонентів std::dynamic_pointer_cast std::unordered_map<std::string,[yada]> Компоненти представлятимуть дані та логіку різних елементів, які потрібні в ігровому програмному забезпеченні, такому як графіка, фізика, AI, аудіо тощо. Я …

1
Чи має сенс застосовувати принципи в Redux до мов ОО?
Redux по суті є функціональним програмуванням, і це має багато сенсу. По мірі повернення до мови OOP, що не належить JavaScript, я хотів би застосувати ті самі принципи, як об'єкт єдиного стану, редуктори, які діють на частини цього стану, бізнес-рівень семантичних дій для зміни стану. Мій проект знаходиться на C …

2
Структура даних для двовимірних настільних ігор на функціональних мовах
Я створюю просту реалізацію MiniMax на мові функціонального програмування Elixir. Оскільки існує безліч ігор з бездоганним знаннями (tic tac toe, connect-four, шашки, шахи тощо), ця реалізація може стати основою для створення AI ігор для будь-якої з цих ігор. Однак одна із проблем, з якими я стикаюся, полягає в тому, як …

6
Критерії прийняття випадкових випадків
Я власник продукту в спритній команді. Я, роблячи тестування прийому на пошту, зазвичай зазначаю, щоб спробувати деякі крайові випадки. Мені нечасто щось виявити, і тоді я передаю його чортам. Коли я відкидаю його розповіді, я отримую відштовхування від одного з розробників. Він каже, що це несправедливо, оскільки я не визначаю …

6
Як статичний набір тексту корисний для великих проектів?
Цікавившись на головній сторінці сайту мови програмування сценаріїв, я зіткнувся з цим уривком: Коли система стає занадто великою, щоб тримати її в голові, ви можете додавати статичні типи. Це змусило мене пам’ятати, що в багатьох релігійних війнах між статичними, складеними мовами (на зразок Java) та динамічними, інтерпретованими мовами (головним чином, …

3
У мові REST яка різниця між ресурсом та представництвом?
Я розумію REST, що дозволяє моделювати сервісні операції як подання стану та переходу з одного стану в інший, використовуючи HTTP. До недавнього часу я завжди розумів ресурси як уявлення про службовий стан, коли читав цю статтю Джиммі Богара, якого я знаю як розумний розробник / архітектор, якого поважає громада. Процитувати …
9 rest  api  api-design 

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

1
Ідіоматичне обгортання API шаблону типу C ++ у C
Я працюю над упаковкою API C ++, який забезпечує доступ до сховища даних (Hazelcast) у функціях C, так що до сховища даних також можна отримати доступ з коду, що містить лише C. API Hazelcast C ++ для структури даних Map виглядає приблизно так: auto map = hazelcastClient->client->getMap<int, string>(mapName); map.put(key, value); …
9 c++  c  api-design 

4
Як чітко визначити межі обмеженого контексту
Після місяця чи близько місяця читання та дослідження DDD я вирішив розпочати власний проект і створив DDD із цими обмеженими контекстами> Клієнти Продукція Замовлення Рахунки Кожен обмежений контекст містить API відпочинку як презентаційний шар, доменний рівень, стійкий шар. Поки добре, код працює безперебійно, але виходячи з монолітного світу, я все …

1
Що робити під час використання ліцензованого коду MIT у проекті, що має ліцензію GPL?
Я працюю над особистим проектом, який я планую на ліцензування в рамках GNU Affero GPL . Однак я знайшов якийсь код, який ліцензується під MIT, який дійсно хочу використовувати, але я не впевнений, що мені робити щодо ліцензування. Решта коду буде моєю під GNU Affero, це лише вихідний файл і …

5
Чому не допускається перевантаження типами повернення? (принаймні у звичайних мовах)
Я не знаю про всі мови програмування, але зрозуміло, що зазвичай не підтримується можливість перевантаження методу з урахуванням його типу повернення (за умови, що його аргументи однакові за кількістю та типом). Я маю на увазі щось подібне: int method1 (int num) { } long method1 (int num) { } Справа …

2
Найкращий алгоритм стиснення для фотографій із затримкою часу
У мене є папка, що містить близько 9000 фотографій JPEG (близько 30 Гбіт), яку я хочу архівувати з певним стисненням. Я розумію, що стискання JPEG-файлів зазвичай не є дуже ефективним, але ці фотографії є ​​кадрами часового проміжку, тому існує велика кількість спільності між більшістю зображень. Чи я в цьому випадку …

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