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

  • Java Persistenceを使ったアーキテクチュア:パターンと戦略

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

    Java Persistenceを使ったアーキテクチュア:パターンと戦略
  • 12のソフトウェア・アーキテクチャの落とし穴とその避け方

    これは、多数派が支配すべきだという意味ではない。委員会によって設計されたアーキテクチャは、肥大化し、焦点が定まらない傾向がある。私たちの経験では、理想的なバランスとは、多様な経験と視点を持つ数人の仲間が、より良い情報に基づいた決定を下すために、主張に異議を唱えることである。 再利用の目標が誤った決定を左右するようなことがあってはならない。その代わり、再利用は理にかなった場合のみ行うこと。 コード、コンポーネント、設計、あるいはコンフィギュレーションの再利用は、最初は良いアイディアのように聞こえる。経営陣は、再利用によってコストが削減され、納期が短縮され、品質が向上すると信じて、このコンセプトを推進したがる。チームは、MVPをより早く提供するために既存のアプリケーションの大部分を再利用することを決定するかもしれないし、かなり成功した製品を提供するために作成された既存のアーキテクチャを再利用す

    12のソフトウェア・アーキテクチャの落とし穴とその避け方
  • パフォーマンスの高いソフトウェア・チームになるには

    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がPython用ファジーテストツールAtherisをオープンソースとして公開

    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がPython用ファジーテストツールAtherisをオープンソースとして公開
  • 関数型プログラミングの復活 - QCon Plusハイライト

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

    関数型プログラミングの復活 - QCon Plusハイライト
  • マイクロサービス設計原則: SOLIDではなくIDEALS

    キーポイント For object-oriented design we follow the SOLID principles. For microservice design we propose developers follow the “IDEALS”: interface segregation, deployability (is on you), event-driven, availability over consistency, loose-coupling, and single responsibility. Interface segregation tells us that different types of clients (e.g., mobile apps, web apps, CLI programs) should be able to inte

    マイクロサービス設計原則: SOLIDではなくIDEALS
  • Hegel,新しいJavaScript型チェッカ

    原文(投稿日:2020/05/19)へのリンク 新ライブラリのHegelは、JavaScriptで高度な静的型チェックを実現しようという試みだ。強い型推測と完全な型システムを提供するという。現在はまだアルファ版だが、専用のオンライン・プレイグラウンドで動作を確かめることができる。 Hegelは型アノテーションを備えたJavaScript用の型チェッカである。TypeScriptの場合のように、新たなプログラム言語構造を学ぶ必要はないが、アノテーション記法についての学習は必要だ。Hegelは強い、完全な型システム(Sound File System)を使うことで、実行時の型エラーを防止する。 const numbers: Array<number> = []; // HegelError: Type "Array<number>" is incompatible with type "Arr

    Hegel,新しいJavaScript型チェッカ
  • Better Value Sooner, Safer, Happier

  • JavaScriptとWeb開発に関するInfoQトレンドレポート

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

    JavaScriptとWeb開発に関するInfoQトレンドレポート
  • 自己組織化の実験

    Caroline Kirkhope氏によれば、自己組織化するチームは効率的でより幸せだ。全ての人が自己組織化するチームに馴染む訳ではない。言われたことをやり、自分で働くことに慣れている。自己組織化するチームを実現するには意図を元にしたリーダーシップ、ソシオクラシー、ホロクラシーのようなモダンなリーダーシップのアプローチが必要だ。 Caroline Kirkhope氏はソフトウェア開発者でありテックリードだ。氏はLean Agile Scotland 2017で自己組織化について話した。InfoQはこのカンファレンスをインタビューや記事で取り上げている。 InfoQは氏にインタビューし、自己組織化についての実験から学んだことについて話を聞いた。 InfoQ: 自己組織化はなぜ重要なのでしょうか。 Caroline Kirkhope: 知識労働者は自分たちの仕事に発言権があればより健康的でより

    自己組織化の実験
  • デッドコードは取り除かなければならない

    デッドコードは、見つけて、取り除く必要がある。デッドコードを残しておくと、プログラマの理解と行動を妨げることがあり、コードが実行されて、重大な問題を引き起こすリスクもある。 デッドコードの削除は、技術的な問題ではない。Kevlin Henney氏によると、それは考え方と文化の問題だ。 独立したコンサルタントでトレーナであるKevlin Henney氏が、ヨーロッパテストカンファレンス 2017において、基調講演「やり方の間違い」を行った。この基調講演で、デッドコードが実行されたために、ある企業が何億ドルもの損害を被ったことを発表した。 InfoQは、このカンファレンスをQ&A、要約、記事で扱う。 ソフトウェアの失敗は、個人的に不便だったり、迷惑だったりするが、経済的、または、社会的に重大な影響を与えることもある。Henney氏は、小さな不具合のせいで、何百万ドルもの損害を出した例をいくつか

    デッドコードは取り除かなければならない
  • Google:マネージャはやはり重要な存在である

    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:マネージャはやはり重要な存在である
  • リファクタリングとコードの臭い – きれいなコードへの旅

    リファクタリングは、より理解しやすく、メンテナンスしやすい、きれいなコードにするのを助けてくれる。それにはコードの臭いを嗅ぐ経験と実践が必要だ。つまり、コードの中にあるより深い問題を示す悪い設計の兆候を見つけることだ。コードを壊すことなく、小さなステップでリファクタリングを行うことを支援するツールもある。 CoduranceのHalima Koundi氏はSwanseaCon 2016でリファクタリングとコードの臭いについて語った。InfoQはカンファレンスの内容を記事やインタビューで取り上げている。 Koundi氏はMartin Fowler氏のコードの臭いの定義を紹介している。 コードの臭いは表面的な兆候であり、システムの深い問題と関連しています。 適切にメンテナンスし改善することに必要な注意を払わなければコードの質は悪化していく。Koundi氏はいくつかのコードの臭いの種類を紹介し、

    リファクタリングとコードの臭い – きれいなコードへの旅
  • よいコードを書くために,プログラマは何をすればよいのか

    よいコードを書くためには,設計の基を守り,既存のコードを読むことが必要である – Java ChampionでハイパフォーマンスコンピューティングのスペシャリストであるMartin Thompson氏のことばだ。InfoQは,QCon London 2016で“Engineering You”と題した講演を終えた氏に,ソフトウェア産業が直面する課題は何か,プログラマがそれを克服して優れたソフトウェアエンジニアになるにはどうすればよいのか,などをインタビューした。 InfoQ: 講演の中であなたが引用した,1986年の,ソフトウェアエンジニアリングに関する最初のNATOカンファレンスの内容は,現在でも通用します。ソフトウェア産業がいまだ問題を解決できないのはなぜでしょう? Martin Thompson: 1986年のNATOカンファレンスには,たくさんのテーマがありました。彼らはソフトウ

    よいコードを書くために,プログラマは何をすればよいのか
  • スクラムの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つの罪とアジャイルのアンチパターン
  • ParseがRubyからGoへ移行,信頼性が大きく向上

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

    ParseがRubyからGoへ移行,信頼性が大きく向上
  • アジャイルで欠落するテストの能力

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

    アジャイルで欠落するテストの能力
  • かんばん方式を実践する

    InfoQ: では,変化を受け入れる合意ができたとしましょう。私たちは正しい選択をしたいと思います。それが革新的な変化を伴うのならば,その心構えもします。その一方で,斬新的な変化で大きな改善が望めるのなら,できればそちらを選びたいとも思うでしょう。デリバリや予測可能性,透明性の改善といった観点で,結果を目にしたいのです。 Roock博士: 経験から言えば,かんばん方式を導入するまでは,大きな目標に対する同意が必要です。それはつまり,マネージメントの介入が必要だということです。 あるいは草の根的な "ステルス" アプローチで,マネージメントから隠れて,チーム内だけで事を進めようとする場合もあるでしょう。そのようなアプローチでもある程度は成功できるかも知れませんが,すぐに限界に突き当たってしまいます。企業規模での当の成功を望むなら,マネージメントの介入は必要なのです。マネージメントと話して,

    かんばん方式を実践する
  • JavaScriptのコードフローを視覚化するTraceGL

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

    JavaScriptのコードフローを視覚化するTraceGL
  • Sails 0.8.9:リアルタイムNode MVC フレームワーク

    4月9日、テキサス州オースティンのBalderdashがnode.js上で動作するリアルタイムMVCフレームワークであるSailsのバージョン0.8.9を発表した。これは、Railsライクな開発環境をモダンなウェブアプリの世界に持ち込もうとする試みだ。 Railsの誕生から8年たち、BalderdashのチームはMITライセンスのSailsをさらなる進化の一歩として構想している。Railsのリッチな開発体験とリアルタイムウェブの能力を組み合わせようとしているのだ。 InfoQはSailsの作者であるMike McNeil氏に詳しい話を聞いた。 INFOQ:Sails.jsはnode.jsの他のリアルタイムフレームワーク(Meteor, Derby, SocketStream)と比べてどうですか。 Mike:Sails.jsを開発したのは、私が顧客に効率良く安定したNode.jsアプリケーシ

    Sails 0.8.9:リアルタイムNode MVC フレームワーク
  • 1