タグ

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

  • RubyのPDF生成、Prawnを使って簡単かつきれいに

    Ruby(とRails)でPDFを生成する方法は(リンク)現在、数種類存在する。既存のソリューションに不満のあるGregory Brownは、DSLアプローチを使って独自のライブラリを設計することに決めた。Prawnは(リンク)また他のRubyPDFライブラリより、速度でも上を行くはずである。 インストールを完了すると、DSL風のアプローチを使って簡単にPDFを生成できる(Prawnのサンプルから例を引用)。 Prawn::Document.generate("image.pdf", :page_layout => :landscape) do text 'Welcome in Prawn!', :at => [50,525] pigs = "data/images/dice.png" image pigs, :at => [50,450], :scale => 0.5 ruport =

    RubyのPDF生成、Prawnを使って簡単かつきれいに
  • ClickOnceできめ細かいバージョン管理

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

    ClickOnceできめ細かいバージョン管理
  • RailsのActiveMessaging入門

    はじめに Railsはすでに、データベース駆動型のWebアプリケーションの領域でしっかりと旗を掲げています。RailsプラグインのフレームワークであるActiveMessagingは、簡易化したメッセージング統合を追加することでRails領域の境界を拡大します。ActiveMessagingとRailsを使用することで、MQメッセージを送信するメインフレームやJ2EE Webアプリケーションのように異種のシステムと簡易統合することや、長期タスクの処理をオフロードすることや、イベントまたはメッセージ駆動型のアーキテクチャでアプリケーションを作成することができます。以前に他の人が言ったように、ActiveMessagingは、ActiveRecordがデータベースに対して実行することを、メッセージングに対して実行しようとします。この記事では、ActiveMessagingと関連技術について紹介

    RailsのActiveMessaging入門
  • InfoQ: 複数のアジャイルチームでのバージョン管理

    複数のチームが動いているアジャイル環境では、以下の目的を実現するバージョン管理モデルが必要になります。 フェイルファースト フェイルファーストとはコードのコンフリクトや統合での問題を可能なかぎり早期に発見することです 大きな問題を数回のタイミングで修正するよりも、小さな問題を何度も修正していく方が賢明です 常にリリース可能 どんなに悪いスプリント(イテレーション)だったとしても、その成果物は何かしらリリース可能なものでないといけません シンプル このスキームはチームのメンバ全員に毎日使われることになるので、ルールや定型作業は明確かつシンプルでないといけません 紙1枚にまとめた要約図(壁張り用) この図を見て分からないことがあっても構いません。この先を読んでください。 この図を見て分からないことがなくても、この先を読んでください。 この要約図はPDFでもダウンロードできます(DL) バージョ

    InfoQ: 複数のアジャイルチームでのバージョン管理
  • より良いベストプラクティス

    組織ではよくベストプラクティスがプログラムや品質の改善対策の一環として導入されます。それらは”クックブック”やチートシートから格的で監査や認定に対しても万全なコンサルタント主導の方法論まで様々です。 この記事ではベストプラクティスを単純に適用するやり方に疑問を投げかけるためドレフュス学習モデルを紹介します。そして単純なベストプラクティス適用が役立たないだけでなく、一番力のある人たちにとって重い悪影響を与えることをお見せします。 ベストプラクティスを導入する理由 ビジネスに大きな影響のあるプログラムを作る人たちは常に、ベストプラクティスを組織に広げるよう大々的に取り上げるもっともな理由を持っています。 ベストプラクティスは一貫性を保証する。 私たちは○○を導入しようとしている。みんなには同じ方法で仕事をしてもらいたい。こちらから何らかの方向性を提示しないで誰かを見捨てる気はないし、他の方法

  • STOMPを使用したFlex 3.0およびRabbitMQの統合

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

    STOMPを使用したFlex 3.0およびRabbitMQの統合
  • RDBMSでは不十分

    リレーショナルデータベースはクライアント/サーバモデルに適合するものの、サービスの世界では新しいソリューションが必要である(source)。RDBMSはスケーラビリティの問題に陥りやすい。冗長性や並列性をどのようにして実現すればいいのか(source)? (リレーショナルデータベースは)単一故障点となります。特に複製はささいな事ではありません。疑問に思うのであれば、全く同じデータを必要とする2つのデータベースサーバがあることによって起こる問題を考えて見てください。データを読んだり書いたりするために両方のサーバがあると、同時に変更するのが困難になります。マスターサーバとスレーブサーバがあっても、良くありません。なぜなら、マスターはユーザが情報を書き込む際、沢山の熱を帯びるからです。 また、Assaf Arkin氏も整合性を書くこと(source)はRDBMSが自身の重さで内破してしまう理由で

    RDBMSでは不十分
  • Review Board - コードレビューをオンラインで

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

    Review Board - コードレビューをオンラインで
  • ルール VS 手続き型コード

    BPM ベースのソリューションにおいて、どういう時にルールを利用し、どういう時に手続き型のコードを利用するのが適切か、あなたはどうやって決めているだろうか?最近、haley.com(サイト・英語)の創設者であり会長でもある Paul Haley(source)氏がこの問題に関してヘルプを求められた(source)ようである。 最近、エンタープライズアーキテクチャグループ内の一部の戦略的な人たちから、ルールをもっと自分たちの組織に関連付けたいと依頼があった。ルールをどう いう時に中間レイヤに組み込み、どういう時にサービス内にカプセル化するのかということから、理想的な利用事例と参照実装まで、彼らの関心は多岐にわたっ ていた。そして、ルールを BPM および BI と結びつけることに特に興味を抱いていた。 従来の IT の考え方は BPM の乱用をまねく手続き型のコーディングに偏っていると Pa

    ルール VS 手続き型コード
  • OpenTerracottaの紹介

    Productクラスは、商品の明細に関するデータを内包しています。商品名、SKU、そして価格です。 package example; import java.text.NumberFormat; public class ProductImpl implements Product { private String name; private String sku; private double price; public ProductImpl(String sku, String name, double price) { this.sku = sku; this.name = name; this.price = price; } public String getName() { return this.name; } public String getSKU() { return

    OpenTerracottaの紹介
  • 1