ほがJoker 2013カンファレンスのすべおのレポヌト

みなさんこんにちは



したがっお、サンクトペテルブルクのJava䌚議Joker 2013の 1週間以䞊前に残りたす。 グリッドにレポヌトを3぀だけ残し、残りは準備ができおいたす。 突然䜕らかの理由で䌚議に぀いお知らない堎合は、以前の蚘事でそれに぀いお読んでください 。



カットの䞋-各レポヌトの簡単な発衚。 私はあなたが最埌たで読んで私を殺さないように、いく぀かの発衚をそれぞれ1぀の段萜に絞り、也いた絞りだけを残そうずしたしたが、私はあたり疲れおいたせんでした。







Gil Tene、Azul Systems-Java Garbage Collectionずそれに぀いおできるこずを理解する


ガベヌゞコレクタヌの䜜業に関するレポヌト甚語、メトリック、基本原則、䞻芁なメカニズム、既存のアルゎリズムの分類、さたざたな基準によるGC実装。 たた、「アプリケヌションメモリりォヌル」の問題ず、Azul ZingのガベヌゞコレクタヌであるC4の動䜜の詳现に぀いおも説明したす。



Kirk Pepperdine-パフォヌマンスチュヌニングのそれほどではないダヌクアヌト


アプリケヌションのパフォヌマンスの最適化は、いただにある皮の黒魔術ず芋なされおいたす。 これは、最適化の基本的なテクニックの根底にある基本原則に぀いお、ほずんどのプログラマヌが理解しおいないためです。 このレポヌトは、Javaプログラマヌがプログラムを高速化し、䞀般的な高性胜コヌドを䜜成するのに圹立぀いく぀かの基本的なテクニックを提䟛したす。



Pawel Lipinski-クリヌンテストテストを適切に構成する方法


読みやすく、保守しやすく、関連性を远跡しやすいように、テストを䜜成およびリファクタリングする方法に関するレポヌト。



Alexander Belotserkovsky、Microsoft-Windows Azure + Java =OpenIntegration


Oracle Databaseの䜿甚方法、Hadoopのデプロむ方法、Eclipse甹Windows Azureプラグむンを䜿甚したアプリケヌションの䜜成および公開方法に぀いお説明したす。 Java開発に適甚されるWindows Azureクラりドプラットフォヌムのこれらの機胜およびその他の機胜の䜿甚方法を瀺したす。







Alexander Otenko、Oracle-プロファむラヌが沈黙しおいるこず


このプレれンテヌションでは、プロファむラヌが反映しおいない事実ず、プロファむラヌを省略しお有眪ずする方法に぀いお説明したす。 いく぀かの問題を怜蚎するず、1぀のプロセッサコアの飜和、メモリリヌクの原因、最も「遅い」同期ポむントを瀺す事実の党䜓が明らかになりたす。 リスナヌは、ツヌルの品質を再評䟡し、プロファむルの信頌できる有甚な郚分を発芋するこずができたす。



アレクサンダヌ・トボル、クラスメヌト-四半期のビデオ甚プラットフォヌム


わずか4分の1で、非垞に小さなチヌムが、れロから䜜成され、耇数のデヌタ亀換センタヌに分散した200を超えるサヌバヌの艊隊に展開されたプラットフォヌムでOdnoklassnikiの24時間幎䞭無䌑のビデオサヌビスを再開したした。 䞭断のないダりンロヌド、倉換、ストレヌゞ、ビデオの配信ず監芖の問題を解決する䞊での成功ず倱敗に぀いお説明し、1秒あたり1000ビュヌの負荷に関連する機胜に぀いお説明したす。



Alexey Shipilev、Oracle-サむ​​レントヒヌプダンプずは


ヒヌプダンプを信頌できない理由を報告しおください。 HotSpotでのオブゞェクトの割り圓お方法オブゞェクトヘッダヌがメモリからどのようにレむアりトされるか、フィヌルド、リンク、アラむメントの倖芳などが衚瀺されたす。 ほが24個のサンプルがラむブで分析され、その䞀郚は非垞に興味深いものです。



Andrey Breslav、JetBrains-トレヌドオフ、たたはプログラミング蚀語の蚭蚈方法


レポヌトは、プログラミング蚀語の蚭蚈におけるトレヌドオフに関するものです。蚀語開発者が䜕らかの方法で行う理由です。 Kotlin、Java、Scala、およびCに関するいく぀かの兞型的な䟋を怜蚎したす。これにより、蚀語がどのように蚭蚈されおいるかに぀いおのアむデアを圢成できたす。







Andrey Pangin、クラスメヌト-クラッシュダンプ-倒れたJVMのブラックボックス


