У вас уже есть заявка на текущий период. Если вы хотите, чтобы данная программа участвовала в розыгрыше гранта в этом месяце, необходимо добавить ее в папку "Интересные мероприятия". Или создайте заявку на другой период.
 
КурсыMBAКомпанииГранты на обучениеВузыДоступное образованиеПовысь зарплату

EduMarket Образование
  Вход на сайт
 
Напомнить   
Запомнить меня
 
Пользовательское соглашение


Публикации и новости

Анонсы и релизы

Программирование - удел избранных?Программирование - удел избранных? в Михаил Акимов
Михаил Акимов, в прошлом управлял Rabota.ru, RJob.ru, теперь открывает собственную Школу ...

Вы часто нажимаете кнопку «СПАМ»? Узнайте, как можно испортить себе репутацию!Вы часто нажимаете кнопку «СПАМ»? Узнайте, как можно испортить себе репутацию! в EduMarket
С июля по декабрь 2014 года портал дополнительного образования Edumarket.ru проводил ...

Бесплатные видеокурсы

Бесплатная видеолекция: Создание резервной копии базы данных в MySQLБесплатная видеолекция: Создание резервной копии базы данных в MySQL в Специалист, компьютерный центр при МГТУ имени Н.Э.Баумана
Ведет семинар сертифицированный разработчик баз данных MySQL, обладатель престижного ...

Бесплатная видеолекция: Системный подход и практический опыт продвижения больших сайтовБесплатная видеолекция: Системный подход и практический опыт продвижения больших сайтов
Докладчик: Сергей Бурков Спикер поделился своим богатым успешным опытом продвижения ...

Статьи

7 полезных советов для фрилансеров и всех, кто хочет ими стать7 полезных советов для фрилансеров и всех, кто хочет ими стать
Рано или поздно каждый офисный работник задумывается, что здорово было бы всё бросить и ...

10 самых перспективных профессий в сфере IT в ближайшее десятилетие10 самых перспективных профессий в сфере IT в ближайшее десятилетие
Последние несколько лет стали революционными в области развития технологий. Как ...

Новости

Специалисты Университета Иннополис обучат российских преподавателей и учёных основам промышленной робототехникиСпециалисты Университета Иннополис обучат российских преподавателей и учёных основам промышленной робототехники
Специалисты Университета Иннополис обучат российских преподавателей и учёных основам ...

ФРИИ запустит курс по интернет-предпринимательству в 22 ВУЗах РоссииФРИИ запустит курс по интернет-предпринимательству в 22 ВУЗах России
Фонд развития интернет-инициатив (ФРИИ) запустит образовательный курс для студентов ...



Победители конкурса грантов

Завершился 35-й конкурс грантов «Мечты сбываются». Поздравляем победителей!
Нет ничего невозможного, если есть сильное желание чего-то добиться. Если у вас есть ...

Куценко Александра Анатольевна, менеджер из Ростова-на-Дону, победитель 34 конкурса грантов, выиграла 100 000 руб.
Хочу поблагодарить портал EduMarket.ru и всех, кто причастен к его созданию, развитию и ...



Подать заявку на грант
 
Выставки, конференции / IT: Интернет / Проектирование и разработка сайта / Joker 2015

Конференция: Joker 2015

Jug.ru (0.74) Рейтинг компании Санкт-Петербург 15 000 руб.
Целевая аудитория
Для Java-разработчиков.
Даты проведения
16.10.2015 - 17.10.2015
Уточните расписание у организатора.
Возможно он не успел обновить расписание.
Вид мероприятия
Конференция
Анонс программы
16 и 17 октября в Санкт-Петербурге в гостинице "Park Inn Пулковская" пройдет конференция для Java-разработчиков Joker 2015. Конференция будет крупнейшим Java-событием года в России и соберет более 600 Java-разработчиков. В программе: более 30 докладов от Java-экспертов; презентации от разработчиков технологии Java; мастер-классы и тренинги от Java-гуру; зоны свободного общения.
Описание программы

