⚡️ Принципы SOLID. Часть 2
· Принцип разделения интерфейса — Создавайте узкоспециализированные интерфейсы, предназначенные для конкретного клиента. Клиенты не должны зависеть от интерфейсов, которые они не используют.
· Принцип инверсии зависимостей — Объектом зависимости должна быть абстракция, а не что-то конкретное. Модули верхних уровней не должны зависеть от модулей нижних уровней. Оба типа модулей должны зависеть от абстракций.
#миниурок #solid
· Принцип разделения интерфейса — Создавайте узкоспециализированные интерфейсы, предназначенные для конкретного клиента. Клиенты не должны зависеть от интерфейсов, которые они не используют.
· Принцип инверсии зависимостей — Объектом зависимости должна быть абстракция, а не что-то конкретное. Модули верхних уровней не должны зависеть от модулей нижних уровней. Оба типа модулей должны зависеть от абстракций.
#миниурок #solid
⚡️ Задачка с собеседования | #Easy
Условие:
Нужно подсчитать количество повторяющихся символов в строке.
Пример:
duplicate_count('abcde') ➞ 0
duplicate_count('aabbcde') ➞ 2 # a and b
duplicate_count('ABBBac') ➞ 2 # a and b
📌 Пишите ваше решение в комментариях. Решение будет примерно через час на этом канале. 👇
#Задачка_с_собеседования
Условие:
Нужно подсчитать количество повторяющихся символов в строке.
Пример:
duplicate_count('abcde') ➞ 0
duplicate_count('aabbcde') ➞ 2 # a and b
duplicate_count('ABBBac') ➞ 2 # a and b
📌 Пишите ваше решение в комментариях. Решение будет примерно через час на этом канале. 👇
#Задачка_с_собеседования
👍2
⚡️ Сколько на улице градусов?
Модуль PyOWM предоставляет доступ к openweathermap API. Таким образом мы можем получать данные о погоде в самых разных городах.
Установка:
Подробнее можно почитать в документации. Также у проекта есть репозиторий на GitHub.
#миниурок
Модуль PyOWM предоставляет доступ к openweathermap API. Таким образом мы можем получать данные о погоде в самых разных городах.
Установка:
pip install pyowm
Первым делом вам нужно получить API ключ, это можно сделать здесь. После вы можете получит доступ к температуре, влажности, облачности в каком-то городе.Подробнее можно почитать в документации. Также у проекта есть репозиторий на GitHub.
#миниурок
👍11🤔8
⚡️ Принцип KISS
«Keep it simple, stupid» означает, что программисту нужно максимально упрощать код, делать его более понятным. Таким образом в разы легче добавить новые фичи в проект, а вы сможете со спокойной душой уйти в отпуск.
Как это — проще? Вам не стоит реализовывать функционал, которые, более вероятно, не будут использовать. Также надо уметь остановиться, добавляя новые уровни абстракции или создавая интерфейсы.
#миниурок #kiss
«Keep it simple, stupid» означает, что программисту нужно максимально упрощать код, делать его более понятным. Таким образом в разы легче добавить новые фичи в проект, а вы сможете со спокойной душой уйти в отпуск.
Как это — проще? Вам не стоит реализовывать функционал, которые, более вероятно, не будут использовать. Также надо уметь остановиться, добавляя новые уровни абстракции или создавая интерфейсы.
#миниурок #kiss
👍18
⚡️ Задачка с собеседования | #Medium
Условие:
Напишите метод, который принимает массив целых чисел (положительных и отрицательных) и возвращает самую длинную непрерывную последовательность в этом массиве, общая сумма элементов которой равна 0.
Пример:
max_zero_sequence([1, 2, -3, 7, 8, -16]) ➞ [1, 2, -3]
max_zero_sequence([25, -35, 12, 6, 92, -115, 17, 2, 2, 2, -7, 2, -9, 16, 2, -11]) ➞ [92, -115, 17, 2, 2, 2]
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
Напишите метод, который принимает массив целых чисел (положительных и отрицательных) и возвращает самую длинную непрерывную последовательность в этом массиве, общая сумма элементов которой равна 0.
Пример:
max_zero_sequence([1, 2, -3, 7, 8, -16]) ➞ [1, 2, -3]
max_zero_sequence([25, -35, 12, 6, 92, -115, 17, 2, 2, 2, -7, 2, -9, 16, 2, -11]) ➞ [92, -115, 17, 2, 2, 2]
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
👍6
🤔13👍3👎3
⚡ Roadmap по Python
Это дорожная карта, поставленная более оптыными разработчиками, чтобы разработчики знали с чего начать свой путь и куда двигаться дальше.
#roadmap
Это дорожная карта, поставленная более оптыными разработчиками, чтобы разработчики знали с чего начать свой путь и куда двигаться дальше.
#roadmap
👍25🔥9
👍6
⚡️ Задачка с собеседования | #Medium
Условие:
Вам нужно удалить из строки то, что внутри круглых скобочек. Незакрытых скобок в строке не будет.
Пример:
remove_parentheses('example(unwanted thing)example') ➞ 'exampleexample'
remove_parentheses('(first) (second) (third)') ➞ ' '
remove_parentheses('example (words(more words) here)') ➞ 'example '
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
Вам нужно удалить из строки то, что внутри круглых скобочек. Незакрытых скобок в строке не будет.
Пример:
remove_parentheses('example(unwanted thing)example') ➞ 'exampleexample'
remove_parentheses('(first) (second) (third)') ➞ ' '
remove_parentheses('example (words(more words) here)') ➞ 'example '
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
👍2
⚡️ Оператор моржа
Его добавили в Python 3.8. Он решает две задачи: присвоение значение переменной и возврат этого значения.
Другими словами, он позволяет нам присваивать значение переменной и возвращать его в одном и том же выражении.
Таким образом код становится короче и более читаемым, а повторное использование переменной в разы проще.
Записывается так:
P.S. А назвали его моржом, потому что := действительно похоже на глаза и бивни моржа, лежащего на боку.
#теория
Его добавили в Python 3.8. Он решает две задачи: присвоение значение переменной и возврат этого значения.
Другими словами, он позволяет нам присваивать значение переменной и возвращать его в одном и том же выражении.
Таким образом код становится короче и более читаемым, а повторное использование переменной в разы проще.
Записывается так:
var_name :=
expression
, где :=
— оператор. Подробнее можно почитать в PEP 572.P.S. А назвали его моржом, потому что := действительно похоже на глаза и бивни моржа, лежащего на боку.
#теория
👍10
Что выведет этот код?
Anonymous Quiz
19%
{'none': 'text', []: 'flags'}
17%
{'text': 'none', 'flags': []}
8%
{'text': [], 'flags': 'none'}
42%
Ошибку
13%
Узнать ответ
⚡️ Пишем своё веб-приложение
Pyramid — фреймворк, который позволяет позволяет создавать свои веб-приложения. Чем же он отличается от других фреймворков?
Установка:
На самом деле у модуля довольно много фич, о которых можно почитать на хорошо оформленном оф. сайте. Также не забывайте про документацию.
#миниурок #pyramid
Pyramid — фреймворк, который позволяет позволяет создавать свои веб-приложения. Чем же он отличается от других фреймворков?
Установка:
pip install pyramid
Он строится на концепции, что каждый проект должен начинаться с малого и легко расширяться. Чтобы приложение было просто довести до конца.На самом деле у модуля довольно много фич, о которых можно почитать на хорошо оформленном оф. сайте. Также не забывайте про документацию.
#миниурок #pyramid
🔥3👍2