seniorjavist | Unsorted

Telegram-канал seniorjavist - Senior Java Developer

-

Изучаем Java. По вопросам сотрудничества: @seniorvladislav

Subscribe to a channel

Senior Java Developer

Назовите основные классы потоков ввода/вывода.

Разделяют два вида потоков ввода/вывода:
байтовые - java.io.InputStream, java.io.OutputStream;
символьные - java.io.Reader, java.io.Writer.

Читать полностью…

Senior Java Developer

♨️ Прокачивай свои навыки вместе с Java | Фишки и трюки

Ежедневные порции Java-фишек, полезные советы и трюки от опытных разработчиков.

👉🏼 Присоединиться

Читать полностью…

Senior Java Developer

🔧В большинстве случаев Gradle используется в командах для довольно несложных задач и только для Kotlin-проектов, java. Между тем, он является очень мощным инструментом разработки для DevOps.

⚡30 ноября в 19.00 (мск) приглашаем на открытый урок курса “Kotlin Backend Developer Professional” в OTUS

📌На уроке обсудим:

- как выполнять сборку проектов, содержащих компоненты на C/C++, Rust, Go и др. языках; 

- как автоматически генерировать исходники с дальнейшей их компиляцией; 

- извлекать файлы из репозиториев для дальнейшей обработки;

- разрабатывать кастомные плагины;

- гибко управлять версиями; 

- собирать докер-образы. 

👉Регистрация для участия https://otus.pw/4za1/?erid=LjN8KNbZN

После урока вы сможете продолжить обучение, поступив в группу курса по специальной цене. Возможны разные способы и рассрочка платежа.

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

Читать полностью…

Senior Java Developer

Разница между загрузкой и инициализацией классов в Java на любопытном примере

Смотреть статью

Читать полностью…

Senior Java Developer

Тинькофф проведет первый Java-митап в Минске ☕️

Для первой встречи с комьюнити ребята подготовили три крутых доклада:

— разберем новую фичу Project Loom — посмотрим, как новые потоки влияют на код и на поведение самого приложения;
— расскажем об успехах и факапах, которые бывают у разработчиков;
— обсудим, есть ли жизнь после тимлидства.

После докладов будет неформальный нетворкинг!

📆 Tinkoff Java Meetup, 7 декабря, пространство «Бетон». Не забудьте зарегистрироваться и позвать с собой коллег.

erid:2VtzqxB99Yu
Реклама. АО "Тинькофф Банк", ИНН 7710140679, лицензия ЦБ РФ № 2673

Читать полностью…

Senior Java Developer

CompletableFuture

CompletableFuture — это класс в Java, введенный в Java 8, который представляет собой асинхронную задачу, которая будет выполнена в будущем и возвращает результат. CompletableFuture предоставляет множество методов для работы с асинхронными задачами, комбинирования их и управления их выполнением.

Основные возможности CompletableFuture включают:

— Вы можете запустить задачу асинхронно и продолжить выполнение кода без блокировки.
— CompletableFuture позволяет комбинировать результаты нескольких задач, выполняя определенные действия при завершении каждой задачи.
— Вы можете указать обработчики ошибок для обработки исключений, возникающих во время выполнения задачи.
— Вы можете блокировать выполнение кода и ждать завершения задачи.

#для_продвинутых

Читать полностью…

Senior Java Developer

👉 Пройдите тест на знание основ алгоритмом и оцените свой уровень. Тест подходит для любого языка программирования.

💪 Сможете сдать – получите запись мастер-класса по алгоритмам повышающий ваш уровень.

📌 Еще больше полезных знаний ждет вас на онлайн-курсе «Алгоритмы и структуры данных» в OTUS

🎁 Черная пятница в OTUS! Успейте получить скидку на курс!
Возможна оплата в рассрочку!

👉 Пройти тест: https://otus.pw/UIwN/?erid=LjN8KCmRE

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

Читать полностью…

Senior Java Developer

JVM internals

Статья объясняет внутреннюю архитектуру виртуальной машины Java (JVM).

Смотреть статью