このレポヌトでは、クラッシュダンプで暗号化されおいるものず、この情報を䜿甚しお問題を分析し、JVMクラッシュの原因を芋぀ける方法に぀いお説明したす。 JVMが故障する可胜性のある状況を調べ、ラむブデモモヌドでは、負荷の高いアプリケヌションの開発䞭に発生した実際のクラッシュの䟋を分析したす。



Anton Arkhipov、ZeroTurnaround-Javaアプリケヌションのスクリプト


JVMで実行されるスクリプト蚀語は数倚くありたす-Groovy、JRuby、JavaScriptなど。 スクリプトをアプリケヌションに挿入する機胜は、驚くほど過小評䟡されおいたす。 Javaアプリケヌションにスクリプトを埋め蟌むには、javax.scriptパッケヌゞの暙準むンタヌフェむスセットを䜿甚する方法ず、埋め蟌みスクリプト「゚ンゞン」のAPIツヌルを䜿甚する方法の2぀のオプションがありたす。 䞡方のアプロヌチの長所ず短所を怜蚎し、Groovy、JRuby、たたはJavaScriptをJavaアプリケヌションに組み蟌む理由の質問に察する回答を回答したす。



Anton Keks、Codeborne-9,000,000回ダりンロヌドされたJavaデスクトップアプリケヌションの䜜成方法


䞖界䞭の䜕十䞇人もの人々が䜿甚しおいる人気のあるネットワヌクナヌティリティAngry IP Scannerの䜜成におけるスピヌカヌの経隓に぀いおです。 ゚ンドナヌザヌの期埅の珟実の䞖界で、元のJavaのスロヌガン「䞀床曞くだけで、どこでも実行する」がどれほど重芁であるかを芋おみたしょう。 たた、JavaプログラミングぱンタヌプラむズずAndroidのみであるずいう神話を砎壊しようずしたす。



Baruch Sadogursky、JFrog-プラグむン甚のGroovy DSL人間の蚀語拡匵


その盎接の開発者の想像力によっお機胜を制限するこずはできず、制限すべきではないプログラムのクラス党䜓がありたす。 Javaで䜜成されたプラグ可胜プログラムに最も適したアヌキテクチャに関するレポヌト。 GroovyのDSL機胜の簡単な抂芁の埌、DSLのどの郚分が圹立぀かを確認し、Javaでプラグむンを䜜成する機胜が必芁かどうかの質問に答え、セキュリティの偎面を怜蚎し、もちろん䟝存関係の地獄を解決するためのオプションに぀いお議論したす。







ビクタヌ・ポリッシュチュク、Infopulse-汚れに察するJBoss Drools゚キスパヌト


プレれンテヌション䞭に、単玔なビゞネス䞊の問題が敎理されたす。これは、すべおにもかかわらず、ハゲプログラマから倚くの癜髪を生む可胜性がありたす。 手のひらをひねり、呜什型Java実装を脇に眮いお、30分間の聎衆は、Droolsでの宣蚀型プログラミングの矎しさず、新しく䜜成されたアプリケヌションの単䜓テストのカバレッゞに飛び蟌みたす。



オラクルのりラゞミヌル・むワノフ-Invokedynamic莅沢か必芁か


Java 7では、新しい呜什がバむトコヌドレベルで衚瀺されたした-invokedynamicindy。 新しい呜什の出珟の原因は䜕ですかたた、むンディを䜿甚するずどのようなボヌナスが埗られたすか レポヌトは、indyをinvoke *ファミリヌの他の呜什ず比范するこずに限定されたせんが、indyが䞀郚であるJSR292党䜓の抂芁を提䟛したす。 メ゜ッドハンドル、java.lang.invoke。*パッケヌゞ、および新しいAPIの登堎によっお可胜になった新しいプログラミングパタヌンに぀いお説明したす。 たた、OracleのJava 7およびJava 8でのJSR292の実装の詳现が圱響を受けたす。



Vladimir Krasilshchik、Luxoft-実甚的なプログラマヌ向けのJavaマッピング


Javaでオブゞェクトを互いに「マッピング」する方法の技術的な動物園に぀いお説明したす。 実甚的でもそうでもない、最新のアプロヌチずツヌルの抂芁を説明したす。 Transmorph、Dozer、Nomin、ModeMapper-これらは、䞀郚のオブゞェクトを他のオブゞェクトに「マッピング」するコヌドを敎理するための独自の方法論を提䟛するラむブラリのほんの䞀䟋です。 仕様やテストずのマッチングが容易で、読み、リファクタリング、保守が怖くない、適切に構造化されたマッピングコヌドを敎理する方法に぀いおアドバむスが提䟛されたす。



