除此 评论外,还总结了 2019年4月5日至6日在莫斯科举行的Java开发人员
JPoint 2019会议
的总结 。 更多评论,更多照片,更多情感和印象。

从早上到晚上的两天(几乎是
“从黎明到黄昏” ),有1600个年龄相近的人(包括演讲者和
JUG.ru团队-所有1,700个),有着相似的职业兴趣,他们在世界贸易中心会议中心度过了。 当在会场周围移动并在休息时从一个房间移到另一个房间时,感觉到这样的人数已经接近给定会议场地的限制。 我们必须向所有准备活动的人员表示敬意-一切都进行得差不多。 如果您提前进入大厅,那里会有地方;此外,视频是在第五小大厅播放的。 每个人都按时吃饱饭,不会因缺乏每种口味(
“面包和马戏团” )的报道而得罪。

公司展台
在赞助商的展位中,公司的软件吸引了很多与会者的注意力,这些公司的软件产品或者被大多数会议参与者使用,或者可能引起他们很大一部分的兴趣。 自然,首先,这是
JetBrains公司的立场(中景)。 使用
IntelliJ IDEA的最新版本,每天度过一整天,对公司的员工表示最深切的敬意和感激。 在会议上,其员工
Tagir Valeev和
Anton Arkhipov发表了报告。

一家小公司(其正式名称为“程序验证系统”),其旗舰产品是
PVS-Studio静态代码分析器。 该产品最近引入了对
Java语言的支持。 该公司
在Habré方面
非常活跃 。 其中大部分文章是由技术总监
Andrei Karpov撰写的(在第一张照片中,他站在公司的展台上)。

另一个有趣的公司是
BellSoft及其
Liberica JDK 。 该发行版的显着特征是对
ARM体系结构的支持。 在第一张照片中,导演亚历山大·别洛克里洛夫(Alexander Belokrylov)在
演示阶段成功制作了微型报告。 此外,Dmitry Chuiko还额外谈到了容器环境中的
Java 。

站立jug.msk.ru
莫斯科Java开发人员社区
jug.msk.ru充当信息合作伙伴。
定期举行社区会议,总是会聚集大量参与者。 展台安装在地下; Andrey Kogun(
jug.msk.ru的负责人 ,会议计划委员会的兼职参与者)几乎总是在展台上。 在展位存在的两天中,
Twitter帐户订阅者的数量已大大增加。
Anton Chernousov (
播客 ,会议组织者,只是一个好人)和Andrey Kogun(第一张照片)。 安德烈和参观摊位的会议参与者(第二张照片)。 过去会议的
发言人jug.msk.ru :
伊万·波诺马列夫 (
Ivan Ponomarev) ,
尼基塔·利普斯基 (
Nikita Lipsky)和
阿列克谢·斯托卡洛夫 (
Alexey Stukalov) (第三张照片)。

演示阶段
简短演示的流行场所。 一种非常吸引人的报告形式,可让您加入一些新主题,并在主要报告室之外停留时从感兴趣的区域获取信息。 如前所述,唯一的缺点是嘈杂,但这是网站的功能。

会议开幕
Andrei Dmitriev打开会议,介绍程序委员会。 Andrei Kogun和Vladimir Sitnikov详细讨论了会议计划,重点是可能的报告类型。

首日报告
安东·凯克斯 (
Anton Keks)在他的报告
《世界需要全栈工匠 》中提出了使每个团队成员都具有最大可能用途的想法。 在公司的例子中,
Codeborne指出了为什么这很重要:由于每个人的知识和技能很多,团队的紧凑性,项目风险的减少(臭名昭著的卡车,除了员工之外,在轮子下,产品可能由于知识的丧失而死亡),获得更多只是有趣的事情。不同领域的知识(很难不同意)。 该报告不仅激发了观众的灵感,也激发了演讲者的灵感。布鲁诺·博尔赫斯(Bruno Borges)在演讲中附有一张幻灯片,并引用了安东的话:“通过知道不该做的事情,工匠的效率可以提高5倍”。
弗拉迪斯拉夫·塞宁 (
Vladislav Senin)在报告“
日志”中 写道 :越多越好-但是如何生活呢? 在舒适的第五大厅制作。 弗拉德(Vlad)是莫斯科Java社区的积极参与者,这是他在
JUG.ru会议上作为演讲者的首次亮相。 显示了使用工具存储和搜索日志的演变。 日志源是
Java和
Python应用程序 。 对于搜索,
Elasticsearch作为
基础 。 报告结束后,我们听到了更多有趣的细节(包括一个侦探故事,寻找
JSON中字符丢失的原因),由于时间紧迫而没有告诉他们,因此我们可以期待在不久的将来关于该主题的Vlad的更详细的故事。
Victor Rentea的 Proxy童话和Spring的魔力 谈到了
Spring框架中常用的
Proxy设计模式的魔力。 该报告的发布承诺将引入六种拦截方法调用的方法,两种在
Spring中使用
Decorator模板的方法
,以及在实时编码会话期间的更多方法。 一个非常生动的表演,激发了他去尝试
Spring并研究了所显示示例的代码(它们在
GitHub上 )。 如果您喜欢
Spring ,设计模式和实时编码-绝对是您的报告,那么您应该注意一下。

