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

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

5
Чи не погані ієрархії глибокого складу?
Вибачте, якщо "Ієрархія композиції" - це не річ, але я поясню, що я маю на увазі під питанням. Немає жодного програміста ОО, який би не стикався з варіантами "Зберігайте ієрархії спадкування рівними" або "Віддавайте перевагу композиції над успадкуванням" тощо. Однак ієрархії глибокого складу також видаються проблематичними. Скажімо, нам потрібна збірка …

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

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

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

4
Програмування на основі подій: коли воно того варто?
Гаразд, я знаю, що заголовок цього питання майже ідентичний " Коли я повинен використовувати програмування на основі подій?" але відповіді на вказане питання не допомогли мені вирішити, чи слід використовувати події в конкретному випадку, з яким я стикаюся. Я розробляю невеликий додаток. Це простий додаток, і здебільшого його функціональність - …

6
Що є основою математики для значень першого / другого / третього класів у мовах програмування?
Додано Щойно знайшли два пов’язані питання /math//q/1759680/1281 /programming//a/2582804/156458 У мовах програмування - з Прагматики мови програмування Майкла Скотта Як правило, значення мови програмування мають статус першого класу, якщо його можна передати як параметр, повернути з підпрограми або призначити в змінну. Прості типи, такі як цілі числа та символи, - це …

2
Ліцензування Ghostscript у комерційному продукті
Ми вивчаємо перспективу використання Ghostscript у комерційному продукті (настільний додаток Windows). Я читав про взаємне використання ліцензування GS, просто запропонувавши користувачам, що вони можуть завантажувати та встановлювати GS самостійно, щоб покращити свій досвід (програмне забезпечення насправді працює і без цього, але більшість користувачів хотіли б надіслати / завантажити PDF документи). …
19 licensing 

3
Реляційні бази даних та ітеративна розробка
У багатьох підходах до розробки програмного забезпечення, таких як гнучкі методології, дизайн, керований доменом та об'єктно-орієнтований аналіз та дизайн, нам пропонується застосувати один ітеративний підхід до розробки. Таким чином, ми не повинні робити нашу доменну модель правильно в перший раз, коли ми починаємо працювати над проектом. Натомість, з часом ми …

3
Наскільки неправильно говорити про "методи" C ++ (проти "членських функцій")?
Я розумію, що згідно зі специфікацією C ++ не існує такого поняття, як "метод", і деякі (багато? Більшість?) Програмісти C ++ вважають "метод" Java-ізмом. З іншого боку, навіть на форумі C ++ люди, здається, говорять про методи, не посмикуючись. Я шукаю відомі конвенції або поширені практики щодо цієї термінології. Я …

1
Чи Akka застаріли брокери повідомлень JMS / AMQP? [зачинено]
Закрито . Це питання ґрунтується на думці . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, відредагувавши цю публікацію . Закрито 4 роки тому . Останній тиждень я провів глибоке занурення в документи Акки і нарешті зрозумів, що таке …

4
Як занадто багато змінних примірників призводить до дублювання коду?
Відповідно до Refactoring to Patterns : Коли клас намагається зробити занадто багато, він часто виявляється як занадто багато змінних екземплярів. Коли у класу занадто багато змінних примірників, дублюваний код не може відстати. Як занадто багато змінних примірників призводить до дублювання коду?

2
Моделі анемічних доменів та введення доменних служб
Модель анемічного домену описується Мартіном Фаулером як анти-модель у дизайні, керованому доменом. Щоб мати ділову логіку на доменних моделях, часто використовують доменні служби. Але введення доменних служб у доменні моделі вважається шкідливим Вон Верноном (див. "Впровадження дизайну, керованого доменом", Сторінка 387). На мою думку, ці думки суперечливі, чи правда це? …

3
Чи розумним є повернення потоків туди, куди ми зазвичай повертаємо колекції?
Під час розробки мого API, який не прив’язаний до жодного застарілого коду, я часто виявляю себе способами написання, які суто конвеєр потоків припиняється шляхом збору результатів. Як ця: ImmutableSet<T> deriveSomethingMeaningfulFromPrivateState() { return myPrivateThingies.stream() .map(this::ownerOfThing) .map(Owner::socialStatus) .filter(SocialStatus::isHeAFineMatey) .collect(MyCustomCollectors.toImmutableSet()); } Зараз більшості клієнтів цього класу зазвичай потрібна колекція (у цьому випадку ImmutableSet) …

3
Винятки - "що трапилось" проти "що робити"
Ми використовуємо винятки, щоб дозволити споживачеві коду корисно керувати несподіваною поведінкою. Зазвичай винятки складаються навколо сценарію "що трапилося" - наприклад FileNotFound(нам не вдалося знайти вказаний вами файл) або ZeroDivisionError(нам не вдалося виконати 1/0операцію). Що робити, якщо є можливість уточнити очікувану поведінку споживача? Наприклад, уявімо, що у нас є fetchресурс, який …
19 exceptions 

4
"Використовуйте карту замість класу для представлення даних" -Річ Хікі
У цьому відео Річ Хікі , творець Clojure, він радить використовувати карту для представлення даних, а не використовувати клас для їх представлення, як це робиться на Java. Я не розумію, як це може бути краще, оскільки як користувач API може знати, що таке вхідні ключі, якщо вони просто представлені у …
19 java  design  class  clojure  map 

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