• Открытый урок «Aсинхронное программирование в Java»

      Всем привет!

      Делимся с вами очередным открытым уроком, который прошёл у нас в рамках курса «Разработчик Java». На нём преподаватель курса, Владимир Сонькин, рассказывал про асинхронное программирование почему оно позволяет делать код быстрым и эффективным, не используя сложные технологии распараллеливания. Также показывал примеры применения асинхронности для построения процессов обработки данных в бизнес-приложениях.



      Как всегда ждём комментарии, вопрос, которые можно оставить тут или зайти на день открытых дверей.
    • [Перевод] Как работает Graal — JIT-компилятор JVM на Java

      Привет, Хабр! Представляю вашему вниманию перевод статьи "Understanding How Graal Works — a Java JIT Compiler Written in Java".


      Введение


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


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

      Читать дальше →
      • +36
      • 11.8k
      • 3
    • Создание «искусственной жизни» на компьютере

      • Tutorial
      Всем привет. В статье хочу описать свой эксперимент по созданию «искусственной жизни» на компьютере.

      Как это выглядит?

      картинка кликабельна

      На компьютере создаётся виртуальная среда со своими правилами и выпускается первая простейшая живность. Буду называть их ботами. Боты могут погибнуть или выжить и дать потомство. Потомок может слегка отличаться от предка.

      Ну а дальше за работу принимается эволюция и естественный отбор.

      А мне остаётся только наблюдать за развитием мира.

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

      Поведением ботов управляет код, записанный в них.

      Именно код и является геномом, который отвечает за поведение бота и который будет изменяться в процессе эволюции.

      Внутреннее устройство кода — это самое интересное в проекте.

      Код должен быть простым и выдерживать различные модификации (случайное изменение любого элемента в коде) над собой без синтаксических ошибок.
      Читать дальше →
    • Обработка строк в Java. Часть I: String, StringBuffer, StringBuilder

      Вступление


      Что вы знаете о обработке строк в Java? Как много этих знаний и насколько они углублены и актуальны? Давайте попробуем вместе со мной разобрать все вопросы, связанные с этой важной, фундаментальной и часто используемой частью языка. Наш маленький гайд будет разбит на две публикации:

      1. String, StringBuffer, StringBuilder (реализация строк)
      2. Pattern, Matcher (регулярные выражения)

      Реализация строк на Java представлена тремя основными классами: String, StringBuffer, StringBuilder. Давайте поговорим о них.
      Читать дальше →