День 1
Practicing at the Cutting Edge

  • They say that wisdom comes with age. Like many concepts in software, we have an imperfect proxy here. Age being the imperfect proxy for experience, discovery, and learning. When pushing a technology to the limits of performance one has a lot to learn and then unlearn over time as the language, runtime, operating systems, and hardware evolves.
  • Martin will reflect on his experience with Java since its inception. Starting with building financial GUIs to run on OS2 and NT, then the era of Servlets and J2EE, streaming data and media concurrently to thousands of devices, processing and indexing the largest catalogues, encryption on mobile phones, LMAX and the Disruptor, and the current generation of low-latency trading applications that must cope with millions of events per second with latency measured in the microseconds.
  • The talk will focus on the major steps in the evolution of Java and how it contrasts to C/C++ over time. We will also cover the challenges of pushing the limits of performance and how we need to collaborate with industry experts and organise our teams, which often stands at odds with the development culture in many industries and organisations.

Spring Puzzlers: тонкости и нюансы работы Spring

  • Вряд ли кто-то будет спорить с тем, что Spring является одним из самых распространённых фреймворков сегодня. Но на сколько хорошо вы с ним знакомы?
  • Первый уровень — это умение пользоваться Spring, не сильно заморачиваясь, как он там работает. Второй уровень — это понимание кишок, что даёт вам возможность кастомизировать его под ваши нужды. Мы предлагаем вам выйти на третий уровень и освоить тонкости работы Spring.
  • Этот доклад включает много очень заковыристых и забавных загадок по Spring, взятых из реальной жизни. Полученные знания помогут вам освоить тонкости Spring-a и защититься от всяких мистических багов. Этот доклад является продолжением к докладу «Спринг-Потрошитель», и в отличие от всех других puzzler-ов является очень практическим. Будет написано и разобрано много живого кода, взятого из реальных проектов.

Распределенные системы в Одноклассниках

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

Improve Testing Code Quality with Mutation Testing

  • Unit testing ensures your production code is relevant. But what does ensure your testing code is relevant? Come discover mutation testing and make sure your never forget another assert again.
  • In the realm of testing, the code coverage metrics is the most often talked about. However, it doesn't mean that the test has been useful or even that an assert has been coded. Mutation testing is a strategy to make sure that the test code is relevant.
  • In this talk, I will explain how Code Coverage is computed and what its inherent flaw is. Afterwards, I will describe how Mutation Testing work and how it helps pointing out code that is tested but leave out corner cases. I will also demo PIT, a Java production-grade framework that enables Mutation Testing on a simple code base. If time allows, a demo will also show how PIT can be integrated with Sonar.

Using Java Microbenchmark Harness (JMH) in a real world project

  • Many of you have already heard about JMH and probably even played with it to benchmark some code. But how would you use it in a real project? Which problems can it help to solve?
  • In this talk I would like to share the experience of using JMH library to drive performance optimizations and track performance regressions. You’ll learn how we use JMH, which issues and pitfalls were encountered and overcome along the way.
  • And since a measurement is not an end in itself, I will show you what can be a result of using the benchmark-driven approach to performance optimizations. The use-cases will demonstrate issues and solutions that helped bring the performance of our project to its next level.

The Lord of the Strings: Two Scours

  • В этом докладе мы посмотрим на две потенциальные фичи в JDK 9, направленные на оптимизацию строк: Compact Strings, сжимающие строки с однобайтовыми символами, и Indify String Concat, использующий магию invokedynamic для конкатенации строк.
  • Кроме разбора, чем всё это нам грозит, в докладе будут освещены вопросы рациональности, подходов к реализации, практических граблей, с которыми сталкивается разработчик JDK, клюнувший на приманку «Да это ж опенсорс, патчес велком!».