Читать полностью…

Senior Java Developer

🥶 Забудь о Web2 Программировании: Переходи на Web3 и Зарабатывай От $60,000!

Если ты разработчик, но до сих пор не в теме Web3, то упустил множество возможностей. Middle Web3 разработчики уже зарабатывают от $5,000 до $8,000 в месяц!

🔎 Что такое Web3 в двух словах, и как стать мастером блокчейн-разработки?
🔎 Какие перспективы ждут именно тебя на рынке Web3, учитывая твой текущий стек?
🔎 Вакансии, зарплаты и требования к блокчейн-разработчикам: разберем на реальных примерах с рынка.
🔎 Как за 2 года увеличить доход до $5,000+ и стать Middle в Web3?
🔎 Апгрейд: как стать более востребованным, не меняя текущий стек?

✈️ И даже поделимся секретами релокации и работы в международной компании!

🗺 Построим личный роадмеп и разберем все это на 30-минутной бесплатной консультации:

Как действующему программисту расширить стек до Web3 и стать блокчейн-разработчиком на Solidity, увеличив доход в $ за несколько месяцев!

👨‍💼 Кто проводит?

Рекрутеры Crypton Studio — крупнейшей студии блокчейн-разработки в Европе (6 лет на рынке, более 160+ сотрудников, в числе которых 63% разработчиков, огромное портфолио из более чем 100 успешно реализованных проектов для клиентов из 20 стран). Они запустили новый проект MarniD и телеграм-канал, где можно учиться на их опыте!

Места на консультацию ограничены

Если ты действующий разраб, то переходи на сайт и оставляй заявку
ссылка

Команда свяжется с тобой и забронирует слот на Zoom! Узнай о своих возможностях на рынке будущего!

Читать полностью…

Senior Java Developer

Узнаем количество файлов в папке

В данном примере мы задаем путь к папке, получаем список файлов в этой папке с помощью метода listFiles(), а затем выводим количество файлов в папке с помощью свойства length массива файлов.

Читать полностью…

Senior Java Developer

Оцените количество памяти на хранение одного примитива типа byte в ArrayList?

ArrayList
основан на массиве, для примитивных типов данных осуществляется автоматическая упаковка значения, поэтому 16 байт тратится на хранение упакованного объекта и 4 байта (8 для x64) - на хранение ссылки на этот объект в самой структуре данных. Таким образом, в x32 JVM 4 байта используются на хранение одного элемента и 16 байт - на хранение упакованного объекта типа Byte. Для x64 - 8 байт и 24 байта соответственно.

Читать полностью…

Senior Java Developer

Я бывший банкир и у меня 22 банковские карты. Но не торопитесь смеяться. Потому что за 6 лет работы я научился комбинировать карты разных банков так, чтобы они пассивно приносили мне по 20-25 тысяч каждый месяц. Знаете, как?

Например, вы можете выпустить себе несколько бесплатных кредиток со съёмными лимитами, без процентов снимать с них деньги, и в наглую класть их на накопительные счета под 15-17% — за счёт чего с пачки бесплатных карт вам будет прилетать по 20-25 тысяч каждый месяц.

Таких схем на самом деле десятки — просто о них почти никто не знает. И если вы не хотите в буквальном смысле терять свою вторую зарплату — подпишитесь на Беспощадный Банкстер. Там я даю все наводки, учу собирать по 10 тысяч в месяц на тестировании карт, зарабатывать по 25к на пачке бесплатных кредиток, да и в конце концов — навсегда отключать комиссии по картам, убирать плату за обслуживание, и даже проценты по кредитам. Поверьте, у вас буквально появится вторая зарплата — и вы её уже никогда не потеряете.

Читать полностью…

Senior Java Developer

Как между собой связаны Iterable, Iterator и «for-each»?

Классы, реализующие интерфейс Iterable, могут применяться в конструкции for-each, которая использует Iterator.

Читать полностью…

Senior Java Developer

erid: LjN8K8jLP

Какой брокер сообщений выбрать для написания асинхронной связи? 

