Мы хотим провести большой розыгрыш и подарить победителю смартфон на выбор. Помимо iPhone, предлагаем вам выбрать, какой ещё смартфон вы бы хотели видеть среди призов. Какой смартфон вам по душе:
Anonymous Poll
9%
OnePlus Open 5G
2%
OPPO Find N3
57%
Samsung Galaxy S24 Ultra на 1ТБ
25%
Xiaomi 14 Ultra 512 ГБ
3%
Vivo X100 Ultra
4%
Свой вариант (напишу в комментариях)
Decorator — это структурный паттерн, который позволяет динамически добавлять объектам новые обязанности, оборачивая их в "декораторы". Это полезно для расширения функциональности без изменения существующего кода.
Использование:
🔹 Для динамического добавления поведения объектам без изменения их кода.
🔹 Для разделения функциональности на отдельные классы, чтобы избежать создания монолитных классов с множеством обязанностей.
🔹 Когда нужно добавлять новые функции не только для одного объекта, но и для всех его потомков.
Преимущества:
Недостатки:
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Java jobs — вакансии для java-разработчиков
#дайджест #javadevjob
Вакансии Java разработчиков уровня Junior
▪️Младший разработчик
Санкт-Петербург. Бизнес Технологии — разработкa и внедрение информационных систем для автоматизации бизнес-процессов
Подробнее
▪️Младший разработчик
Удаленка. Doczilla — разработчик продуктов в сфере LegalTech
Подробнее
Вакансии Java разработчиков уровня Middle
▪️Java Разработчик
Воронеж. VISTAR — разработчик ПО
Подробнее
▪️Java Backend Developer
Екатеринбург. ФИТВЕНД — размещении и обслуживании вендинговых шейковых аппаратов
Подробнее
Вакансии Java разработчиков уровня Senior
▪️Java Developer
Удаленка. COMTEK — разработка ПО
Подробнее
▪️Back-end разработчик
Москва. Центр Информатизации и Консалтинга — управление и консалтинг
Подробнее
Понравились вакансии?
❤️ — да
🤔 — нет
Вакансии Java разработчиков уровня Junior
▪️Младший разработчик
Санкт-Петербург. Бизнес Технологии — разработкa и внедрение информационных систем для автоматизации бизнес-процессов
Подробнее
▪️Младший разработчик
Удаленка. Doczilla — разработчик продуктов в сфере LegalTech
Подробнее
Вакансии Java разработчиков уровня Middle
▪️Java Разработчик
Воронеж. VISTAR — разработчик ПО
Подробнее
▪️Java Backend Developer
Екатеринбург. ФИТВЕНД — размещении и обслуживании вендинговых шейковых аппаратов
Подробнее
Вакансии Java разработчиков уровня Senior
▪️Java Developer
Удаленка. COMTEK — разработка ПО
Подробнее
▪️Back-end разработчик
Москва. Центр Информатизации и Консалтинга — управление и консалтинг
Подробнее
Понравились вакансии?
❤️ — да
🤔 — нет
spb.hh.ru
Вакансия Младший разработчик в Санкт-Петербурге, работа в компании Бизнес Технологии (вакансия в архиве c 10 октября 2024)
Зарплата: от 60000 ₽ за месяц. Санкт-Петербург. Требуемый опыт: не требуется. Полная занятость. Дата публикации: 10.10.2024.
StringBuilder и StringBuffer — классы для работы с изменяемыми строками в Java. Оба они позволяют изменять строку без создания новой строки на каждый шаг, что делает их эффективнее, чем String в некоторых ситуациях. Но есть важные отличия:
🔹 StringBuffer — синхронизированный, а значит потокобезопасный. Если несколько потоков работают с одной строкой, лучше использовать именно его. Минус — синхронизация делает его немного медленнее.
🔹 StringBuilder — не синхронизирован, поэтому быстрее при работе в одном потоке. Для многопоточных задач его использование может привести к проблемам.
🤔 Когда использовать?
StringBuilder — если задача однопоточная и важна скорость.
StringBuffer — если работа идет в многопоточном окружении.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Привет, друзья! 👋
Готовим статью «Лучшие шрифты для программирования» и хотим узнать ваше мнение! 🖥️✨
Готовим статью «Лучшие шрифты для программирования» и хотим узнать ваше мнение! 🖥️✨
Какой шрифт вы используете для написания кода? 🤓
Anonymous Poll
17%
Consolas
8%
Fira Code
69%
JetBrains Mono
4%
Source Code Pro
5%
Monaco
5%
Cascadia Code
10%
Другой (напишите в комментариях)
Что для вас самое важное в шрифте для кода? 🧐
Anonymous Poll
71%
Четкость символов
16%
Поддержка лигатур
61%
Различимость похожих символов (0 и O, 1 и l)
12%
Наличие курсивного начертания
22%
Компактность
5%
Другое (уточните в комментариях)
Поделитесь своим опытом: какой шрифт, на ваш взгляд, самый удобный для долгих сессий кодинга и почему? 💻🕰️
Ждем ваши ответы в комментариях! Самые интересные и полезные советы войдут в нашу статью. 📝💡
Ждем ваши ответы в комментариях! Самые интересные и полезные советы войдут в нашу статью. 📝💡
❗Вакансии «Библиотеки программиста» — ждем вас в команде!
Мы постоянно растем и развиваемся, поэтому создали отдельную страницу, на которой будут размещены наши актуальные вакансии. Сейчас мы ищем:
👉контент-менеджеров для ведения телеграм-каналов
Подробности тут
Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴
Ждем ваших откликов 👾
Мы постоянно растем и развиваемся, поэтому создали отдельную страницу, на которой будут размещены наши актуальные вакансии. Сейчас мы ищем:
👉контент-менеджеров для ведения телеграм-каналов
Подробности тут
Мы предлагаем частичную занятость и полностью удаленный формат работы — можно совмещать с основной и находиться в любом месте🌴
Ждем ваших откликов 👾
Forwarded from Библиотека дата-сайентиста | Data Science, Machine learning, анализ данных, машинное обучение
🎁 256-й день года: 15 подарков, которые оценит каждый программист
Мы собрали 15 идей подарков — от практичных гаджетов до инструментов для профессионального роста. Эти подарки не только упростят рабочий процесс, но и вдохновят на новые достижения. Независимо от того, junior вы или senior, в нашем списке каждый найдёт что-то для себя.
👉 Смотреть список
Мы собрали 15 идей подарков — от практичных гаджетов до инструментов для профессионального роста. Эти подарки не только упростят рабочий процесс, но и вдохновят на новые достижения. Независимо от того, junior вы или senior, в нашем списке каждый найдёт что-то для себя.
👉 Смотреть список
Начать с вводных занятий можно здесь, ответив всего на 4 вопроса – https://proglib.io/w/3e093096
Что будет на демо?
🔹Вводный урок от CPO курса;
🔹Лекции со всеми преподавателями МГУ по темам: теория множеств, непрерывность функции, основные формулы комбинаторики, матрицы и операции над ними, градиентный спуск;
🔹Практические задания и дополнительные материалы!
Please open Telegram to view this post
VIEW IN TELEGRAM
JsonPath — это библиотека, которая позволяет извлекать данные из JSON-структур по пути, подобно тому, как это делает XPath для XML. В отличие от традиционного парсинга JSON в Java-объекты через такие библиотеки, как Jackson или Gson, JsonPath позволяет выбирать только те фрагменты данных, которые действительно нужны. Это экономит как время, так и память, что особенно важно при работе с большими JSON-документами.
Пример использования:
Допустим, у нас есть большой JSON, который представляет данные о магазине, и нужно вытащить категорию первой книги из списка:
{
"store": {
"book": [
{ "category": "fiction", "title": "The Great Gatsby" },
{ "category": "science", "title": "The Origin of Species" }
]
}
}
Вместо того, чтобы парсить весь JSON в объект, можно использовать JsonPath для выборки нужного значения:
String json = "{ \"store\": { \"book\": [ { \"category\": \"fiction\" }, { \"category\": \"science\" } ] } }";
String category = JsonPath.read(json, "$.store.book[0].category");
System.out.println(category); // Output: fiction
Обычно при парсинге JSON целиком, программа должна создать дерево объектов для всей структуры данных, даже если нужен лишь небольшой её фрагмент. JsonPath позволяет напрямую обратиться к интересующему полю, минуя необходимость обрабатывать весь JSON-объект.
▪️ Эффективность: Можно выбирать только нужные данные.
▪️ Гибкость: поддерживает мощные выражения для фильтрации и выборки данных (например, выбор элементов по условию).
▪️ Лаконичность: Вместо написания громоздкого кода для обхода JSON-структуры использунтся один понятный запрос.
▪️ Простота интеграции: Легко интегрируется с такими библиотеками, как Jackson, Gson и другими популярными парсерами.
▪️ Меньшая безопасность типов: В отличие от полной десериализации JSON в строгие Java-объекты, данные получаются в виде строк, что может привести к ошибкам при обработке типов.
▪️ Отсутствие контроля над схемой: Если схема JSON изменится, запросы могут стать неактуальными, и ошибки появятся не сразу, так как нет строгой валидации типов на уровне компиляции.
▪️ Меньше гибкости при сложной логике: Когда нужно не просто вытащить данные, а, например, выполнить дополнительные преобразования или логику на основе полей JSON, десериализация в объекты может быть более подходящей.
Please open Telegram to view this post
VIEW IN TELEGRAM