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

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

3
Чи може вчиняти git більше 2 батьків?
У цій документації це згадується Об'єктом фіксації може бути будь-яка кількість батьків. Але, наскільки я розумію, єдиний випадок, коли комісія матиме більше одного з батьків, - це коли відбулося злиття, і в цьому випадку будуть лише два батьки. Отже, моє запитання полягає в тому, чи може вчинок мати більше 2 …
48 git 

8
Чому NoSQL швидше, ніж SQL?
Нещодавно мене запитали: Чому NoSQL швидше, ніж SQL? Я не погодився з передумовою питання ... це особисто для мене нісенітниця. Я не бачу підвищення продуктивності, використовуючи NoSQL замість SQL. Можливо, SQL над NoSQL, так, але не таким чином. Я щось пропускаю про NoSQL?

6
Що таке інваріанти, як їх можна використовувати та чи використовували ви коли-небудь у своїй програмі?
Я читаю кодери на роботі , і в ньому багато розмов про інваріантів. Наскільки я це зрозумів, інваріант - це стан, який має місце і до, і після виразу. Вони, серед іншого, корисні для доведення правильності циклу, якщо я правильно запам'ятав свій курс логіки. Чи правильний мій опис, чи я …
48 invariants 

6
Чи сама пам'ятна чиста функція вважається чистою?
Скажімо, fn(x)це чиста функція, яка робить щось дороге, як повернення списку основних факторів x. Скажімо, ми робимо запам’ятовувану версію тієї ж функції, що називається memoizedFn(x). Він завжди повертає той самий результат для заданого вводу, але він підтримує приватний кеш попередніх результатів для підвищення продуктивності. Формально кажучи, memoizedFn(x)вважається чистим? Або є …

9
Чому певний час (справжній) цикл у конструкторі насправді поганий?
Хоча загальним питанням, мій обсяг є скоріше C #, оскільки я знаю, що такі мови, як C ++, мають різну семантику щодо виконання конструктора, керування пам'яттю, невизначеної поведінки тощо Хтось задав мені цікаве запитання, на яке мені було нелегко відповісти. Чому (або це взагалі?) Вважають поганим дизайном, щоб дозволити конструктору …
47 c#  architecture 

8
Чому кодування імен аргументів у назвах функцій не зустрічається частіше? [зачинено]
У чистому коді автор наводить приклад assertExpectedEqualsActual(expected, actual) проти assertEquals(expected, actual) колишній заявляв, що він більш чіткий, оскільки він усуває необхідність пам’ятати, куди йдуть аргументи, і можливе неправильне використання, яке випливає з цього. Тим не менш, я ніколи не бачив прикладу колишньої схеми іменування в жодному коді і не бачив …
47 clean-code 

9
Чи встановлено фіксовану дату доставки елементів «спритний» спосіб роботи?
Нам постійно кажуть, що ми будемо по-спритно працювати над новим проектом вищим керівництвом. Вони створили стенд-ап, спринт-планування, ретроспективи тощо тощо. Однак тепер вони придумали план, в якому детально описуються всі роботи, які вони хочуть, щоб ми здійснили дати з кожним елементом і знову показали дати з тим, що буде показано …

12
Уникати вуду "goto"?
У мене є switchструктура, яка має декілька справ для вирішення. switchПрацює над enumякою ставить питання про дублювання коду через об'єднані значення: // All possible combinations of One - Eight. public enum ExampleEnum { One, Two, TwoOne, Three, ThreeOne, ThreeTwo, ThreeOneTwo, Four, FourOne, FourTwo, FourThree, FourOneTwo, FourOneThree, FourTwoThree, FourOneTwoThree // ETC. …

4
Код статусу HTTP для "Ще обробляється"
Я будую API RESTful, який підтримує чергування тривалих завдань для можливої ​​обробки. Типовим робочим процесом для цього API буде: Користувач заповнює форму Клієнт публікує дані в API API повертає 202 Прийнято Клієнт перенаправляє користувача до унікальної URL-адреси для цього запиту ( /results/{request_id}) ~ зрештою ~ Клієнт знову відвідує URL-адресу та …
47 rest  http 


7
Яке фактичне значення послідовного стилю коду
Я є частиною команди консультантів, яка впроваджує нове рішення для замовника. Я відповідальний за більшість оглядів коду на кодовій базі клієнтів (React та javascript). Я помітив, що деякі члени команди використовують унікальні шаблони кодування для того, щоб я міг обрати файл випадковим чином, щоб сказати, хто був автором лише зі …

7
Як я можу переконливо стверджувати проти дублювання стовпців бази даних?
Я почав працювати в новій організації, і одна з моделей, яку я бачив у базі даних, - це дублювання полів для полегшення запитів для запису для бізнес-аналітиків. Ми використовуємо Django та його ORM. В одному випадку ми зберігаємо об’єкт MedicalRecordNumber з унікальною рядком, що ідентифікує пацієнта в певному контексті. У …

4
Чому метод не повинен викидати кілька типів перевірених винятків?
Ми використовуємо SonarQube для аналізу нашого Java-коду, і воно має це правило (встановлене на критичне): Публічні методи повинні містити не більше одного перевіреного винятку Використання перевірених винятків змушує абонентів методу вирішувати помилки, або шляхом їх поширення, або шляхом їх обробки. Це робить ці винятки повністю частиною API методу. Щоб зберегти …

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

3
Чому C # допускає властивості в інтерфейсах?
У C # діє такий код interface I{ int property{get;set;} } Що для мене не має сенсу. Це, здається, порушує один з найважливіших принципів інтерфейсів: відсутність стану (іншими словами, відсутні поля). Чи не властивість створює неявне приватне поле? Хіба це не було б дуже погано для інтерфейсів?

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