来自
Bulletproof Java Enterprise企业应用程序的绝对实用的报告,
涉及 Sebastian Daschner 的辛苦生产 ,有关稳定性和弹性对于企业应用程序的重要性以及如何实现。 在报告期间,我在
GitHub上找到并打开了
Microprofile Fault Tolerance项目,演讲者积极演示了注释的使用(我记得
@CircuitBreaker最为重要)。 报告呈现的唯一缺点是标题难以阅读(第一张照片提供了这一点,您可以单击图片将其放大)。
我们向Spring Boot报告
,我们正变得越来越强大: Nikita Lipsky 对Spring应用程序进行AOT编译令人难以忍受 ,这是对
GraalVM中有关
Spring Boot支持的问题的一种回答,该问题
在会议的
前一天由Oleg Shelaev提出(在
GraalVM中 ,诸如
Spring Boot和Windows操作系统,Oleg表示)。 在代表Nikita的
Excelsior JET产品中,在各种操作系统的支持下,一切都很好。 此外,据报道,最近正式宣布了
对 Spring Boot的
AOT编译的支持。 现在,对Java应用程序的静态AOT编译的另一个兴趣与以下事实有关:应用程序(微服务)对于快速入门特别重要。 通常,应用程序是基于
Spring Boot构建的。 一份有趣的报告,巧妙地平衡了铁杆和可理解的演讲的边缘。

传统上,
基里尔·托尔卡切夫 (
Kirill Tolkachev)和
叶夫根尼·鲍里索夫 (
Evgeny Borisov)的联合报道在听众中非常
活跃 ,
无论是 反应性还是非反应性,这都不
是问题 -在第一张照片中您可以看到整个房间。 该报告的目的是显示任务的通常执行方式(在这种情况下为三个系统的交互作用),以便以后可以以响应方式重做。 通过当天观看Oleg Dokuki关于
RSocket协议的报告的启发,演讲者甚至设法完善了
示例 。 一切都非常成功和令人兴奋。

美联储会议
BOF格式已经在最近的几次会议上进行了几次测试,并且变得流行起来。 听报告已经很困难,但是仍然存在非正式交流的力量和渴望,这是第一天的自然结论。 下图是在讨论区中的BOF微服务
,云以及所有这些工作的
去向的照片。

第二天报告
JUG.ru技术会议的一大亮点是程序中存在一份非技术报告。 这次的报告是
上帝的
游戏。 科学是否从
亚历山大·潘钦 (
Alexander Panchin) 跨越了边界 ? 这样的报告拓宽了您的视野,并让您可以收看这一天(这次报告是第二天的开幕)。 最后,对于说话者(非标准听众)和听众(不寻常的主题领域)而言,它们是相互有趣的。 该报告自然是科普,但非常有趣。 在抗击艾滋病毒和癌症方面,改变遗传密码并纠正遗传缺陷,成功和现代方法。 列举涉及类似问题的科学家的性格及其成就。

轻量级(从字面上讲-易于阅读和理解)报告
局部变量类型推断:是敌还是友? 由
Simon Ritter介绍。 该报告的主题是使用
var (
Java 10中引入的功能)时对局部变量类型的
推断 。 经过仔细检查,结果发现,乍看之下,这个问题有很多细微之处需要注意。 可以感觉到演讲者具有很好的会议经验(在往绩记录中,
Sun Microsystems ,
Oracle ,
Azul和
Java冠军 J
ava Rockstar都有工作)。 这个故事很容易听,并且用幻灯片很好地说明了。 报告的一个例子,具有明确的实际重点。

