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

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

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

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

2
Чи можна прискорити хеш-таблицю, використовуючи двійкові дерева пошуку для окремого ланцюжка?
Я хочу впровадити хеш-таблицю за допомогою бінарних дерев пошуку, щоб зменшити складність пошуку в процесі роздільного ланцюга від O (n) (за допомогою пов'язаного списку) до O (log n) (за допомогою BST). Чи можна це зробити, і якщо так, то як? Було б простіше зрозуміти, якщо рішення буде поетапним, реалізацією логіки. …

3
Як програмно контролювати давно запущену програму
Що я зараз маю, можна підсумувати цим псевдокодом: public static void Main(string[] args) { var listOfObjects = Database.GetObjectsToUploadToOnlineService(); Parallel.ForEach(Upload) } private static void Upload(MyUploadObject obj) { //Build object (takes a few milliseconds) //Format to JSON (takes a few more milliseconds) //Upload (can take up to a max of 10 minutes) …

1
Виправляючи виправлення на більш ранньому фіксації, я повинен перезавантажувати або додавати окрему фіксацію виправлення?
Поширений сценарій розробки програмного забезпечення - це перегляд коду чужого коду. Загальним інструментом для цього є відкриття запиту на виклик. Моє запитання полягає в тому, що коли проблеми будуть знайдені в огляді, чи слід змінити здійснювати окремо (нове зобов’язання) або чи слід змінити існуючий комітет (якщо припустити, що ніхто не …

1
Нарізання стеку розвитку - по діагоналі?
У нас триває новий проект, і на даний момент розробники розділилися на дві команди, команду A та команду B. Цей проект має дві частини, які потребують розробки протягом усього стеку розробок. Дуже спрощений зразок нашого стека, показаний нижче: Кожна частина проекту вимагає розробки на всій стеці, тому я, як правило, …

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

1
Відокремлення ASP.NET IdentityUser від інших моїх сутностей
У мене є ProjectName.Coreбібліотека, яка містить всю мою ділову логіку та мої сутності та їх поведінку. Зараз немає жодного відношення до Entity Framework або будь-якого іншого DAL, тому що мені подобається тримати ці речі відокремленими. Конфігурації Entity Framework (за допомогою API Fluent) знаходяться в ProjectName.Infrastructureпроекті, що забезпечує можливість просування моїх …

6
Подолання розриву між абстрактними машинами та комп'ютерними архітектурами? [зачинено]
Закрито . Це питання має бути більш зосередженим . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно зосередило увагу на одній проблемі, лише відредагувавши цю публікацію . Закрито 5 років тому . Я завжди відчуваю себе роз'єднаним між абстрактними машинами (такими як машини Тьюрінга) та комп'ютерними …

1
Використання класів типу Haskell для забезпечення комутативності
Я хочу визначити клас типу для геометричних об'єктів, які можна перетинати між собою: class Intersect a b c | a b -> c where intersect :: a -> b -> c -- Language extensions: -XMultiParamTypeClasses, -XFunctionalDependencies Ідея полягає у тому, щоб мати функції перетину загального призначення, які можуть обробляти об'єкти …

2
Чому ключове слово 'out' використовується у двох, здавалося б, неоднакових контекстах?
У C # outключове слово можна використовувати двома різними способами. Як модифікатор параметра, в якому аргумент передається за посиланням class OutExample { static void Method(out int i) { i = 44; } static void Main() { int value; Method(out value); // value is now 44 } } Як модифікатор параметрів …

4
Чи є якісь переваги використання цієї додаткової змінної в анотації циклу?
У великому проекті, над яким я працюю (я псевдокод), я знайшов таку анотацію циклу: var someOtherArray = []; for (var i = 0, n = array.length; i < n; i++) { someOtherArray[i] = modifyObjetFromArray(array[i]); } Що привернуло мою увагу, це додаткова змінна "n". Я ніколи раніше не бачив лопа, написаного …

1
Ефективний спосіб представити логіку шестикутної дошки для ігор, що нагадують абалони
Мені потрібно реалізувати гру AI для Abalone, і мені цікаво, який найкращий спосіб представити логіку дошки за допомогою Java, не витрачаючи занадто багато ресурсів на всі перевірки та оновлення. Краще використовувати різні списки? Матриця об'єктів Cell? Будь-яка пропозиція?

4
Коли приватний метод повинен приймати загальнодоступний шлях для доступу до приватних даних?
Коли приватний метод повинен приймати загальнодоступний шлях для доступу до приватних даних? Наприклад, якби у мене був цей незмінний клас мультиплікатора (трохи надуманий, я знаю): class Multiplier { public: Multiplier(int a, int b) : a(a), b(b) { } int getA() const { return a; } int getB() const { return …

2
Синхронізація між двома системами, що використовують MongoDB як журнал змін
Ми розробляємо дві суміжні системи. Один з них (A) буде встановлений на машинах наших клієнтів. Решта (B) буде використана моєю організацією. У кожної системи є своя база даних (реляційна), і їх схеми відрізняються. Однак обидві системи мають бути синхронізованими. Крім того, деякі зміни B мають бути експортовані до всіх систем …

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