ブックマーク / gihyo.jp (15)

  • Web API設計実践入門 ――API仕様ファーストによるテスト駆動開発

    2024年7月25日紙版発売 2024年7月25日電子版発売 柴田芳樹 著 A5判/208ページ 定価2,860円(体2,600円+税10%) ISBN 978-4-297-14293-3 Gihyo Direct Amazon 楽天ブックス 丸善ジュンク堂書店 ヨドバシ.com 電子版 Gihyo Digital Publishing Amazon Kindle ブックライブ 楽天kobo honto このの概要 書は,著者が1993年から約30年間経験してきたAPI仕様の作成,2003年から20年間経験してきたテストファースト開発/テスト駆動開発の知見をまとめたものであり,一般的なソフトウェア開発者が習得することが容易ではない事柄を,書を通して学び,実践してもらうことを目的としています。 書が提唱する「API仕様ファースト開発」はWebサービスにおける大域的なテスト駆動開発の

    Web API設計実践入門 ――API仕様ファーストによるテスト駆動開発
  • 第1回 Swiftを学ぶための情報源とPlayground | gihyo.jp

    はじめに 昨年のWWDCにて、AppleはiOS8やOS X Yosemiteの発表とともに、新しいプログラミング言語「Swift」を発表しました。まさか新しい言語を開発するとは思いもよらず非常に衝撃的な発表でしたが、あれから半年が経ち、開発者向けベータ版などを経て、仕様やツールもだいぶ落ち着いてきたように思います。そろそろSwiftを、という方も多いのではないでしょうか。 連載では、すでにObjective-CでiOSアプリを開発している開発者に、Swiftへ移行する際のポイントを解説したいと思います。 第1回である今回は、Swiftを学ぶための情報源と、Playgroundについてご紹介します。 その前に自己紹介 はじめまして。ogaoga(@ogaoga)と言います。仕事ではIT系の会社でフロントエンドエンジニアをやっています。iOSアプリは趣味で開発していて、SDKが公開されてか

    第1回 Swiftを学ぶための情報源とPlayground | gihyo.jp
  • 第4回 Webアプリを作ろう#1──Geolocation API、Notification API | gihyo.jp

    目的地の設定と距離の算出 目的地の設定は、地図上をクリックすることによって行います。Google Mapsのクリックイベントから緯度と経度を取得することができるので、現在地情報の表示と同様にshowDestinationPositionメソッドで目的地の緯度、経度を表示します。また、同時にshowDistanceメソッドで目的地までの距離を算出して表示します。 /* * 目的地情報表示 */ function showDestinationPosition(lat, lng) { //目的地を表示 document.getElementById('dest-latitude').textContent = lat; document.getElementById('dest-longitude').textContent = lng; } /* * 目的地までの距離表示 */ functi

    第4回 Webアプリを作ろう#1──Geolocation API、Notification API | gihyo.jp
    muramasaosx
    muramasaosx 2011/12/12
    chrome extention
  • 第9回 高速なWeb APIの実装とテスト―Mobage APIを支えるノウハウ(1) | gihyo.jp

    連載では第一線のPerlハッカーが回替わりで執筆していきます。今回のハッカーはDeNAの嶋田裕二さんで、テーマは「高速なWeb APIの実装とテスト」です。 Web APIの基礎知識 はじめまして、DeNAでMobageオープンプラットフォームのWeb API(以降Mobage API)を実装しているxaicronです。Mobageオープンプラットフォームは、Mobageの機能をWeb APIを通して外部の開発者に公開することにより、ソーシャルゲームをユーザに提供するサービスです。 簡単に説明するとWeb APIとは、HTTPを利用してネットワーク越しに処理を行い、結果を返すしくみです。最近ではJSON(JavaScript Object Notation)というフォーマットを利用してデータのやりとりをすることが多くなっており、Mobage APIも基的にはJSONを受け取って処理を行

    第9回 高速なWeb APIの実装とテスト―Mobage APIを支えるノウハウ(1) | gihyo.jp
  • [はまちちゃんのセキュリティ講座]ここがキミの脆弱なところ…!:第1回 HTTPのしくみを復習しよう|gihyo.jp … 技術評論社

    こんにちはこんにちは ! ! はまちや2です! 今日からぼくと一緒にWebプログラミングのセキュリティについて、ちょっぴり勉強してみませんか!今回はHTTPがどんなやりとりをしているのか、簡単におさらいしてみましょう!

    [はまちちゃんのセキュリティ講座]ここがキミの脆弱なところ…!:第1回 HTTPのしくみを復習しよう|gihyo.jp … 技術評論社
  • 2011年のJavaScript ─ウェブアプリ全盛の時代へ | gihyo.jp

    あけましておめでとうございます。昨年に引き続き、今年もJavaScriptの近い未来についてちょっとだけお話させて頂きます。 最初に昨年の予想を見返しておきましょう。昨年は次の3つを2010年の鍵として取り上げました。 ウェブ標準 ブラウザ拡張 サーバーサイドJavaScript この3つを軸に2010年を振り返ってみます。 2010年のJavaScript界隈でのニュース ウェブ標準 2010年最初のビッグニュースはなんといってもIE 9のPlatform Preview版の登場でした。これまでの独自実装路線から一転して(正確にはIE 8の時点でJSONやWeb Storageのサポートなど、その徴候はあったのですが⁠)⁠、HTML5などのウェブ標準のサポートを進めることを表明しました。そして実際に8週おきにPlatform Preview版をアップデートして、ECMAScript5・S

    2011年のJavaScript ─ウェブアプリ全盛の時代へ | gihyo.jp
  • 第1回 まずはTitaniumを体験してみよう | gihyo.jp

    はじめまして、株式会社はてなでアプリケーションエンジニアをしている倉井龍太郎(id:r_kurain)と申します。この連載では、今もっとも注目集めているスマートフォンアプリ開発環境であるTitanium Mobile(以下Titaniumと省略)を使ったiPhone及びAndroidアプリケーションの開発方法について解説していきます。 Titaniumとは TitaniumはAppceleratorが開発しているスマートフォンアプリ開発環境です。iPhone/iPod/iPad であればObjectice-Cを使用して、AndoridであればJavaを用いて作成するネイティブアプリケーションが、どちらの環境でもJavascriptのみで開発できるようになるものです。Titanuiumは無料で利用することができます。サポートを受けるにはAppceleratorの有料プランに入会する必要が

    第1回 まずはTitaniumを体験してみよう | gihyo.jp
  • 第4回 オブジェクト指向の本質 | gihyo.jp

    エンジニアとして良い仕事をするために必要なこと ソフトウェア業界で日米を往復しながら仕事をしていると、世界中のさまざまなエンジニアに会う。私のように「プログラミングを心底楽しんでいる」人から、「⁠新3K」(⁠きつい・厳しい・帰れない)を身をもって体験している人までさまざまだが、共通して言えることは、エンジニアとしての基礎がしっかりできている人とできていない人では、その生産効率に大きな開きがあり、それが結果的には、会社での労働環境や待遇に、そして結果として自分自身にとっての「仕事の充実度」に、大きな影響を与えているということである。 いつも締め切りに追われている、毎回バグで苦しんでいる、徹夜の連続で体力に限界がきているなど、「⁠仕事がきつい」理由はいろいろとあると思うが、会社や上司の悪口を言う前に、自分自身がプロフェッショナルなエンジニアとしてこの業界で勝負をするうえで必要な最低限の基礎がで

    第4回 オブジェクト指向の本質 | gihyo.jp
  • 2010年11月18日 "ミラクルパッチ"にLinusも大喜び!Linuxカーネルを高速化させた233行のコード | gihyo.jp

    Linux Daily Topics 2010年11月18日"ミラクルパッチ"にLinusも大喜び!Linuxカーネルを高速化させた233行のコード Linus Torvalds氏という人は、少なくともメールの中では、かなりはっきりと感情を表に出す。誰かor何かに対して怒っているときは相手を名指しで批判(というより非難)し、逆にうれしいときはあふれる喜びを隠そうとしない。今回紹介するのは後者のほう。「⁠I'm also very happy」「⁠it is a _huge_ improvement」「⁠Good job.」など、喜びと称賛の表現がたくさん書かれているメールだ。 Linus氏を歓喜させたのは、カーネル開発に携わるMike Galbraith氏が書いた233行のカーネルスケジューリングパッチ。このパッチを適用すると、デスクトップ環境においてパフォーマンスが著しく向上するという。

    2010年11月18日 "ミラクルパッチ"にLinusも大喜び!Linuxカーネルを高速化させた233行のコード | gihyo.jp
  • 第1回 NoSQL、そしてCassandraとは | gihyo.jp

    NoSQLミドルウェアの特徴をもう少し細かく挙げてみます。分量の都合もあり個別には触れませんが、それぞれのNoSQLミドルウェアで差別化部分に関してはかなり詳細に説明がされていますので、ぜひそちらを参照してみてください。 高速に動作する リレーションモデルではないデータモデル スケールアウト型アーキテクチャ コモディティサーバによって構築される スキーマフリー SPOF(単一故障点)を持たない 自動的に複数台へレプリケーションする イベンチュアルコンシステンシまたは一貫性の選択が可能 SQLのような強力なクエリ言語を持たず、シンプルな問い合わせしかできない Cassandraとは何か NoSQLミドルウェアの筆頭といえばGoogle BigTableやAmazon Dynamoですが、オープンソースの世界でもいろいろなものが出てきています。その中でも最近特に注目を集めているのが、Apach

    第1回 NoSQL、そしてCassandraとは | gihyo.jp
  • 第2回 物理エンジンをセットアップし、箱を落とすFlashを作る | gihyo.jp

    Box2Dを使った簡単なFlashを作ってみましょう。まずは、床の上に箱を落とすだけのFlashです。ソースコードの説明をする前に、動作を見てみましょう。 サンプルについて コンパイルと実行 まず、以下のActionScriptファイルをダウンロードしてください。このファイルはどこに置いても構いません。 DropBox.as 次に、mxmlcを使ってActionScriptをコンパイルします。このとき、-source-pathオプションを指定して、Box2Dがある場所を指定する必要があります。 mxmlc -source-path=C:\lib\Box2DFlashAS3_2.0.0 DropBox.as 少し長いですね。通常のコンソール画面であれば、上キーを押して以前のコマンド履歴を参照出来るので、二度目以降は入力する必要はありません。何度もコンパイルするときに時間がかかって仕方が無いと

    第2回 物理エンジンをセットアップし、箱を落とすFlashを作る | gihyo.jp
  • 第5回 CakePHPで作るToDoアプリ(1) | gihyo.jp

    第4回ではCakePHPでの開発環境を構築しました。今回からアプリケーション部分の開発にとりかかります。 開発するのはToDo管理アプリケーションです。今回は以下の作業を行います。 DBの設計と作成 コントローラの作成 モデルの作成 ビューの作成 この作業で実装される機能は以下になります。 タスク一覧の表示 このアプリケーション開発の前提として、DocumentRootは/home/gihyo/public_htmlで、URLはhttp://example.com/~gihyo/、CakePHPをセットアップしたディレクトリは/home/gihyo/public_html/todo、URLはhttp://example.com/~gihyo/todo/とします。 DBの設計と作成 まずはCakePHPに慣れるためのサンプルアプリケーションですので、機能は最小限とします。アプリケーションを利

    第5回 CakePHPで作るToDoアプリ(1) | gihyo.jp
    muramasaosx
    muramasaosx 2009/05/17
    cakephp
  • 第2回 Hudson事始め | gihyo.jp

    この連載では、オープンソースの継続的インテグレーション(CI)サーバであるHudsonを利用した、ソフトウェア開発の生産性向上について解説しています。前回の記事では、Hudsonの紹介と、インストール手順について解説しました。今回は、実際にHudsonでプロジェクトをビルドをする過程をより詳しく見ていきます。 ジョブの種類を選ぶ まずはHudsonの新規ジョブ作成画面(http://localhost:8080/hudson/newJob)に戻りましょう。ここでは、新しいジョブの作成に先だって、ジョブの種類を選びます。これは、IDEに似ています---ここで適切な種類を選択することによって、プロジェクトにあわせて特化したサポートが提供されるわけです。何もプラグインをインストールしない状態では次の選択肢が表示されます。 フリースタイルプロジェクトのビルド記事では主にこれを解説します。ソースコ

    第2回 Hudson事始め | gihyo.jp
    muramasaosx
    muramasaosx 2009/01/16
    java
  • 第1回 Hudsonの導入 | gihyo.jp

    継続的インテグレーションとは Hudsonの具体的な紹介に入る前に、まず簡単に「継続的インテグレーション」(⁠Continuous Integration、以下CI)のおさらいをしましょう。CIは、Extreme Programmingに端を発し、Martin Fowlerによって広められた概念で、狭義には、別々に開発された部品を持ち寄ってお互いの動作を検証する「統合テスト」を早い段階から恒常的に行うことを指します。この当初の概念には必ずしも統合テストの自動化という考え方は含まれていませんでしたが、最近では、CIは単に統合テストだけではなく、広くビルド及びテスト全般を恒常的に行うことを指すようになり、またこれを現実的な工数で実現するための必須の手段として、ビルド・テストの工程を極力自動化する、という事が重要なポイントの一つになってきました。 この考え方の背景の一つには、コンピュータの高性能

    第1回 Hudsonの導入 | gihyo.jp
  • 第7回 ファイルシステムAPI(その1) | gihyo.jp

    ファイルやディレクトリへのアクセス ブラウザ上で実行されるウェブアプリケーションがローカルファイルへのアクセスを制限されているのに対し、AIRアプリケーションは比較的自由にローカルファイルへアクセスできます。しかもプラットフォーム間の差異はAIR側で吸収してくれるので、デベロッパーが意識してコードを書き分ける必要もありません。 例として、デスクトップディレクトリにアクセスしてみましょう。 <?xml version="1.0" encoding="utf-8"?> <mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" applicationComplete="test()"> <mx:Script> <![CDATA[ import flash.filesystem.File;

    第7回 ファイルシステムAPI(その1) | gihyo.jp
  • 1