Запитання з тегом «code-quality»

Запитання щодо найкращих практик написання високоякісного коду.

4
Який спосіб припинити цикл читання є кращим підходом?
Коли ви маєте перебрати читача, коли кількість предметів для читання невідома, і єдиний спосіб зробити це - тримати читання, поки не досягнете кінця. Це часто місце, де вам потрібна нескінченна петля. Завжди trueвказується на те, що десь усередині блоку повинно бути breakабо returnтвердження . int offset = 0; while(true) { …

2
Який найкращий підхід для вбудованих коментарів до коду?
Ми робимо деякий рефакторинг на застарілу базу даних коду, яка триває 20 років, і я веду дискусію з колегою щодо формату коментарів у коді (plsql, java). Формат коментарів за замовчуванням не існує, але в більшості випадків люди роблять щось подібне у коментарі: // date (year, year-month, yyyy-mm-dd, dd/mm/yyyy), (author id, …

3
Як я можу визначити та виміряти простоту в коді?
У моєму попередньому запитанні про простоту, пов'язану з читабельністю , є багато відповідей, які допомогли мені побачити моє визначення та розуміння простоти в коді, цілком можливо, невірно. Як я можу визначити простоту в коді? Які програмні вимірювання та показники доступні для вимірювання простоти коду?

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

6
Що вважається найкращою практикою використання друку / довідки (--help)?
Як писати інструменти для CLI UNIX, як мені зробити так, щоб програма роздрукувала довідку та / або використання? Я зазвичай використовую fprintf(stderr, "help text here");, але з цим є кілька питань. По-перше, я не впевнений, чи варто використовувати stderr. Це все в порядку, або я повинен використовувати stdout? Як ви …

4
Як повинен керувати менеджер з розробки коду "Тендер на мету"?
Спочатку дозвольте мені ввести термін: цільове завдання коду: перевірка коду вранці, а потім мовчки переглядаючи всі зміни, внесені іншими розробниками за попередній день файл за файлом (особливо файли коду, які ви спочатку розробили), і виправлення форматування, логіки, перейменування змінних, рефакторинг довгі методи тощо, а потім внесення змін до СКС. Ця …

3
Чи потрібно мати справу з ситуацією, коли приватні методи викликаються через рефлексію?
Створюючи бібліотеку, чи повинен я переконатися, що приватні методи повинні працювати так, як очікувалося, коли їх викликають не інші методи того ж класу, а інша бібліотека через рефлексію ? Наприклад, якщо приватний метод private DoSomething(int number)очікує, що: number - це додатне ненульове ціле число, і: приватна змінна string abcне є …

11
Чи підвищує якість коду якість коду?
Аргументуючи створення коду, я шукаю кілька прикладів способів підвищення якості коду. Щоб уточнити, що я маю на увазі під генерацією коду, я можу говорити лише про мій проект: Ми використовуємо XML-файли для опису взаємозв'язків сутності в нашій схемі бази даних, тому вони допомагають нам генерувати наші рамки ORM та форми …

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

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

9
Скопійований і вставлений тестовий код: Наскільки це погано?
Моя поточна робота полягає в основному написанні тестового коду GUI для різних додатків, над якими ми працюємо. Однак я вважаю, що я схильний копіювати і вставляти багато коду в тести. Причиною цього є те, що області, які я тестую, мають тенденцію бути досить подібними, що потребують повторення, але не зовсім …

5
Чому є метод, який повертає bool / int і має фактичний об'єкт як вихідний параметр?
У кодовій базі моєї компанії я бачу таку схему коду (додаток .NET 3.5): bool Foo(int barID, out Baz bazObject) { try { // do stuff bazObject = someResponseObject; return true; } catch (Exception ex) { // log error return false; } } // calling code BazObject baz = new BazObject(); …

4
Найпростіший спосіб написати логічно процедурне програмне забезпечення мовою ОО
Я інженер-електромонтажник, і я не знаю, що, до біса, роблю. Будь ласка, збережіть майбутніх утримувачів мого коду. Останнім часом я працюю над низкою менших програм (в C #), функціональність яких логічно "процедурна". Наприклад, одна з них - це програма, яка збирає інформацію з різних баз даних, використовує цю інформацію для …

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

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

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