性能
超级编译,部分评估,Futamura预测以及由
Oleg Shelaev执行的
GraalVM将如何拯救世界是
GraalVM主题的延续,他的故事始于4月4日
在jug.msk.ru会议上 。 首先在会前听一个详细的三个小时的介绍性故事,然后在第一天参加Nikita Lipsky的演讲(关于使用
AOT支持
Spring Boot ),然后
再次返回
GraalVM ,这
非常有用 。 讨论涉及
Graal编译器和
GraalVM -
Futamura 投影的理论基础。 第二个主题是使用
Truffle的演示,
Truffle是用于基于
GraalVM创建编程语言的框架。 奥列格还建议在会议的前一天听托马斯·伍尔辛格的演讲。
Tagir Valeev 在IntelliJ IDEA中的Atomic refactoring:我们自己弯曲IDE的报告中引入了一个奇怪的概念,即执行代码重构时原子变化的概念。 在
IntelliJ IDEA开发环境中展示了修改代码行的每个小步骤的原子更改的想法-Tagir代表
JetBrains ,亲自参与其开发。 此外,绝大多数坐在大厅里的人(包括我在内)每天都使用
IntelliJ IDEA ,因此故事讲述和展示的故事都落在了肥沃的土地上。 坦白说,我从来没有想过我的最小变化是否是原子性的,但是现在,我将尝试通过修改视频报告来关注它。

报告的另一个示例是
Java放慢了速度 ,该示例可以在听完后付诸实践,
Java放慢了速度: Vladimir Sitnikov 编写的CodeCache版本 。 关于
CodeCache -
JVM在其中存储编译为
本地代码(目标平台的
本地 ,可执行代码)的字节码的区域。 报告中讨论的案例是在使用
WebLogic Server时发生的,但应用程序服务器的特定类型并不重要。 应对此类错误执行有趣的步骤序列,并了解不同
Java版本中
CodeCache大小的默认值(或至少它们不同的事实,您可能需要手动指定更大的大小)。

在某种程度上,
Anton Arkhipov的报告“
如何解开一个球:IntelliJ IDEA中的应用程序的分析和调试” ,与去年11月的三小时
演讲的第一部分相呼应。 事实证明,上述讲话和本次特定报告中获得的信息都是有用的。 已经使用
Spring Initializr示例展示了代码研究技术。 很多人都知道
IntelliJ IDEA中的结构化搜索,但是可以使用它。 也许Anton演示此功能将鼓励某人每天使用它。
布鲁诺·博尔赫斯(Bruno Borges)结束了会议,从无
服务器计算的意义上讲起。会议开始时有报道称,尽管他在
微软工作,但他从未使用Windows操作系统(演示文稿来自
MacBook ),具有丰富的Java开发经验,并且曾在
甲骨文公司。 他现在是
Microsoft的
开发人员拥护者 ,并且一直在促进云的使用。 详细研究了“无服务器”使用的主要功能:
事件驱动的处理,
微计费的灵活性,无需安装任何东西和支持(
无需服务器设置或维护 )以及
自动扩展基础设施。 如前所述,会议开始时有一个特殊的连接线索,就是使用安东·凯克斯介绍中的引语。

闭幕
结束语安德烈·德米特里耶夫(Andrei Dmitriev)致闭幕词,要求对此信作出回应并提供反馈。 程序委员会成员,
JUG.ru团队和发言人的传统照片。

总结
这次会议的与会者人数出乎意料地增加了。 前段时间从雷迪森斯拉维扬斯卡亚饭店(Radisson Slavyanskaya Hotel)搬到了世界贸易中心会议中心,我现在在目前的场地感到束缚。 也许,在保持日益增长的兴趣趋势的同时,您可以在不久的将来等待以更大的空间替换该站点。
Baruch Sadogursky在
2018年Joker采访Egor Bugaenko时表达的关于
IT缺乏公平性的想法被听到-会议上的女孩人数明显多于以前的女孩。
较小的组织和技术覆盖面更可能与大量参与者相关联,甚至迅速得到修复。 会议参与者的视频报告已在
YouTube上提供
,会议网站上
的演示文件也已提供。
2019年10月25日至26日,将在圣彼得堡举行面向Joker 2019的 Java开发人员的会议, 报告申请已经开放, 门票已经可以购买 (5月1日之前的最低价)。