Как укротить буйного в отделении: смирительные Java-рубашки для MongoDB

  • Среди американских стартапов считается нормальным использовать в качестве базы данных для проекта NoSQL. Под это выделяются бюджеты, про это потом показывают слайды в презентациях.
  • Обычного Java — программиста ни жизнь, ни универ, ни типичный веб-проект не готовят к низкоуровневому взаимодействию через Java-драйверы. Через 15 минут кодинга он словно маленький ребенок начинает требовать Hibernate или его подобие для элементарного маппинга бесчисленных (на этапе построения прототипа, особенно) сущностей на гхм..таблицы в новой базе данных.
  • Однако, в высоконагруженных проектах свои требования, тут приходится считать каждый лишний байт метаинформации и рефлексия может стать расточительной тратой ресурсов JVM. Стандартный драйвер предлагает многое, ORM-like framework Morphia звучит как сладкий сон, но покрывает не все кейсы, Spring Data пытается сказать «тада, я тут, братцы», но растягивается на полу в луже конфигов, Kundera для всего подряд напоминает хорошую мину при плохой игре.. Вы можете погрязнуть во всем этом с головой и никогда не вынырнуть.
  • Свет в конце тоннеля есть, я дам вам железные аргументы для использования того или иного инструмента в ваши усталые от маппинга руки... А может быть мы вообще сможем заменить Mongo на что-то поинтереснее.

WILD microSERVICES
Микросервисы, как ни крути, - наше всё. Можно сопротивляться SOAP 2.0 сколь угодно долго, но рано или поздно или придут за тобой и обратят в свою веру, или ты придёшь к ним сам и попросишь крестить себя огнём и мечом. Как и у любого архитектурного решения у микросервисов есть свои плюсы и свои минусы.

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

В докладе будут освещены следующие темы:

  • микросервис - что за зверь и как его приручить;
  • на чём писать API и нелёгкий выбор между REST и RPC;
  • как скрестить Spring и Thrift и вывести новую породу;
  • а так же в программе «способы селективного отбора технологий»:
    • какой стек выбрать для разработки, что выбрали мы и почему;
    • как микросервисам найти друг друга;
    • предохраняй и сохраняй свои микросервисы;
    • что делать с длинными цепочками вызовов и как не умереть от большого количества их взаимодействий.

50 оттенков Play!

  • Несколько лет назад в болоте Java появился революционный Play! фреймворк. Он якобы вобрал простоту RubyOnRails и скорость и compile safety Java. Он сулил избавление от перезагрузок. Он обещал дикую скалируемость забесплатно. Одни предвкушали новую жизнь Java без ынтерпрайза, другие скептически похмыкивали: «Play – это несерьёзно. Разве что для игрушек.»
  • Кто же оказался прав? Мы использовали Play! фреймворк для построения вполне серьёзных приложений. Теперь, спустя 4 года, я готов поделиться болью и радостью от Play и сделать выводы, стоит ли верить громким обещаниям, и как заглянуть под капот при выборе следующего фреймворка.

CompletableFuture in Java 8, asynchronous processing done right

  • Future objects prior to Java 8 were surprisingly limited. CompletableFuture introduced in JDK 8 is way more powerful. You can finally register asynchronous callbacks, transform, chain and combine futures on the fly. This shift from blocking Future allows writing more responsive, scalable and robust applications without too much hustle.
  • Deep foundation in functional programming together with shiny lambda expressions make CompletableFuture a modern and comprehensive tool for every multi-threaded application. New futures can also act as so-called promises, thus providing simple synchronization mechanism. Java finally got an asynchronous processing abstraction that can compete with Scala.
  • During this coding-only session we will explore various examples of CompletableFuture and familiarize ourselves with some patterns and practices. However we WON’T use the word «monad» at all.