🔥 Расскажем на бесплатном открытом уроке «RabbitMQ vs Kafka» от OTUS и Евгения Непомнящего – разработчика в «IT Sense».

На вебинаре:

✅ изучим особенности, плюсы и минусы брокеров;
✅ познакомимся с основными принципами их работы;
✅ посмотрим использование этих брокеров в live demo.

🗓 Занятие пройдёт 27 ноября в 20:00 мск и будет приурочено к старту курса «Microservice Architecture». После урока вы сможете продолжить обучение, в том числе в рассрочку.

🌐 Для бесплатного участия регистрируйтесь прямо сейчас: https://otus.pw/7cVpy/

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.

Читать полностью…

Senior Java Developer

Просто взяли нейросетку Stable Diffusion и превратили голливудских звёзд в советских пионеров!

Хотите также? Вот тут ребята проводят интенсив, на котором собирают свои нейросетки при помощи ChatGPT и Stable Diffusion.

На интенсиве вы узнаете, как работают технологии вроде ChatGPT, Stable Diffusion, а также разберетесь в генерации и распознавании речи с помощью нейронок — этот интенсив для тех, кто хочет быстро залететь в востребованную  сферу в ИТ!

Всего за 2 дня вы создадите сразу 12 крутых нейросетей.

Зарегистрироваться на интенсив можно по ссылке.

Реклама. ООО "ТЕРРА ЭЙАЙ". ИНН 9728019395. erid: LjN8KUpod

Читать полностью…

Senior Java Developer

Что такое «интеграционное тестирование»?

Интеграционное тестирование (integration testing) — это тестирование, проверяющие работоспособность двух или более модулей системы в совокупности — то есть нескольких объектов как единого блока. В тестах взаимодействия же тестируется конкретный, определенный объект и то, как именно он взаимодействует с внешними зависимостями.

Читать полностью…

Senior Java Developer

Программа для преобразования десятичных чисел в шестнадцатеричные на Java

Воспользуемся методом Integer.toString().

Time complexity: O(N)
Auxiliary Space: O(1)

Читать полностью…

Senior Java Developer

Задача

Программа проверяет: ввел что-либо пользователь или нет.

Ответ на картинке.

Читать полностью…

Senior Java Developer

Переименовываем файл

Переименовать файл можно, переместив содержимое первого файла в новый файл и удалив предыдущий файл. Java обрабатывает эту операцию, используя метод resolveSibiling . Он используется для разрешения данного пути относительно родительского пути этого пути.

Читать полностью…

Senior Java Developer

Чем отличается LongAdder от AtomicLong?

LongAdder — это класс, введенный в Java 8, который представляет собой альтернативу классу AtomicLong для выполнения атомарных операций над переменными типа long. Он предоставляет более высокую производительность в некоторых сценариях, чем AtomicLong, особенно в случаях, когда множество потоков изменяют одну и ту же переменную.

Основные отличия LongAdder от AtomicLong:

LongAdder разделяет внутренние счетчики между потоками, что позволяет потокам увеличивать разные счетчики и объединять их при необходимости. Это уменьшает конкуренцию между потоками, что может повысить производительность.
— Когда несколько потоков одновременно увеличивают LongAdder, он автоматически разделяет изменения между внутренними счетчиками, таким образом, уменьшая ожидание блокировки.
— Для получения общей суммы всех внутренних счетчиков LongAdder предоставляет метод sum(), который объединяет значения счетчиков.

#для_продвинутых

Читать полностью…

Senior Java Developer

#вопросы_с_собеседований
Как преобразовать строку в целое число?

Ответ на картинке.

Читать полностью…

Senior Java Developer

Spring Data JPA: разница между методами findById, getOne, getById и findOne

JpaRepository Spring Data предоставляет огромный набор методов, упрощающих реализацию операций над базой данных.

Смотреть статью

Читать полностью…

Senior Java Developer

Извлекаем имя из адреса электронной почты

Метод extractNameFromEmail принимает строку с адресом электронной почты и возвращает подстроку до символа "@" (если символ "@" присутствует в строке) в качестве имени.