Gleb Smirnov-突然倉異テスト、たたはコヌドカバレッゞが沈黙しおいるこず


突然倉異テストでは、テスト察象のコヌドをランダムに倉曎しおから、テストを再床実行するこずをお勧めしたす。 そしお、これらのテストが本圓に良ければ、それらは萜ちるはずです。 レポヌトには、突然倉異テストのパラダむムのより詳现な抂芁が含たれ、利甚可胜なツヌルに぀いお説明し、これらのツヌルを䜿甚しお実際のプロゞェクトで成功する方法に぀いお説明しおいたす。







Evgeny Borisov-Spring 4.0新䞖代


Java 8のリリヌスは、プログラマヌに新しい可胜性をもたらしたす。 Springの新しいバヌゞョンはそれらず䞀臎したすか 講挔では、SpringがLambda匏、JSR-310“ Date and Time”、パラメヌタヌ名の怜出、曎新されたjava.util.concurrentをどのように䜿甚するかを孊びたす。 さらに、Groovyを構成する機胜を備えたSpring 4.0の利点に぀いおも説明したす。



ミハむル・フルドネフ、グリッドダむナミクス-Finding Tommy Hilfiger


Apache Lucene / Solrを構成し、それを接続しおサむト䞊の補品のカタログを怜玢するには、少なくずも2぀の問題を解決する必芁がありたす。 たず、ドキュメントずク゚リ蚀語の特定のモデルを開発したす。 次に、ブラックフラむデヌの数癟䞇の蚪問者に察しお十分なパフォヌマンスを発揮する基本的なLucene怜玢アルゎリズムを䜿甚しおこれらのモデルを実装したす。 このレポヌトは、2番目の問題に察凊するのに圹立ちたす-Luceneでの怜玢アルゎリズムの実装の詳现を玹介したす。 このレポヌトは、怜玢に埓事しおいお、「䜕が入っおいるのか」を知りたい人に圹立ちたす。



Nikita Lipsky、ExcelsiorおよびMisha Bykov、Oracle-JVMテクニカルサポヌトの生涯からの面癜いストヌリヌ


このセッションでは、著者はJVM技術サポヌトからの兞型的なケヌスに぀いお話し、楜しいストヌリヌでそれらを薄めお、技術的な詳现やその他のレポヌトから䌑憩する機䌚を䞎えたす。 次のトピックに぀いお説明したす。









Nikita Salnikov-Tarnovsky、Plumbr-アプリケヌションにメモリリヌクがありたすか


暙準および共通のラむブラリずフレヌムワヌクを䜿甚する小さな暙準Java Webアプリケヌションが導入されたす。 スピヌカヌは、このような小さくおかわいいアプリケヌションで、Permanent Generation / Metaspaceで8぀のメモリリヌクをどのように隠すこずができるかを瀺したす。 デヌタベヌスドラむバ、デヌタベヌス接続スレッドずスレッド、JNDIコンテキスト、ログラむブラリの初期化などの問題が衚瀺されたす。



Nikolay Alimenkov、XPむンゞェクション、Zoral Labs-OOPパラダむム、サりンドデザむンおよびJavaアプリケヌションアヌキテクチャの基瀎


Javaはやや叀い蚀語であり、すべおの原則が正しく実装されおいるわけではありたせん。たた、豊富なフレヌムワヌクは開発者をさらに混乱させたす。 レポヌトでは、OOPの基本ずそれらの珟代的な芋解、継承の利点ず害、むンタヌフェむスの適甚可胜性、およびそれらが成長を続けるプロゞェクトにもたらす機䌚に぀いお説明したす。 TDDに取り組むずきのコヌドの倖芳の通垞のサむクル、適切なタむミングたでアヌキテクチャおよび蚭蚈゜リュヌションを延期する方法、アヌキテクチャおよび蚭蚈テンプレヌトが長幎にわたっお機胜するこず、優れたコヌド蚭蚈の原則を怜蚎したす。 このレポヌトは、高品質で理解しやすく、サポヌトしやすいJava゜リュヌションを䜜成しようずする人にずっお有甚です。



Nikolay Chashnikov、JetBrains-JavaプロゞェクトでのAPI開発人々に圱響を䞎え、敵を獲埗しない方法


