Clean Code
12.8K subscribers
2.51K photos
7 videos
3.32K links
Советы по написанию кода, обзоры распространенных ошибок и многое другое.

Ссылка: @Portal_v_IT

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

РКН: clck.ru/3Ht6ch
Download Telegram
📌 Используйте осмысленные имена для переменных, функций, классов

Всем программистам известен термин "обфускация кода” — сознательное запутывание программного кода с помощью приложения-обфускатора. Она делается с целью скрыть реализацию и превращает код в невнятный набор символов, переименовывает переменные, меняет имена методов, функций и прочее.

К сожалению, случается так, что код и без обфускации выглядит запутанно — именно за счёт бессмысленных имён переменных и функций: var_3698, myBestClass, NewMethodFinal и т.д. Это не только мешает разработчикам, которые участвуют в проекте, но и приводит к бесконечному количеству комментариев.

Между тем, переименовав функцию, можно избавиться от комментариев — её имя будет само говорить о том, что она делает.

#код
📖 Искусство программирования
🖋 Дональд Кнут, 1986

Еще один must have. «Искусство программирования» (все тома) Дональд Кнут.

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

Билл Гейтс сказал об этой книге: «Если вы считаете себя действительно хорошим программистом, прочитайте Искусство программирования [Кнута]… Если вы сможете прочесть весь этот труд, то вам определенно следует отправить мне резюме».

💾 Скачать книгу. Том 1

#книги
🗞 Tinder для программистов

Энтузиаст разработал Tinder для программистов — в нём лайкают строки кода вместо фотографий.

Программист из США Бен Авад разработал сервис знакомств для программистов. Проект получил название VSinder. Его участники выбирают себе пару по строкам кода, а не фотографиям потенциального собеседника.

Процесс выбора партнёра реализован как в Tinder — понравившиеся строки кода «свайпают» влево, а остальные — вправо. В случае совпадения программа предоставит возможность переписываться в чате. Сервисом можно воспользоваться при помощи редактора кода Visual Studio Code.

#новости
6 ошибок, которые часто встречаются в резюме IT-специалистов

Резюме – это «лицо» соискателя, которое очень важно правильно подать. Это «одежка», по которой вас будут встречать. Это описание вашей собственной истории успеха, которая должна заслужить продолжения.

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

📖 Читать статью (5 минут)

#статьи
#тест

Задать вопрос и обсудить решение можно в нашем чате.

Выберите правильный ответ ниже 👇🏼
Какая из конструкий обозначает тип данных?
Anonymous Quiz
3%
mod
92%
char
1%
if
2%
case
3%
div
🛠 SFML — свободная кроссплатформенная мультимедийная библиотека

Написана на C++, но доступна также для C, C#, .Net, D, Java, Python, Ruby, OCaml, Go и Rust.
SFML − одна из наиболее удобных и быстрых GUI-библиотек для 2D-графики. Среди плюсов − низкие требования к уровню владения языком программирования.

Библиотека часто используется стартапами и начинающими программистами, потому что не требует написания большого объёма кода. Простейшее приложение, вроде «Hello, World!», можно написать через минуты после запуска, а уже через неделю − сделать что-нибудь стоящее. Ещё одним крутым преимуществом является поддержка популярных платформ, в том числе Android.

📑 Документация

#инструменты
Симуляция жизни на С# (Часть 1)

В этом уроке мы создадим симуляцию жизни на C#, а именно реализуем клеточный автомат, он же игра Жизнь.

Игра «Жизнь» — клеточный автомат, придуманный английским математиком Джоном Конвеем в 1970 году. Правила игры таковы, что никакое взаимодействие не может передаваться быстрее хода шахматного короля. Его скорость — одна клетка в любом направлении — часто называют «скоростью света».

📺 YouTube

#видео #C_sharp
📖 Совершенный код
🖋 Стив Макконнелл, 2013

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

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

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

#книги
🧑‍💻 Соблюдайте единый Code style

— соблюдайте переносы фигурных скобок и отступы — это значительно улучшает восприятие отдельных блоков кода
— соблюдайте правило вертикали — части одного запроса или условия должны находиться на одном отступе

if (typeof a ! == "undefined" &&
typeof b ! == "undefined" &&
typeof c === "string") {
//your stuff
}

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

for (var i = 0; i < 100; i++) {
}

