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

Читання вимірює, наскільки простий код читати та розуміти.

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

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

9
в той час, як (правда) і розбиття циклу - антидіаграма?
Розглянемо наступний код: public void doSomething(int input) { while(true) { TransformInSomeWay(input); if(ProcessingComplete(input)) break; DoSomethingElseTo(input); } } Припустимо, що цей процес включає кінцеву, але залежну від входу кількість кроків; цикл призначений для завершення самостійно в результаті алгоритму і не розрахований на невизначений час (поки його не скасує зовнішня подія). Оскільки тест …

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

4
Використання магічних рядків / номерів [закрито]
Це дещо суперечлива тема, і, мабуть, існує стільки думок, скільки є програмістів. Але заради цього я хочу знати, які звичні практики в бізнесі (або на ваших робочих місцях). На моєму робочому місці у нас є чіткі правила кодування. Один розділ цього присвячений магічним рядкам / номерам. У ньому зазначено (для …

5
Чи використання пункту нарешті для роботи після повернення поганого стилю / небезпечно?
Як частина написання Iterator, я опинився, коли я написав наступний фрагмент коду (зняття помилок з обробки) public T next() { try { return next; } finally { next = fetcher.fetchNext(next); } } знайти його трохи легше, ніж читати public T next() { T tmp = next; next = fetcher.fetchNext(next); return …

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

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

11
Уникайте оператора збільшення Postfix
Я читав, що мені слід уникати оператора збільшення постфікса через причини роботи (у певних випадках). Але це не впливає на читабельність коду? На мою думку: for(int i = 0; i < 42; i++); /* i will never equal 42! */ Виглядає краще, ніж: for(int i = 0; i < 42; …

7
Вкажіть необов'язкові імена параметрів, хоча вони не потрібні?
Розглянемо наступний метод: public List<Guid> ReturnEmployeeIds(bool includeManagement = false) { } І наступний дзвінок: var ids = ReturnEmployeeIds(true); Для нового розробника в системі було б досить складно здогадатися, що trueзробив. Перше, що ви зробите, - навести курсор на ім'я методу або перейти до визначення (жодне з яких не є великими …

2
Фільтрування циклів foreach за умови, коли умова проти продовжують захисні пропозиції
Я бачив, як деякі програмісти використовують це: foreach (var item in items) { if (item.Field != null) continue; if (item.State != ItemStates.Deleted) continue; // code } замість того, де я зазвичай використовую: foreach (var item in items.Where(i => i.Field != null && i.State != ItemStates.Deleted)) { // code } Я …

4
Для чого слід використовувати плагіни: гачки, події чи щось інше?
Розглянемо додаток, який дозволяє плагінам реагувати на його програмний потік. Я знаю 2 способи досягти цього: гачки та події 1. Гачки Використовуйте дзвінки для порожніх функцій всередині основного потоку програми. Ці функції можуть бути замінені плагінами. Наприклад, Drupal CMS реалізує гачки, доступні для модулів та тем. Ось приклад того, як …

2
Чи гарна ідея надати різні підписи функцій, які роблять те саме?
Ось клас C ++, який будується з трьома значеннями. class Foo{ //Constructor Foo(std::string, int, char); private: std::string foo; char bar; int baz; }; Усі типи параметрів різні. Я міг би перевантажити конструктор, щоб порядок не мав значення. class Foo{ //Constructors Foo(std::string, char, int); Foo(std::string, int, char); Foo(char, int, std::string); Foo(char, …

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

12
Чи прийнятні довгі функції, якщо вони мають внутрішню структуру?
Маючи справу зі складними алгоритмами на мовах із підтримкою вкладених функцій (таких як Python та D), я часто пишу величезні функції (оскільки алгоритм складний), але пом'якшую це за допомогою вкладених функцій для структурування складного коду. Чи величезні (100+ рядкові) функції все ще вважаються злими, навіть якщо вони добре структуровані внутрішньо …

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