Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...
原文(投稿日:2010/10/25)へのリンク ここ1,2週間,Java の世界では多くの事が起きている。Oracle は沈黙を守り続けているが,その静かさには耳が痛いほどだ。 事の起こりは IBM の OpenJDK への参加 と Harmony の (事実上の) 解散だった。JVM の一方が落ち,一方は続くことになる。Apache ソフトウェア財団 (Apache Software Foundation) の理事会は後に,IBM のこれまでの協力に感謝するとともに,他の貢献者による Harmony の継続を強く望む,とする 見解を発表している。 これに対して各方面からの反応があった。Eclipse の Mike Milinkovich 氏は,自身らが最終的に Java 7 を採用するに至った見解 を寄せている。その一方で,既存のデファクト標準とモジュール化層での整合性を確保するため,現
VoldemortやTokyo Cabinetといったキー/バリューシステムにおけるモデリングの最小単位はキー/バリューペアになる。そして、BigTableやそのクローンでは可変数の属性をもつタプルに、CouchDBやMongoDBといったドキュメントデータベースではドキュメントになる。これに対しグラフデータベースでは、データセット全体をひとつの巨大な高密度ネットワーク構造としてモデル化する。 ここではNOSQLデータベースにおける2つの興味深いポイント、スケーラビリティと複雑さについて詳しく説明する。 1. スケーラビリティ CAP: ACID 対 BASE 従来のデータベースシステムのほとんどは、トランザクションに基づいてデータの完全性を保証する。トランザクションを使うことで、データ管理のあらゆる状況において、データの一貫性を確保している。こうしたトランザクションの性質は、ACID(A
この記事ではAdobeのJames Ward氏(source)がこの記事(参考記事)とは別のFlexに関するトップ10を教えてくれる。Flexはオープンソースのアプリケーション開発環境で、Flash Playerを使ったウェブのリッチインターネットアプリケーション(RIA)を作ることができ、またAdobe AIRを使えばデスクトップで動くアプリケーションも作れる。総合的に見てFlexは使いやすくパワフルなフレームワークだが、今回はFlexアプリケーションを作る時によくある間違いに注目してみよう。 Flexを初めて知る人はInfoQの最近の記事Adobe Flex Basics(参考記事)を読んでもらえばこのフレームワークについての簡潔な概要を知ることができる。さて、10の間違いを挙げよう。 RIAフレームワークをWeb 1.0アプリケーションを作るのに使ってしまう(新しいテクノロジなのに以
原文(投稿日:2010/03/24)へのリンク Martin Fowler氏は、新しい 論文 で、Leonard Richardson氏によって開発された RESTful成熟度の3レベルモデル を使って、 webスタイルのシステムを説明している。 Fowler氏によれば、成熟度モデルの開始点は、リモートなやりとりための純粋な通信システムとして、HTTP を使うことである。この場合、1つのサービスがある-予約サービス、これは1つのメソッドコール(彼の例では、POST)とXML入/出力を使って、特定のリクエストとリプライを交信する。 空いている医者に予約する場合には、リクエストが必要で: POST /appointmentService HTTP/1.1 <openSlotRequest date = "2010-01-04" doctor = "mjones"/> これにリプライを返す: H
原文(投稿日:2010/02/15)へのリンク Enterprise Java Bean 3.0 (EJB 3)の仕様は、エンタプライズでのJavaの長いマーチにおいて、非常に重要な中間地点となった。仕様が、コミュニティからのインプットで作り上げられたのは、非常に明白である。更に一貫性のあるサービスパラダイムを示しており、もっとPOJOフレンドリで、一般的に複雑でなくなっている。Java 5のアノテーションによってもたらされた間接のレベルが、このパラダイムをもっと強力にし、同時に開発者の労力を減らした。悪くて古い決定を捨てて、違う新しい解決を求める意欲によって、そのフレームワークは、以前、EJBを敬遠した人々に興味深いものになった。EJB Entity Beansがなくなり、JPA Entitiesに替った。EJB 2.1やそれ以前では、平均的なbeanに必要なJavaのクラスやinter
原文(投稿日:2010/03/02)へのリンク ソフトウェア開発は、創造的なプロセスである、と知られている。 ソフトウェア開発の動的な環境が無視された、伝統的な方法論の失敗によって、Agile な方法論がかなり人気を得た。Agile 方法論、特に Scrumの採用が増えている。しかし、すべてが Agileでうまく行っているか? Kai Gilb 氏は、そう思っていない。彼は、 Agileには重大な欠陥があると言っている。 氏は、Agile の栄光にもかかわらず、 ある重大な欠陥があるという、 Agile に関する大部分の文書は、その栄光について語っていますが、私は、その欠陥について書きます:欠陥は、非常に深刻なので、もし修正されないと、あなたが好きなAgile手法は、去年の流行りだった、ということになります。 氏は、 AgileやScrumの焦点は、間違っている、と言う。これらは、ステーク
ほとんどの人がHTTPSとSSL (Secure Sockets Layer) を結びつけて考えます。SSLは1990年代半ばにNetscape社が開発した仕組みですが、今ではこの事実はあまり正確でないかもしれません。Netscape社が市場のシェアを失うにしたがって、SSLのメンテナンスはインターネット技術タスクフォース(IETF)へ移管されました。Netscape社から移管されて以降の初めてバージョンはTransport Layer Security (TLS)1.0と名付けられ、1999年1月にリリースされました。TLSが使われだして10年も経っているので、純粋な"SSL"のトラフィックを見ることはほとんどありません。 Client Hello TLSはすべてのトラフィックを異なるタイプの"レコード"で包みます。ブラウザが出す先頭のバイト値は16進数表記で0x16 = 22。 これは
Murali Krishnaはこう言う(リンク)。 アジャイル開発へ効果的に移行できないという失敗は、ユーザストーリーが何たるかを理解できていないという根本的な失敗に根ざしていることが多い。 ユーザストーリーの最も重要な側面は、ユーザストーリーが要件(機能)の「スケジュール可能な」ユニットであり、スケジュールは他に依存していないということです。ユーザストーリーの「他に依存せずスケジュール可能な」特徴を実現する鍵となるのが、「ユーザ」がどう使うかという目線に立ってユーザストーリーを表現することです。そうすればユーザが実際にインタラクトできるエンドツーエンド(UIからバックエンド)に実装された機能性のユニットが手に入ります。 Krishnaはアジャイルコミュニティで多数の人々が信じている「ユーザストーリーは唯一、最良のよりどころ」を正確に描写し、Mike Cohnによる「Advantages
Cedric Beustはアスペクト指向プログラミング(AOP)を「これからも少数の開発専門家の特権のままとなるすばらしい構想」(source)と称しました。SpringとJBossがあっても、一部の人にとって、手をつけるにあたっての障害は大きいままです。幸運なことに、これは動的言語が役に立つ場面かもしれません。動的言語は、AspectJの実践に先立って実験と学習のためのわかりやすい導入部となるほか、それ自身きわめて生産性の高い環境を提供します。Java開発者はそれほどなじみの場所から離れる必要すらありません。Javaに似たシンタックスを持つJVM動的言語のGroovyは、AOPの模倣を容易にする見事なほど強力な機能を誇ります。今回の記事はGroovyに焦点を合わせることになりますが、最近の動向を見ると、かなり愛されながら恐れられてもいるRubyとの比較が求められています。Ruby信奉者は
原文(投稿日:2009/09/25)へのリンク REST-*の発表とそれに対するコミュニティの反応をとりあげたInfoQのREST-*.orgに関する最近の記事は多くの反響を得た。フィードバックの結果として、REST-*にも 変更が加えられた。Infoqは、REST-*のリーダーであるBill Burke氏にインタビューを行い、さらに多くのことを学ぶ機会を持つことができた。 InfoQ: あなたのバックグラウンドについて、少しお話いただけませんか? 今は、Red HatのJBoss部門でフェローをやっています。過去には、クラスタリングやEJBコンテナ、AOPの実装や、アプリケーションサーバのカーネルの開発を行ってきました。現在は、RESTEasyプロジェクトのリーダーをやりながら、REST-*.orgを運営しています。そして、何冊かの本を書いています。2009年の11月にはJAX-RSに関
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く