タグ

ブックマーク / int128.hatenablog.com (6)

  • Gradleのマルチプロジェクト構成を運用してみた - GeekFactory

    Gradleでマルチプロジェクト構成を運用してみて、気付いた点を書いてみます。 以下の環境で確認しています。 JDK 1.7 Eclipse 4.2 Subversive, SVNKit 1.7 Gradle IDE 3.0 Jenkins マルチプロジェクト構成については下記が参考になります。 第7章 Javaクイックスタート 第56章 マルチプロジェクトのビルド Log In - Codehaus 必要性 マルチプロジェクト構成は複数のコンポーネントや成果物を扱う必要がある場合に使います。いくつものEclipseプロジェクトをいじったりビルドスクリプトを整備するのはかなり面倒なので、可能な限りシングルプロジェクト構成をおすすめします。Gradleにはソースセットという概念があるので、うまく使い分けるとよいと思います。 コンポーネントをマルチプロジェクトで分離するかソースセットで分離する

    Gradleのマルチプロジェクト構成を運用してみた - GeekFactory
    Ehren
    Ehren 2013/08/07
  • JenkinsとApache Ivyで開発からデプロイまでを管理する - GeekFactory

    Eclipse, Jenkins, Apache Ivyを使ったプロジェクトにおける開発からデプロイまでの流れを図に描いてみました。 図では書き表せないことがありますね。テスト実行時のクラスパスは実行時ライブラリを含むとか、図で描くとカオスになります。GUIツールでビルド設計するのは意外と難しいのかもしれません。 ビルド設計する上で考えたことを書き出しておきます。何かアドバイスがあったら教えていただけると嬉しいです。 開発環境 WindowsでEclipseを使う。 Eclipseのプロジェクト構成で適切なビルドパスを設定する。 依存ライブラリはApache IvyDEプラグインで管理する。 依存ライブラリはMavenリポジトリから取得する。リポジトリ候補にはビルドサーバ上のキャッシュを含める*1。 他プロジェクトへの参照はEclipseのProject Referenceを設定する。 ク

    JenkinsとApache Ivyで開発からデプロイまでを管理する - GeekFactory
  • 今日から始めるサーバ構築の省力化 - GeekFactory

    SSHクライアントたくさん並べてペーストしまくるのが許されるのは小学生までだよね と言ってみたかっただけです。こんにちは。 Capistranoでサーバ構築を省力化する方法を紹介します。サーバ構築の自動化といえばChefやPuppetが有名ですが、CapistranoはサーバにSSH接続さえできれば利用できるメリットがあります。データセンタに持ち込むノートPCにCapistranoを仕込んでおけば便利なツールになるし、短期間に検証用のサーバを構築する場合も有用なツールになるでしょう。Capistranoはデプロイツールとして使われることが多いですが、サーバ構築にも有用です。 CapistranoはRubyで書かれたツールで、複数のサーバにSSH接続してコマンドを実行できます。同様のツールとしてexpectがありますが、CapistranoのスクリプトはRubyの内部DSLなので書きやすく拡

    今日から始めるサーバ構築の省力化 - GeekFactory
  • Selenium Generator - GeekFactory

    以前に作ったものをリメイクしてみました。Selenium IDEで作成したシナリオを繰り返し、バリエーションテストのテストケースを生成するツールです。 Selenium Generator - http://lab.hidetake.org/selenium-table/ 3年前に書いたコードはprototype.jsを利用していましたが、今回はjQueryに移行しました。jQueryベースの方が読みやすい気がします。これがまた3年経ったら技術的負債に化けてるかもw

    Selenium Generator - GeekFactory
    Ehren
    Ehren 2011/01/31
  • 受託開発が抱える本質的な非効率性に関する考察 - GeekFactory

    受託開発が抱える質的な非効率性について考えました。ここで挙げたことはどの開発プロセスでも発生しうる問題と思います。 外注のオーバーヘッド 契約に係るコスト。 限られた場所や時間で質疑応答を行うことによる損失 情報の伝達コストは「機会」により決まる。拠点の違い、限られた時間、組織の壁により機会は減り、伝達コストは高くなる。 打合せや質問票を中心に質疑応答を行うため、情報の伝達コストが高くなる。 発注側の縦割り部門、受託側の下請け構造により、情報の伝達コストが高くなる。 決定に要する時間が長くなる。 開発者が業務プロセスを学習するコスト 前提として、どんな要件でも学習コストは必ず発生する。 過去に学習した知識を再利用できるとは限らない。受託側に業務スペシャリストが存在するとは限らない。 発注側から業務に関する説明を受ける機会(=教育)が十分にないため、極めて非効率な学習にならざるを得ない。

    受託開発が抱える本質的な非効率性に関する考察 - GeekFactory
  • AjaxによるFederated Loginの待ち時間の短縮 - GeekFactory

    App Engine上のアプリでは利用者の体感待ち時間を短くするため、JSPを使わずにAjaxで実装することがあります。この方法はOpenID認証(Federated Login)でも有効です。 web.xmlのsecurity-constraintで認証をチェックする方法を以前紹介しましたが、この方法ではサーブレットを経由してログイン画面に遷移するまでに待ち時間が発生してしまいます。 代わりにクライアント側で認証をチェックすることで、ログイン画面に遷移するまでの待ち時間を省けます。クライアント側で認証をチェックするには、JavaScriptで ACSID というクッキー*1の有無を確認します。 (図の1) JavaScriptは認証Cookieの有無を確認します。初期状態では認証Cookieを持っていないので、ログインフォームを表示します。 $.extend({ /** * ログイン済み

    AjaxによるFederated Loginの待ち時間の短縮 - GeekFactory
    Ehren
    Ehren 2010/09/16
  • 1