Рубрика «java» - 236

В четверг, 7 августа, в 20:00 в петербургском офисе компании Luxoft пройдёт встреча JUG.ru с Антоном Архиповым, специалистом по модификации байткода, разработчиком и менеджером продуктов JRebel и XRebel в компании ZeroTurnaround. Встреча будет состоять из двух частей: до перерыва мы поговорим о загрузчиках классов, а после перерыва — об инструментации байткода.

Участие в данном мероприятии является бесплатным, но необходимо зарегистрироваться на jugru.timepad.ru/event/135787/

1. Загрузчики классов в Java: коллекция граблей

Модель динамической загрузки классов является одной из основных особенностей платформы Java. Загрузчик классов позволяет загружать исполняемый код в JRE не перезагружая основное приложение. Сервера приложений, модульные системы, многие веб-фреймворки используют загрузчики классов для внесения динамических особенностей в свою функциональность.

В этом докладе будут рассмотрены основные положения в механизме загрузки классов, а так же разобраны основные проблемы возникающие в приложениях из-за особенностей поведения загрузчиков. Будут рассмотрены причины возникновения типичных ошибок ClassNoDefFoundError, IncompatibleClassChangeError, LinkageError, и др, а так же способы диагностики и пути к решению этих ошибок.

Доклад подразумевает интерактив и вовлечённое участие аудитории.

2. Java-агенты, Instrumentation API и Javassist

Пакет java.lang.instrument был добавлен в Java уже давно, в версии 1.5. На простых примера рассмотрим основные возможности Instrumentation API и поговорим о том, как и для чего можно сделать своего Java-агента. Картинка была бы неполной без упоминания инструментов для манипуляций с байткодом — для этого мы посмотрим на возможности Javassist и увидим, что с этим со всем можно сделать.

Антон Архипов — разработчик и менеджер продуктов JRebel и XRebel в эстонской компании ZeroTurnaround. Профессионально занимается разработкой на Java около десяти лет. Основные интересы связаны с языками программирования и средствами разработки ПО. Регулярно выступает на международных конференциях — за спиной выступления на таких конференциях как JAX, JavaOne, GeeCON, Jfokus, JavaZone, EclipseCon.

Место проведения
Петербургский офис компании Luxoft:
Бизнес-центр «Осень», Свердловская наб., дом 44, литера Я
Читать полностью »

image

Вот и у меня нашлась тема, которой я могу поделиться с Хабр сообществом. Надеюсь данная статья получится не только познавательной, но и интересной.

Входные данные:
Локейшн: Днепропетровск.
Позиция: Junior Automation QA Engineer.
Технологии: C#, Selenium, MSTest, TeamCity, Hibernate.

Так получилось, что пару месяцев назад я оказался на лавке запасных в одной большой компании. Клиент решил поделить нашу команду автотестеров на 2(хорошо, что не на ноль) и так как у меня на этом проекте срок работы был невелик, то я попал в резерв. Внутренних проектов не ожидалось, а в резерве обычно сидеть скучно и невыгодно в денежном плане. Так я начал ходить на интервью.
Читать полностью »

История одного проекта.

Перетягивание «Верблюда» или интеграция средствами Camel. Часть 1
Вам когда нибудь снились верблюды? Вот и мне тоже нет. Но работая с Camel-ом уже третий год, начинают снится не только верблюды.
В общем буду делиться опытом, писать о верблюдах и учить вас их готовить. Это серия статей в трёх частях: первая часть будет для тех кому интересны истории и муки творчества; вторая — больше техническая о паттернах интеграции, их применении и третья часть об ошибках и отладке.
Если вам нужно объединить ваши сервисы, здесь вы узнаете чем хорош Camel. Если вы хотите научиться использовать что-нибудь новенькое, здесь мы начнём с азов. Если вам нравятся истории и оригинальные фишки, которые есть в каждой команде, то читайте дальше.
Читать полностью »

