Javaの世界からの興味深いイベントのダイジェストとその周辺#3(05/23/2016-06/05/2016)

画像



この号では



-Google対Oracleの戦いは大胆なセミコロンを入れました

-スローイン: 確認済みの例外は必要ありません、証明済みです!

-Javaコードでアセンブラーを記述する方法を学ぶ

...など



1.ニュース



1.1。 Oracle vs Google

知られているように、サンフランシスコの連邦裁判所は、Java APIの違法使用に関するGoogleに対する訴訟をOracleに否定しました 。 十分なイベント。 この話に従わなかった人のための簡単なプロット:

Google:数百万人の開発者に馴染みのあるJava APIを介して作業できる独自の仮想マシンを作成しました!

オラクル:これは間違っています、あなたは私たちに9,000,000,000ドルを借りています。

Google:いいえ、できます!

オラクル:いいえ、できません!
実際、状況は2つあります。 一方で、APIの作成は困難であり、無益な作業です。 製品をユーザーにとって便利にすることは、すぐには不可能です。 これは多くの場合、長くて反復的なプロセスです。 したがって、この作業を尊重するというOracleの要件は理解できます。



一方、オラクルの勝利は、膨大な数のAPIを投げ出し、特許を取得し、テクノロジー企業のトローリングを開始できる危険な先例を作成します。 その決定により、裁判所は、ライセンス制限なしでパブリックAPIを使用できることを示しました。これは、IT業界全体にとって確かにプラスです。





1.2。 例外を確認しましたか? いいえ、聞いたことがありません

そして、APIについてです。 ソーシャルネットワークは面白い研究を積極的に再投稿しています。 ウォータールー大学のメンバーは、Javaで統計を処理するチェック済み例外を収集しました。 ほとんどの場合、開発者はそれらを無視するか、ログインするか、 チェックなしでラップすることが判明しました。 なんて驚き!

画像

ソース: plg.uwaterloo.ca/~migod/846/current/projects/09-NakshatriHegdeThandra-report.pdf



ユーザーがAPIを誤って大量に使用している状況は、両側から見ることができます。 あなたは言うことができます:「ユーザーは同じではありません!」。 または、「APIは同じではありません!」 この場合、2番目のオプションをサポートする傾向があります。 人々は正しく注意します -チェック例外は彼らのタスクに対処しませんでした。 その主な利点-メソッドシグネチャのレベルでの決定-が主な欠点です。 SQLExceptionをアプリケーションのすべてのコンポーネントに分散させることは望ましくありません。 代わりに、データレベルで分離します。 ほとんどの場合、未チェックの例外をラップするだけです。 チェックされた例外の拒否は、多くの一般的なフレームワークに長い間遡ります。 多分それはそれに直面し、チェックされた例外を非推奨にする時です。 どう思いますか?



1.3。 Twitterは奇妙な名前の別のフレームワークをオープンしました

ヘロン ちょうどヘロン 。 これ以上でもそれ以下でもありません。 これは、ストリーム処理のフレームワークです。 Apache Stormの代替として位置付けられます。 その作成の物語は奇妙です-これは、みんなが「ゼロからすべてを書き直そう!」と言ったのと同じケースであり、書き直しました。 また、定期的にすべてを捨てて、もう一度作成したいと考えています。 しかし、リソースが限られているため、このアイデアはほとんど常に見込みがありません。 しかし、Twitterには多くのリソースがあるため、可能です。 ことわざにあるように、「木星に許可されているもの...」。



2.読む



2.1。 Java 9への移行

リンクhttps : //wiki.openjdk.java.net/display/Adoption/JDK+9+Outreach



これは、Java 9の主要な革新のリストです。新しいバージョンにアップグレードすると、アプリケーションのどの部分が壊れるのかを理解するために、覚えておくと便利です。



2.2。 JITに関する簡単な言葉で

リンクhttps : //advancedweb.hu/2016/05/27/jvm_jit_optimization_techniques/



JavaでのJITの優れた紹介。 インライン化、デッドコード除去、「バイオモルフ」など...



2.3。 Javaでのアセンブリ挿入の作成

リンクhttp : //serce.me/posts/01-06-2016-wild-panama/



まだプロジェクトパナマについて聞いたことがありますか? この記事の著者は、アセンブラーをJavaコードに直接挿入するという新機能に触れました。 今、 sun.misc.Unsafeを切り捨てることを恐れていません:-)



2.4。 PlumbrのQAプロセス

リンクhttps : //plumbr.eu/blog/programming/how-it-is-made-plumbr-edition



さまざまなプラットフォームと環境で製品をテストするのは簡単なことではありません。 この記事では、Plumbrのエンジニアが、専用のQA部門なしで製品をテストするプロセスをどのように構築したかについて話しています。



3.知恵



3.1。 ジュニアとシニアについて



3.2。 自信について



3.3。 プッシュプッシュ



3.4。 アルゴリズムについての二重の考え



4.ユーモア



4.1。 春のフー

SpringのBeanの名前に注意してください。 そうしないと、競合につまずく危険があります。

また、「John Doe」という名前の使用は推奨されていません。 公平を期して、「バグ」はすでに修正さています。



4.2。 Githubが壊れたとき

画像

ソース: classicprogrammerpaintings.com/post/144953638470/github-major-service-outage-georges-seurat



インターネットサービスにどれだけ依存しているかを考える機会。



4.3。 マイクロソフトの露骨な嘘



この時点でWindowsで実際に何が起こっているのか誰もが知っていますか?



問題: -




All Articles