Цифровая подпись в Java, Россия vs Эстония

  • Занимаясь интернет-банками для российского рынка, я узнал, что добавление такой элементарной для Эстонии функции как цифровая подпись оказалось совсем не тривиальным делом в России. Тем не менее, за этим будущее, и большинство разработчиков должны знать, как это работает.
  • В Эстонии это будущее уже наступило — Эстония была первая страна в мире, 100% легализовавшая цифровую подпись, выдавшей 15 лет назад ничего не подозревающим гражданам ключи (расскажу, почему по два) в виде обязательного документа — государственной ID-карты, и одна из немногих стран, где цифровые подписи сегодня почти полностью вытеснили бумажные.
  • В России, наоборот, организации должны сами брать на себя создание всей инфраструктуры, чтобы дать возможность пользователям давать цифровые подписи. Также есть требования к алгоритмам, сильно отличающимся от мировых стандартов. Для этого появилось множество коммерческих компаний, которые пытаются продавать свои решения для этой задачи, не совместимые с друг другом и плохо совместимые с Java. Однако, на данный момент в распоряжении Java разработчика уже есть достаточно open-source средств, чтобы справиться с этой задачей самостоятельно — необходимо только понимать, что и как взаимосвязано. Именно обо всём этом я и собираюсь рассказать.

How «final» is final?

  • Although the concept of «final» fields is quite simple, its implementation in Java can lead to surprising effects. First of all, the Java VM and Java language have a slightly different understanding of "final". Second (and unfortunately) declaring a field as final doesn't mean that the VM or the programmer can really rely on its immutability.
  • This talk will show the different aspects of "finality" and their impact on the Java compiler and the Java VM. It will demonstrate how finality can be circumvented in Java with the help of reflection or sun.misc.Unsafe. And finally it will discuss the impacts this has on the optimizations done by the JIT compiler and various workarounds like the non-standard @Stable annotation or -XX:TrustFinalNonStaticFields.

Legacy: как победить в гонке

  • У вас древний проект? Все зовут его «Legacy», а вас «неудачник»? Возможно они даже смеются над вами.
  • Давайте взглянем на ситуацию с другого ракурса. Все (все, Карл!) успешные проекты рано или поздно превращаются в Legacy-проекты.
  • Я затрону тему Legacy не просто как явление, а как возможность быть постоянно в тренде, прослыть супер-спецом (даже если ты знаешь всего два фреймворка), сделать карьеру, как делать, то что ты хочешь, а не то что тебя просят. Ладно, ладно, я наврал про два фреймворка, но все остальное чистая правда. Я покажу, что вы можете творить, имея правильный подход к Legacy коду. 


  • Суть в том, что Legacy — это не грустно/уныло/немодно, это просто/клево/весело, если с умом подойти к задаче!

Adventures with concurrent programming in Java: A quest for predictable latency

  • Concurrent programming with locks is hard. Concurrent programming without using locks can be really hard. Concurrent programming with relaxed memory ordering and predictable latency semantics is said to be only for wizards. This focuses on a decade long quest to discover algorithms that provide very high throughput while keeping latency low and predictable.
  • We will cover some fundamental theory of concurrency and then compare various approaches to the same problem so that we can measure the impact on throughput and latency. We'll also show how some of these algorithm implementations get way more interesting given the new features in Java 8.
  • This talk is aimed at programmers interested in advanced concurrency who want to develop algorithms with very predictable response times at all levels of throughput which push our modern CPUs to the limit.

Hystrix – managing failures in distributed systems

  • We live in a distributed world where integration between components is ubiquitous. Assuming all parts of the system are working at the same time and are not overloaded is too optimistic. Our application must be prepared for failures, must tolerate, handle and test exceptional conditions.
  • Hystrix is a library that provides complete set of tools for managing failures. It monitors potentially problematic sections of code (like network calls), measures execution time and error rate. It can pro-actively turn off malfunctioning features for a period of time and keep system resources bound. Built-in real-time monitoring is also really useful to quickly troubleshoot anomalies and bottlenecks.
  • During this session we will focus on live demos and code samples, no slides are planned.

