タグ

ブックマーク / www.infoq.com (21)

  • GoogleによるAPIデザインガイドの公開

    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が最近リリースされ、重要な変...

    GoogleによるAPIデザインガイドの公開
  • アジャイルはなぜアジアで普及しないか

    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が最近リリースされ、重要な変...

    アジャイルはなぜアジアで普及しないか
  • 私がMVCフレームワークをもはや使わない理由

    数ヶ月前、私はなぜここにたどり着き、何が可能かを理解する旅に出ました。この旅は、私にアプリケーションアーキテクチャ、MVCという強烈な宗教に対する疑いをもたらしました。そして、リアクティブ、関数型プログラミングの真の実力に触れたのです。また、シンプルさに集中する旅でもあり、私たちの産業はうまくやっているという考えを捨てる旅でもありました。どんなことを見つけたか興味がある方もいるでしょう。 私たちの見ている画面の背後にあるパターンはMVC –Model-View-Controllerです。まだウェブがなくソフトウエアアーキテクチャも分厚いクライアントが単一のデータベースに原始的なネットワークでアクセスするのがせいぜい、という時代にMVCは生まれました。そして数十年後、MVCはまだ現役であり、衰え知らずでオムニチャネルアプリケーションの開発に使われています。 Angular2のリリースの前にM

    私がMVCフレームワークをもはや使わない理由
  • スクラムの7つの罪とアジャイルのアンチパターン

    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が最近リリースされ、重要な変...

    スクラムの7つの罪とアジャイルのアンチパターン
  • アジャイルのレトロスペクティブはなぜ難しいのか?

    レトロスペクティブ(ふりかえり)は,チームの作業方法を見直して修正することによって,自らの作業を改善するものだ。より多くの価値をユーザに提供する手段として,アジャイルの重要な手法のひとつに数えられることも多い。しかし時には,レトロスペクティブを行うのが難しく思われることもある。変更すべき対象がチームメンバのコントロール範囲外にあると感じられたり,改善の余地がないように思われたり,適切なアクションの定義が難しく感じたられりすると,アクションの定義よりも先に不満が口をつき始める。そうなるとレトロスペクティブがつまらない,単なる時間の浪費だと感じられてしまうのだ。このような問題に対処して,より有意義なレトロスペクティブを行う方法を見つけるには,どうすればよいのだろう? Keith McMillan氏のブログ記事 agile concept of the week: retrospective に

    アジャイルのレトロスペクティブはなぜ難しいのか?
  • Docker: Linuxコンテナを使ってアプリケーションの配置を支援する

    サーバアプリケーションの配置はますます複雑になっています。いくつかのPerlスクリプトをコピーするだけでインストールが完了する時代は終わりました。今日、ソフトウエアは多くの種類の要求を抱えています。 インストールするソフトウエアやライブラリの依存物("Python >= 2.6.3とDjango 1.2に依存する") 実行するサービスへの依存("MySQL 5.5とRabbitMQのキュー"が必要) 特定のOSに対する依存("64-bit Ubuntu Linux 12.04でビルドとテストをした") リソースの要件: 利用可能なメモリの最少量("1GBのメモリが必要") 特定のポートへのバインド("80と443を使う") 例えば、比較的シンプルなアプリケーションの配置を考えてみましょう。Wordpressです。典型的なWordpressのインストールでは、 Apache 2 PHP 5

    Docker: Linuxコンテナを使ってアプリケーションの配置を支援する
  • アジャイル時代のモデリング: アジャイルチーム拡大のためにはコードの次に何を保つべきなのか

    図1.シンプルなスクラム構成 この最小限のフレームワークの中で、チームのインプットとなるのが”ユーザ要求”としての”プロダクトバックログ”です。そして、アウ トプットは”動くソフト ウェア”としてのコード(”製品コード”と”テストコード”)です。 そこには他の設計要素が明示的に現れてはいません。スプリントの中で作られたすべての意図的な設計はチームの財産として実行コートの中に組み込まれるのが 望ましいですが、そこには直接コード化されない情報もあります。スクラムは開発プロセスであり、設計に関しては敢えて何も言及していませんが、設計と設 計活動はチーム内部であいかわらず行われています。 Grady Booch氏は”コー ドは真実ではあるが、すべての事実ではない” と語っています。だから、もしそこにコードで表現又は伝われない情報が残されるとしたら、私達はその情報をどこに格納できるでしょうか?その質

    アジャイル時代のモデリング: アジャイルチーム拡大のためにはコードの次に何を保つべきなのか
  • アジャイルで開発速度を上げるには

    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が最近リリースされ、重要な変...

    アジャイルで開発速度を上げるには
  • Apache Isis: ドメイン駆動設計のためのJavaフレームワーク

    Rustが再評価される:エコシステムの現状と落とし穴 In this article, we share findings and insights about the Rust community and ecosystem and elaborate on the peculiarities and pitfalls of starting new projects with Rust or migrating to Rust from othe...

    Apache Isis: ドメイン駆動設計のためのJavaフレームワーク
  • Webアプリケーションを高速化する50のトリック

    MicrosoftのInternet Explorer PMであるJatinder Mann氏は、BUILD 2012でHTML5アプリとサイトを高速化する50のパフォーマンストリックというセッションで、Webアプリケーションを高速化する多くのチップスを提供した。 Mann氏が提供したアドバイスは、以下の6つの原則を中心に構成されていた。 1. ネットワークリクエストに迅速に応答する リダイレクトを避ける。上位1,000のWebサイトのうち63%は、リダイレクトを使用している。これらはリダイレクトをやめることによって10%のパフォーマンスを改善することができる。 メタリフレッシュを避ける。世界のURLのうち14%は、メタリフレッシュを使っている。 可能な限りユーザーの近くにあるCDNを使用してサーバーの応答時間を最小化する。 異なるドメインからのリソースをダウンロードすることによって、同時

    Webアプリケーションを高速化する50のトリック
  • バーチャルパネル: コードとテストの比率、TDD、BDD

    JB:この件について一般化するのは嫌なので、私がTDD/BDD使うときとその理由を説明させてください。 私が初めてTDDに出会ったのはミス(欠陥といってもバグといってもいいでしょう)を防ぐ方法を求めていたからです。プログラム上の多くのミスのおかげで私は完璧さの感覚を失ってしまいました。どんなことを成し遂げても仕事が完璧に近づいたと感じたことはありませんでした。そして、書いたコードをテストすれば、ばかげた小さなミスを見つけ修正できるのではないかと考えました。テストをしてミスを見つけたかったのは、愚かにみられるのを防ぐためというより、仕事に対する完璧さの感覚を失わないようにするためです。実際テストは役に立ちました。数年経って、TDDはコーディングのミスを防ぐのに役に立つだけでなく、デザインの失敗を防ぐのにも役に立つことに気づきました。そしてBDDを学び、どのような機能を実装するかについての失敗

    バーチャルパネル: コードとテストの比率、TDD、BDD
  • Groovy 2.0の新機能

    静的型チェッカーは、戻り型や、代入時の値の整合性も検証します: import groovy.transform.TypeChecked @TypeChecked Date test() { // コンパイルエラー: // Date値はint型の変数には代入できない int object = new Date() String[] letters = ['a', 'b', 'c'] // コンパイルエラー: // String値はDate型の変数には代入できない Date aDateVariable = letters[0] // コンパイルエラー: // Date型を返すメソッドでString値を返すことはできない return "today" } この例では、int変数にDateは代入できないことや、メソッドシグネーチャで指定されているDate値のかわりにStringは返せないことをコン

    Groovy 2.0の新機能
  • エンタープライズ分野での分散バージョン管理システム

    Rustが再評価される:エコシステムの現状と落とし穴 In this article, we share findings and insights about the Rust community and ecosystem and elaborate on the peculiarities and pitfalls of starting new projects with Rust or migrating to Rust from othe...

    エンタープライズ分野での分散バージョン管理システム
  • ストーリーポイントの間違った使い方。

    Rustが再評価される:エコシステムの現状と落とし穴 In this article, we share findings and insights about the Rust community and ecosystem and elaborate on the peculiarities and pitfalls of starting new projects with Rust or migrating to Rust from othe...

    ストーリーポイントの間違った使い方。
  • 価値とベロシティ、そしてバリューベロシティの比較

    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が最近リリースされ、重要な変...

    価値とベロシティ、そしてバリューベロシティの比較
  • ストーリーポイントとは何か?必要ものなのか?

    垂直スケーラビリティと効果的なテストによる金融取引システムのパフォーマンスと効率の最大化 Peter Lawrey氏はJavaチャンピオンであり、Chronicle SoftwareのCEOとして、開発者を鼓舞してソリューションのクラフトマンシップを高めることに情熱を注いでいる。経験豊富なソフトウェアエンジニアとして、Lawrey氏はソフトウェア開発プロセスにおけるシンプルさ、パフォーマンス、創造性、革新性を奨励することに努めている。

    ストーリーポイントとは何か?必要ものなのか?
  • ストーリーポイントは複雑さや時間と関係があるか?

    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が最近リリースされ、重要な変...

    ストーリーポイントは複雑さや時間と関係があるか?
  • デイリースタンドアップ/スクラムはスクラムマスタのためのものではない

    Rustが再評価される:エコシステムの現状と落とし穴 In this article, we share findings and insights about the Rust community and ecosystem and elaborate on the peculiarities and pitfalls of starting new projects with Rust or migrating to Rust from othe...

    デイリースタンドアップ/スクラムはスクラムマスタのためのものではない
  • InfoQ: トップスポーツチームの監督に教わる秘訣

    指導者として駆け出しの当初は、自分の言っていることを理解してもらうことにかなりのエネルギーを費やしました。ですから、私の素晴らしいコーチング戦略を長ったらしいスピーチで自チームの選手達に説明しました。選手に私の言いたいことを確実に理解させるために、「皆さん、分かりましたか?」と尋ねたものでした。皆がうなずいたので、私は満足でした。しかし、選手のプレーを見て、理解していなかったことが分かりました。 私の言ったことを聞いていないようでした。ですから、もっと大きな声で、より攻撃的に、そして対峙するような感じで話すようになりました。残念ながら、効果はありませんでした。私は自分の指導者にこう言いました --「才能がなくて耳の遠い選手が集まっても、大きな成果は上げられません」。するとこの指導者は、何もかも私の責任だと言いました。コミュニケーション調査の結果を見せてくれたのですが、この調査によって次のこ

    InfoQ: トップスポーツチームの監督に教わる秘訣
  • Effective Scala - Twitterのベストプラクティス

    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が最近リリースされ、重要な変...

    Effective Scala - Twitterのベストプラクティス