タグ

2018年8月3日のブックマーク (2件)

  • Javaの新JITコンパイラ、Graalを解説

    実際、現在の設計では大幅な拡張は不可能だと広く考えられている (Twitterのような企業やCliff Clickのようなエキスパートからだ)。C2に残っている改善点はすべて、やや取るに足らないものだけとなるだろう。 最近のリリースで改善が見られた領域はJVMの組み込み関数をより利用するという部分だけであり、そのテクニックはドキュメントに記述されている (@HotSpotIntrinsicCandidateアノテーション)。これは次のようなものだ。 HotSpot VMがアノテーションを付与されたメソッドを手書きのアセンブリや手書きのコンパイラIR、すなわちパフォーマンス改善用のコンパイラ組み込み関数で置き換える場合、メソッドは強化されます。 JVMを起動すると、実行しているプロセッサが精査される。これによりJVMはそのCPUで利用可能な機能を正確に把握できるようになる。使用中のプロセッサ

    Javaの新JITコンパイラ、Graalを解説
  • アジャイル開発とアーキテクチャ

    アーキテクチャの基的な考え方は、機能要求に先行して構築されてることです。 この原則は、EA(Enterprise Architecture)、DOA(データ中心アプローチ)、プロダクトライン開発のアーキテクチャでもほぼ同じ思想を持っています。 一方、アジャイル開発ではTDDなどを使い、要求を定義しその実現を検証しながら開発を進めます。その結果、開発される成果物は必然的に要求との依存性が高くなります。要求との追跡性の重視や、ビジネス価値の追求を重視すれば、その傾向はさらに強くなります。それ自体は悪いことではなく、顧客の満足を考えればいい結果をもたらすでしょう。 リファクタリングを行うことで得られる結果は、インターフェイス定義の明確化(変化する部分と変化しにくい部分の分離)、コンポーネントやクラスやサービスの粒度の適正な決定を行えること、拡張性のためのより良い解を得られることなどです。 アー

    アジャイル開発とアーキテクチャ