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

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

2
Чому "42" є кращим числом, коли вказується на щось випадкове?
Заблокований . Це запитання та його відповіді заблоковано, оскільки це питання поза темою, але має історичне значення. Наразі не приймає нових відповідей чи взаємодій. Я бачив це на SO багато разів. Кожен раз, коли питання розпливчасте, а запитання задає якусь магічну відповідь, хтось або інший залишає коментар, у якому йдеться …
14 history  numbers 

2
Бізнес намагається приймати технічні рішення
Ми часто зустрічаємо сценарії, коли бізнес обіцяє клієнту нову функцію. Бізнес обіцяє, що функція буде реалізована певним чином. Ці технічні деталі, які обіцяє бізнес, зазвичай погані. На жаль, клієнт зараз налаштований і хоче, щоб ця функція була реалізована у спосіб, описаний бізнесом. Зрештою, бізнес просто хоче, щоб ця функція була …

10
Чи докази коректності коду коли-небудь перейдуть до основних? [зачинено]
Закрито . Це питання ґрунтується на думці . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, відредагувавши цю публікацію . Закрито 5 років тому . Усі, крім самих тривіальних програм, заповнені помилками, і все, що обіцяє їх видалити, надзвичайно …

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

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

3
Які бар'єри перешкоджають широкому застосуванню формальних методів? [зачинено]
Закрито . Це питання ґрунтується на думці . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, відредагувавши цю публікацію . Закрито 2 роки тому . Формальні методи можна використовувати для вказівки, доказування та генерації коду для програми. Це менш …

3
Кодове з'єднання вводиться DRY та OOD
Я шукаю вказівки щодо сполучення DRY проти коду. Мені не подобається дублювати код, і мені також не подобається з'єднання коду між непов'язаними модулями. Тож я рефактор дублюючого коду, якщо виявляю ідентичний дублікат коду через рік після введення дублювання. Однак у мене все частіше виникають ситуації, коли реальний світ набагато непередбачуваніший, …
14 design  dry  coupling 

3
Чи є ін'єкція бідної людини в залежність хорошим способом впровадження спадковості у спадщину програму?
Минулого року я створив нову систему, використовуючи Dependency Injection та контейнер IOC. Це мене багато чого навчило щодо DI! Однак, навіть вивчивши поняття та правильні зразки, я вважаю викликом роз'єднати код та ввести контейнер IOC у застарілий додаток. Додаток є досить великим, щоб справжня реалізація була б величезною. Навіть якщо …

3
Регідратація агрегатів із проекції "знімків", а не магазину подій
Тож я деякий час фліртував з Event Sourcing та CQRS, хоча ніколи не мав можливості застосувати шаблони до реального проекту. Я розумію переваги розділення ваших проблем з читанням і записом, і я ціную, як Sourcing подій спрощує проектування змін стану баз даних "Read Model", які відрізняються від вашого Event Store. …

1
Чому хтось повинен використовувати багаточастинні / формулярні дані для змішаних даних та передачі файлів?
Я працюю в C # і спілкуюся між двома програмами, про які пишу. Мені подобаються Web API та JSON. Тепер я перебуваю в точці, коли я пишу розпорядок надсилати запис між двома серверами, який включає деякі текстові дані та файл. Згідно з Інтернетом, я повинен використовувати запит на багатосторонню форму …

3
Чому CSS не дозволяє однорядкові коментарі? [зачинено]
Закрито . Це питання ґрунтується на думці . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, відредагувавши цю публікацію . Закрито 3 роки тому . Я розумію, що CSS підтримує лише такі рядкові коментарі, як такі /* foobar */ …
14 css  css3 

2
Що таке вихідний аргумент, про який йдеться у чистому кодексі Мартіна?
На сторінці 45 чистого кодексу Роберта К. Мартіна: Підручник з гнучкої майстерності програмного забезпечення, Мартін пише, що слід уникати аргументів виводу. У мене виникають проблеми з розумінням значення "вихідних аргументів" і чому їх слід уникати. Приклад Мартіна для вихідного аргументу appendFooter(s);називає функцію public void appendFooter(StringBuffer report). Його поліпшення коду єreport.appendFooter(); …
14 java  clean-code 

2
Чи створює новий Список для зміни колекції в для кожного циклу недолік дизайну?
Нещодавно я наткнувся на цю загальну недійсну операцію Collection was modifiedв C #, і хоча я її повністю розумію, здається, це така поширена проблема (google, близько 300 000 результатів!). Але також здається логічною і зрозумілою річ змінити список, поки ви проходите його. List<Book> myBooks = new List<Book>(); public void RemoveAllBooks(){ …
14 c# 


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

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