Запитання з тегом «design»

Питання щодо вирішення проблем та планування рішення за допомогою розробки програмного забезпечення.

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

17
Чи справді передчасна оптимізація є коренем усього зла?
Моя колега сьогодні здійснила клас під назвою ThreadLocalFormat, який, в основному, перемістив екземпляри класів Java Format в локальний потік, оскільки вони не є безпечними для потоків і "відносно дорогими" для створення. Я написав швидкий тест і підрахував, що я можу створити 200 000 екземплярів на секунду, запитав, чи він створює …

18
Як можна керувати тисячами АБО ... ТАКІ ... правила ELSE?
Я розглядаю можливість створення програми, яка, за своєю суттю, складалася б із тисяч, якби ... тоді ... інших тверджень. Метою програми є можливість передбачити, як корі рухаються в будь-якому ландшафті. На них впливають такі речі, як сонце, вітер, джерело їжі, раптові події тощо. Як можна керувати такою програмою? Я думаю, …

15
Чи неправильно використовувати булевий параметр для визначення поведінки?
Час від часу я бачив практику, яка "почувається" неправильно, але я не можу повністю сформулювати, що в цьому не так. А може, це просто мій упередження. Ось: Розробник визначає метод із булевим параметром як один із своїх параметрів, і цей метод викликає інший тощо, і, зрештою, булевий використовується, виключно для …

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

5
Які хороші звички для проектування аргументів командного рядка?
Розробляючи додаток, я почав задаватися питанням - як я повинен проектувати аргументи командного рядка? Багато програм використовують формулу на кшталт цієї -argument valueабо /argument value. Рішення, яке мені прийшло в голову, було argument:value. Я подумав, що це добре, оскільки без пробілів немає можливості зіпсувати значення та аргументи. Також легко розділити …
190 design  parameters  cli 

5
Коли ви використовуєте структуру замість класу? [зачинено]
Які ваші правила роботи, коли використовувати структури та класи? Я думаю про визначення цих термінів C #, але якщо у вашій мові є подібні поняття, я також хотів би почути вашу думку. Я схильний використовувати класи майже для всього, і використовую структури лише тоді, коли щось дуже спрощене і має …
174 c#  design  class  struct 

21
Як швидкі та брудні програмісти знають, що вони зрозуміли це правильно?
Якщо ви запитаєте програмістів, чому вони повинні писати чистий код, відповідь номер один, яку ви отримаєте, - це ремонтопридатність. Хоча це в моєму списку, моя основна причина є більш негайною і менш альтруїстичною: я не можу сказати, чи правильно мій новий код, якщо він занадто брудний. Я вважаю, що я …
166 design 

8
Чи характерні погані практики програмування в галузі програмного забезпечення? [зачинено]
Я тільки почав свою першу роботу як розробник програмного забезпечення понад місяць тому. Все, що я дізнався про OOP, SOLID , DRY , YAGNI, шаблони дизайну, SRP тощо, можна викинути у вікно. Вони використовують C # .NET Webforms і роблять майже все, що знаходиться в кодексі позаду, із дуже малою …

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

7
Як пошук вписується в інтерфейс RESTful?
При проектуванні інтерфейсу RESTful семантика типів запитів вважається життєво важливою для дизайну. GET - Список колекції або отримання елемента PUT - Замініть колекцію чи елемент POST - Створення колекції або елемента DELETE - Ну, ерм, видалити колекцію чи елемент Однак, схоже, це не охоплює поняття "пошук". Наприклад, при розробці набору …

17
Як я можу знати, якими мають бути багаторазові мої методи? [зачинено]
Я маю на увазі власний бізнес вдома, і дружина приходить до мене і каже Дорога .. Чи можете ви надрукувати на консолі весь день заощадження по всьому світу на 2018 рік? Мені потрібно щось перевірити. І я дуже щасливий, тому що саме цього я чекав все своє життя зі своїм …

10
Це порушення принципу заміни Ліскова?
Скажімо, у нас є список суб'єктів Завдання та ProjectTaskпідтип. Завдання можуть бути закриті в будь-який час, за винятком випадків, ProjectTasksколи вони не можуть бути закриті, коли вони мають статус Почато. Користувальницький інтерфейс повинен гарантувати, що можливість закрити розпочатий доступ ProjectTaskніколи не доступна, однак у домені є деякі гарантії: public class …

14
Яка ідеальна тривалість методу для вас? [зачинено]
У об'єктно-орієнтованому програмуванні, звичайно, немає точного правила щодо максимальної тривалості методу, але я все-таки виявив, що ці два цитати дещо суперечать один одному, тому я хотів би почути, що ви думаєте. У чистому коді: Підручник з гнучкої майстерності програмного забезпечення , Роберт Мартін говорить: Перше правило функцій полягає в тому, …

11
Сучасний спосіб виконання помилок ...
Я певний час обдумував цю проблему і постійно знаходжу застереження та суперечності, тому сподіваюся, що хтось може зробити висновок щодо наступного: Виняткові переваги над кодами помилок Наскільки мені відомо, від роботи в галузі протягом чотирьох років, читання книг і блогів і т. Д. Поточна найкраща практика поводження з помилками - …

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