Вопросы с тегом «clean-code»

Термин «чистый код» используется для описания компьютерного программного кода, который является кратким, простым для понимания и четко выражает намерение программиста. Вопросы с этим тегом касаются процесса написания чистого кода или рефакторинга старого «грязного» кода в чистый код.

4
Хорошее использование try catch-блоков?
Я всегда сталкиваюсь с этим ... пытаясь найти правильный баланс между попыткой / отловом и кодом, который не превращается в этот непристойный беспорядок вкладок, скобок и исключений, которые отбрасываются обратно в стек вызовов, как горячий картофель. Например, у меня есть приложение, которое я сейчас разрабатываю и которое использует SQLite. У …

5
Что является полезным для мышления при проведении формальной проверки кода
Наша команда недавно начала проводить проверки кода на предмет каждой регистрации. Как руководитель группы, я пытаюсь найти баланс между предоставлением слишком большого количества предложений, раздражением разработчиков и уменьшением результатов работы команды и отказом от кода, который я написал бы по-другому. Есть ли какие-либо доказательства, исследования или рекомендации из хорошо известных …

6
Чистый код - я должен изменить литерал 1 на константу?
Чтобы избежать магических чисел, мы часто слышим, что мы должны дать литералу осмысленное имя. Такие как: //THIS CODE COMES FROM THE CLEAN CODE BOOK for (int j = 0; j < 34; j++) { s += (t[j] * 4) / 5; } -------------------- Change to -------------------- int realDaysPerIdealDay = 4; …

2
Что такое выходной аргумент, как указано в Чистом коде Мартина?
На странице 45 «Чистого кода Роберта Мартина: Справочник по мастерству гибкого программного обеспечения» Мартин пишет, что выходных аргументов следует избегать. У меня возникают проблемы с пониманием значения «выходной аргумент» и почему их следует избегать. Пример Мартина для выходного аргумента appendFooter(s);вызывает функцию public void appendFooter(StringBuffer report). Его улучшение кодаreport.appendFooter(); Возможно, это …
14 java  clean-code 

4
Методы минимизации количества аргументов функции
В чистом коде написано, что «идеальное количество аргументов для функции равно нулю». Причины почему объяснены и имеют смысл. Что мне нужно, так это методы рефакторинга методов с 4 или более аргументами для решения этой проблемы. Одним из способов является извлечение аргументов в новый класс, но это, безусловно, приведет к взрыву …

6
Существует ли тематическое исследование, которое убедительно демонстрирует, что чистый код улучшил разработку? [закрыто]
Закрыто. Этот вопрос не по теме . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме разработки программного обеспечения стека Exchange. Закрыто 9 месяцев назад . Моя первая настоящая работа в качестве программиста, и я вижу только код "Big Ball of Mud" …

4
Чистая проверка архитектуры в домене против уровня сохраняемости данных?
Я учусь на чистой и, как следствие, довольно резко переосмысливаю, как я проектирую и пишу программное обеспечение. Однако я по-прежнему борюсь с бизнес-правилами, такими как «сохранить обновления какого-либо элемента, сначала загрузить весь список элементов, на которые у меня есть разрешение на просмотр / редактирование и т. Д., Подтвердить, что этот …

8
Правильный дизайн для класса с одним методом, который может варьироваться между клиентами
У меня есть класс, используемый для обработки платежей клиентов. Все методы этого класса, кроме одного, одинаковы для каждого клиента, за исключением одного, который вычисляет (например), сколько должен пользователь пользователя. Это может сильно варьироваться от клиента к клиенту, и нет простого способа записать логику вычислений в нечто вроде файла свойств, поскольку …

2
Насколько часто используются «вероятные» и «маловероятные» макросы?
Часто известные как likelyи unlikelyмакросы помогают компилятору узнать, будет ли ifон вводиться или пропускается. Его использование приводит к некоторым (довольно незначительным) улучшениям производительности. Я начал использовать их недавно, и я не уверен, как часто следует использовать такие подсказки. В настоящее время я использую его с проверкой ошибок ifs, которые обычно …

2
Действительно ли практики «чистого кода» настолько чисты и полезны? [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 6 лет назад . В настоящее время я прохожу стажировку в крупной корпорации, и они претерпевают много …

6
Что более приемлемо - булево присваивание через if / else или логическое выражение?
Что будет считаться более ремонтопригодным? if (a == b) c = true; else c = false; или же c = (a == b); Я пытался посмотреть в Code Complete, но не могу найти ответ. Я думаю, что первое является более читабельным (вы можете буквально прочитать его вслух), что, как мне …

4
Я страдаю от чрезмерного использования инкапсуляции?
Я заметил кое-что в своем коде в различных проектах, которое кажется мне запахом кода и чем-то плохим, но я не могу с этим справиться. Пытаясь написать «чистый код», я склонен чрезмерно использовать частные методы, чтобы облегчить чтение моего кода. Проблема в том, что код действительно чище, но его также сложнее …

8
Каковы хорошие способы сбалансировать информативные исключения и чистый код?
С нашим общедоступным SDK мы стремимся давать очень информативные сообщения о том, почему возникает исключение. Например: if (interfaceInstance == null) { string errMsg = string.Format( "Construction of Action Argument: {0}, via the empty constructor worked, but type: {1} could not be cast to type {2}.", ParameterInfo.Name, ParameterInfo.ParameterType, typeof(IParameter) ); throw …

6
Логическое задание для лучшей практики [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 4 года назад . Я наткнулся на следующее условие в программе, которую я перенял у другого разработчика: …

4
это способ называть функцию плохой практикой?
У меня есть следующий код: public void moveCameraTo(Location location){ moveCameraTo(location.getLatitude(), location.getLongitude()); } public void moveCameraTo(double latitude, double longitude){ LatLng latLng = new LatLng(latitude, longitude); moveCameraTo(latLng); } public void moveCameraTo(LatLng latLng){ GoogleMap googleMap = getGoogleMap(); cameraUpdate = CameraUpdateFactory.newLatLngZoom(latLng, INITIAL_MAP_ZOOM_LEVEL); googleMap.moveCamera(cameraUpdate); } Я думаю, что таким образом я снимаю ответственность за знание …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.