Ping-pong programming

  • «Пинг-понг программирование» — это симбиоз двух известных практик экстремального программирования – парного программирования, и разработки через тестирование (TDD).
  • Суть в том, что тесты пишутся до кода. Один программист пишет красный тест. Второй программист пишет код, который сделает тест зелёным. Он же пишет следующий красный тест и снова передаёт клавиатуру первому. И так далее по кругу.
  • На выходе получаемый весёлый процесс, дикую вовлечённость всех участников, быстрое обучение новичков и конечно, на 100% протестированный код. Не верите — приходите и убедитесь.

The Macro of Microservices

  • Давайте взглянем на ситуацию с другого ракурса. Все (все, Карл!) успешные проекты рано или поздно превращаются в Legacy-проекты.
  • Мы затронем тему Legacy не просто как явление, а как возможность быть постоянно в тренде, прослыть супер-спецом (даже если вы знаете всего два фреймворка), сделать карьеру, как делать, то что вы хотите, а не то что вас просят. Вы узнаете, что вы можете творить, имея правильный подход к Legacy коду. 


  • Суть в том, что Legacy - это не грустно/уныло/немодно, это просто/клево/весело, если с умом подойти к задаче!

Закрытие первого дня

День 2
Get Past the Syntax, the Real Scare's in the Semantics

  • We often hear programmers complain about the syntax, especially when learning a new language. It turns out that, while syntax plays a role in our ability to learn and use languages, the real force we have to deal with is in the semantics. Once we get past the syntax, the semantics is where the real power and the real scare is. Curious to learn more?

Нужен ли нам Unsafe в Java?

  • «Безопасность превыше всего!» Такой лозунг хорошо подошёл бы Java-платформе, ведь виртуальная машина обеспечивает верификацию байткода, автоматическое управление памятью и ловит типичные ошибки вроде нулевых указателей и выхода за пределы массива. Java API тщательно разрабатывается с учётом требований безопасности и контроля доступа.
  • Но последнее время всё больше и больше разработчиков хотят обойти ограничения и выбраться из «песочницы» JVM. Едва ли кто из опытных программистов никогда не слышал про sun.misc.Unsafe. Хотя этот класс всегда был частью внутреннего API, не предназначенного для публичного использования, за последние годы его популярность настолько выросла, что сейчас наличие Unsafe стало практически показателем «крутости» open source проектов. Не исключение и Одноклассники: программное обеспечение социальной сети во многом основывается на приватных API.
  • Что же такого привлекательного в Unsafe? Почему программисты фанатично внедряют его в свои проекты, пренебрегая всеми предупреждениями? Отчего поднялась волна паники от слухов, что в Java 9, наконец-таки, Unsafe прикроют? Есть ли безопасные альтернативы приватным классам, или без Unsafe нет в жизни счастья?
  • Ответам на эти вопросам и посвящён доклад. Мы разберём типичные сценарии использования Unsafe, узнаем, какими ещё приватными API не брезгуют в Одноклассниках, и, главное, ради чего. Хорошенько подкрепим теорию бенчмарками и примерами из реальных проектов.

Опыт использования Kotlin в JetBrains

  • Kotlin — новый язык программирования для JVM, Android и JavaScript, который с 2010 года разрабатывается компанией JetBrains. Язык ориентирован на написание элегантного, компактного и безопасного кода, свободно интегрируется с существующим Java-кодом и имеет мощную поддержку в IDE. В последнее время язык все более активно используется как внутри JetBrains, так и внешними разработчиками.
  • В докладе я расскажу об использовании Kotlin в двух наших проектах — в системе поддержки продаж и менеджмента лицензий (это Web-приложение, целиком сделанное на Kotlin) и в IntelliJ IDEA (здесь мы интегрируем Kotlin в большой существующий проект). Я покажу различные фреймворки, которые появились у нас в процессе разработки и которые могут пригодиться и вам. Я также расскажу о том, какие плюсы мы получили от внедрения Kotlin и с какими трудностями встретились.

