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

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

5
Тестова розробка: хороший / прийнятий спосіб тестування операцій з файловою системою?
На даний момент я працюю над проектом, який генерує таблицю (серед іншого) на основі вмісту файлової системи, а в свою чергу вносить деякі модифікації метаданих на речі, які вона знаходить. Питання: як слід писати тести навколо цього чи встановлювати? Чи є простий спосіб насмішити це? Або я повинен встановити "пісочницю"?

2
Дизайнерське рішення - навіщо генерувати <p> без </p>?
тл; д-р Деякі широко використовувані програми, що генерують html, створюватимуть лише теги абзацу, що відкриваються, а не закривають, якщо браузер належним чином закриє абзаци. З огляду на це, мені здається, що припущення про те, що браузери належним чином закриють абзаци, не є правильним. Чи правильно моє тлумачення? Загалом, які компроміси …

5
Спробуйте, нарешті, дорого
У разі коду, де вам доведеться зробити очищення ресурсу перед виходом із функції, чи є основна різниця в продуктивності між цими двома способами виконання. Очищення ресурсу перед кожним твердженням про повернення void func() { login(); bool ret = dosomething(); if(ret == false) { logout(); return; } ret = dosomethingelse(); if(ret …

4
Шаблон дизайну для імпорту даних різних типів джерел та різних типів призначення
Мені потрібно розробити та створити сценарій імпорту (в C #), який може обробляти наступне: читати дані з різних джерел (XML, XSLX, CSV) перевірити дані записувати дані в різні типи об'єктів (клієнт, адреса) Дані надходять з ряду джерел, але джерело завжди матиме один формат імпорту (або csv, xml, xslx). Формати імпорту …

5
Чи може Scrum використовувати технічні характеристики в Блоку продукту, а не розповіді користувачів?
У компанії, в якій я зараз працюю, ми почали робити проекти Scrum. Не так важко було переконати менеджерів перейти від водоспаду до Scrum. Ми робимо проект, коли ми відновлюємо нашу платформу з нуля. Тож (більшість) функціональність відома, і більшість удосконалень є досить технічними. У цьому можна виправдати технічні завдання, а …

10
Чому RDBMS не повертають об'єднані таблиці у вкладеному форматі?
Наприклад, скажіть, що я хочу отримати Користувача та всі його телефонні номери та адреси електронної пошти. Номери телефонів та електронні листи зберігаються в окремих таблицях, один користувач на багатьох телефонах / електронних листах. Я можу це зробити досить легко: SELECT * FROM users user LEFT JOIN emails email ON email.user_id=user.id …
14 design  sql  rdbms 

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

1
Який правильний спосіб вкладати ресурси в модель REST?
Я розробляю REST API сервісу і застряг на належному шляху гніздування ресурсів. Ресурси: партнери, квитки, налаштування Зв'язки між ресурсами: партнер має багато квитків, партнер встановив налаштування, Бізнес-логіка: ви можете перелічити всіх партнерів як анонімного користувача, ви можете додати новий квиток вказаному партнеру як анонімний користувач, тільки партнер може перелічити свої …
14 api  rest  api-design 

1
Автор вставив авторські права в код із повідомленням про публічну ліцензію gnu - наслідки?
Я знайшов проект на Github, який мені цікавий, щоб повідомити про те, який претендує на відкриті джерела, і з ним включена ліцензія GPL. Але оригінальний автор додав сповіщення про авторські права до кожного вихідного файлу. Я не впевнений, чому, але я не вважаю правильним робити свій внесок у проект, який …

1
Що використовували мережеві програми для спілкування до винайдення сокетів (приблизно в 1983 році?)
Розетки були винайдені в Берклі близько 1983 року, але як працювали мережеві комп'ютерні програми до цього? В наші дні майже все використовує розетки, тому мені важко уявити, як інакше програми могли б спілкуватися, а Google нічого не виявив.

7
Чому в Java захищені члени стали доступними для класів одного пакету?
З офіційної документації ... Підклас пакунків класу модифікаторів громадський РРРР захищений РРРР немає модифікатора YYNN приватний YNNN Справа в тому, що я не можу пригадати, щоб я мав випадок використання, коли мені потрібно було отримати доступ до захищених членів із класу в межах одного пакету. Якими були причини цього впровадження? …

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

2
Як захистити авторський персональний код
Я пишу програму за допомогою VBA, оскільки її легко доступно, код буде доступний для Cracks, хоча я захищаю її паролем. Я знав це, коли вибирав VBA, оскільки портативність важливіша, ніж захист. Моє запитання стосується авторських прав, я вказую авторські права та своє ім’я в коді та на аркуші розширення, щоб …
14 copyright 

1
Як NodeJS може бути "не блокуючим"?
Я вивчаю NodeJS і просто хотів щось уточнити. У кількох вступних навчальних посібниках і книгах до цього часу дуже рано вони описали "неблокуючу" архітектуру Node, а точніше, що можна (і рекомендується, вся точка) кодувати без блокування. Так, наприклад, цей приклад був наведений у книзі, яку я читаю асинхронним способом отримання …

3
Два суперечливих визначення Принципу поділу інтерфейсу - яке з них є правильним?
Читаючи статті про Інтернет-провайдера, схоже, є два суперечливих визначення ISP: Згідно з першим визначенням (див. 1 , 2 , 3 ), ISP зазначає, що класи, що реалізують інтерфейс, не повинні змушувати реалізовувати функції, які їм не потрібні. Таким чином, жировий інтерфейсIFat interface IFat { void A(); void B(); void C(); …

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