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

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

3
Чистий код: наслідки коротких методів з малою кількістю параметрів
Нещодавно під час огляду коду я натрапив на код, написаний новим колегою, який містить візерунок із запахом. Я підозрюю, що рішення мого колеги ґрунтуються на правилах, запропонованих відомою книгою «Чистий кодекс» (а можливо, і іншими подібними книгами). Наскільки я розумію, конструктор класу повністю відповідає за створення дійсного об’єкта і що …

2
Як реалізовані дженерики в сучасному компіляторі?
Що я тут маю на увазі, як ми переходимо від якогось шаблону T add(T a, T b) ...до згенерованого коду? Я продумав декілька способів цього досягти, ми зберігаємо загальну функцію в AST як Function_Nodeі тоді, коли ми використовуємо її, ми зберігаємо в оригінальному вузлі функції копію себе з усіма типами, …

5
Як застосувати принцип розбиття інтерфейсу в C?
У мене є модуль, скажімо, "M", у якого є кілька клієнтів, скажімо, "C1", "C2", "C3". Я хочу розподілити простір імен модуля M, тобто декларації API та даних, які він відкриває, у файли заголовків таким чином, що - для будь-якого клієнта видно лише ті дані та API, які йому потрібні; решта …
15 c  interfaces  solid 

5
Система авторизації та аутентифікації для мікросервісів та споживачів
Ми плануємо перетворити систему нашої компанії в систему, що базується на мікропослугах. Ці мікросервіси будуть використовуватися нашими власними внутрішніми додатками компанії та сторонніми партнерами, якщо це потрібно. Один для бронювання, один для продуктів тощо. Ми не впевнені, як поводитися з ролями та сферами застосування. Ідея полягає у створенні 3 основних …

5
Як поєднувати суворі TDD та DDD?
TDD - це розробка коду, керуючись тестами. Таким чином, типові шари зазвичай не будуються вперед; вони повинні злегка з'являтися через кроки рефакторингу. Дизайн, керований доменом, включає безліч технічних зразків, що визначають чітко встановлені шари, такі як рівень програми, рівень інфраструктури, шар домену, рівень стійкості. Як почати кодувати частину проекту DDD …

1
можна досягти моделі власності Руста за допомогою загальної оболонки C ++?
Переглядаючи цю статтю про безпеку паралельних ресурсів Руста: http://blog.rust-lang.org/2015/04/10/Fearless-Concurrency.html Мені було цікаво, скільки цих ідей можна досягти за C ++ 11 (або новіших). Зокрема, чи можу я створити клас власника, який передає право власності на будь-який метод, до якого він може бути переданий? Здається, що у C ++ є стільки …

2
Чи повинні співробітники у приватному сховищі Github роздвоювати репо?
Наразі я працюю над проектом, і у нас є вихідний код у приватному сховищі Github, і кожен з нас є співробітником. Що нам незрозуміло - це як розділити кожну нашу роботу. Я думаю, що нам потрібно зробити: Кожному з нас потрібно розщедрити сховище Коли ми готові надіслати свій код, ми …

2
DDD CQRS - за запитом та авторизацією за командою
Підсумок Чи має бути виконана авторизація в CQRS / DDD за командою / запитом чи ні? Я вперше розробляю онлайн-додаток, використовуючи більш-менш строго схему DDD CQRS. Я зіткнувся з якоюсь проблемою, яку я не можу реально опустити. Додаток, який я будую, - це головна програма, яка дозволяє людям створювати книги, …

3
Чи добре визначити змінну всередині циклу? [зачинено]
Закрито . Це питання потребує деталей або ясності . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Додайте деталі та уточніть проблему, відредагувавши цю публікацію . Закрито 4 роки тому . Мій інструктор одного разу сказав мені, що я не повинен визначати змінну всередині циклу , але я чесно все …

4
Чи буде закрито підключення до бази даних, якщо ми отримаємо рядок читання даних і не прочитаємо всі записи?
Хоча розуміння того, як yieldключове слово роботи, я натрапив на link1 і LINK2 на StackOverflow , який виступає за використання під yield returnчас проходу через DataReader і підходить моєї потреби , а також. Але це змушує мене замислюватися, як це станеться, якщо я використовую, yield returnяк показано нижче, і якщо …
15 c#  database  .net  resources 

1
Чи неефективний Collection.stream (). Filter (). ForEach () порівняно зі стандартом для кожного циклу?
IntelliJ IDEA рекомендував мені щойно замінити наступний цикл для кожного циклу на виклик Java 8 "forEach": for (Object o : objects) { if (o instanceof SomeObject) { doSomething(); } } Рекомендований дзвінок хотів би так: objects.stream().filter(o -> o instanceof SomeObject).forEach(o -> doSomething()); Якщо я не розумію, як працює основна функціональність …

2
Критика OCaml: чи все-таки вона діє?
Я повний новачок із OCaml. Нещодавно я натрапив на цю сторінку, де перераховується велика кількість критики до OCaml. Бачачи, що сторінка на ній досить стара (2007 р.): Яка з перелічених там пунктів відзначається і сьогодні? Наприклад: чи все ж правда, що неможливо надрукувати загальний об'єкт? Я хочу зрозуміти, що я …
15 ocaml 

5
Еквівалент XSLT для JSON
Мені було цікаво знайти (або за потреби розробити) еквівалент XSLT для JSON. Оскільки я не знайшов жодного, я розглядав можливу мову запитів, щоб використовувати для узгодження шляхів до JSON, щоб застосувати шаблони (з JavaScript), коли була відповідність (ймовірно, просто перевіряла масив відповідних шаблонів за порядком і зупинялась на перший шаблон, …
15 javascript  json  xslt 

4
Як поводитися з "круговою залежністю" при ін'єкції залежності
У заголовку написано "Кругова залежність", але це не правильне формулювання, оскільки мені дизайн здається солідним. Однак розглянемо наступний сценарій, коли сині частини подаються від зовнішнього партнера, а помаранчевий - це моя власна реалізація. Припустимо також, що існує більше одного ConcreteMain, але я хочу використовувати конкретний. (Насправді кожен клас має ще …

1
AngularJS Directive vs Service vs Controller
Я збираюся розпочати реалізацію запиту на зміну на внутрішньому веб-сайті моїх компаній, який перевірить купу полів та виділить їх, якщо вони відповідають певним вказівкам. Наприклад, якщо дата народження є сьогодні, це поле буде окреслено, а підказка напише "Побажайте їм щасливого дня народження!". Технічні характеристики просять, щоб це було завантажено після …
15 angularjs 

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