В некоторых средах разработки можно изначально задать правила форматирования кода, загрузив настройки отдельным файлом (доступно в Visual Studio). Таким образом, у всех программистов проекта автоматически получается однотипный код, что значительно улучшает восприятие. Известно, что достаточно трудно переучиваться после долгих лет практики и привыкать к новым правилам. Однако в любой компании code style — это закон, которому нужно следовать неукоснительно.

#совет #код
Что думают о красивом коде в Яндексе

Яндекс — это компания программистов. У каждого из них есть мнение о том, каким должен быть идеальный код. И нередко в наших внутренних блогах разгораются споры о том, должен ли код быть красивым и можно ли приносить в жертву красоте его способность решать поставленную задачу. Что самое главное: чтобы коллегам было приятно читать ваш код или чтобы он был им понятен? Или одно неотделимо от другого?

📺 YouTube

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

1
. 6 ошибок, которые часто встречаются в резюме IT-специалистов.

2. SFML — свободная кроссплатформенная мультимедийная библиотека.

3. Используйте осмысленные имена для переменных, функций, классов.
Winget

Инструмент командной строки, который позволяет разработчикам находить, устанавливать, обновлять, удалять и настраивать приложения на Windows. Этот инструмент является клиентским интерфейсом для службы диспетчера пакетов Windows.

📑 Документация

#инструменты
🧑‍💻 Создавайте методы как новый уровень абстракции с осмысленными именами и делайте методы компактными

Вообще, сегодня модульность кода доступна каждому программисту, а это значит, что нужно стремиться создавать абстракции там, где это возможно. Абстракция — это один из способов сокрытия деталей реализации функциональности.

Создавая отдельные небольшие методы, программист получает хороший код, разделённый на блоки, в которых содержится реализация каждой из функций. При таком подходе нередко увеличивается количество строк кода. Есть даже определённые рекомендации, которые указывают длину метода не более 10 строк. Конечно, размер каждого метода остаётся целиком на усмотрении разработчика и зависит от многих факторов. Наш совет: всё просто, делайте метод компактным так, чтобы один метод выполнял одну задачу. Отдельные вынесенные сущности проще улучшить, например, вставить проверку входных данных прямо в начале метода.

#совет #код
📊 Data Analyst: как расширить возможности своей профессии?

Один из крутых способов развиваться в профессии или понять, какое направление аналитики больше подходит — посещать митапы крупных компаний.

Из самых важных на начало года — это Яндекс Go Data Driven 3 апреля в онлайне. На митапе будут не только лекции, но и брейншторм — на нём можно будет порешать интересные аналитические задачки.

Регистрируйся и решай небольшой отборочное задание тут — https://taxi.yandex.ru/action/ytdd.

#новости
📑 Обновление BIOS «сломало» загрузку Linux на части компьютеров Intel NUC

Владельцы мини-компьютеров Intel NUC7PJYH столкнулись с проблемой. Из-за свежего обновления BIOS они не могут загрузить Linux и Unix-подобные системы. Один из пользователей опубликовал соответствующий пост на официальном форуме Intel NUC, на что компания уже успела отреагировать.

Clean Code #новости
📑 Как стать более продуктивным разработчиком?

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

Давайте разберем самые полезные вещи, которые каждый может применить относительно себя.

Clean Code #статьи
Clean Code #тесты #typescript

Выберите ниже правильный ответ 👇🏼
👨‍💻 В начале методов проверяйте входные данные

На уровне кода нужно обязательно делать проверки входных данных во всех или практически во всех методах. Это связано с пользовательским поведением: будущие пользователи могут вводить любые данные, которые могут вызвать сбои в работе программы. В любом методе, даже в том, который использовался всего один раз, обязательно нужно организовывать проверку данных и создавать обработку ошибок. Это стоит сделать, поскольку метод не только выступает как уровень абстракции, но и необходим для переиспользования. В принципе, возможно разделить методы на те, в которых нужно делать проверку, и те, в которых её делать необязательно, но для полной уверенности и защиты от «хитрого пользователя» лучше проверять все входные данные.

Clean Code #совет #код
ProofHub

ProofHub, представленный в 2011 году, является одним из лучших облачных инструментов для управления проектами. Он поможет вам с планированием, разработкой, организацией и поставкой вашего проекта в оговоренные сроки. Инструмент создан для лучшего контроля над проектом и для повышения ответственности в команде. Есть мобильная и десктопная версия инструмента.

📑 Сайт

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