Spring Boot loves DevOps

  • Spring Boot is a product from Spring, that provides many configuration defaults for a new Spring project, so that one can set up a project in minutes. However, this is only one of the many features of Spring Boot. One of its module also provides many important Non-Functional Requirements out-of-the-box: monitoring, metrics, exposing those over HTTP, etc. In this presentation, I'll demo some of those, that will make DevOps more than a little happy.

Вещи в Интернете: затаскиваем облачные сервисы на «безмозглые железяки»
Amazon Web Services
Разбор сложных случаев OutOfMemoryError

  • Все говорят, что при проблемах с памятью нужно открыть Eclipse MemoryAnalyzer и немного покрутить. Да, часто это срабатывает, но бывает, что даже опытного инженера задача ставит в тупик.
  • В докладе мы рассмотрим примеры коварных OOM, и научимся анализировать причины их возникновения. На живых мертвецах дампах памяти увидим почему может не очищаться WeakHashMap, куда утекает native память, сколько finalizer'ов поместится на кончике иглы.
  • Полученные знания позволят вам уверенно разбирать дампы памяти и избегать шаблонов кода, приводящих к утечкам.

Vert.x: руководство по эксплуатации

  • Вы устали от олдскульного подхода к построению корпоративного ПО на базе серверов приложений? Замучились решать проблемы с синхронизацией, гонками потоков и производительностью? Может хочется снова почувствовать себя девелопером, изучить и применить технологию одного из самых активно разрабатываемых на github проектов и испытать радость от вновь заработавших нейронов Вашего мозга?
  • Тогда приходите послушать про Vert.x — современный полиглотный toolkit для создания реактивных приложений для веб и не только. Vert.x — это своеобразная методология и инструментарий к построению масштабируемого и высокопроизводительного сервер-сайда, которые однако не накладывают никаких ограничений на фреймворки и инструменты, с которыми Вам и так привычно работать.
  • Если Вам знакомы или близки по духу такие термины как Node.js, Actors Model, Erlang, Akka и микросервисы Вам однозначно будет интересно познакомиться с Vert.x поближе, чтобы писать очень быстрый код под JVM на любом языке, будь то Java, Javascript, Scala, Groovy или Ruby.

Java(Script) on JVM
Reactive Programming: creating highly responsive applications

  • Reactive Programming in gaining a lot of attention recently, but what's is it? It is a culmination of a lot of good ideas developed over the years, but brought together by the forces of recent developments, both in terms of software and hardware (multicores, mobile devices). Developing a fast application is easy, but developing applications that are responsive and at the same time gracefully handle failure, to be resilient is not. In this presentation we will quickly go over what reactive programming is and what a reactive application is, but then dive into code level details of how to actually create them.

Современный взгляд на реализацию классических дизайн-паттернов в Java

  • Практически каждый разработчик слышал о шаблонах проектирования. Они были придуманы давным давно с целью решения определенного набора часто встречающихся проблем в системах совершенно разной сложности и размера. Но бытует мнение, что многие из шаблонов проектирования просто прикрывали собой несовершенство объектно-ориентированных языков программирования того времени. Java как один из них был существенно переработан и улучшен в последние 10 лет. Так может стоит пересмотреть использование классических шаблонов проектирования в современном мире Java разработки? Некоторые из них теперь легко заменяются на идиомы самого языка, другие покрываются существующими библиотеками и фреймворками. Я уверен, что вы можете назвать некоторые шаблоны проектирования, которые давно уже мертвы и даже превратились в анти-шаблоны. Давайте проведем эту веселую и полезную ретроспективу вместе!

