🧑💻 Проектирование наследования в Python
▍Часть 2
Мы не используем термин "приватный атрибут", потому что на самом деле в python таких не бывает.
Другой тип атрибутов классов принадлежит так называемому API подклассов (в других языках они часто называются protected). Некоторые классы проектируются так, чтобы от них наследовали другие классы, которые расширяют или модифицируют поведение базового класса. Когда вы проектируете такой класс, решите и явно укажите, какие атрибуты являются публичными, какие принадлежат API подклассов, а какие используются только базовым классом.
Теперь сформулируем рекомендации:
— Открытые атрибуты не должны иметь в начале имени символа подчеркивания.
Продолжение следует...
Clean Code #совет #cleancode #python
▍Часть 2
Мы не используем термин "приватный атрибут", потому что на самом деле в python таких не бывает.
Другой тип атрибутов классов принадлежит так называемому API подклассов (в других языках они часто называются protected). Некоторые классы проектируются так, чтобы от них наследовали другие классы, которые расширяют или модифицируют поведение базового класса. Когда вы проектируете такой класс, решите и явно укажите, какие атрибуты являются публичными, какие принадлежат API подклассов, а какие используются только базовым классом.
Теперь сформулируем рекомендации:
— Открытые атрибуты не должны иметь в начале имени символа подчеркивания.
Продолжение следует...
Clean Code #совет #cleancode #python
Мощный метод проверки кода на баги
В данном видео рассказывается о том, откуда берутся баги и как с ними бороться.
📺 YouTube
Clean Code #видео
В данном видео рассказывается о том, откуда берутся баги и как с ними бороться.
📺 YouTube
Clean Code #видео
YouTube
Мощный метод проверки кода на баги
#soer #itubeteam
Основной канал для общения и публикации новых видео - Телегарм - https://t.iss.one/softwareengineervlog
Спонсорство - https://donate.s0er.ru
Сайт платным контентом - https://soer.pro
Зеркало для видео Дзен Видео - https://zen.yandex.ru/i…
Основной канал для общения и публикации новых видео - Телегарм - https://t.iss.one/softwareengineervlog
Спонсорство - https://donate.s0er.ru
Сайт платным контентом - https://soer.pro
Зеркало для видео Дзен Видео - https://zen.yandex.ru/i…
🔥 Лучшее на канале за неделю
1. Мощный метод проверки кода на баги.
2. Barba.js — библиотека JavaScript для создания плавных переходов между страницами сайта.
3. Проектирование наследования в Python.
1. Мощный метод проверки кода на баги.
2. Barba.js — библиотека JavaScript для создания плавных переходов между страницами сайта.
3. Проектирование наследования в Python.
📖 Efficient MySQL Performance
🖋 Daniel Nichter, 2021
Трудно объяснять производительность MySQL, не обращая внимания на ее сложность. Эта практическая книга заполняет пробелы других руководств, обучая разработчиков знаниям MySQL среднего уровня, выходящим за рамки фундаментальных знаний, при этом избегая глубокого внутреннего уровня, необходимого администраторам баз данных.
💾 Скачать книгу
Clean Code #книги #MySQL
🖋 Daniel Nichter, 2021
Трудно объяснять производительность MySQL, не обращая внимания на ее сложность. Эта практическая книга заполняет пробелы других руководств, обучая разработчиков знаниям MySQL среднего уровня, выходящим за рамки фундаментальных знаний, при этом избегая глубокого внутреннего уровня, необходимого администраторам баз данных.
💾 Скачать книгу
Clean Code #книги #MySQL
📑 Вышел Linux 5.18
Линус Торвальдс представил первый стабильный релиз ядра Linux 5.18. Выпуск новой версии ядра Linux вышел в соответствии с графиком, спустя два месяца после выхода предыдущей стабильной версии Linux 5.17 в конце марта этого года.
Clean Code #новости #Linux
Линус Торвальдс представил первый стабильный релиз ядра Linux 5.18. Выпуск новой версии ядра Linux вышел в соответствии с графиком, спустя два месяца после выхода предыдущей стабильной версии Linux 5.17 в конце марта этого года.
Clean Code #новости #Linux
📑 Добавляйте единицы измерения в имена
Есть одна ловушка читаемости кода, которой легко избежать, если вы о ней знаете; тем не менее она встречается постоянно: это отсутствующие единицы измерения. Рассмотрим три фрагмента кода на Python, Java и Haskell.
Clean Code #статьи #cleancode #python #java
Есть одна ловушка читаемости кода, которой легко избежать, если вы о ней знаете; тем не менее она встречается постоянно: это отсутствующие единицы измерения. Рассмотрим три фрагмента кода на Python, Java и Haskell.
Clean Code #статьи #cleancode #python #java
🧑💻 Проектирование наследования в Python
▍Часть 3
Теперь сформулируем рекомендации:
— Открытые атрибуты не должны иметь в начале имени символа подчеркивания.
— Если имя открытого атрибута конфликтует с ключевым словом языка, добавьте в конец имени один символ подчеркивания. Это более предпочтительно, чем аббревиатура или искажение написания (однако, у этого правила есть исключение — аргумента, который означает класс, и особенно первый аргумент метода класса (class method) должен иметь имя cls).
— Назовите простые публичные атрибуты понятными именами и не пишите сложные методы доступа и изменения (accessor/mutator, get/set, — прим. перев.) Помните, что в python очень легко добавить их потом, если потребуется. В этом случае используйте свойства (properties), чтобы скрыть функциональную реализацию за синтаксисом доступа к атрибутам.
Продолжение следует...
Clean Code #совет #cleancode #python
▍Часть 3
Теперь сформулируем рекомендации:
— Открытые атрибуты не должны иметь в начале имени символа подчеркивания.
— Если имя открытого атрибута конфликтует с ключевым словом языка, добавьте в конец имени один символ подчеркивания. Это более предпочтительно, чем аббревиатура или искажение написания (однако, у этого правила есть исключение — аргумента, который означает класс, и особенно первый аргумент метода класса (class method) должен иметь имя cls).
— Назовите простые публичные атрибуты понятными именами и не пишите сложные методы доступа и изменения (accessor/mutator, get/set, — прим. перев.) Помните, что в python очень легко добавить их потом, если потребуется. В этом случае используйте свойства (properties), чтобы скрыть функциональную реализацию за синтаксисом доступа к атрибутам.
Продолжение следует...
Clean Code #совет #cleancode #python
Fontspace
Библиотека шрифтов с возможностью быстрого настраиваемого предварительного просмотра и удобной загрузкой. Каждый шрифт добавляется и классифицируется реальными людьми. Также каждый шрифт проверяется на наличие проблем с качеством.
📑 Сайт
Clean Code #инструменты #fonts
Библиотека шрифтов с возможностью быстрого настраиваемого предварительного просмотра и удобной загрузкой. Каждый шрифт добавляется и классифицируется реальными людьми. Также каждый шрифт проверяется на наличие проблем с качеством.
📑 Сайт
Clean Code #инструменты #fonts
Современные облачные технологии / Гибридные облака
В выпуске мы поговорили о том, как появлялись облачные инфраструктуры, какие реализации есть сейчас и где в этом всем HPE. Гибридные облака, контейнерные облака, GreenLake, Ezmeral, Edge to Cloud, приватные облака и многое.
📺 YouTube
Clean Code #видео
В выпуске мы поговорили о том, как появлялись облачные инфраструктуры, какие реализации есть сейчас и где в этом всем HPE. Гибридные облака, контейнерные облака, GreenLake, Ezmeral, Edge to Cloud, приватные облака и многое.
📺 YouTube
Clean Code #видео
YouTube
Современные облачные технологии / Гибридные облака /Архитекторы из Hewlett Packard Enterprise
HPE GreenLake: https://bit.ly/3hphbu9
HPE Ezmeral: https://bit.ly/3fggUHs
Наконец поговорим про облака со спецами! В гостях ребята из HPE Russia: Константин Королёв, Support Solution Architect, и Антон Фёдоров, Solution Architect. И да да, HPE - это одна…
HPE Ezmeral: https://bit.ly/3fggUHs
Наконец поговорим про облака со спецами! В гостях ребята из HPE Russia: Константин Королёв, Support Solution Architect, и Антон Фёдоров, Solution Architect. И да да, HPE - это одна…
💡 Подборка инструментов
▫️ MetaTags позволяет исследовать внешний вид сайтов, выводимых в областях предварительного просмотра на ресурсах Google, Facebook или Twitter.
▫️ Browserling позволяет просматривать сайты в различных браузерах. Например — в Opera, Chrome и Firefox.
▫️ Compressor можно использовать для оптимизации изображений, снятых на телефон или на камеру.
▫️ Monit — инструмент мониторинга серверов, который держит вас в курсе событий и посылает оповещения, если сервер выходит из строя.
▫️ Planio — многофункциональная система управления проектами, специально созданная для разработчиков программного обеспечения.
Clean Code #инструменты #подборка
▫️ MetaTags позволяет исследовать внешний вид сайтов, выводимых в областях предварительного просмотра на ресурсах Google, Facebook или Twitter.
▫️ Browserling позволяет просматривать сайты в различных браузерах. Например — в Opera, Chrome и Firefox.
▫️ Compressor можно использовать для оптимизации изображений, снятых на телефон или на камеру.
▫️ Monit — инструмент мониторинга серверов, который держит вас в курсе событий и посылает оповещения, если сервер выходит из строя.
▫️ Planio — многофункциональная система управления проектами, специально созданная для разработчиков программного обеспечения.
Clean Code #инструменты #подборка
🔥 Лучшее на канале за неделю
1. Добавляйте единицы измерения в имена.
2. Fontspace — библиотека шрифтов с возможностью быстрого настраиваемого предварительного просмотра и удобной загрузкой.
3. Проектирование наследования в Python.
1. Добавляйте единицы измерения в имена.
2. Fontspace — библиотека шрифтов с возможностью быстрого настраиваемого предварительного просмотра и удобной загрузкой.
3. Проектирование наследования в Python.
📑 Paragon Software предложила обновление драйвера NTFS3 в ядре Linux
Константин Комаров из Paragon Software предложил обновление драйвера NTFS3 для включения в ядро Linux 5.19. Всего представлено 11 исправлений.
Clean Code #новости #Linux
Константин Комаров из Paragon Software предложил обновление драйвера NTFS3 для включения в ядро Linux 5.19. Всего представлено 11 исправлений.
Clean Code #новости #Linux
🧑💻 Проектирование наследования в Python
▍Часть 4
Примечание 1: Свойства (properties) работают только в классах нового стиля (в Python 3 все классы являются таковыми).
Примечание 2: Постарайтесь избавиться от побочных эффектов, связанным с функциональным поведением; впрочем, такие вещи, как кэширование, вполне допустимы.
Примечание 3: Избегайте использования вычислительно затратных операций, потому что из-за записи с помощью атрибутов создается впечатление, что доступ происходит (относительно) быстро.
Если вы планируете класс таким образом, чтобы от него наследовались другие классы, но не хотите, чтобы подклассы унаследовали некоторые атрибуты, добавьте в имена два символа подчеркивания в начало, и ни одного — в конец. Механизм изменения имен в python сработает так, что имя класса добавится к имени такого атрибута, что позволит избежать конфликта имен с атрибутами подклассов.
Продолжение следует...
Clean Code #совет #cleancode #python
▍Часть 4
Примечание 1: Свойства (properties) работают только в классах нового стиля (в Python 3 все классы являются таковыми).
Примечание 2: Постарайтесь избавиться от побочных эффектов, связанным с функциональным поведением; впрочем, такие вещи, как кэширование, вполне допустимы.
Примечание 3: Избегайте использования вычислительно затратных операций, потому что из-за записи с помощью атрибутов создается впечатление, что доступ происходит (относительно) быстро.
Если вы планируете класс таким образом, чтобы от него наследовались другие классы, но не хотите, чтобы подклассы унаследовали некоторые атрибуты, добавьте в имена два символа подчеркивания в начало, и ни одного — в конец. Механизм изменения имен в python сработает так, что имя класса добавится к имени такого атрибута, что позволит избежать конфликта имен с атрибутами подклассов.
Продолжение следует...
Clean Code #совет #cleancode #python
CSS Gradient
Небольшой веб-сайт и бесплатный инструмент, который позволяет создавать градиентный фон для веб-сайтов. Помимо того, что он является генератором градиентов CSS, сайт также полон красочного контента о градиентах от технических статей до реальных примеров градиентов, таких как Stripe и Instagram.
📑 Сайт
Clean Code #инструменты #css
Небольшой веб-сайт и бесплатный инструмент, который позволяет создавать градиентный фон для веб-сайтов. Помимо того, что он является генератором градиентов CSS, сайт также полон красочного контента о градиентах от технических статей до реальных примеров градиентов, таких как Stripe и Instagram.
📑 Сайт
Clean Code #инструменты #css