Clean Code
13.3K subscribers
2.3K photos
5 videos
2.95K links
Советы по написанию кода, обзоры распространенных ошибок и многое другое.

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

РКН: clck.ru/3Ht6ch
Download Telegram
🧑‍💻 Используйте бейджики качества кода

Часто в файлах README можно наблюдать небольшие иконки. Что же там делают данные графические элементы? Это бейджики, которые показывают, насколько хорош код. Зачастую используются либо перфекционистами, либо в серьезных проектах, но если даже незначительный по важности код прошел такую проверку – это огромный плюс.

Где получить бейджик? Для этого существуют специальные сервисы. Например, Travis CI, предназначенный для сборки и тестирования ПО. Он использует в качестве хостинга GitHub, куда и коммитится проект, так что никаких проблем с привязкой Трэвиса к проекту нет.

Поначалу сложно понять, почему же сервис ругается и не пропускает код, но когда вы поймете, дальнейшее сотрудничество с сервисом пойдет как по маслу.

Clean Code #совет #cleancode
Collaborator

Это инструмент для ревью кода и документов для команд разработчиков. В дополнение к ревью исходного кода, Collaborator позволяет командам провести ревью проектной документации.

Collaborator поддерживает большое количество систем контроля версий как Subversion, Git, CVS, Mercurial, Perforce, и TFS. Он хорошо справляется с интеграцией в популярные инструменты управления проектами и IDE (интегрированные среды разработки), такие как Jira, Eclipse, и Visual Studio.

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

📑 Сайт

Clean Code #инструменты #CodeReview
Clean Code #test #oop

Выберите правильный вариант 👇🏼
Clean Code #test #oop

Выберите правильный вариант 👇🏼
🧑‍💻 Аккуратный Java код

Самый простой способ быстренько «набросать» программу – использовать классы JavaBeans, которые пишутся в соответствии с некоторыми правилами. Например: см. код 1.

Слишком много лишних условий. Даже если IDE автоматически генерирует такой код (как при стандартном создании конструктора), исправляйте его, и вот почему. Вместо этого лучше применить стиль C-структур, который позволит хранить данные: см. код 2.

Это сокращение количества строк кода наполовину. Кроме того, данный класс является неизменным, поэтому и работать с ним проще.

Если вы храните объекты Map или List, которые могут быть легко изменены, используйте ImmutableMap или ImmutableList.

Clean Code #совет #cleancode #java
🧑‍💻 Шаблон Builder

Если у вас есть сложный объект, пригодится шаблон Builder.

Вы создаете статический внутренний класс, который будет строить ваш объект. Он использует изменяемое состояние, но как только вы вызываете build, он выдает неизменяемый объект.

Представьте, что у нас есть более сложный DataHolder. Builder может выглядеть так: см. код 1.

Чтобы применить его: см. код 2.

Это дает вам неизменяемые объекты и более свободный интерфейс. Вместо того, чтобы писать объекты-конструкторы, рассмотрите возможность использования одной из библиотек, помогающих задействовать билдеры.

Clean Code #совет #cleancode #java
10 советов по созданию чистого кода

Что такое чистый код? В этом выступлении докладчик ответит на этот вопрос и познакомит вас с 10 хорошими привычками, которые помогут вам писать чистый код.

📺 YouTube

Clean Code #видео #cleancode
🔥 Лучшее на канале за неделю

1
. Релиз Kotlin 1.5: поддержка особенностей Java 15 и новый JVM-компилятор.

2. Collaborator — это инструмент для ревью кода и документов для команд разработчиков..

3. Используйте бейджики качества кода.
CodeScene

Инструмент для ревью кода, который выходит за рамки традиционного статического анализа кода. Он осуществляет поведенческий анализ с помощью добавления временного измерения для анализа развития вашей кодовой базы. CodeScene есть в двух формах: облачное решение и локальное решение.

CodeScene обрабатывает историю контроля версий для визуализации кода. Вдобавок к этому, он применяет алгоритмы машинного обучения для выявления социальных закономерностей и скрытых рисков в коде.