Что же мы измеряем?

  • Stream API, которое появилось в Java 8, — это модно, красиво, функционально и современно. Но насколько оно проигрывает в скорости традиционным циклам? Какова цена удобства?
  • В этом докладе мы начнём маленькое путешествие с маленького и наивного бенчмарка, придуманного для оценки скорости Stream API, затем проберёмся через дебри JIT-компиляции в HotSpot JVM, заглянем в омут инлайнинга и посмотрим, какова его глубина и можно ли в нём утонуть.
  • Мы увидим, что даже хороший инструмент для оценки производительности необязательно поможет нам измерить то, что действительно хочется, а одинаковые внешне бенчмарки могут измерять производительность совершенно разного кода.
  • Полученные знания помогут вам избегать некоторых ошибок при написании бенчмарков, использовать и интерпретировать диагностические опции HotSpot JVM и лучше понять, как исполняется ваш код.

Производительность взаимодействия
The Bootiful Application

  • Alright, so maybe «bootiful» won't ever work, but I tried, and it was worth it too because you're reading this. Spring Boot, the new convention-over-configuration centric framework from the Spring team at Pivotal, marries Spring's flexibility with conventional, common sense defaults to make application development not just fly, but pleasant! Spring Boot aims to make address the common functional and non-functional requirements that gate quickly moving to production.

Экстремальное тестирование в Java
Современные приложения становятся всё сложнее, а циклы релизов всё короче. Автоматизация тестирования становится насущной потребностью. Облака и виртуализация позволяют разворачивать полноценные интеграционные среды. Это здорово, но не идеально.

  • Тесты не только инструмент проверки качества, но и инструмент отладки. Тестовое окружение должно помогать разработчику и в воспроизведении проблемы, и в поиске причины.
  • Воспроизведение некоторых сценариев «по-честному» может занимать слишком много времени или иметь малую вероятность.

И тут нам на помощь приходят инструменты «искривления реальности», благо для Java их существует немало. В докладе будет рассказано о различных инструментах, помогающих заворачивать навороченные сценарии тестирования в рамки JUnit тестов.

  • Моки и «усиленные» моки.
  • Моки с «имплантацией памяти».
  • Fault injection.
  • Тестирование с подменой рантайма — JBoss Arquillian.
  • Синтезирование окружения в тестах.

Клиентская Java вне браузера: делаем нативные десктопные и мобильные клиенты на Java

  • Современный интернет сервис – это не только Web клиент. Сегодня принято писать нативные клиенты как минимум для всех основных мобильных платфторм (iOS, Android) и эта мода также распространяется на десктопные платформы. Это означает что разработчик вынужден либо писать под каждую платформу код с нуля, либо использовать какое-то кроссплатформенное решение. Напомню, что Java изначально проектировалась как кроссплатформенное клиентское решение. Медленно двигаясь в сторону iOS/Android, Java предлагает богатый выбор UI фреймворков от Swing до JavaFX для всех основных десктопных платформ прямо сейчас. Но чтобы называться нативным клиентом, приложение, написанное на Java, должно вести себя привычным для конечного пользователя способом: оно должно устанавливаться на компьютер привычно и не иметь внешних зависимостей, выглядеть хорошо, стартовать и работать быстро и без задержек, не потреблять много памяти. В этом докладе мы рассмотрим, как эти аспекты адресуются стандартной реализацией Java, альтернативной реализацией Java – Excelsior JET, оптимизированной специально для десктопных платформ, открытыми реализациями, такими как OpenJDK и другими инструментами, такими как Install4J. В результате, слушатель получит общее представление о UI фреймворках для Java, существующих на сегодняшний день, включая JavaFX, а также как подготовить свое клиентское Java приложение для дальнейшего распространения так, чтобы конечный пользователь в итоге воспринимал бы его как родное (нативное) приложение данной целевой платформы.

