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

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

4
Яка найкраща практика збереження TimeZones у базі даних?
Ми хочемо почати збирати часові пояси для кожної з наших адрес у базі даних. Яка найкраща практика зберігання часових поясів? Як би ви вирішили придбати часові пояси для існуючих записів адрес? Я використовую сервер Microsoft SQL, .net mvc, C #. Будь-які пропозиції будуть дуже вдячні.

4
Вибір імен для інтеграційних тестів
З одиничними тестами домен зовсім невеликий, тому це легко. Я скористався methodName_conditions_result()схемою Ошерова і виявив це дуже зрозумілим. Але з інтеграційними тестами я відчуваю, що це дозволить назвати дуже довге ім'я, і ​​що я ставлю замість цього methodName? Як назвати тестові класи інтеграції? Приклади справжніх імен інтеграційних тестів дуже вітаються. …


4
Моменталізація нульових об'єктів за допомогою оператора Null-Coalescing
Розглянемо наступний типовий сценарій: if(myObject == null) { myObject = new myClass(); } Мені цікаво, що думає про наступну заміну за допомогою оператора зведення нуля: myObject = myObject ?? new myClass(); Я не впевнений, чи варто мені використовувати другу форму. Це здається приємним скороченням, але myObject = myObjectспочатку конструкція здається, …
12 c#  operators 

4
Чому sizeof називається оператором часу компіляції?
Спочатку це частина іншого питання. Чому його sizeofназивають оператором часу компіляції? Це насправді оператор не працює? І якщо це дійсно оператор часу компіляції, як це допомагає створювати портативний код, який працює однаково на різних комп'ютерах? Будь ласка, поясніть детально.
12 c++ 

2
Використовуєте маніпулятор потоку (endl) або символ втечі нового рядка (\ n)?
У мене немає конкретного контексту, в якому я задаю питання, але, читаючи книгу-початківця на C ++, я помітив використання як маніпулятора потоку endl, так і символу втечі нового рядка при роботі з об'єктом потоку. Приклад такий: cout << "Hello World" << endl; cout << "Hello World\n"; Мої запитання: Чи доцільніше …

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

11
Що означає "читабельність для людини"? Це неправильно?
Два приклади: Однією з причин того, що програмістам .Net рекомендується використовувати файли .config замість реєстру Windows, є те, що файли .config є XML і, отже, читаються людиною. Аналогічно, JSON іноді вважається читабельним для людини порівняно з фірмовим форматом. Чи справді читаються люди формати? У прикладі даних конфігурації: Формат не змінює …

2
Визначення поняття "Готово", якщо декілька команд розвитку працюють над одним продуктом
Один із тестів scrum містить питання про визначення, яке найкраще описує "Готово", коли кілька команд розробників виконують роботу над одним продуктом. В правильній відповіді зазначено, що ці команди розробників повинні мати таке визначення поняття "Готово", що може зробити їх сумісну роботу потенційно звільненою. Що мені не зрозуміло з належної відповіді …
12 agile  scrum 

2
Чому базовий клас повинен мати тут віртуальний деструктор, якщо похідний клас не виділяє необробленої динамічної пам'яті?
Наступний код викликає витік пам'яті: #include <iostream> #include <memory> #include <vector> using namespace std; class base { void virtual initialize_vector() = 0; }; class derived : public base { private: vector<int> vec; public: derived() { initialize_vector(); } void initialize_vector() { for (int i = 0; i < 1000000; i++) { …

3
Робота за принципом єдиної відповідальності (SRP) в Python, коли дзвінки дорогі
Деякі базові моменти: Виклики методу Python є "дорогими" через інтерпретований характер . Теоретично, якщо ваш код досить простий, руйнування коду Python має негативний вплив, крім читабельності та повторного використання ( що є великим виграшем для розробників, а не для користувачів ). Принцип єдиної відповідальності (SRP) підтримує читабельність коду, його легше …

4
Чи проблематично існувати залежність між об'єктами одного шару в багатошаровій архітектурі програмного забезпечення?
Розглядаючи середньо велике програмне забезпечення з архітектурою n-шару та ін'єкцією залежностей, мені зручно сказати, що об’єкт, що належить до шару, може залежати від об'єктів із нижчих шарів, але ніколи від об'єктів з більш високих шарів. Але я не впевнений, що думати про об’єкти, які залежать від інших об’єктів того ж …

5
Моя команда боїться реляційних баз даних із зовнішніми ключовими стосунками, і я не розумію, чому
Я відносно свіжий поза коледжем, тому більшість мого знайомства з реляційними базами даних є з мого курсу баз даних, де все, що не є в BCNF або 3NF, є травестією. Безумовно, це один кінець крайності, але моя команда на роботі справді, здається, доводить це до протилежного кінця. У наших схемах …

4
Як зробити кращі огляди коду, коли запити на тягнення великі?
Відмова від відповідальності: Є кілька подібних питань, але я не знайшов жодного, який би торкався конкретно проблем, з якими ви стикаєтесь під час перегляду великого запиту на витяг. Проблема Я думаю, що мої огляди коду можна було б зробити краще. Я особливо говорю про огляди великого коду з багатьма змінами …

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

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