Через историю контроля версий CodeScene профилирует каждого члена команды, чтобы отрисовать диаграмму их базы знаний и создания внутрикомандных зависимостей. Он также вводит концепцию хот-спотов (hotspots) в репозитории путем определения файлов, которые подвергаются наиболее активной разработке.Эти хот-споты требуют высокого внимания в дальнейшем.

📑 Сайт

Clean Code #инструменты #CodeReview
🧑‍💻 Непрерывное создание объектов

Если вы создаете много неизменяемых объектов вручную, примените обработчик аннотаций для автоматического создания их из интерфейсов. Это минимизирует код шаблона и уменьшит вероятность ошибок. Посмотрите эту презентацию для понимания проблем с обычными шаблонами в Java-кодинге.

Обработчик аннотации для создания неизменяемых объектов и билдеров.

Clean Code #совет #cleancode #java
📖 Cracking the Coding Interview
🖋 Г. Лакман Макдауэлл, 2016

Cracking the Coding Interview научит вас тому, что вам нужно знать и позволит вам работать с максимальной эффективностью. Автор книги тренировал и проинтервьюировал сотни разработчиков ПО и в результате появилась эта книга.

Узнайте, как обнаружить подсказки и скрытые детали в вопросе, узнайте, как разбить проблему на управляемые части, разработать методы, позволяющие избавиться от проблем, когда вы застряли, изучить основные концепции информатики и попрактиковаться на 189 реальных вопросах и их решениях.

💾 Скачать книгу

Clean Code #книги #interview
📑 В GitHub появилась возможность загружать видео

В блоге GitHub появилась запись о необычном нововведении. Теперь хранилище проектов позволяет загружать в репозитории полноценные видеофайлы в формате .mp4 and .mov.

Clean Code #новости #github
📑 Пять способов повышения продуктивности для программиста

Для создания хорошего программного обеспечения приходится решать множество побочных задач. Ведь одной идеи мало, а по настоящему ценится грамотная реализация. И многие программные проекты заканчиваются досрочно не из-за плохой идеи, а потому, что были допущены технические и организационные ошибки. Времени никогда не хватает, а это приводит к необходимости понижать планку качества кода, что очень редко является хорошим вариантом. В этом случае код начинает жить своей жизнью и становится настолько запутанным и неуправляемым, что в какой-то момент кажется, что проще начинать все сначала.

Чтобы не оказаться в подобной ситуации, для программиста-практика критически важным становится выбор подходящих инструментов и методик решения побочных задач, что позволит не отвлекаться на них лишний раз, а сосредоточиться на главном.

Clean Code #статьи
Clean Code #test #oop

Выберите правильный вариант 👇🏼
🧑‍💻 Exception

Проверенные исключения следует использовать с осторожностью. Они заставляют добавлять много try/catch блоков и заворачивать в них исключения. Лучше использовать непроверенные исключения RuntimeException, которые свидетельствуют об ошибке со стороны разработчика и не требуют постановки try/catch. С RuntimeException код становится намного чище.

Пример использования вы можете увидеть на картинке.

Clean Code #совет #cleancode #java
Visual Expert

Это решение уровня предприятия для ревью кода, специализирующееся в коде баз данных. Он имеет поддержку только трех платформ: PowerBuilder, SQL-сервер, и Oracle PL/SQL. Если вы используете любую другую СУБД, то не сможете внедрить Visual Expert для код-ревью.

В дополнение к традиционному код-ревью, Visual Expert анализирует каждое изменение в коде, чтобы предвидеть возможные проблемы с его исполнением в связи с изменениями. Также, инструмент может автоматически генерировать полную документацию приложения из кода.

Если вы используете PowerBuilder, SQL-сервер или Oracle PL/SQL и хотели бы специализированный инструмент для ревью кода для ваших потребностей, стоит попробовать Visual Expert.

📑 Сайт

Clean Code #инструменты #CodeReview