タグ

ブックマーク / atmarkit.itmedia.co.jp (124)

  • テスト駆動開発/振る舞い駆動開発を始めるための基礎知識

    連載目次 2000年代初期に開発手法として確立された「テスト駆動開発」(Test Driven Development、以下「TDD」)は、その後10年もの間で普及が進み、今や珍しくない開発スタイルの1つとなっています。国内でも「アジャイルアカデミー」「TDD Boot Camp」などによる推進・普及活動が各地で活発化し、認知が広がってきました。 なおTDDは誕生からこれまでの間に、さまざまな工夫や実践上のノウハウが提唱されてきました。またTDDの普及に影響を受け、他のさまざまな「テストファースト」手法も台頭してきています。 稿では、そうしたTDDの発展や、振る舞い駆動開発(Behavior Driven Development、以下「BDD」)など他のテストファースト手法への展開についても解説します。 ※編集部注:ソフトウェアの「テスト」そのものの概要や種類について知りたい方は記事「J

    テスト駆動開発/振る舞い駆動開発を始めるための基礎知識
  • いまさら聞けない、成功するブランチモデルとgit-flowの基礎知識

    いまさら聞けない、成功するブランチモデルとgit-flowの基礎知識:Gitランチを使いこなすgit-flowGitHub Flow入門(1)(1/2 ページ) 数回に渡ってgit-flowGitHub Flowを使ったGitの活用テクニックを紹介します。初回は、ブランチ管理の課題と効率的にバージョン管理できる5つのブランチモデルと、ブランチの管理を簡単に行えるツール「git-flow」について。 Gitなどの次世代のバージョン管理ツールの特徴として、ブランチの機能を高度に活用できるという利点があります。Gitのブランチを生かしたツール・フローとして「git-flow」「GitHub Flow」が注目を浴びていますが、連載では数回に渡ってgit-flowGitHub Flowを使ったGitの活用テクニックを紹介します。初回は、git-flowの概要を紹介します。 効率的にバージョ

    いまさら聞けない、成功するブランチモデルとgit-flowの基礎知識
  • 【図解】Xcode 4.5の使い方リファレンス超まとめ

    【図解】Xcode 4.5の使い方リファレンス超まとめ:iOS SDKで始めるObjective-C入門(3)(1/3 ページ) Windowsを使っていたけど、iOSアプリを作るためにMacを使い始めた初心者を対象に、開発ツールXcode/iOS SDKを使ってiPhoneiPadアプリを作る方法を、プログラミング言語「Objective-C」の書き方/文法を交えて解説。今回は、iPhoneiPadアプリ開発に必要なiOS SDKの概要や標準開発ツール「Xcode」の画面構成を紹介。iOS SDKはInterface BuilderやInstrumentsなど便利なツールを備えています

    【図解】Xcode 4.5の使い方リファレンス超まとめ
    w650
    w650 2012/12/25
  • Bootstrap、Hogan.js、Finagleなど注目のTwitter系オープンソース - @IT

    Bootstrap、Hogan.js、Finagleなど 注目のTwitter系オープンソース Twitter Tokyo Open Houseまとめレポート 山裕介 2012/5/15 「Twitter Open House」はTwitter社のエンジニアと直接情報交換ができるオフラインイベントで、すでにサンフランシスコの社では何度か開催している。 先日、日では初めてとなる「Twitter Tokyo Open House」がTwitter Japanのオフィスで開催された。季節外れの大型低気圧により天候は荒れ、開催すら危ぶまれたが、結果としては多くのエンジニアが集まり盛況なイベントとなった。 OpenJDKにも参加するTwitterのアーキテクチャ 最初に講演を行ったのはTwitterのアーキテクチャのディレクターであるロブ・ベンソン氏。なでしこジャパンや天空の城ラピュタを例に挙

    w650
    w650 2012/05/17
  • 転職したいITエンジニアが知るべき97のこと

    元プログラマ、現Web系企業の人事担当者による、エンジニア転職指南。「応募書類の書き方」や「自己PRの仕方」について、エンジニアの視点を持ちながらアドバイス。エンジニアの幸せな転職のために、菌類が奮闘する。 人を泣かせる花粉より、人を笑わせる胞子でありたい。こんにちは、きのこる先生です。ヤツ(花粉)らの破壊力はすさまじいものがありますね。皆さま、いかがお過ごしでしょうか。 さて、連載もついに最終回です。今回のテーマは「転職したいITエンジニアが知るべき97のこと」。タイトルの元ネタはもちろん、私の愛する“きのこ”こと、『プログラマが知るべき97のこと』。 前半は過去の連載を振り返った「まとめ編」。転職についてのあれこれをおさらいしてみてください。後半では転職について特に重要なこと――「ソーシャル転職」「面接」「新人エンジニアの心構え」について解説します。 ラブレターは読まれてなんぼ――

    転職したいITエンジニアが知るべき97のこと
    w650
    w650 2012/03/29
  • Git管理の神ツール「Gitolite」なら、ここまでできる!

    「Git」使ってますか? 近年、分散バージョン管理システム「Git」が急速にシェアを伸ばしています。筆者は、チケットシステムやバージョン管理の勉強会などを開催したりしていますが、Gitユーザーがかなり増えてきていると感じます。 しかしながら、そのような勉強会でアンケートを取ってみると、実案件では半分以上の人がSubversionを利用しており、Gitの導入はまだまだ進んでいません。移行コストが掛かったり、プロジェクトマネージャ層への知名度がまだまだ低いというのもありますが、理由の1つとして、ユーザー管理が煩雑であったり、アクセス制御に関する情報が不足しているということもあると思います。 そういうわけで稿では、Gitリポジトリのユーザー管理やアクセス制御を簡単に行う「Gitolite」を紹介します。 なお、稿ではGitの利用方法については紹介しませんので、Git自身の使い方については改め

    Git管理の神ツール「Gitolite」なら、ここまでできる!
    w650
    w650 2012/02/16
  • OpenID Authentication 2.0時代の幕開け

    XRDSベースのディスカバリー いままで1.1の仕様では、OPの所在やdelegateしたいIdentifierの指定をHTMLに記述していましたが、これをXRDSというXMLのフォーマットで記述されたものにすることができます。 このXRDS文書の所在をどのようにRPに知らせるかは以下のように2通りの手段があります。 Claimed IdentifierがXRIの場合は、レスポンス文がXRDS文書となります Claimed IdentifierがURLの場合は、HTMLのレスポンスヘッダでx-xrds-locationの値で指定されたURL、またはmeta要素でhttp-equiv属性がx-xrds-locationの時の対応する値で指定されたURLに文書があります。あるいはcontent-typeがapplication/xrds+xmlの場合はレスポンス文にXRDS文書があります

    OpenID Authentication 2.0時代の幕開け
    w650
    w650 2012/02/15
  • Google Labsさん、Ajaxライブラリ標準化はありますか? ─ @IT

    Google Developer Day 2008特集 Google Labsさん、 Ajaxライブラリ標準化はありますか? @IT編集部 2008/7/14 6月10日に横浜パシフィコで「Google Developer Day 2008」が開催された。ここでは、Google Labs、OpenSocial、Gearsの担当者のインタビューをまとめてお伝えする。 ■ 参考記事 【Google Developer Day基調講演レポート】アンドロイドやOpenSocialなどデモ多数、グーグル Androidは雇い主の分身として仕事をするエージェント(Androidの生みの親アンディ・ルービン氏×「Google Android入門」著者の嶋是一氏) Google App Engine-すべては20%プロジェクトからスタートした(Google App Engineプロダクトマネージャー ピー

    w650
    w650 2011/08/24
  • スマートフォンアプリデザインに役立つ 基礎のまとめ!

    スマートフォンアプリデザインに役立つ 基礎のまとめ!:一撃デザインの種明かし(14)(1/4 ページ) 各キャリアが新Android携帯を続々と発表し、スマートフォンへの注目がますます盛り上がる中、アプリケーションも、iPhoneAndroidともに展開するものが増えてきました。 そういった中で、稿ではスマートフォンアプリのデザインのコツをまとめてみます! iPhoneAndroidともに展開しているアプリ3例 まずは、iPhoneAndroidともに展開している有名アプリを3つ紹介します。それぞれのスクリーンショットを見ながら違いを探してみてください。 【1】クックパッド レシピの投稿と検索ができるアプリです。PCサイトの雰囲気はそのままに、トップ画面を旬のキーワードと履歴、検索ボックスのみに絞ったシンプルなUIになっています。要素とコンテンツを極力減らすことで、レシピ検索に集中

    スマートフォンアプリデザインに役立つ 基礎のまとめ!
  • Bazaarでござ~る。猿でもできる分散バージョン管理“超”入門

    Bazaarでござ~る。猿でもできる分散バージョン管理“超”入門:ユカイ、ツーカイ、カイハツ環境!(20)(1/4 ページ) 「“分散”バージョン管理は難しい」という人こそ 最近、GitやMercurialが注目を浴び、SubversionやCVSなどの中央型のバージョン管理システムに代わり分散型のバージョン管理システムの普及が進んでいます。稿では、GitやMercurialに比べ、いま一歩マイナーな分散バージョン管理システムである「Bazaar」を紹介します。 稿は、想定読者層としてはSubversionやCVSを、すでに使っており、分散バージョン管理システムに興味がある方を対象としています。「分散バージョン管理システムって何?」と思われる方は、連載第3回の「分散バージョン管理Git/Mercurial/Bazaar徹底比較」を参照しておくとスムーズに読み進められると思います。 なお

    Bazaarでござ~る。猿でもできる分散バージョン管理“超”入門
    w650
    w650 2011/04/29
  • SQL Serverで「デッドロック」を回避する

    ロックの仕組み(その2)-オブジェクトのロックタイプ 前回「第27回 トランザクションの一貫性を保証するロック」は、トランザクションの4つの分離レベルの説明をしました。今回は、この分離レベルを実現するデータベースサーバのロック機構に触れてみましょう。実際にどのような仕組みでデータベースサーバがロック制御を行っているかを理解することで、トランザクション機能を利用した際に起こりやすい問題点を、あらかじめ予測できるようになると思います。 今回は、初めに、ロックの状態を取得するシステムストアドプロシージャ「sp_lock」の定義を若干拡張した「sp_lock_detail」ストアドプロシージャを作成しましょう。

    SQL Serverで「デッドロック」を回避する
  • 各ディレクトリの役割を知ろう(サブディレクトリ編)

    巨大な/usrのディレクトリ構造 /usrには、読み出し可能かつ共有可能なファイルを配置します。一般的にいって、ここには多数のファイルが配置され、ディレクトリ構造も複雑になっています。 FHS 2.2におけるサブディレクトリは以下のように定義されています。ここでも、ディレクトリによって「必須」と「オプション」に分かれます。

    各ディレクトリの役割を知ろう(サブディレクトリ編)
    w650
    w650 2011/03/23
  • timeitコマンドでアプリケーションの実行時間を測定する - @IT

    プログラムごとに実行時間を正確に測定したい! プログラムのパフォーマンス(性能)を解析したり、システムの負荷などを調査したりするには、各プログラムが実行される時間を正確に測定する必要がある。 Windows OSでは、タスクマネージャを利用すればおおよその見当はつくが、プログラムごとの実行時間などの正確な情報は得られない。UNIXではこのような目的のためにtimeというツールがあり、プログラムの実行時間を測定するためによく使われている。 Windows OSの場合は、リソースキットツールに含まれるtimeit.exeコマンドが同等の機能を持っている。ただしこれはWindows XP/Windows Server 2003のリソースキットにのみ含まれており、Windows 2000のリソースキットでは利用できない。 なお、測定対象のプログラムが別のプログラムを起動するような場合は正確に測定で

    timeitコマンドでアプリケーションの実行時間を測定する - @IT
    w650
    w650 2010/11/09
  • 【真夏の夜のミステリー】Tomcatを殺したのは誰だ?

    2007/xx/xx xx:28:50 org.apache.tomcat.util.threads.ThreadPool logFull 致命的: すべてのスレッド (200) が現在稼働中で待機しています。maxThreads (200) を増やすか、そのサーブレットのステータスをチェックしてください これは、Tomcatの持つスレッドプールが最大スレッド数に達してしまったという内容のメッセージだ。Tomcatは、スレッドの生成/破棄のオーバヘッドを削減するため、スレッドプーリングの機能を持っている。スレッドの数が多過ぎるとサーバ上のリソースを消費し過ぎてしまうため、プールには上限値として最大スレッド数を設定できる。 ■Tomcat解剖 それでは、最大スレッド数に達した場合にはどうなってしまうのか。それを理解するためには、Tomcat内部の動作に関する知識が必要となる。図3はTomca

    【真夏の夜のミステリー】Tomcatを殺したのは誰だ?
    w650
    w650 2010/11/02
  • 単体テストを“神速”化するQuick JUnitとMockito

    単体テストを“神速”化するQuick JUnitMockito:ユカイ、ツーカイ、カイハツ環境!(16) Quick JUnitプラグインの3つの大きな特徴 近年、JUnitとHudsonを利用した継続的インテグレーション(CI)によるテストの自動化や、テスト駆動開発(TDD)の普及などにより、ユニットテスト(単体テスト)のテストコードの作成が重要視されています。 今回紹介する「Quick JUnit」プラグインは、JUnitによるテストコードの作成と実装を支援するEclipseプラグインです。Quick JUnitプラグインは石井勝さんにより開発されていましたが、石井さんが不慮の事故により死去後、Quick JUnitプラグインプロジェクトにより開発が継続されています。優れたオープンソースプロジェクトの模範のようなプロジェクトです。 訂正のお知らせ 故人のお名前について間違いがあり、修

    単体テストを“神速”化するQuick JUnitとMockito
  • 社内システムのセキュリティとアクセス制御の常識

    企業向けアプリケーションのさまざまな“常識”をJavaのオープンソース・フレームワーク群である「JBoss」から学んでいきましょう。企業システムを構築するうえでの基礎となる知識をリファレンス感覚で説明していきます。初心者から中堅、ベテランまで大歓迎! 今日の企業で使われる社内システムは、複数のユーザーがコンピュータ・ネットワークによってサービスの同時提供を受けられます。そのため、会社の中にいなくても、自分の会社で使っている社内システムにアクセス可能で、多くの人がその利便性を享受しています。 もちろんインターネットにはさまざまな脅威が存在するため、「外部からのアクセスに対するセキュリティ対策を行っている」という会社も多いでしょう。しかし、それだけでは企業で使うシステムにとってのセキュリティ対策は万全ではありません。 そこで重要になってくるのが、今回のテーマでもある社内システムのセキュリティ

    社内システムのセキュリティとアクセス制御の常識
  • DB設計の神ツール「ERMaster」なら、ここまでできる

    DB設計の神ツール「ERMaster」なら、ここまでできる:ユカイ、ツーカイ、カイハツ環境!(11)(1/3 ページ) 無料のEclipseプラグイン「ERMaster」とは データベースのテーブル設計を行うときに皆さんは、どのようにしているでしょうか? いくつかの無料で利用できるツールが提供されているので、筆者はそれらを利用していましたが、最近「ERMaster」と呼ばれるEclipseプラグインの存在を知りました。 ERMasterは、ほかのツールに比べ、直感的で分かりやすいUI(ユーザーインターフェイス)に、カスタマイズ可能な、Excelで出力できるテーブル定義書、辞書機能など痒いところに手が届くERモデリングのツールです。稿では、このERMasterについてご紹介します。 ERMasterの主な特徴、8つ ERMasterには、主に次のような特徴があります。 【1】直感的で使いや

    DB設計の神ツール「ERMaster」なら、ここまでできる
  • @IT:LDAPによるパスワードの一元管理(1/3)

    今回は、この3つのパスワードを一元管理するために「LDAPサーバ」を利用します。つまり、ユーザーアカウントおよびパスワードをLDAPに格納し、すべてのサービスが同じデータを参照するようにします。 ただし、ここで1つ考慮すべき点があります。パスワードは、元のデータを割り出せないような仕組みで暗号化するのが普通です。パスワードが正しいかどうかを確認するには、同じ方法で暗号化したデータ同士を比較する必要があります。しかし、LinuxWindowsではパスワードの暗号方法が異なるため、入力したパスワードが同じでも暗号化されたパスワードデータを後で比較することは不可能です。そのため、複数のパスワードデータをLDAPサーバの1人のユーザーの属性としてまとめたとしても、一方のパスワード(例えばWindows)に対して変更があった場合には、他方のパスワード(例えばLinux)も変更されるような仕組みが必

    @IT:LDAPによるパスワードの一元管理(1/3)
    w650
    w650 2010/07/12
  • 肥え続けるTomcatと胃を痛めるトラブルハッカー (1/3) - @IT

    肥え続けるTomcatと胃を痛めるトラブルハッカー:現場から学ぶWebアプリ開発のトラブルハック(8)(1/3 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) メモリリークと聞いて、良いイメージを思い浮かべる開発者は少ないだろう。経験したことのある人にとっては、思い出したくない過去の記憶がよみがえるかもしれない。もしかしたら、その単語を聞くだけで胃が痛くなる人もいるかもしれない。筆者もかつてはその1人であった。 前々回の記事では、WebサーバとTomcatの間の接続において、スレッド数の不整合により発生したトラブル事例を、前回はTomcatとDBサーバの間のトラブル事例を紹介した。今回もTom

    肥え続けるTomcatと胃を痛めるトラブルハッカー (1/3) - @IT
    w650
    w650 2010/06/22
  • 「scriptタグに値を埋め込みたい」(1) リッチクライアント & 帳票 - @IT

    IT 会議室 Indexリンク Windows Server Insider Insider.NET System Insider XML & SOA Linux Square Master of IP Network Java Solution Security & Trust Database Expert RFID+IC リッチクライアント & 帳票 Server & Storage Coding Edge @ITクラブ Cafe VB業務アプリケーション開発研究 @IT SpecialPR