Обложка канала

Библиотека джависта. Страница 12

20804 @javaproglib

Полезные материалы по всему, что может быть полезно разработчику на Java.

  • Библиотека джависта

    Чем различаются JRE, JVM и JDK? JVM, Java Virtual Machine (Виртуальная машина Java) — основная часть среды времени исполнения Java (JRE). Виртуальная машина Java исполняет байт-код Java, предварительно созданный из исходного текста Java-программы компилятором Java. JVM может также использоваться для выполнения программ, написанных на других языках программирования. JRE, Java Runtime Environment (Среда времени выполнения Java) - минимально-необходимая реализация виртуальной машины для исполнения Java-приложений. Состоит из JVM и стандартного набора библиотек классов Java. JDK, Java Development Kit (Комплект разработки на Java) - JRE и набор инструментов разработчика приложений на языке Java, включающий в себя компилятор Java, стандартные библиотеки классов Java, примеры, документацию, различные утилиты. Коротко: JDK - среда для разработки программ на Java, включающая в себя JRE - среду для обеспечения запуска Java программ, которая в свою очередь содержит JVM - интерпретатор кода Java программ.
  • Библиотека джависта

    Обзор новостей Java: JEP для JDK 21, Spring Cloud AWS 3.0, OptaPlanner для Timefold Новости о OpenJDK, JDK 21, Spring Boot 3.1.0-RC2, Spring Modulith 0.6, Spring Cloud для Amazon Web Services 3.0.0, Spring Cloud Data Flow 2.10.3, Spring Tools 4.18.2, Infinispan 14.0.9.Final , Open Liberty 23.0.0.4, Quarkus 3.0.2 и 2.16.7, Helidon 3.2.1, Apache Camel 4.0.0-M3. www.infoq.com/news/20…y01-2023
    Java News Roundup: JEPs for JDK 21, Spring Cloud AWS 3.0, OptaPlanner to Timefold

    This week's Java roundup for May 1st, 2023, features news from OpenJDK, JDK 21, Spring Boot 3.1.0-RC2, Spring Modulith 0.6, Spring Cloud for Amazon Web Services 3.0.0, Spring Cloud Data Flow 2.10.3, Spring Tools 4.18.2, Infinispan 14.0.9.Final, Open Liberty 23.0.0.4, Quarkus 3.0.2 and 2.16.7, Helidon 3.2.1, Apache Camel 4.0.0-M3, Arquillian 1.7.0 and OptaPlanner transitions to Timefold.

    InfoQ
  • Библиотека джависта

    20 мая пройдет митап о прикладной java-разработке — Naumen Java Meetup. На встрече спикеры расскажут: ☕️Как пошагово внедрять SonarQube в существующий проект. ☕️Какие особенности возникают при разработке структуры БД для использования с JPA/Hibernate, а также выберем наиболее подходящий процесс разработки слоя доступа к данным. ☕️ Как не оказаться в неприятной ситуации, когда начнете разгонять свое приложение с помощью потоков в лоб. ☕️О семействе протоколов JGROUPS, а также про устройство кластера Naumen Service Management Platform. Встреча пройдет онлайн, ссылку на трансляцию отправит телеграм-бот. Он появится сразу после регистрации 😉 → Зарегистрироваться Присоединяйтесь к телеграм-каналу сообщества, чтобы быть в курсе всех активностей. → Присоединиться
  • Реклама

  • Библиотека джависта

    #memes
  • Библиотека джависта

    Что такое Instance Variable? Instance Variable — переменная, которая определена внутри класса, и она существует вплоть до того момента, пока существует объект. Пример — класс Bee, в котором есть две переменные nectarCapacity и maxNectarCapacity.
  • Библиотека джависта

    Кто-нибудь использует в разработке Github Copilot сейчас? Как он в сравнении с ChatGPT? Расскажите в комментариях :D
  • Библиотека джависта

    Оптимальный путь для входа в IT. Золотая середина между ручным тестированием и разработкой. Если вы переживали, что стать программистом для вас окажется слишком сложно, а профессия ручного тестировщика — недостаточно интересна, то автоматизация тестирования станет той самой золотой серединой, с которой можно ворваться в сферу IT. Задачи — интересные, разнообразные, как у backend-разработчиков, но при этом значительно легче, ведь из программирования будет задействованы только основы. Kata берет 17% от дохода на руки только после вашего трудоустройства по специальности. Академия гарантирует минимальную зарплату с первого месяца работы — 100.000 рублей на руки, а если вы не нашли работу с такой ЗП — платить за обучение не нужно. Если не тянете программу или не укладывается в дедлайны, то будете отчислены, в этом случае так же ничего не платите. Это всё прописано в договоре. Вписаться в майский поток: https://clck.ru/34MvWZ Это #партнерский пост
  • Библиотека джависта

    ☕️ Префиксное дерево. Основные операции, сохранение в файл, практическое применение. В данном видео автор рассказывает о префиксных деревьях. Разбирает, что из себя представляет префиксное дерево, для чего оно применяется. Изучаем и реализуем основные операции с префиксным деревом на языке программирования Java. Кроме этого автор показывает, как сохранить дерево в файл и потом загрузить обратно. С помощью этого проверяет, насколько выгодней может быть хранение строк в префиксном дереве на примере автомобильных номеров. https://youtu.be/-DGJuakdiYU
    Java. Префиксное дерево. Основные операции, сохранение в файл, практическое применение.

    В данном видео я рассказываю о префиксных деревьях. Разбираем, что из себя представляет префиксное дерево, для чего оно применяется. Изучаем и реализуем основные операции с префиксным деревом на языке программирования Java. Кроме этого я показываю как сохранить дерево в файл и потом загрузить обратно. С помощью этого проверяю, насколько выгодней может быть хранение строк в префиксном дереве на примере автомобильных номеров. Исходники: https://github.com/Arhiser/java_tutorials/blob/master/src/ru/arhiser/prefix_tree/Main.java Оглавление по алгоритмам: https://github.com/Arhiser/java_tutorials/blob/master/README.md Поддержать канал💰: https://yoomoney.ru/to/410018856244871 Группа в Telegram: https://t.me/ArhiTutorials 00:00 - Вступление 00:26 - Применение в приложении 01:58 - Построение дерева и операции с ним 06:33 - Построение префиксного дерева на Java 11:22 - Операции с префиксным деревом на Java 16:31 - Сохранение дерева в файл 20:51 - Загрузка дерева из файла 25:32 - Экономия по сравнению со списком 27:12 - Замечание о Null-безопасности 28:26 - Заключение #ArhiTutorialsJava #ityoutubersru

    YouTube
  • Библиотека джависта

    #вопросы_с_собеседований Что подразумевают в плане принципов ООП выражения «является» и «имеет»? «является» подразумевает наследование. «имеет» подразумевает ассоциацию (агрегацию или композицию).
  • Библиотека джависта

    #дайджест Собрали для вас подборку обучающих материалов по Spring. Сохраняйте себе: ☕️ Spring – лучший Java фреймворк для создания веб-приложений ☕️ Большой гайд. Пишем микросервисы на Java и Spring Boot, заворачиваем в Docker, запускаем на EKS, мониторим на Grafana ☕️ Зачем нужны профили в Spring? ☕️ Какие основные аннотации предлагает Spring Boot? ☕️ Техническое интервью Java Developer ☕️ Дорожная карта Spring Boot ☕️ Spring. Экспертное мнение о плюсах и минусах самого популярного Java-фреймворка
  • Библиотека джависта

    🪙 Освой Spring и требуй повышения зарплаты! Готов? Пройди тест по Spring и проверь свои знания. Ответишь — пройдешь на продвинутый курс "Разработчик на Spring Framework" от OTUS по специальной цене + получишь доступ к записям открытых уроков курса курса🎁 . 👉 ПРОЙТИ ТЕСТ: https://otus.pw/eiZV/ 🔥 БОНУС 10 мая, в 20:00 (мск) пройдет бесплатный открытый урок курса - «События в Spring Data JPA». Нативная интеграция. Информация о продукте www.otus.ru
  • Библиотека джависта

    Программа на Java, убирающая все переносы в строке Для замены всех переносов («\n») можно использовать функцию replace(). String replace() возвращает новый объект String, который содержит ту же последовательность символов, что и исходная строка, но с замененным символом. Таким образом с помощью функции replace() можно заменять любые символы в строке на нужные.
  • Библиотека джависта

    Метод compareTo() В Java метод compareTo() получает значение 0, если аргумент является строкой лексически равной данной строке; значение меньше 0, если аргумент является строкой лексически большей, чем сравниваемая строка; и значение больше 0, если аргумент является строкой лексически меньшей этой строки.
  • Библиотека джависта

    Миллиарды сообщений в минуту по протоколу TCP/IP

    Основные выводы Согласованность данных имеет решающее значение при обмене данными между программными компонентами на разных машинах, чтобы обеспечить сохранность информации. Обмен данными с низкой...

    Хабр
  • Библиотека джависта

    Еще один путь снизить боль при работе с Java проектами и их документированием

    Ты не видел тут американскую подлодку? Видел. Куда она поплыла? Курс Зюйд-Зюйд-Вест. Ты не умничай, пальцем покажи. (С) бородатый анекдот За работу Уатт потребовал 1000 фунтов,...

    Хабр
  • Реклама

  • Библиотека джависта

    Расскажите про основные понятия ООП: «класс», «объект», «интерфейс». Класс – это способ описания сущности, определяющий состояние и поведение, зависящее от этого состояния, а также правила для взаимодействия с данной сущностью (контракт). С точки зрения программирования класс можно рассматривать как набор данных (полей, атрибутов, членов класса) и функций для работы с ними (методов). С точки зрения структуры программы, класс является сложным типом данных. Объект (экземпляр) – это отдельный представитель класса, имеющий конкретное состояние и поведение, полностью определяемое классом. Каждый объект имеет конкретные значения атрибутов и методы, работающие с этими значениями на основе правил, заданных в классе. Интерфейс – это набор методов класса, доступных для использования. Интерфейсом класса будет являться набор всех его публичных методов в совокупности с набором публичных атрибутов. По сути, интерфейс специфицирует класс, чётко определяя все возможные действия над ним.
  • Библиотека джависта

    Что представляет собой «обмен сообщениями»? Объекты взаимодействуют, посылая и получая сообщения. Сообщение — это запрос на выполнение действия, дополненный набором аргументов, которые могут понадобиться при выполнении действия. В ООП посылка сообщения (вызов метода) — это единственный путь передать управление объекту. Если объект должен «отвечать» на это сообщение, то у него должна иметься соответствующий данному сообщению метод. Так же объекты, используя свои методы, могут и сами посылать сообщения другим объектам. Обмен сообщениями реализуется с помощью динамических вызовов, что приводит к чрезвычайно позднему связыванию (extreme late binding). Пусть требуется создать физическую модель, описывающую сталкивающиеся шары разных размеров. Традиционный подход к решению этой задачи примерно таков: определяется набор данных, описывающих каждый шар (например, его координаты, массу и ускорение); каждому шару присваивается уникальный идентификатор (например, организуется массив, значение индекса которого соответствует номеру шара), который позволит отличать каждый из шаров от всех других. Наконец, пишется подпрограмма с названием, скажем, bounce; эта процедура должна на основе номера шара и его начальных параметров соответствующим образом изменять данные, описывающие шар. В отличие от традиционного подхода объектно-ориентированная версия программы моделирует каждый из шаров посредством объекта. При этом объект, соответствующий конкретному шару, содержит не только его параметры, но и весь код, описывающий поведение шара при различных взаимодействиях. Так, каждый шар будет иметь собственный метод bounce(). Вместо того, чтобы вызывать подпрограмму bounce с аргументом, определяющим, скажем, шар №3, необходимо будет передать объекту «шар №3» сообщение, предписывающее ему выполнить столкновение.
  • Библиотека джависта

    Что такое ООП? Объектно-ориентированное программирование (ООП) — методология программирования, основанная на представлении программы в виде совокупности объектов, каждый из которых является экземпляром определенного класса, а классы образуют иерархию наследования. • объектно-ориентированное программирование использует в качестве основных логических конструктивных элементов объекты, а не алгоритмы; • каждый объект является экземпляром определенного класса • классы образуют иерархии. Программа считается объектно-ориентированной, только если выполнены все три указанных требования. В частности, программирование, не использующее наследование, называется не объектно-ориентированным, а программированием с помощью абстрактных типов данных. Согласно парадигме ООП программа состоит из объектов, обменивающихся сообщениями. Объекты могут обладать состоянием, единственный способ изменить состояние объекта - послать ему сообщение, в ответ на которое, объект может изменить собственное состояние.