LGTM
Платформа для анализа кода, которая фокусируется на поиске критических уязвимостей и предотвращении проблем.
LGTM проводит более чем 1600 тестов, и, находя проблему, автоматически помечает её в pull request.
LGTM очень хорошо справляется со своей работой благодаря исследованиям команды в области безопасности, которая на текущий момент нашла более ста CVE (Common Vulnerabilities and Exposures) в таких больших проектах, как UBoot, Apache Struts, ядро Linux, Memcached, VLC и Apple XNU.
Среди анализируемых проблем — внедрение регулярных выражений, XSS-уязвимости и низкое качество кода, приводящее к снижению безопасности.
📑 Сайт
Clean Code #инструменты #CodeReview
Платформа для анализа кода, которая фокусируется на поиске критических уязвимостей и предотвращении проблем.
LGTM проводит более чем 1600 тестов, и, находя проблему, автоматически помечает её в pull request.
LGTM очень хорошо справляется со своей работой благодаря исследованиям команды в области безопасности, которая на текущий момент нашла более ста CVE (Common Vulnerabilities and Exposures) в таких больших проектах, как UBoot, Apache Struts, ядро Linux, Memcached, VLC и Apple XNU.
Среди анализируемых проблем — внедрение регулярных выражений, XSS-уязвимости и низкое качество кода, приводящее к снижению безопасности.
📑 Сайт
Clean Code #инструменты #CodeReview
🧑💻 Регулярно проверяйте свой код
Просто писать чистый код – это еще не все. Наша задача не заканчивается точкой с запятой. Следующий шаг – это поддержание чистого кода в таком состоянии. Так скажем, «чистый» код требует обслуживания. После того, как вы что-то написали, то вы должны всегда это проверять, исправлять и стараться улучшить. Иначе, если мы не будем проверять наш код и не будем улучшать его, то со временем он просто устареет. Точно также, как и наши старые устройства. Если мы хотим, чтобы наш код всегда был «в форме», то мы должны регулярно обновлять его.
То же самое относится и к коду, который мы пишем ежедневно. Код в принципе имеет особенность со временем становится более громоздким и сложным, а не проще и понятнее. Однако, все зависит от нас, будет ли код сложным или он будет простым и понятным. Единственный способ достичь этого, это регулярно проверять, написанный нами код. Другими словами, нам нужно обслуживать его. Это может быть необязательно для проектов, о которых мы не заботимся или у которых нет будущего. Для всего остального, обслуживание — это часть вашей работы.
Clean Code #совет #cleancode
Просто писать чистый код – это еще не все. Наша задача не заканчивается точкой с запятой. Следующий шаг – это поддержание чистого кода в таком состоянии. Так скажем, «чистый» код требует обслуживания. После того, как вы что-то написали, то вы должны всегда это проверять, исправлять и стараться улучшить. Иначе, если мы не будем проверять наш код и не будем улучшать его, то со временем он просто устареет. Точно также, как и наши старые устройства. Если мы хотим, чтобы наш код всегда был «в форме», то мы должны регулярно обновлять его.
То же самое относится и к коду, который мы пишем ежедневно. Код в принципе имеет особенность со временем становится более громоздким и сложным, а не проще и понятнее. Однако, все зависит от нас, будет ли код сложным или он будет простым и понятным. Единственный способ достичь этого, это регулярно проверять, написанный нами код. Другими словами, нам нужно обслуживать его. Это может быть необязательно для проектов, о которых мы не заботимся или у которых нет будущего. Для всего остального, обслуживание — это часть вашей работы.
Clean Code #совет #cleancode
📖 Шаблоны корпоративных приложений
🖋 Мартин Фаулер, 2016
Создание компьютерных систем — дело далеко не простое. По мере того как возрастает их сложность, процессы конструирования соответствующего программного обеспечения становятся все более трудоемкими, причем затраты труда растут экспоненциально. Как и в любой профессии, прогресс в программировании достигается исключительно путем обучения, причем не только на ошибках, но и на удачах — как своих, так и чужих. Книга дает ответы на трудные вопросы, с которыми приходится сталкиваться всем разработчикам корпоративных систем. Автор, известный специалист в области объектно-ориентированного программирования, заметил, что с развитием технологий базовые принципы проектирования и решения общих проблем остаются неизменными, и выделил более 40 наиболее употребительных подходов, оформив их в виде типовых решений. Результат перед вами — незаменимое руководство по архитектуре программных систем.
💾 Скачать книгу
Clean Code #книги #patterns
🖋 Мартин Фаулер, 2016
Создание компьютерных систем — дело далеко не простое. По мере того как возрастает их сложность, процессы конструирования соответствующего программного обеспечения становятся все более трудоемкими, причем затраты труда растут экспоненциально. Как и в любой профессии, прогресс в программировании достигается исключительно путем обучения, причем не только на ошибках, но и на удачах — как своих, так и чужих. Книга дает ответы на трудные вопросы, с которыми приходится сталкиваться всем разработчикам корпоративных систем. Автор, известный специалист в области объектно-ориентированного программирования, заметил, что с развитием технологий базовые принципы проектирования и решения общих проблем остаются неизменными, и выделил более 40 наиболее употребительных подходов, оформив их в виде типовых решений. Результат перед вами — незаменимое руководство по архитектуре программных систем.
💾 Скачать книгу
Clean Code #книги #patterns
🧑💻 Указывайте имена, говорящие сами за себя
Что такое переменные, классы и функции? Ответить на данные вопросы можно разными способами, но если задуматься, все эти вещи – не что иное, как связующее звено между программистом и базовой логикой приложения.
Поэтому, когда вы используете нечеткие и не исчерпывающие имена для переменных, классов и функций, вы по сути усложняете логику приложения для любого программиста, который будет читать код, включая себя.
Что означает переменная с именем
Clean Code #совет #cleancode
Что такое переменные, классы и функции? Ответить на данные вопросы можно разными способами, но если задуматься, все эти вещи – не что иное, как связующее звено между программистом и базовой логикой приложения.
Поэтому, когда вы используете нечеткие и не исчерпывающие имена для переменных, классов и функций, вы по сути усложняете логику приложения для любого программиста, который будет читать код, включая себя.
Что означает переменная с именем
dxy
? Кто знает. Вам, вероятно, придется прочитать весь код, чтобы хотя бы понять его смысл. Например, значение переменной distanceBetweenXY
логически понятно. То же самое верно для классов и функций. Не пишите CalcTan()
, если можно написать CalculateTangent()
или CalcTangentAngle()
.Clean Code #совет #cleancode
Про code review
В видео идёт речь о ревью кода — полезной практике, которая используется практически во всех командах, как в больших, так и в маленьких.
📺 YouTube
Clean Code #видео #cleancode #CodeReview
В видео идёт речь о ревью кода — полезной практике, которая используется практически во всех командах, как в больших, так и в маленьких.
📺 YouTube
Clean Code #видео #cleancode #CodeReview
YouTube
Про code review
#soer #itubeteam
Основной канал для общения и публикации новых видео - Телегарм - https://yangx.top/softwareengineervlog
Спонсорство - https://donate.s0er.ru
Сайт платным контентом - https://soer.pro
Зеркало для видео Дзен Видео - https://zen.yandex.ru/i…
Основной канал для общения и публикации новых видео - Телегарм - https://yangx.top/softwareengineervlog
Спонсорство - https://donate.s0er.ru
Сайт платным контентом - https://soer.pro
Зеркало для видео Дзен Видео - https://zen.yandex.ru/i…
🔥 Лучшее на канале за неделю
1. Уязвимости в популярных антивирусниках позволили обойти защиту от хакеров-вымогателей.
2. LGTM — платформа для анализа кода, которая фокусируется на поиске критических уязвимостей и предотвращении проблем..
3. Шаблоны корпоративных приложений.
1. Уязвимости в популярных антивирусниках позволили обойти защиту от хакеров-вымогателей.
2. LGTM — платформа для анализа кода, которая фокусируется на поиске критических уязвимостей и предотвращении проблем..
3. Шаблоны корпоративных приложений.
DeepSource
Используется такими компаниями, как NASA, Uber и Slack. Он автоматически обнаруживает уязвимости и проблемы с документированием кода.
Примеры анализируемых проблем:
— используемый модуль не согласуется с требованиями к ПО;
— в репозиторий закоммичена конфиденциальная информация.
DeepSource автоматически добавляет аннотации и комментарии к pull request’ам, облегчая обнаружение проблем и гарантируя безопасность конфиденциальных данных. Это ускоряет процесс code review и обеспечивает более высокое качество проекта.
📑 Сайт
Clean Code #инструменты #CodeReview
Используется такими компаниями, как NASA, Uber и Slack. Он автоматически обнаруживает уязвимости и проблемы с документированием кода.
Примеры анализируемых проблем:
— используемый модуль не согласуется с требованиями к ПО;
— в репозиторий закоммичена конфиденциальная информация.
DeepSource автоматически добавляет аннотации и комментарии к pull request’ам, облегчая обнаружение проблем и гарантируя безопасность конфиденциальных данных. Это ускоряет процесс code review и обеспечивает более высокое качество проекта.
📑 Сайт
Clean Code #инструменты #CodeReview
🧑💻 Каждый класс/модуль должен заниматься только одним набором конкретных функций
Вы когда-нибудь разбирали фрагмент кода, который длился сотни или даже тысячи строк? Если у вас есть такой опыт, то вы знаете, насколько это трудно просто прочесть данный код, не говоря уже о его понимании и редактировании. Комментарии, конечно, могут помочь, но они “не вытянут” плохой код.
“Программирование представляет собой разбиение одного большого невозможного таска в несколько мелких вполне возможных.” — John Woods
Чистый код представляет собой код, разбитый на мелкие части. Где каждая функция должна отвечать только за одну вещь, и каждый класс должен стремиться реализовывать одну конкретную идею. На практике сложный расчет, как
Clean Code #совет #cleancode
Вы когда-нибудь разбирали фрагмент кода, который длился сотни или даже тысячи строк? Если у вас есть такой опыт, то вы знаете, насколько это трудно просто прочесть данный код, не говоря уже о его понимании и редактировании. Комментарии, конечно, могут помочь, но они “не вытянут” плохой код.
“Программирование представляет собой разбиение одного большого невозможного таска в несколько мелких вполне возможных.” — John Woods
Чистый код представляет собой код, разбитый на мелкие части. Где каждая функция должна отвечать только за одну вещь, и каждый класс должен стремиться реализовывать одну конкретную идею. На практике сложный расчет, как
GetCreditScore()
, следует разбить на несколько вспомогательных функций, таких как GetCreditReports()
, ApplyCreditHistoryAge()
и FilterOutstandingMarks()
.Clean Code #совет #cleancode
📖 Программист-фанатик
🖋 Чед Фаулер, 2015
В этой книге вы не найдете описания конкретных технологий, алгоритмов и языков программирования — ценность ее не в этом. Она представляет собой сборник практических советов и рекомендаций, касающихся ситуаций, с которыми порой сталкивается любой разработчик: отсутствие мотивации, выбор приоритетов, психология программирования, отношения с руководством и коллегами и многих других. Подобные знания обычно приходят лишь в результате многолетнего опыта реальной работы. По большому счёту перед вами — ярко и увлекательно написанное руководство, которое поможет быстро сделать карьеру в индустрии разработки ПО любому, кто поставил себе такую цель.
💾 Скачать книгу
Clean Code #книги #programming
🖋 Чед Фаулер, 2015
В этой книге вы не найдете описания конкретных технологий, алгоритмов и языков программирования — ценность ее не в этом. Она представляет собой сборник практических советов и рекомендаций, касающихся ситуаций, с которыми порой сталкивается любой разработчик: отсутствие мотивации, выбор приоритетов, психология программирования, отношения с руководством и коллегами и многих других. Подобные знания обычно приходят лишь в результате многолетнего опыта реальной работы. По большому счёту перед вами — ярко и увлекательно написанное руководство, которое поможет быстро сделать карьеру в индустрии разработки ПО любому, кто поставил себе такую цель.
💾 Скачать книгу
Clean Code #книги #programming
📑 Названы топ-3 самых активных вирусов
Специалисты из Check Point Research провели свежее исследование. Они выяснили, какие зловреды были наиболее активными в мае 2021 года как в России, так и в мире.
Clean Code #новости
Специалисты из Check Point Research провели свежее исследование. Они выяснили, какие зловреды были наиболее активными в мае 2021 года как в России, так и в мире.
Clean Code #новости
📑 Самые посещаемые сайты и приложения, созданные на Angular
Angular прошёл долгий путь с момента появления в 2009 году. Широкие возможности фреймворка делают его одним из лучших инструментов для быстрой разработки многофункциональных и высоконагруженных приложений. Он давно завоевал признание мирового сообщества разработчиков и его выбирают для своих проектов такие лидеры своих индустрий, как Google, PayPal и Forbes.
Clean Code #статьи
Angular прошёл долгий путь с момента появления в 2009 году. Широкие возможности фреймворка делают его одним из лучших инструментов для быстрой разработки многофункциональных и высоконагруженных приложений. Он давно завоевал признание мирового сообщества разработчиков и его выбирают для своих проектов такие лидеры своих индустрий, как Google, PayPal и Forbes.
Clean Code #статьи
🧑💻 Избавляйтесь от ненужного кода
Данная плохая привычка обычно проявляется, когда вы хотите исправить или оптимизировать кусок кода, вы его комментируете и переписываете чуть ниже – и хотя новый код работает, вы сохраняете старый на всякий случай.
Со временем накапливается большое количество подобных ненужных блоков кода, загромождающих мои исходные файлы. И самое забавное, что через некоторое время данный код вовсе не будет работать из-за постоянного редактирования стороннего кода. Если вы не используете Git или Mercurial, вам нужно сразу же начать их использовать. И да будет чистый код.
Clean Code #совет #cleancode
Данная плохая привычка обычно проявляется, когда вы хотите исправить или оптимизировать кусок кода, вы его комментируете и переписываете чуть ниже – и хотя новый код работает, вы сохраняете старый на всякий случай.
Со временем накапливается большое количество подобных ненужных блоков кода, загромождающих мои исходные файлы. И самое забавное, что через некоторое время данный код вовсе не будет работать из-за постоянного редактирования стороннего кода. Если вы не используете Git или Mercurial, вам нужно сразу же начать их использовать. И да будет чистый код.
Clean Code #совет #cleancode
Новые возможности Visual Studio 2022
Microsoft анонсировала Visual Studio 2022. В этот раз, нас ждет действительно крупное обновление. Релиз Visual Studio будет более быстрым, доступным и лёгким, предназначенным как для учащихся, так и для тех, кто создаёт решения промышленного масштаба. Подробнее в статье.
📑 Читать статью | 🔎 Попробовать Visual Studio 2022
Какое из нововведений вам понравилось больше всего? Напишите в комментариях.
Microsoft анонсировала Visual Studio 2022. В этот раз, нас ждет действительно крупное обновление. Релиз Visual Studio будет более быстрым, доступным и лёгким, предназначенным как для учащихся, так и для тех, кто создаёт решения промышленного масштаба. Подробнее в статье.
📑 Читать статью | 🔎 Попробовать Visual Studio 2022
Какое из нововведений вам понравилось больше всего? Напишите в комментариях.
Codelingo
После того, как вы установили стандарты качества кода, необходимо убедиться, что они выполняются. Большинство команд используют для этого линтер, но есть и другой вариант.
Codelingo позволяет устанавливать и проверять стандарты качества программно в файле codelingo.yaml.
Основное преимущество Codelingo перед стандартными инструментами в том, что вы можете гибко задавать правила, которые использует именно ваша команда, а не ограничиваться универсальным линтером.
Если в pull request’e не соблюдаются правила, Codelingo автоматически оставляет комментарии и отправляет уведомление.
📑 Сайт
Clean Code #инструменты
После того, как вы установили стандарты качества кода, необходимо убедиться, что они выполняются. Большинство команд используют для этого линтер, но есть и другой вариант.
Codelingo позволяет устанавливать и проверять стандарты качества программно в файле codelingo.yaml.
Основное преимущество Codelingo перед стандартными инструментами в том, что вы можете гибко задавать правила, которые использует именно ваша команда, а не ограничиваться универсальным линтером.
Если в pull request’e не соблюдаются правила, Codelingo автоматически оставляет комментарии и отправляет уведомление.
📑 Сайт
Clean Code #инструменты