Знакомимся с рекурсией
Автор познакомит вас с базовым понятием рекурсии на простых примерах и объяснит, как рекурсивные функции вызывают сами себя для решения подзадач.
#статья #основы
Автор познакомит вас с базовым понятием рекурсии на простых примерах и объяснит, как рекурсивные функции вызывают сами себя для решения подзадач.
#статья #основы
Forwarded from Веб-страница
Вопросы с собеседований: что такое специфичность CSS-селекторов и как она работает?
Типы селекторов расположены по возрастанию специфичности:
— Селекторы типов элементов (например, h1) и псевдоэлементов (например, ::before).
— Селекторы классов (например, .example), селекторы атрибутов (например, [type="radio"]) и псевдоклассов (например, :hover)
— Селекторы идентификаторов (например, #example).
Универсальный селектор (*), комбинаторы (+, >, ~, ' ') и отрицающий псевдокласс (:not()) не влияют на специфичность. Но селекторы, объявленные внутри :not(), влияют.
Стили, обьявленные в элементе (например, style="font-weight:bold"), всегда переопределяют любые правила из внешних файлов стилей и, таким образом, их специфичность можно считать наивысшей.
Расчёт специфичности:
— тег и псевдоэлемент имеют специфичность 0001;
— класс, псевдокласс, атрибут — 0010;
— id имеет специфичность 0100;
— инлайновый стиль имеет приоритет 1000.
#основы #собеседование #css
Типы селекторов расположены по возрастанию специфичности:
— Селекторы типов элементов (например, h1) и псевдоэлементов (например, ::before).
— Селекторы классов (например, .example), селекторы атрибутов (например, [type="radio"]) и псевдоклассов (например, :hover)
— Селекторы идентификаторов (например, #example).
Универсальный селектор (*), комбинаторы (+, >, ~, ' ') и отрицающий псевдокласс (:not()) не влияют на специфичность. Но селекторы, объявленные внутри :not(), влияют.
Стили, обьявленные в элементе (например, style="font-weight:bold"), всегда переопределяют любые правила из внешних файлов стилей и, таким образом, их специфичность можно считать наивысшей.
Расчёт специфичности:
— тег и псевдоэлемент имеют специфичность 0001;
— класс, псевдокласс, атрибут — 0010;
— id имеет специфичность 0100;
— инлайновый стиль имеет приоритет 1000.
#основы #собеседование #css
Media is too big
VIEW IN TELEGRAM
Полезное видео для тех, кто собирается осваивать SQL
Если вы наконец-то созрели для изучения баз данных, то стоит начать с основ. И это SQL — язык запросов, который просто жизненно необходимо знать при работе с базами данных.
В этом видео вы узнаете, как создавать базы данных, как ими управлять, познакомитесь с основными типами запросов и многое другое. Вверху скачанное видео, а по ссылке первоисточник, если вам хочется посмотреть ролик на YouTube: https://youtu.be/5sG9kmXYsKU
#видео #sql #основы
Если вы наконец-то созрели для изучения баз данных, то стоит начать с основ. И это SQL — язык запросов, который просто жизненно необходимо знать при работе с базами данных.
В этом видео вы узнаете, как создавать базы данных, как ими управлять, познакомитесь с основными типами запросов и многое другое. Вверху скачанное видео, а по ссылке первоисточник, если вам хочется посмотреть ролик на YouTube: https://youtu.be/5sG9kmXYsKU
#видео #sql #основы
Моё кунг-фу лучше твоего кунг-фу: ключевые парадигмы программирования
Парадигмы программирования — это различные стили или подходы к написанию программного кода. Каждая из них предлагает свой взгляд на структуру и способ взаимодействия компонентов программы. Давайте рассмотрим основные парадигмы и поймем, чем они отличаются.
Императивное программирование
Это один из самых старых и интуитивно понятных подходов. В императивном программировании акцент делается на последовательные шаги, которые компьютер должен выполнить. Программист пишет детальные инструкции о том, как выполняются операции.
Основные элементы: переменные, циклы, условия.
Примеры:
Декларативное программирование
Здесь основной упор делается на то, что нужно сделать, а не на то, как это сделать. Программист описывает результат, который хочет получить, и система сама решает, как это сделать.
Основные элементы: выражения, правила.
Примеры: SQL, регулярные выражения.
Функциональное программирование
Этот подход основывается на математических функциях. Программы состоят из функций, которые не имеют состояния и побочных эффектов. Это делает программы предсказуемыми и легко тестируемыми.
Основные элементы: функции, неизменяемость данных.
Примеры: рекурсия, чистые функции (без побочных эффектов).
Объектно-ориентированное программирование (ООП)
В этом подходе всё строится вокруг объектов. Объекты — это сущности, которые объединяют данные и методы для работы с этими данными. ООП помогает моделировать реальный мир и способствует повторному использованию кода.
Основные элементы: классы, объекты, наследование, инкапсуляция, полиморфизм.
Примеры: создание класса
Логическое программирование
В логическом программировании программы определяются через логические утверждения и правила. Компьютер использует эти правила для вывода заключений и решения задач.
Основные элементы: факты, правила, запросы.
Примеры: базовые логические операции и запросы в Prolog.
Реактивное программирование
Эта парадигма акцентирует внимание на потоках данных и пропагандирует асинхронное вычисление. Реактивное программирование позволяет обрабатывать события по мере их возникновения.
Основные элементы: абстракции потоков данных, операторы трансформации.
Примеры: обработка событий пользовательского интерфейса, стриминг данных.
Компонентно-ориентированное программирование
Это подход, который строится вокруг создания программ из небольших и независимых компонентов, которые могут взаимодействовать друг с другом. В компонентно-ориентированном программировании акцент делается на повторном использовании и модульности.
Основные элементы: компоненты, интерфейсы.
Примеры: создание виджетов для пользовательского интерфейса.
Заключение
Каждая парадигма программирования имеет свои сильные стороны и подходящие случаи использования. Зачастую в реальных проектах используются сразу несколько парадигм, чтобы использовать их преимущества в разных частях программы. Понимание различных парадигм помогает разработчикам выбирать наиболее подходящие инструменты и методы для решения конкретных задач. Ещё более подробно можно почитать в статье: https://doka.guide/tools/programming-paradigms/
#советы #основы
Парадигмы программирования — это различные стили или подходы к написанию программного кода. Каждая из них предлагает свой взгляд на структуру и способ взаимодействия компонентов программы. Давайте рассмотрим основные парадигмы и поймем, чем они отличаются.
Императивное программирование
Это один из самых старых и интуитивно понятных подходов. В императивном программировании акцент делается на последовательные шаги, которые компьютер должен выполнить. Программист пишет детальные инструкции о том, как выполняются операции.
Основные элементы: переменные, циклы, условия.
Примеры:
for
циклы, if-else
конструкции.Декларативное программирование
Здесь основной упор делается на то, что нужно сделать, а не на то, как это сделать. Программист описывает результат, который хочет получить, и система сама решает, как это сделать.
Основные элементы: выражения, правила.
Примеры: SQL, регулярные выражения.
Функциональное программирование
Этот подход основывается на математических функциях. Программы состоят из функций, которые не имеют состояния и побочных эффектов. Это делает программы предсказуемыми и легко тестируемыми.
Основные элементы: функции, неизменяемость данных.
Примеры: рекурсия, чистые функции (без побочных эффектов).
Объектно-ориентированное программирование (ООП)
В этом подходе всё строится вокруг объектов. Объекты — это сущности, которые объединяют данные и методы для работы с этими данными. ООП помогает моделировать реальный мир и способствует повторному использованию кода.
Основные элементы: классы, объекты, наследование, инкапсуляция, полиморфизм.
Примеры: создание класса
Car
, экземпляры my_car
, your_car
.Логическое программирование
В логическом программировании программы определяются через логические утверждения и правила. Компьютер использует эти правила для вывода заключений и решения задач.
Основные элементы: факты, правила, запросы.
Примеры: базовые логические операции и запросы в Prolog.
Реактивное программирование
Эта парадигма акцентирует внимание на потоках данных и пропагандирует асинхронное вычисление. Реактивное программирование позволяет обрабатывать события по мере их возникновения.
Основные элементы: абстракции потоков данных, операторы трансформации.
Примеры: обработка событий пользовательского интерфейса, стриминг данных.
Компонентно-ориентированное программирование
Это подход, который строится вокруг создания программ из небольших и независимых компонентов, которые могут взаимодействовать друг с другом. В компонентно-ориентированном программировании акцент делается на повторном использовании и модульности.
Основные элементы: компоненты, интерфейсы.
Примеры: создание виджетов для пользовательского интерфейса.
Заключение
Каждая парадигма программирования имеет свои сильные стороны и подходящие случаи использования. Зачастую в реальных проектах используются сразу несколько парадигм, чтобы использовать их преимущества в разных частях программы. Понимание различных парадигм помогает разработчикам выбирать наиболее подходящие инструменты и методы для решения конкретных задач. Ещё более подробно можно почитать в статье: https://doka.guide/tools/programming-paradigms/
#советы #основы
Дока
Парадигмы программирования — Веб-платформа — Дока
Моё кунг-фу сильнее твоего кунг-фу (из разговора программистов).
Как работает интернет: основы архитектуры веб-сетей
Каждый день мы с вами сёрфим в волнах интернета. Но давайте на секунду остановимся и нырнём чуть глубже, чтобы узнать, как это всё работает.
Здесь максимально кратко изложены основные концепции, чтобы не перегружать вашу голову:
https://nuancesprog.ru/p/16313/
#основы #интересное #интернет
Каждый день мы с вами сёрфим в волнах интернета. Но давайте на секунду остановимся и нырнём чуть глубже, чтобы узнать, как это всё работает.
Здесь максимально кратко изложены основные концепции, чтобы не перегружать вашу голову:
https://nuancesprog.ru/p/16313/
#основы #интересное #интернет
«О» большое — простое объяснение с картинками
Наверняка при решение задач по программированию или во время чтения статей на эту тему вы натыкались на такое обозначение. Например, время работы этого алгоритма составляет O(n2).
Что же это за О такое и как понять, от чего зависит содержимое скобок. Я нашёл для вас статью, которая в картинках объясняет все эти моменты, а также отвечает и на другие вопросы.
#основы
Наверняка при решение задач по программированию или во время чтения статей на эту тему вы натыкались на такое обозначение. Например, время работы этого алгоритма составляет O(n2).
Что же это за О такое и как понять, от чего зависит содержимое скобок. Я нашёл для вас статью, которая в картинках объясняет все эти моменты, а также отвечает и на другие вопросы.
#основы
HTTP-запросы: параметры, методы и коды состояния
Когда пользователь вводит URL-адрес сайта в поисковой строке браузера, его устройство инициирует соединение с сервером и отправляет ему HTTP-запрос — сообщение с некой информацией. В запросе может быть что угодно.
В этой статье вы рассмотрите, как общаются серверы и устройства пользователей: что такое HTTP-сообщение, какая у него структура и из чего состоит HTTP-запрос и ответ. А также вскользь затронете сам протокол HTTP и его основы.
https://habr.com/ru/companies/timeweb/articles/853174/
#http #основы #веб
Когда пользователь вводит URL-адрес сайта в поисковой строке браузера, его устройство инициирует соединение с сервером и отправляет ему HTTP-запрос — сообщение с некой информацией. В запросе может быть что угодно.
В этой статье вы рассмотрите, как общаются серверы и устройства пользователей: что такое HTTP-сообщение, какая у него структура и из чего состоит HTTP-запрос и ответ. А также вскользь затронете сам протокол HTTP и его основы.
https://habr.com/ru/companies/timeweb/articles/853174/
#http #основы #веб