Iconoclasm

  • History is littered with the stories of iconoclasts – people who truly stood out as pioneers, lateral thinkers, and in some cases, outright heroes–and their successes and failures. From the baseball management vision of Branch Hickey to the glassblowing vision of Dale Chihuly to the engineering design vision of Steve Jobs, iconoclasts have changed our world in subtle and profound ways, sometimes loudly, sometimes quietly.
  • For an industry that seems so ripe and so rife with «special personalities», it would seem that programming is tied up deeply with iconoclasm. But what defines the iconoclast, what demarcates the «true» iconoclast from the mere pretender, and how can we use the characteristics of the iconoclast to change our own immediate surroundings for the better?

Закрытие

О конференции

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

  • Joker состоится в Петербурге в третий раз. Конференция Joker в 2014 году собрала более 600 участников. Кроме того, наша команда делает и другое ежегодное Java-мероприятие — конференцию JPoint в Москве.
  • Мы имеем богатый организаторский опыт, хорошую репутацию среди разработчиков, широкие связи и большое количество коммуникационных каналов, включая почтовые рассылки, группы в социальных сетях и прямые выходы на крупные компании-разработчики ПО на Java.
  • Продуманная и гибкая билетная политика таргетирует аудиторию и позволяет каждому заинтересованному участнику выбрать оптимальную форму посещения конференции.
  • Конференция направлена не просто на обмен опытом, но и на обучение конкретным вещам, поэтому многие компании будут использовать эту возможность для повышения уровня своих сотрудников, направляя их как участников или как докладчиков.
  • Тщательный отбор докладов гарантирует высокий уровень конференции. Мы персонально работаем с потенциальными спикерами и выводим их выступления на качественно новый уровень, проводя для них многочисленные тренировки и репетиции.

Билеты на Joker 2015 бывают нескольких видов:

  • Online - билет, дающий возможность смотреть онлайн-трансляцию. Купившим такой билет за несколько дней до конференции придёт персональная ссылка, по которой будет идти трансляция.
  • Standard - билет, включающий в себя посещение конференции, обеды и кофебрейки, подарки от организаторов.
  • Business - всё включено: приоритетная регистрация на отдельной стойке, обеды и кофебрейки, места в первом ряду, полный доступ в speaker room, Afterparty со спикерами.

Online

  • с 1 сентября по 30 сентября - 10 000 руб.
  • с 1 октября по 15 октября - 12 000 руб.

Standard

  • с 1 сентября по 30 сентября - 15 000 руб.
  • с 1 октября по 15 октября - 18 000 руб.

Business

  • с 1 сентября по 30 сентября - 25 000 руб.
  • с 1 октября по 15 октября - 30 000 руб.
Контактная информация
tickets@jokerconf.com
Гостиница "Park Inn Пулковская", пл. Победы, дом 1.
+ 7 (921) 979 76 95
 
Сохранить в избранном Сохранить в избранном
Отправить вопрос или заявку Отправить вопрос или заявку
Выберите соответствующие действия и нажмите кнопку "Да!".
Выиграй грант!
Выиграй грант!
Нажмите кнопку "Да!", сохраните это мероприятие в папке "Хочу получить грант", и вы сможете выиграть грант на обучение по этой программе. Узнать, как получить грант
Получи скидку
Получи скидку
Подайте заявку на участие в программе через наш сайт и получите дополнительную скидку 450 руб. (3%).
 
Скидка
При контакте с организатором сообщите ему о том, что нашли эту программу на нашем сайте. Организатор предоставит вам скидку 450 руб. (3%)
 
 
Похожие мероприятия
Мастер-класс «Программирование на SQL: из новичка в профессионалы» Модульная Pоссия бесплатно

День открытых дверей в Московском Международном колледже Цифровых технологий "Академия TOP" Очная/дневная Москва бесплатно

Шестой предновогодний митап сообщества блокчейн-разработчиков Санкт-Петербурга Вечерняя Санкт-Петербург 8 000 руб.
Вернуться
Пользовательское соглашение       Обратная связь       Карта сайта

© 2006—2022 Edumarket