Читать полностью…

Senior Java Developer

Какие подклассы класса Reader вы знаете, для чего они предназначены?

Reader - абстрактный класс, описывающий символьный ввод;
BufferedReader - буферизованный входной символьный поток;
CharArrayReader - входной поток, который читает из символьного массива;
FileReader - входной поток, читающий файл;
FilterReader - абстрактный класс, предоставляющий интерфейс для классов-надстроек;
InputStreamReader - входной поток, транслирующий байты в символы;
LineNumberReader - входной поток, подсчитывающий строки;
PipedReader - входной канал;
PushbackReader - входной поток, позволяющий возвращать символы обратно в поток;
StringReader - входной поток, читающий из строки.

Читать полностью…

Senior Java Developer

ХОЧЕШЬ ПОВЫШЕНИЕ В 2023 ГОДУ? 😎🔥

Тогда самое время разобраться в микросервисной архитектуре и стать более востребованным специалистом.

🚀 Курс ведет действующий архитектор Кирилл Ветчинкин. Он успешно реализовал проекты для Мегафона, Теле2, ВСS Brокer. Постоянный спикер крупных IT-конференций.

Какие скиллы прокачаем:
📌 Декомпозиция систем на микросервисы, отталкиваясь от бизнес-домена.
📌 Встройка микросервисов в оргструктуру компании.
📌Организация перехода от монолитной системы к микросервисной.
Полная программа ТУТ 👉 https://microarch.ru/?utm_source=posev&utm_medium=erid2vtzqvmbtdn&utm_campaign=5

А самое главное — поддержка от спикера, чат с одногруппниками и полезные созвоны с разбором домашки.

📕 Сертификат об участии по итогам прохождения курса.

Узнай больше о курсе 👉 https://microarch.ru/?utm_source=posev&utm_medium=erid2vtzqvmbtdn&utm_campaign=5

Реклама. ИП Ветчинкин К.Е. ИНН: 773376451099

Читать полностью…

Senior Java Developer

Собеседование по Java. Разбор 1606 вопросов и ответов

Смотреть статью

Читать полностью…

Senior Java Developer

Программа по сравнению элементов массива и букв строки

Для сравнения элементов массива и букв строки в Java можно использовать следующую программу.

Программа создает массив из символов {'a', 'c', 'd', 'f', 'g'} и строку "abcdefg". В цикле происходит сравнение элементов массива и букв строки с помощью метода charAt(). Если элемент массива равен букве строки, то выводится сообщение об этом.

Затем массив сортируется по возрастанию методом sort() из класса Arrays. Отсортированный массив выводится на экран.

Читать полностью…

Senior Java Developer

Узнаем самый средний элемент коллекции

В этом примере используется List numbers, который содержит числа. С помощью Collections.sort() список чисел сортируется в порядке возрастания. Затем вычисляется индекс середины списка. Если размер списка четный, то найдутся два средних элемента, их среднее значение вычисляется и выводится на экран. Если размер списка нечетный, то выводится только один средний элемент.

Пример вывода (для списка чисел [1, 2, 3, 4, 5, 6, 7, 8]):
Средние элементы: 4, 5
Среднее значение: 4.5

Читать полностью…

Senior Java Developer

Введение в Java Process Memory Model

Каждое Java приложение, после запуска, создаёт десятки, сотни, тысячи объектов в памяти компьютера на котором оно запущено.

Смотреть статью

Читать полностью…

Senior Java Developer

Array или ArrayList?

Выбор между Array и ArrayList зависит от специфики задачи Java, которую вы хотите решить. Запомните следующие особенности этих типов:

— Массив имеет фиксированный размер, и память для него выделяется во время объявления, а размер ArrayList может динамически меняться.

— Массивы Java работают намного быстрее, а в ArrayList намного проще добавлять и удалять элементы.

— При работе с Array скорее всего возникнет ошибка ArrayIndexOutOfBoundsException.

— ArrayList может быть только одномерным, когда массивы Java могут быть многомерными.

#для_начинающих

Читать полностью…
Subscribe to a channel