Производительность и цена – это два основных, наиболее значимых фактора в хостинге приложений. Мы часто спрашиваем себя, как тратить меньше, не ухудшая производительности приложений. В данной статье мы рассмотрим автоматическое управление памятью для Java-приложений, размещенных на облачном хостинге Infobox Jelastic с использованием сборки мусора и Jelastic GC Agent. В конце статьи небольшой сюрприз.

Для начала определим, что такое сборка мусора и что она делает для нашего Java-приложения. Затем поговорим подробнее от процессах сборки мусора в Jelastic.
Читать полностью »

Эта статья иллюстрирует т. н. компромисс скорости и памяти — правило, которое выполняется во многих областях CS, — на примере разных реализаций хеш-таблиц на Java. Чем больше памяти занимает хеш-таблица, тем быстрее выполняются операции над ней (например, взятие значения по ключу).
Время против памяти на примере хеш таблиц на Java
Читать полностью »

Так уж получилось, что я стал победителем конкурса от Microsoft и получил в качестве приза Nokia Lumia 710. После того, как на совместимость с мобильным IE были проверены все мои сайты, я подумал, что было бы неплохо протестировать уже сам смартфон в реальных условиях и написать обзор. Учебный год был закончен, и предстояла увлекательная летняя практика по Java, во время которой я и хотел протестировать смартфон… Но в результате, я больше программировал игру, чем разбирался с новым смартфоном.

Как в Магическом Электротехническом практика по Java прошла и немного про Lumia 710

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

Java Agent на службе JVM
Наверное многие слышали или сталкивались с таким параметром JVM как -javaagent, увидеть этот параметр вы могли используя Jrebel или Plumbr это могло выглядеть например так JAVA_OPTS=-javaagent:[path/to/]jrebel.jar или так -javaagent:/path-to/plumbr.jar
Хотя javaagent появился еще в версии java 1.5, многие разработчики так никогда и не использовали возможности агентов и имеют смутное представление что это такое.
Что же это за агент? Зачем он может нам понадобиться и как написать свой?
Читать полностью »

Приветствую вас, уважаемый читатель!
Предлагаю вашему вниманию краткий и, конечно, бесплатно серияю видеоуроков для тех кто желает быстро вникнуть в особености разработки под Android.
Читать полностью »

Привет!

JUG — Java User Group, встречи JUG.EKB — это обсуждение различных технологий из мира Java, обмен опытом, а также просто интересное общение!
Мы регулярно проводим встречи JUG.EKB с лекциями Java экспертов на самые интересные темы.
Наш сайт jugekb.ru, сообщество в ВК — vk.com/jugekb.

Приглашаем всех java разработчиков на вторую встречу JUG.EKB.
Читать полностью »

Здравствуй.

Лето на дворе, скоро отпуск и появилось немного свободного времени поделиться наработками, каким-то опытом по написанию Web приложений на Java платформе. Как основной язык я буду использовать Scala. Это будет похоже на небольшой гайд, как человеку с опытом Java постепенно начать использовать Scala и не отказываться от уже имеющихся у него наработок.

Это первая часть из серии статей, в которой мы уделим внимание базовой структуре приложения. Ориентирована на людей знающих Java, работавших со Spring, Hibernate, JPA, JSP и другими 3-4ех буквенными сокращениями. Я попытаюсь рассказать как максимально быстро и безболезненно начать использовать Scala в ваших проектах и по-другому проектировать ваше новое приложение. Все это будет вокруг проекта, который должен выполнять ряд требований:
1. Приложение полностью закрыто, работаем только после авторизации
2. Наличие удобного API (REST мы забудем (он уже история) и напишем что-то вроде Google AdWords API, со своим SQL like запросником)
3. Возможность запуска на сервере приложений так и без него
4. i18n
5. Миграция БД
6. Среда для разработки должна разворачиваться через Vagrant
7. И, по мелочи, логирование, развертывание…

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

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


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js