Конкурс года в «Библиотеке программиста»: смонтируйте короткий вертикальный ролик формата Shorts/Reels* на тему программирования и разработки — лучший автор получит 40 тысяч рублей
Подробные условия:
Какие ролики мы не принимаем:
Таймлайн:
2 августа — заканчиваем принимать видео
⬇️
3 августа — начинаем загружать лучшие видео в инстаграм
⬇️
9 августа — подводим итоги
*Организация Meta признана экстремистской в РФ
Please open Telegram to view this post
VIEW IN TELEGRAM
Что такое литералы?
Литералы — это явно заданные значения в коде программы, константы определенного типа, которые находятся в коде в момент запуска.
В классе на картинке «Hello world!» — литерал, переменная a — тоже.
Литералы бывают разных типов, которые определяются их назначением и способом написания.
Литералы — это явно заданные значения в коде программы, константы определенного типа, которые находятся в коде в момент запуска.
В классе на картинке «Hello world!» — литерал, переменная a — тоже.
Литералы бывают разных типов, которые определяются их назначением и способом написания.
✍️ «Библиотека программиста» находится в поиске автора на написание книжных рецензий
Кто нужен?
● Энтузиасты (джуны и выше), которые которые разбираются в IT
● Любители книг, которые хотели бы получать деньги за чтение и написание рецензий
● Работаем с самозанятыми (компенсируем налог), ИП
Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴
✉️ Станьте частью нашей команды — присылайте резюме и примеры работ [email protected]
Кто нужен?
● Энтузиасты (джуны и выше), которые которые разбираются в IT
● Любители книг, которые хотели бы получать деньги за чтение и написание рецензий
● Работаем с самозанятыми (компенсируем налог), ИП
Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴
✉️ Станьте частью нашей команды — присылайте резюме и примеры работ [email protected]
Forwarded from Proglib.academy | IT-курсы
В 2024 году IT-специалисты остаются на пике популярности. Но стоит ли вам становиться одним из них? Рассмотрим основные аргументы, чтобы понять, стоит ли вам становиться IT-специалистом в нашей статье.
Please open Telegram to view this post
VIEW IN TELEGRAM
Чем отличаются конструктор по-умолчанию, конструктор копирования и конструктор с параметрами?
У конструктора по умолчанию отсутствуют какие-либо аргументы. Конструктор копирования принимает в качестве аргумента уже существующий объект класса для последующего создания его клона. Конструктор с параметрами имеет в своей сигнатуре аргументы (обычно необходимые для инициализации полей класса).
У конструктора по умолчанию отсутствуют какие-либо аргументы. Конструктор копирования принимает в качестве аргумента уже существующий объект класса для последующего создания его клона. Конструктор с параметрами имеет в своей сигнатуре аргументы (обычно необходимые для инициализации полей класса).
Forwarded from Библиотека девопса | DevOps, SRE, Sysadmin
🍇 18 основных паттернов микросервисной архитектуры
Рассказываем о паттернах, которые представляют собой набор проверенных решений типичных проблем и задач в микросервисной архитектуре. Их правильное применение может значительно улучшить масштабируемость и надежность системы.
Читать статью
Рассказываем о паттернах, которые представляют собой набор проверенных решений типичных проблем и задач в микросервисной архитектуре. Их правильное применение может значительно улучшить масштабируемость и надежность системы.
Читать статью
Метааннотации
Метааннотации — это особые аннотации, которые используются для описания других аннотаций. Они позволяют определять параметры, которые будут применяться к аннотациям, а также правила, которые эти аннотации должны соблюдать.
Метааннотации могут использоваться для следующих целей:
— Определение параметров аннотаций. Метааннотации могут использоваться для определения параметров, которые будут применяться к аннотациям. Например, метааннотация @Retention определяет, когда аннотация будет доступна: в исходном коде, во время компиляции или во время выполнения.
— Определение правил для аннотаций. Метааннотации могут использоваться для определения правил, которые должны соблюдать аннотации. Метааннотация @Target определяет, к каким элементам кода можно применить аннотацию.
— Создание новых аннотаций. Метааннотации можно использовать для создания новых аннотаций. Например, можно использовать метааннотацию @Target для создания аннотации, которая может применяться только к классам.
Метааннотации — это особые аннотации, которые используются для описания других аннотаций. Они позволяют определять параметры, которые будут применяться к аннотациям, а также правила, которые эти аннотации должны соблюдать.
Метааннотации могут использоваться для следующих целей:
— Определение параметров аннотаций. Метааннотации могут использоваться для определения параметров, которые будут применяться к аннотациям. Например, метааннотация @Retention определяет, когда аннотация будет доступна: в исходном коде, во время компиляции или во время выполнения.
— Определение правил для аннотаций. Метааннотации могут использоваться для определения правил, которые должны соблюдать аннотации. Метааннотация @Target определяет, к каким элементам кода можно применить аннотацию.
— Создание новых аннотаций. Метааннотации можно использовать для создания новых аннотаций. Например, можно использовать метааннотацию @Target для создания аннотации, которая может применяться только к классам.
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Использование Arrays.asList() для инициализации коллекций или List.of(), Set.of()
Раньше, даже зная элементы заранее, я инициализировал коллекцию так:
List listOfCurrencies = new ArrayList<>();
listOfCurrencies.add(«USD/AUD»);
listOfCurrencies.add(«USD/JPY»);
listOfCurrencies.add(«USD/INR»);
🗣️ Хотя Arrays.asList() возвращает List, его нужно передать конструктору ArrayList, потому что возвращаемый список имеет фиксированную длину, и вы не можете добавлять или удалять элементы.
✔️ Начиная с Java 9, можно использовать методы List.of() и Set.of() для создания списка и множества с элементами. Это предпочтительнее, так как они возвращают неизменяемые списки и множества.
Раньше, даже зная элементы заранее, я инициализировал коллекцию так:
List listOfCurrencies = new ArrayList<>();
listOfCurrencies.add(«USD/AUD»);
listOfCurrencies.add(«USD/JPY»);
listOfCurrencies.add(«USD/INR»);
🗣️ Хотя Arrays.asList() возвращает List, его нужно передать конструктору ArrayList, потому что возвращаемый список имеет фиксированную длину, и вы не можете добавлять или удалять элементы.
✔️ Начиная с Java 9, можно использовать методы List.of() и Set.of() для создания списка и множества с элементами. Это предпочтительнее, так как они возвращают неизменяемые списки и множества.
🎮🚀 Saturated Outer Space: как инди-разработчики перезапускают игру и бросают вызов жанровым стереотипам
Разработчики S.O.S. рассказывают, как создавать и продвигать инди-игру с нулевым бюджетом и что делать, если не хватает ресурсов продолжать дальше.
👉 Статья
👉 Группа игры ВК
👉 Стим
Разработчики S.O.S. рассказывают, как создавать и продвигать инди-игру с нулевым бюджетом и что делать, если не хватает ресурсов продолжать дальше.
👉 Статья
👉 Группа игры ВК
👉 Стим
Forwarded from Библиотека девопса | DevOps, SRE, Sysadmin
🌐 9 основных паттернов для проектирования распределенных систем
В этой статье мы рассмотрим 9 основных паттернов и области их применения, что поможет вам в проектировании высоконагруженных приложений.
Читать статью
В этой статье мы рассмотрим 9 основных паттернов и области их применения, что поможет вам в проектировании высоконагруженных приложений.
Читать статью
Что такое Кастинг?
Кастинг (приведение типов) — это операция, которая позволяет присвоить значение переменной одного типа переменной другого типа.
Существует два типа кастинга:
Расширение типа (widening casting) — это преобразование типа данных меньшей разрядности в тип данных большей разрядности. Например, преобразование типа byte в тип int, short в тип long или char в тип int.
Сужение типа (narrowing casting) — это преобразование типа данных большей разрядности в тип данных меньшей разрядности. Например, преобразование типа int в тип byte, long в тип short или double в тип float.
Кастинг (приведение типов) — это операция, которая позволяет присвоить значение переменной одного типа переменной другого типа.
Существует два типа кастинга:
Расширение типа (widening casting) — это преобразование типа данных меньшей разрядности в тип данных большей разрядности. Например, преобразование типа byte в тип int, short в тип long или char в тип int.
Сужение типа (narrowing casting) — это преобразование типа данных большей разрядности в тип данных меньшей разрядности. Например, преобразование типа int в тип byte, long в тип short или double в тип float.
Forwarded from Библиотека C/C++ разработчика | cpp, boost, qt
💻 15 продвинутых лайфхаков для работы в терминале Linux
Рассказываем, как использовать малоизвестные, но мощные инструменты терминала: от редактирования длинных команд в текстовом редакторе до автоматизации сложных процессов с помощью tmux.
👉 Ссылка
Рассказываем, как использовать малоизвестные, но мощные инструменты терминала: от редактирования длинных команд в текстовом редакторе до автоматизации сложных процессов с помощью tmux.
👉 Ссылка
Что такое race condition?
Состояние гонки (race condition) — ошибка проектирования многопоточной системы или приложения, при которой эта работа напрямую зависит от того, в каком порядке выполняются потоки. Состояние гонки возникает, когда поток, который должен исполнится в начале, проиграл гонку и первым исполняется другой поток: поведение кода изменяется, из-за чего возникают недетерменированные ошибки.
Состояние гонки (race condition) — ошибка проектирования многопоточной системы или приложения, при которой эта работа напрямую зависит от того, в каком порядке выполняются потоки. Состояние гонки возникает, когда поток, который должен исполнится в начале, проиграл гонку и первым исполняется другой поток: поведение кода изменяется, из-за чего возникают недетерменированные ошибки.
🏄 6+ главных алгоритмов балансировки нагрузки
Балансировка нагрузки — процесс распределения входящих запросов между доступными серверами. Популярные подходы к балансировке по-разному решают проблему перегрузки системы.
В этой статье мы рассмотрим принципы работы, преимущества, недостатки и оптимальные сценарии использования самых известных алгоритмов.
👉 Читать статью
👉 Зеркало
Балансировка нагрузки — процесс распределения входящих запросов между доступными серверами. Популярные подходы к балансировке по-разному решают проблему перегрузки системы.
В этой статье мы рассмотрим принципы работы, преимущества, недостатки и оптимальные сценарии использования самых известных алгоритмов.
👉 Читать статью
👉 Зеркало
Как разбить строку на подстроки по заданному разделителю?
Мы можем использовать метод split(String regex) для разделения строки на массив символов, используя в качестве разделителя регулярное выражение.
Метод split(String regex, int numOfStrings) является перегруженным методом для разделения строки на заданное количество строк. Мы можем использовать обратную черту для использования специальных символов регулярных выражений в качестве обычных символов.
Мы можем использовать метод split(String regex) для разделения строки на массив символов, используя в качестве разделителя регулярное выражение.
Метод split(String regex, int numOfStrings) является перегруженным методом для разделения строки на заданное количество строк. Мы можем использовать обратную черту для использования специальных символов регулярных выражений в качестве обычных символов.