補品内のコヌドが倚いほど、そのコヌドで䜜業する人が倚くなり、存圚する時間が長くなるほど、補品のさたざたな郚分が盞互にやり取りするAPIの品質がより重芁になりたす。 䟿利なAPIを開発する方法は APIを簡単に倉曎する方法は 生成されたAPIの誀甚から他者を保護する方法 Javaでマむクロ蚀語DSLをどのようにそしおなぜ開発できたすか レポヌトでは、著者はIntelliJ IDEAプラットフォヌムのさたざたなサブシステムのAPIを開発した経隓を共有したす。これらのサブシステムはその埌、倚数のIDEプラグむンで䜿甚されたした。



Pavel Pavlov、Excelsior-プロフェッショナル向けScala


JVMの各蚀語は特定のクラスのタスクに適しおいたすが、どのタスクをどのように䜿甚するかを正確に理解するにはどうすればよいですか さらに別のツヌルの研究ぞの投資ずそれに䟝存するこずは正圓化されたすか 叀き良きJavaに忠実であり、あらゆる皮類の新しい小さなものを無芖する方が正しいのではないでしょうか 著者は、なぜScalaが、JVMずJava自䜓の他の代替蚀語の䞡方に真の実甚的な代替を提䟛するツヌルであるかに぀いお話したす。







ロヌマンアンチピン、クラスメむト-フランケンシュタむンノォルデモヌトたたはクラスメむトのKey-Valueデヌタ


このレポヌトでは、数千䞇人のナヌザヌに察応し、数癟台のサヌバヌで実行されおいるJavaストレヌゞテクノロゞヌに焊点を圓おたす。 Odnoklassniki゜ヌシャルネットワヌクを䟋ずしお䜿甚しお、高レベルの競争力のあるアクセスず䞀定の可甚性の芁件を備えたデヌタりェアハりスの進化を怜蚎したす。 Berkeley DBに基づいたマスタヌスレヌブレプリケヌションテクノロゞヌから、分散ストレヌゞVoldemortずCassandraの共生たで、各゜リュヌションの長所ず短所を分析したす。



ロヌマン゚リザロフ、Devexperts-Javaシリアル化に関する事実ず誀解


Javaシリアル化は、分散システムの開発のさらなる運呜があいたいだった圓時に遡っお開発されたした。 圓時開発された「分散オブゞェクト」の倚くの技術は今日たで存続しおいたせんでしたが、Javaシリアル化の蚭蚈にはこれらの死んだアむデアの゚コヌがただ残っおいたす。 いく぀かの欠点があるにもかかわらず、Javaでのシリアル化には、倚くの代替実装方法よりも倚くの吊定できない利点がありたす。 このレポヌトでは、Javaシリアル化に関する最も䞀般的な誀解を怜蚌し、代替シリアル化ラむブラリの䜜成者からは聞いおいない長所ず短所に関する実際の事実を棚にたずめたす。



Sergey Kuksenko、Oracle-JDK8ストリヌムスタむル


JDK8の出力は近づいおいたす。 そしお、JDK8はたず第䞀に、JSR335別名「Project Lambda」です。 しかし、Project Lambdaはラムダであるだけでなく、むンタヌフェむスのデフォルト/静的メ゜ッドでもありたす。 Project Lambdaは新しいAPIであり、特にStream APIに぀いおはレポヌトで説明したす。



Shura Ilyin、Oracle-Project Jigsaw。 テむク2


Javaプラットフォヌムのモゞュヌル化プロゞェクトず新しい蚀語芁玠ずしおのモゞュヌルの導入プロゞェクトは、圓初JDK 8で蚈画されおいたしたが、JDK 9に移行され、詳现な分析ず再蚭蚈が行われおいたす。 プロゞェクトの芁件は䜕ですか 䟝存関係を定矩するには特別な蚀語が必芁ですか 新しい実装はスタンドアロンの分散システムになりたすか どのように類䌌し、既存のシステムずどのように異なりたすか これらの質問に察する回答はすぐに届きたす。 レポヌトは、Project Jigsawの芁件、蚭蚈、および新しい実装の説明に専念したす。







Yakov Zhdanov、GridGain Systems-In-Memory Mongo Accelerator


Mongo DBのパフォヌマンスの問題ず、新しいGridGain In-Memory Mongo DB Accelerator補品がクラむアントアプリケヌションコヌドを1回倉曎するこずなくそれらの倚くを解決する方法に぀いお説明したす。 むンメモリアプロヌチの機胜、その長所ず短所に぀いお説明したす。 このレポヌトは、むンメモリテクノロゞヌず分散コンピュヌティングに関心のあるすべおの人にずっお興味深いものになりたす。







おわりに



3぀のレポヌトは未公開のたたです。 応募者





完党な発衚は䌚議のりェブサむトで入手できたす。 チケットはただ販売䞭です。

チケットの費甚は、個人で4,000ルヌブル、組織で5,000ルヌブルです。



All Articles