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

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

6
Чому ми повинні чекати вводу-виводу?
Завжди було відомо, що операції з диском повільні, і ми знаємо причини, чому вони повільні. Тож питання тут, чому нам доводиться чекати вводу-виводу або чому існує таке поняття, як IOWait тощо? Я маю на увазі, що я помітив, що коли ви виконуєте якісь завдання вводу-виводу у фоновому режимі, ваш комп'ютер, …
28 cpu  io  operations 

6
Чи існує схема дизайну, щоб усунути необхідність перевірки на наявність прапорів?
Я збираюся зберегти деякий рядок корисного навантаження в базі даних. У мене є дві глобальні конфігурації: шифрування стиснення Вони можуть бути включені або відключені за допомогою конфігурації таким чином, що або один з них увімкнено, обидва ввімкнено або обидва відключені. Моя поточна реалізація така: if (encryptionEnable && !compressEnable) { encrypt(data); …

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

3
Веб-сервери в режимі ядра: розумна оптимізація чи кошмар безпеки?
Я читав тему новин Hacker News, де один користувач розміщує посилання з 2011 року, пояснюючи, що IIS набагато швидше, ніж більшість інших (* nix) веб-серверів. Інший користувач відповідає, пояснюючи, що IIS отримує цю перевагу, маючи модуль ядра під назвою HTTP.sys . Наскільки мені відомо, більшість інших популярних веб-серверів 2015 року …

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

6
Почуття одиничних тестів без TDD
У нас починається новий (досить великий) проект, який ми планували розробляти за допомогою TDD. Ідея TDD провалилась (багато ділових та непідприємницьких причин), але зараз ми ведемо розмову - чи все-таки слід писати одиничні тести чи ні. Мій друг каже, що в написанні одиничних тестів без TDD немає (або близького до …
28 unit-testing  tdd 

3
Чи варто створювати окремі робочі та особисті облікові записи GitHub? [зачинено]
Зачинено. Це питання поза темою . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб це було темою для обміну стеками програмного забезпечення. Закрито 5 років тому . Я досить новачок у програмуванні, і працюю над багатьма особистими проектами, які мене турбують, можуть наштовхнутися на дурні та непрофесійні. …
28 github 

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

1
Як боротися з неправильною функцією у виробничому коді?
Нещодавно я натрапив на бібліотеку Python на GitHub. Бібліотека чудова, але містить одну яскраву помилку в назві функції. Давайте назвемо це, dummy_fuction()поки має бути dummy_function(). Ця функція, безумовно, "в природі" і, швидше за все, використовується у вбудованих системах. Перше, що спадає на думку, - це додати другу версію функції з …

11
Коли я перевіряю різницю у часі між зміщенням та множенням на C, різниці немає. Чому?
Мене вчили, що зміщення у двійковій формі набагато ефективніше, ніж множення на 2 ^ k. Тому я хотів експериментувати, і я використав наступний код, щоб перевірити це: #include <time.h> #include <stdio.h> int main() { clock_t launch = clock(); int test = 0x01; int runs; //simple loop that oscillates between int …

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

6
Використання реляційної бази даних та об'єктів JSON для даних про події та дії
Я працюю над проектом, де я намагаюся вирішити між використанням стандартної реляційної бази даних SQL або об'єктами JSON для зберігання даних про подію чи діяльність. Проект буде зберігати дані про кілька типів подій, тому я вирішив просто описати один тип події для цього питання. Подія в прямому ефірі (описана повністю …
28 design  sql  json 

3
Примушуйте користувачів оновлюватись до останньої версії мого додатка в магазині Google Play
Чи існує спосіб "критичного оновлення" для мого додатка в магазині Google Play, який вимагає від користувача оновлення програми, щоб продовжувати його використовувати? Наприклад, скажімо, я натискаю оновлення, яке приносить кілька помилок. Нічого не обов'язкового, користувач оновлює його, якщо хоче: це некритичне оновлення. Скажімо, я виправляю дуже серйозну проблему безпеки свого …

2
Як називається такий (анти) візерунок? Які його переваги та недоліки?
За останні кілька місяців я кілька разів наткнувся на наступну техніку / зразок. Однак я не можу знайти конкретне ім’я, і я не впевнений на всі 100 своїх переваг та недоліків. Схема має такий вигляд: В інтерфейсі Java набір загальних методів визначається як зазвичай. Однак, використовуючи внутрішній клас, екземпляр за …

3
Чому б не коментувати параметри функції?
Щоб зробити це питання відповідальним, припустимо, що вартість неоднозначності на увазі програміста значно дорожча, ніж кілька додаткових натискань клавіш. З огляду на це, чому я б дозволив своїм товаришам по команді піти, не зазначаючи параметри своїх функцій? Візьміть такий приклад як приклад того, що може бути набагато складнішим кодом: let …
28 f#  parameters 

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