Дочерние классы в массивах
В Java полиморфизм позволяет нам помещать экземпляры разных классов, которые имеют общий родительский класс, вместе в массив или
Подписывайтесь на канал 👉@coddy_academy
#java
В Java полиморфизм позволяет нам помещать экземпляры разных классов, которые имеют общий родительский класс, вместе в массив или
ArrayList. Например, если у нас есть родительский класс Animal с дочерними классами Cat, Dog и Pig, мы можем настроить массив с экземплярами каждого животного, а затем перебрать список животных, чтобы выполнить одно и то же действие над каждым.Подписывайтесь на канал 👉@coddy_academy
#java
👍1
Вариативные параметры
Вариативный параметр принимает ноль или более значений определенного типа. Он обозначается тремя последовательными точками, после типа данных параметра в декларации функции. Данный метод – хорошая альтернатива, когда для работы нам нужно только одно значение. Swift может конвертировать одно значение в набор переменных.
Подписывайтесь на канал 👉@coddy_academy
#swift
Вариативный параметр принимает ноль или более значений определенного типа. Он обозначается тремя последовательными точками, после типа данных параметра в декларации функции. Данный метод – хорошая альтернатива, когда для работы нам нужно только одно значение. Swift может конвертировать одно значение в набор переменных.
Подписывайтесь на канал 👉@coddy_academy
#swift
Ленивые итерации
Мы используем ленивые/отложенные итерации в функциональном программировании для более эффективной работы с памятью. Итератор срабатывает только тогда, когда требуется следующее значение. В данном примере вызов следующего четного числа произойдет с помощью next(evens).
Подписывайтесь на канал 👉@coddy_academy
#python
Мы используем ленивые/отложенные итерации в функциональном программировании для более эффективной работы с памятью. Итератор срабатывает только тогда, когда требуется следующее значение. В данном примере вызов следующего четного числа произойдет с помощью next(evens).
Подписывайтесь на канал 👉@coddy_academy
#python
Добавление строк с помощью SQLite
Для добавления множества строк/записей данных в базу данных SQLite используется метод .executemany(). Новые строки должны соответствовать исходной схеме базы данных. В последней строке присутствует список вопросительных знаков, они выступают как плейсхолдер. Они представляют каждое из пяти полей в базе данных, куда мы вставляем значения.
Подписывайтесь на канал 👉@coddy_academy
#python
Для добавления множества строк/записей данных в базу данных SQLite используется метод .executemany(). Новые строки должны соответствовать исходной схеме базы данных. В последней строке присутствует список вопросительных знаков, они выступают как плейсхолдер. Они представляют каждое из пяти полей в базе данных, куда мы вставляем значения.
Подписывайтесь на канал 👉@coddy_academy
#python
👍2
Параметры In-Out
В Swift аргументы функции – константы. В результате этого невозможно изменить значение параметра, которое передается в функцию. Параметр
Подписывайтесь на канал 👉@coddy_academy
#swift
В Swift аргументы функции – константы. В результате этого невозможно изменить значение параметра, которое передается в функцию. Параметр
in-out позволяет функции переназначить значение переменной. Для этого параметр помечается inout, используется & при передаче параметра в вызов функции. Подписывайтесь на канал 👉@coddy_academy
#swift
👍1
Цветовая модель HSL
HSL-модель является предпочтительной для работы с цветом. Ключевые слова дают нам ограниченное число опций, а hex-коды, как и RGB, не позволяют интуитивно корректировать цвет, например, яркость. Первое значение – hue (само значение цвета). Второе – насыщенность. Третье – яркость.
Подписывайтесь на канал 👉@coddy_academy
#css
HSL-модель является предпочтительной для работы с цветом. Ключевые слова дают нам ограниченное число опций, а hex-коды, как и RGB, не позволяют интуитивно корректировать цвет, например, яркость. Первое значение – hue (само значение цвета). Второе – насыщенность. Третье – яркость.
Подписывайтесь на канал 👉@coddy_academy
#css
👍1
Hooks
Хуки – это функции, которые позволяют “зацепиться” за состояние и функциональность жизненного цикла в компонентах функции. Вызывать их можно только из функции React, на верхнем уровне, чтобы убедиться, что хуки вызываются в одинаковом порядке каждый раз во время рендера компонента. Не стоит вызывать внутри циклов, условий.
Подписывайтесь на канал 👉@coddy_academy
#javanoscript
Хуки – это функции, которые позволяют “зацепиться” за состояние и функциональность жизненного цикла в компонентах функции. Вызывать их можно только из функции React, на верхнем уровне, чтобы убедиться, что хуки вызываются в одинаковом порядке каждый раз во время рендера компонента. Не стоит вызывать внутри циклов, условий.
Подписывайтесь на канал 👉@coddy_academy
#javanoscript
👍1
Как объединить массивы в Ruby?
Вы можете использовать
Подписывайтесь на канал 👉@coddy_academy
#ruby
Вы можете использовать
concat() метод, чтобы объединить один массив в другой на Ruby, посмотрите код как пример.Подписывайтесь на канал 👉@coddy_academy
#ruby
👍1
Гистограмма
Гистрограмма – график, визуализирующий распределение выборок в наборе данных. Гистограмма показывает частоту по вертикальной оси, а по горизонтальной оси другое измерение. Обычная горизонтальная ось имеет бункеры, где у каждого бункера есть минимальное и максимальное значение. Также имеет частоту между Х и бесконечностью.
Подписывайтесь на канал 👉@coddy_academy
#python
Гистрограмма – график, визуализирующий распределение выборок в наборе данных. Гистограмма показывает частоту по вертикальной оси, а по горизонтальной оси другое измерение. Обычная горизонтальная ось имеет бункеры, где у каждого бункера есть минимальное и максимальное значение. Также имеет частоту между Х и бесконечностью.
Подписывайтесь на канал 👉@coddy_academy
#python
👍2
Строки в Java
Это объекты, которые внутренне являются массивом символов. Поскольку массивы неизменяемы (не могут расти), строки также неизменны. Каждый раз, когда в
Подписывайтесь на канал 👉@coddy_academy
#java
Это объекты, которые внутренне являются массивом символов. Поскольку массивы неизменяемы (не могут расти), строки также неизменны. Каждый раз, когда в
String вносятся изменения, создается совершенно новый объект String. Подписывайтесь на канал 👉@coddy_academy
#java
👍4👎1
Делаем GIF из видео
Преобразуем видео в GIF просто и элегантно. Видео нужно сохранить в папку со скриптом, там же появится гифка. У пакета также есть дополнительная функциональность, позволяющая менять разрешение и изменять отрезки времени для гифки. Документацию можно найти по ссылке: https://pypi.org/project/moviepy/
Подписывайтесь на канал 👉@coddy_academy
#python
Преобразуем видео в GIF просто и элегантно. Видео нужно сохранить в папку со скриптом, там же появится гифка. У пакета также есть дополнительная функциональность, позволяющая менять разрешение и изменять отрезки времени для гифки. Документацию можно найти по ссылке: https://pypi.org/project/moviepy/
Подписывайтесь на канал 👉@coddy_academy
#python
👍2
Clone
По умолчанию
По контракту клон должен быть другим объектом (
Альтернативы (многие считают что более удобные) метода
Подписывайтесь на канал 👉@coddy_academy
#java
По умолчанию
protected – потому что универсальной реализации нет, а вызов приведет к CloneNotSupportedException. Нужно писать свою реализацию, делать при этом ее public и добавлять классу интерфейс Cloneable. Подразумевается что этот метод делает «глубокое копирование», то есть поля-ссылки копи будут вести на копии полей оригинала. Это диктуется соглашением, по которому клон не должен зависеть от оригинала. По контракту клон должен быть другим объектом (
!= оригиналу). Рекомендуется, чтобы все классы иерархии реализовывали Cloneable, реализация метода начиналась с super.clone() (если родитель не Object), а результат был equals и имел тот же класс что и оригинал.Альтернативы (многие считают что более удобные) метода
clone - конструктор копирования и паттерн factory method. Всё, что нужно знать о копировании объектов в Java можно найти в Effective Java Item 11. Подписывайтесь на канал 👉@coddy_academy
#java
👍2
Фабричный метод
В библиотеке react-navigation все навигаторы создаются фабричным методом, используя паттерн названия create<type>Navigator(). Возвращается объект со свойствами Navigator и Screen. Эти свойства – уникальные компоненты, их нужно использовать при рендере структуры навигации.
Подписывайтесь на канал 👉@coddy_academy
#javanoscript
В библиотеке react-navigation все навигаторы создаются фабричным методом, используя паттерн названия create<type>Navigator(). Возвращается объект со свойствами Navigator и Screen. Эти свойства – уникальные компоненты, их нужно использовать при рендере структуры навигации.
Подписывайтесь на канал 👉@coddy_academy
#javanoscript
👍5
Полиморфизм
В С++ полиморфизм происходит, когда производный класс перезаписывает унаследованный метод из базового класса с одинаковым именем. Полиморфизм присуждает методу различные “формы”. От типа вызываемого объекта зависит, какая выполняется форма.
Подписывайтесь на канал 👉@coddy_academy
#c_plus
В С++ полиморфизм происходит, когда производный класс перезаписывает унаследованный метод из базового класса с одинаковым именем. Полиморфизм присуждает методу различные “формы”. От типа вызываемого объекта зависит, какая выполняется форма.
Подписывайтесь на канал 👉@coddy_academy
#c_plus
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Memory Game
Смысл игры в том, чтобы найти пары одинаковых карточек. Логика сделана на JS.
Посмотреть пример в онлайн редакторе.
Подписывайтесь на канал 👉@coddy_academy
#javanoscript
Смысл игры в том, чтобы найти пары одинаковых карточек. Логика сделана на JS.
Посмотреть пример в онлайн редакторе.
Подписывайтесь на канал 👉@coddy_academy
#javanoscript
Лямбда-выражения
Лямбда-выражение полезно для создания анонимных методов, то есть без имен, и передачи их в методы, где требуются аргументы метода. Их краткий синтаксис более элегантный чем у обычных методов, когда они используются в качестве аргументов одноразового метода.
Подписывайтесь на канал 👉@coddy_academy
#c_sharp
Лямбда-выражение полезно для создания анонимных методов, то есть без имен, и передачи их в методы, где требуются аргументы метода. Их краткий синтаксис более элегантный чем у обычных методов, когда они используются в качестве аргументов одноразового метода.
Подписывайтесь на канал 👉@coddy_academy
#c_sharp
Как сохранить json в файл на Java?
Используйте
Посмотреть пример в онлайн редакторе.
Подписывайтесь на канал 👉@coddy_academy
#java
Используйте
ObjectMapper() чтобы сохранить json данные в файл на Java.Посмотреть пример в онлайн редакторе.
Подписывайтесь на канал 👉@coddy_academy
#java
👍2
Дочерние классы в массивах
В Java полиморфизм позволяет нам помещать экземпляры разных классов, которые имеют общий родительский класс, вместе в массив или ArrayList. Например, если у нас есть родительский класс Animal с дочерними классами Cat, Dog и Pig, мы можем настроить массив с экземплярами каждого животного, а затем перебрать список животных, чтобы выполнить одно и то же действие над каждым.
Подписывайтесь на канал 👉@coddy_academy
#java
В Java полиморфизм позволяет нам помещать экземпляры разных классов, которые имеют общий родительский класс, вместе в массив или ArrayList. Например, если у нас есть родительский класс Animal с дочерними классами Cat, Dog и Pig, мы можем настроить массив с экземплярами каждого животного, а затем перебрать список животных, чтобы выполнить одно и то же действие над каждым.
Подписывайтесь на канал 👉@coddy_academy
#java
👍1
Приватные сеттеры
Доступ к свойствам, помеченным как private(set), можно получить из-за пределов
структуры, но присвоить только внутри нее. Это позволяет сеттеру быть более строгим, чем геттеру.
Подписывайтесь на канал 👉@coddy_academy
#swift
Доступ к свойствам, помеченным как private(set), можно получить из-за пределов
структуры, но присвоить только внутри нее. Это позволяет сеттеру быть более строгим, чем геттеру.
Подписывайтесь на канал 👉@coddy_academy
#swift
👍4
Рекурсия и вложенные списки
Вложенный список можно просмотреть и сгладить с помощью рекурсивной функции. Базовый вариант оценивает элемент в списке. Если это не другой список, единственный элемент добавляется к плоскому списку. Рекурсивный шаг вызывает рекурсивную функцию с элементом вложенного списка в качестве входных данных.
Подписывайтесь на канал 👉@coddy_academy
#python
Вложенный список можно просмотреть и сгладить с помощью рекурсивной функции. Базовый вариант оценивает элемент в списке. Если это не другой список, единственный элемент добавляется к плоскому списку. Рекурсивный шаг вызывает рекурсивную функцию с элементом вложенного списка в качестве входных данных.
Подписывайтесь на канал 👉@coddy_academy
#python
font-face
Правило CSS font-face позволяет импортировать внешние шрифты или файлы шрифтов непосредственно в таблицы стилей. Расположение файла шрифта должно быть указано в правиле CSS, чтобы файлы можно было загружать из этого места. Это правило также позволяет добавлять локально размещенные шрифты с использованием относительного пути к файлу вместо веб-URL.
Подписывайтесь на канал 👉@coddy_academy
#css
Правило CSS font-face позволяет импортировать внешние шрифты или файлы шрифтов непосредственно в таблицы стилей. Расположение файла шрифта должно быть указано в правиле CSS, чтобы файлы можно было загружать из этого места. Это правило также позволяет добавлять локально размещенные шрифты с использованием относительного пути к файлу вместо веб-URL.
Подписывайтесь на канал 👉@coddy_academy
#css
👍1