💡Не держите в репозитории закомментированный код
▍Часть 2
Перед прочтением рекомендуем ознакомиться с первой частью.
▍Примеры
Неправильно: ненужные комментарии в коде
Автор экспериментировал, прямо в коде программы, с преобразованием строк. Решено было не включать результаты этих экспериментов в итоговый вариант программы, но, на всякий случай, соответствующий код не удалили полностью, а лишь закомментировали.
Обратите внимание на то, насколько легче читать предыдущий код, из которого убраны ненужные комментарии.
▍Часть 2
Перед прочтением рекомендуем ознакомиться с первой частью.
▍Примеры
Неправильно: ненужные комментарии в коде
Автор экспериментировал, прямо в коде программы, с преобразованием строк. Решено было не включать результаты этих экспериментов в итоговый вариант программы, но, на всякий случай, соответствующий код не удалили полностью, а лишь закомментировали.
name = input("What's your name: ")
#short_name = name.split()[0]
#if len(short_name) > 0:
# name = short_name
print(f"Hello, {name}")
Правильно: код, в котором нет ненужных комментариевОбратите внимание на то, насколько легче читать предыдущий код, из которого убраны ненужные комментарии.
name = input("What's your name: ")
print(f"Hello, {name}")
#советы #coding #python🛠 JUnit — это свободный Java-фреймворк для создания модульных тестов (они же - юнит-тесты). Эта библиотека - одна из самых популярных, её используют почти все. Рекомендуем вам разобраться с ней как можно быстрее, поскольку очень часто начинающих Java-разработчиков и Java Trainee заставляют «покрывать код тестами». И, надо сказать, это далеко не самое плохое начало карьеры.
#инструменты #java
#инструменты #java
♥️ Наши каналы для дизайнеров
На канале Dezzigners мы публикуем полезные инструменты и плагины для дизайнеров. Несколько раз в неделю публикуем отличные книги и премиум файлы — бесплатно.
На канале Dropzz скидываем лучший дизайн со всех просторов интернета. Смотрите и вдохновляйтесь!
На канале Newzz ежедневно публикуем топ новых статей и инструментов для дизайнера.
На канале Daily Design мы публикуем полезные материалы, статьи, советы, бесплатные книги и многое другое.
Подписывайтесь! Вы всегда найдете что-то новое и интересное.
На канале Dezzigners мы публикуем полезные инструменты и плагины для дизайнеров. Несколько раз в неделю публикуем отличные книги и премиум файлы — бесплатно.
На канале Dropzz скидываем лучший дизайн со всех просторов интернета. Смотрите и вдохновляйтесь!
На канале Newzz ежедневно публикуем топ новых статей и инструментов для дизайнера.
На канале Daily Design мы публикуем полезные материалы, статьи, советы, бесплатные книги и многое другое.
Подписывайтесь! Вы всегда найдете что-то новое и интересное.
📑 Пытаясь композировать некомпозируемое: стыковочные схемы
В Haskell принято работать с эффектами как с функторами, объектами которых являются некоторые выражения, которые нам интересны в данный момент.
Когда мы видим тип выражения Maybe a, мы абстрагируемся от фактического существования некоторого a, сконцентрировав все внимание именно на этом a. Та же история с List a — множественные значения a; State s a — a, зависящая от некоторого текущего состояния; Either e a — a, которое может вернуть некоторую ошибку e.
#статьи #haskell
В Haskell принято работать с эффектами как с функторами, объектами которых являются некоторые выражения, которые нам интересны в данный момент.
Когда мы видим тип выражения Maybe a, мы абстрагируемся от фактического существования некоторого a, сконцентрировав все внимание именно на этом a. Та же история с List a — множественные значения a; State s a — a, зависящая от некоторого текущего состояния; Either e a — a, которое может вернуть некоторую ошибку e.
#статьи #haskell
💡Оформляйте скрипты в виде функций
▍Часть 1
В самом начале работы над программой её код обычно следует за потоком мыслей программиста. Этот код состоит из последовательности инструкций, решающих некую задачу. Выработайте у себя привычку оформлять последовательности инструкций в виде функций. Поступать так стоит с самого начала работы над проектом. Подобные функции нужно вызывать в самом конце программ, защитившись выражением if name == «main». Это поможет вам использовать структурный подход при развитии проекта, извлекая из нужных мест вспомогательные функции. А позже, если надо, это облегчит оформление скриптов в виде модулей.
В следующей части рассмотрим примеры.
Продолжение следует...
#советы #coding #python
▍Часть 1
В самом начале работы над программой её код обычно следует за потоком мыслей программиста. Этот код состоит из последовательности инструкций, решающих некую задачу. Выработайте у себя привычку оформлять последовательности инструкций в виде функций. Поступать так стоит с самого начала работы над проектом. Подобные функции нужно вызывать в самом конце программ, защитившись выражением if name == «main». Это поможет вам использовать структурный подход при развитии проекта, извлекая из нужных мест вспомогательные функции. А позже, если надо, это облегчит оформление скриптов в виде модулей.
В следующей части рассмотрим примеры.
Продолжение следует...
#советы #coding #python
🔥 Лучшее на канале за неделю
1. Эмуляция компьютера: интерпретатор CHIP-8, таймеры и обработка ввода.
2. Mockito — библиотека для mock-объектов..
3. Не держите в репозитории закомментированный код.
1. Эмуляция компьютера: интерпретатор CHIP-8, таймеры и обработка ввода.
2. Mockito — библиотека для mock-объектов..
3. Не держите в репозитории закомментированный код.
♥️ Наши каналы для программистов
На канале WebDEV мы публикуем полезные инструменты и книги для веб-разработчиков, даем советы и рассказываем о том, как делать сайты лучше.
На канале Говнокод ежедневно выходят забавные подборки плохого кода и мемы для программистов.
Подписывайтесь! Неважно на каком языке вы пишете, вы обязательно найдете что-то новое и интересное.
На канале WebDEV мы публикуем полезные инструменты и книги для веб-разработчиков, даем советы и рассказываем о том, как делать сайты лучше.
На канале Говнокод ежедневно выходят забавные подборки плохого кода и мемы для программистов.
Подписывайтесь! Неважно на каком языке вы пишете, вы обязательно найдете что-то новое и интересное.
🛠 Log4j — фреймворк для скрытия реализации рутинных операций по журналированию определённых событий, которые происходят во время работы Java-приложений.
#инструменты #java
#инструменты #java
📑 xNet — C# библиотека для работы с Web
xNet — это библиотека классов для .NET Framework, которая включает в себя:
- Классы для работы с прокси-серверами: HTTP, Socks4(a), Socks5, Chain.
- Классы для работы с HTTP 1.0/1.1 протоколом: keep-alive, gzip, deflate, chunked, SSL, прокси и другое.
Подробнее о ней читайте в статье.
xNet — это библиотека классов для .NET Framework, которая включает в себя:
- Классы для работы с прокси-серверами: HTTP, Socks4(a), Socks5, Chain.
- Классы для работы с HTTP 1.0/1.1 протоколом: keep-alive, gzip, deflate, chunked, SSL, прокси и другое.
Подробнее о ней читайте в статье.
🛠 Slf4j — фреймворк для скрытия реализации рутинных операций по журналированию определённых событий, которые происходят во время работы Java-приложений. Slf4j представляет собой абстракцию для других фреймворков журналирования (того же Log4j).
#инструменты #java
#инструменты #java
💡Оформляйте скрипты в виде функций
▍Часть 2
Перед прочтением рекомендуем ознакомиться с первой частью.
▍Примеры
Неправильно: скрипт, не оформленный в виде функции
Выполнение кода в этом примере начинается в первой строке и заканчивается в последней. Такой подход оправдан в том случае, если речь идёт о простых скриптах. Но если код скрипта окажется сложнее, воспринять его будет уже не так легко.
#советы #coding #python
▍Часть 2
Перед прочтением рекомендуем ознакомиться с первой частью.
▍Примеры
Неправильно: скрипт, не оформленный в виде функции
Выполнение кода в этом примере начинается в первой строке и заканчивается в последней. Такой подход оправдан в том случае, если речь идёт о простых скриптах. Но если код скрипта окажется сложнее, воспринять его будет уже не так легко.
#!/usr/bin/env python
name = input("What's your name: ")
print(f"Hello, {name}")
Продолжение следует...#советы #coding #python
📑 Beep, Beep, I'm a sheep
Аудио-ввод-вывод — непростая тема, пугающая многих музыкантов, которые занимаются программированием, и программистов, которые увлекаются музыкой. Давайте попробуем разобраться в этом вопросе! В этой статье мы обсудим, как работает звук на каждой из современных ОС (десктоп-версии).
#статьи
Аудио-ввод-вывод — непростая тема, пугающая многих музыкантов, которые занимаются программированием, и программистов, которые увлекаются музыкой. Давайте попробуем разобраться в этом вопросе! В этой статье мы обсудим, как работает звук на каждой из современных ОС (десктоп-версии).
#статьи
♥️ Наши телеграм боты
UI8 Bot — бот предоставляет безлимитный доступ к сайту ui8.net Стоимость доступа на сайте стартует от 188$ с ограничениями на загрузки. Стоимость в нашем боте начинается от 4$ в месяц без каких-либо ограничений.
Craftwork Bot — предоставляет полный доступ к сайту craftwork.design намного дешевле.
Боты работают очень просто: присылаете ссылку в бота, а бот в ответ присылает файл для скачивания. Попробуйте сами!
UI8 Bot — бот предоставляет безлимитный доступ к сайту ui8.net Стоимость доступа на сайте стартует от 188$ с ограничениями на загрузки. Стоимость в нашем боте начинается от 4$ в месяц без каких-либо ограничений.
Craftwork Bot — предоставляет полный доступ к сайту craftwork.design намного дешевле.
Боты работают очень просто: присылаете ссылку в бота, а бот в ответ присылает файл для скачивания. Попробуйте сами!
💡Оформляйте скрипты в виде функций
▍Часть 3
Перед прочтением рекомендуем ознакомиться с первой и второй частями.
▍Примеры
Правильно: скрипт, оформленный в виде функции
Поток выполнения программы начинается в последней строке кода — там, где вызывается функция say_hello(). Если речь идёт о том, что в состав функции входит всего пара строк кода, то такой подход может показаться неоправданно усложнённым. Но это, в любом случае, облегчает изменение кода. Например, можно легко, воспользовавшись click, оснастить свою функцию возможностями по приёму параметров из командной строки.
▍Часть 3
Перед прочтением рекомендуем ознакомиться с первой и второй частями.
▍Примеры
Правильно: скрипт, оформленный в виде функции
Поток выполнения программы начинается в последней строке кода — там, где вызывается функция say_hello(). Если речь идёт о том, что в состав функции входит всего пара строк кода, то такой подход может показаться неоправданно усложнённым. Но это, в любом случае, облегчает изменение кода. Например, можно легко, воспользовавшись click, оснастить свою функцию возможностями по приёму параметров из командной строки.
#!/usr/bin/env python#советы #coding #python
def say_hello():
name = input("What's your name: ")
print(f"Hello, {name}")
if __name__ == "__main__":
say_hello()