タグ

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

  • Underscore.jsの入り口 記事一覧 | gihyo.jp

    第3回underscore.jsの関数とユーティリティとChaining 早瀬まこと 2014-01-24

    Underscore.jsの入り口 記事一覧 | gihyo.jp
  • 「第34回 HTML5とか勉強会~BaaS(Backend as a Service)」活動報告 | gihyo.jp

    2012年12月20日、年内最後となる第34回目の「HTML5とか勉強会」はソフトバンクさんの堂をお借りして開催しました。 今回のテーマは「BaaS(Backend as a Service⁠)⁠」です。海外ではいくつかの事例も出てきており、今後のWebアプリ開発においてBaaSが重要なサービスになることが予想されます。サーバサイドの開発にあまり明るくない開発者でも、BaaSを利用することでアプリケーションの開発がより円滑に進められるようになるでしょう。 稿では、今回のイベントについてレポートします。 素早くモバイルサービスを立ち上げる - BaaS概要 はじめにBaaS全体の概要について、株式会社エクサの安藤幸央さんに講演いただきました。 BaaSはWebアプリで必要になることの多いバックエンド(サーバ側)の処理を、APIとして提供するクラウドサービスの総称です。BaaSを利用するこ

    「第34回 HTML5とか勉強会~BaaS(Backend as a Service)」活動報告 | gihyo.jp
  • 2012年注目のモバイル向けJavaScriptフレームワーク・ライブラリあれこれ | gihyo.jp

    昨年は、スマートフォンが急速に普及した年でした。それに伴って、モバイルサイトの重要性が増し、多くのモバイル向けJavaScriptフレームワークやライブラリが産まれました。稿では、それらのモバイル向けのJavaScriptフレームやライブラリの中から、ピックアップして紹介していきたいと思います。 豊富な機能やリッチなインターフェースが多く用意されているフレームワーク まずは、モバイルサイトの構築を一から行えるフレームワークを紹介します。jQuery MobileやSencha Touchといった著名なフレームワークを始めとして、jQTouchやiUIなど比較的軽量なフレームワークまで簡単に解説します。 jQuery Mobile jQuery Mobileは、有名なJavaScriptライブラリであるjQueryをベースとしたモバイル向けのフレームワークです。ネイティブアプリのようなUI

    2012年注目のモバイル向けJavaScriptフレームワーク・ライブラリあれこれ | gihyo.jp
  • 第31回 RubyistのためのMongoDB入門(1) | gihyo.jp

    はじめに ここ最近、NoSQLというキーワードが注目を集めています。 リレーショナルデータベースは、一般的にスケールアウト(サーバの台数を増やして性能向上を図る手法)が難しく、特に大規模サービスにおいてパフォーマンス上のボトルネックとなりえます。また、タグやグラフ構造のようなデータは関係モデルに馴染みにくいため、それらを扱う際にはアプリケーションコードもぎこちないものになりがちです。 これらの問題を背景に、何にでもリレーショナルデータベースを使うのではなく、用途に応じてKVSなど他のデータストアを選択する流れが広まりつつあります。このムーブメントがNoSQL(Not Only SQL)と呼ばれているものです。 今回は、NoSQLなデータベースの1つであるMongoDBをご紹介します。 MongoDBとは MongoDBは高いパフォーマンスとスケーラビリティを特徴とするドキュメント指向型デー

    第31回 RubyistのためのMongoDB入門(1) | gihyo.jp
  • 連載:そろそろLDAPにしてみないか?|gihyo.jp … 技術評論社

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    連載:そろそろLDAPにしてみないか?|gihyo.jp … 技術評論社
  • 第4回 x86プロセッサにおけるプロセッサ仮想化 | gihyo.jp

    これまで、x86システム仮想マシンの概要、およびその実例としてDebian GNU/Linux 6.0を利用した仮想マシンの実行方法について紹介してきました。今回からは、より具体的にCPU、メモリ、I/Oデバイスの仮想化がどうやって実現されているかを解説したいと思います。 今回は、仮想マシンを実装するための古典的手法およびそれを従来のx86プロセッサに適用する際の問題点、そして仮想マシンソフトウェアがどのようにそれらの障壁を乗り越えてきたかについて解説します。 システム仮想マシンに求められる条件 これまで、システム仮想マシンはどのようなものかについて説明してきましたが、仮想化仮想化の生みの親とも言えるGoldbergらは、1974年に書いた論文にて、仮想マシンソフトウェアとはどのようなものであるべきかについて、コンピュータアーキテクチャの観点から論じています。 彼らは、その仮想マシンソフト

    第4回 x86プロセッサにおけるプロセッサ仮想化 | gihyo.jp
  • 第1回 Herokuを使ってFacebookアプリを作ろう | gihyo.jp

    まず、はじめに みなさん、こんにちは。これから「Herokuを使ってFacebookアプリを作ろう」というテーマで連載を書かせていただくことになりました。どうぞ、よろしくお願いします。私は、SonicGardenという組織の中でプログラマーとして、Ruby on Railsを利用してWebサービスを開発しています。 SonicGardenでは、SKIPやyouRoomというコミュニケーションサービスをSaaSとしてサービス提供しています。もちろん、この2つのサービスはRuby on Railsで作られています。 SKIP youRoom 現在、SonicGardenではRuby on RailsのホスティングサービスであるHerokuを非常に注目しています。海外でも非常に注目され始めています。また、SonicGardenではコミュニケーション系のウェブサービスを提供していることもありソーシ

    第1回 Herokuを使ってFacebookアプリを作ろう | gihyo.jp
  • 第4回 TitaniumでTwitterクライアント──OAuthを使ったAPI呼び出し | gihyo.jp

    第4回目の今回は、OAuthを使ったAPI呼び出しについて解説します。Twitter APIのほとんどはOAuthによる認証が必要となっており、OAuthはTwitterクライアントを作るには欠かせない技術の一つです。 投稿画面を作ろう 実際にOAuthの認証を始める前に投稿画面を先に作ってしまいましょう。初回のイメージに上げたように、画面右上に投稿画面を出すボタンを作成し、そのボタンが押されたら投稿画面が現れるようにしましょう。 var win1 = Ti.UI.currentWindow; var messageButton = Ti.UI.createButton( { systemButton: Titanium.UI.iPhone.SystemButton.ADD } ); messageButton.addEventListener( 'click', function ()

    第4回 TitaniumでTwitterクライアント──OAuthを使ったAPI呼び出し | gihyo.jp
  • 第2回 アクションを起こしてもらえるフォームのポイントは? | gihyo.jp

    使いやすいフォームをデザインする6つのポイント みなさんは、どのようにフォームをデザインしているでしょうか? CSSでスタイリングされていない素のHTMLフォームは、当然ですがデザイン性にとぼしいものです。また、入力エリアが狭いため、ユーザビリティも高いとは言えません。 フォームにはお問い合わせフォーム、申し込みフォーム、予約フォームなどいろいろありますが、共通するのは「ユーザーにアクションを起こしてもらう重要な要素である」ということです。しかし、フォームへの入力は、ユーザーにとって面倒な作業です。そのため、極力簡単に入力できるようにして、ユーザーの負荷を軽減する必要があります。 それでは、どうすればユーザーの負荷を軽減させることができるでしょうか? そのためのポイントが以下の6つです。 要素を整列させる 適度な余白をつくる ディテールを作り込む デザインされたボタンを使う 住所を自動入力

    第2回 アクションを起こしてもらえるフォームのポイントは? | gihyo.jp
  • FrocessingではじめるActionScriptドローイング 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    FrocessingではじめるActionScriptドローイング 記事一覧 | gihyo.jp
  • 第4回 JSDeferredを使いJSアプリのパフォーマンスを最適化する | gihyo.jp

    前回まででJSDeferredの基的な使いかたを説明しました。 今回は「非同期処理を簡単にする」から一歩進んで、既存アプリケーションの「非同期処理でパフォーマンス改善する」ことや、その他応用できる部分について説明します。 UIスレッド JavaScriptが担当するアプリケーションユーザインターフェイスの「はやさ」とはなんでしょうか? 単純に、最速で処理が終わることというのも一つですが、それを含めて最も重要なのは、ユーザにストレスを与えないことでしょう。多少実行速度が遅くても大抵待っていられますが、インターフェイスがなんの反応もしないと大きなストレスになります。 JavaScriptを実行するブラウザには、UIスレッドを呼ばれる、システム入出力を処理する流れがあります。JavaScriptは、その性質上どうしてもUIスレッド上で動かす必要があります(JavaScriptを実行中にページの

    第4回 JSDeferredを使いJSアプリのパフォーマンスを最適化する | gihyo.jp
  • 第7回 Google Chrome拡張とHTML5 #1 | gihyo.jp

    こんにちは、太田です。今回はGoogle Chrome拡張に使えるHTML5関連技術の解説をお送りします。 Google ChromeはWebKit(Safari)と連携して、HTML5とその周辺技術の実装を積極的に進めています。一般的なウェブサイトでは、互換性の問題からHTML5などの最新実装を積極的に使用することは困難ですが、Chrome拡張ではそういった問題にとらわれずに最新の技術を試すことができます。今回から数回はそういったHTML5関連の話題を取り上げます。 Chrome拡張で使えるHTML5 HTML5は2010年1月時点で策定途中の段階です。既に一部のブラウザで実装されている仕様であっても、(⁠実装によるフィードバックを受けて)仕様が修正される可能性があります。多くのブラウザで実装されていて実質的に確定している部分もありますが、まだほとんど実装されていない仕様や、実装はされた

    第7回 Google Chrome拡張とHTML5 #1 | gihyo.jp
  • 第2回 JSDeferredを用いたアプリケーション開発(その1) | gihyo.jp

    JSDeferredの基的な読みかた JSDeferredを使ったコードを読むときには、next() という関数がキーになっています。 リスト1 // next() のチェイン Deferred.next(function () { // 最初の next は Deferred.next alert(1); }). next(function () { // これは Deferred.prototype.next alert(2); }). next(function () { alert(3); }); 前回すこしばかり例を出しましたが、このように next を繋げていくことで処理の流れを表現します。 Deferred.next() と Deferred オブジェクトのメソッドとしての next() があることに注意してください。Deferred オブジェクトのメソッドとしての nex

    第2回 JSDeferredを用いたアプリケーション開発(その1) | gihyo.jp
  • 2010年のJavaScript:「これまで」と「これから」 | gihyo.jp

    2010年のJavaScriptと題しまして、JavaScript周辺の「これまで」と「これから」についてまとめてみたいと思います。 2009年までのJavaScript JavaScriptは各ブラウザベンダなどが個別に実装するという特殊性から、ブラウザ(実装)ごとの非互換性の問題に悩まされ続けてきた言語です。まず、そのJavaScript歴史を簡単に振り返ってみます。 ECMA-262 3rd editionとスピードコンテスト JavaScriptNetscape社によってLiveScriptという名前で誕生し、その後ECMAScriptとして標準化が進みました。1999年12月にECMA-262 3rd editionが策定されてから、Internet ExplorerのJScript、MozillaのSpiderMonkey(TraceMonkey⁠)⁠、SafariのJav

    2010年のJavaScript:「これまで」と「これから」 | gihyo.jp
  • #21 和田裕介(ゆーすけべー) | gihyo.jp

    今回の対談は、9 月10.11 日に開催されたYAPC::Asia 2009会場となった東京工業大学大岡山キャンパスにて実施。ゲストは、「⁠Twib」「⁠YourAVHost」(⁠注1⁠)⁠ などのサイトでお馴染みの、ゆーすけべーこと和田裕介さんです。袋綴(と)じこそ実施には至りませんでしたが、一部、いまだかつてないエロ度の対談になりました。 (撮影:武田康宏) Web開発に携わったきっかけ 弾:今回はWEB+DB PRESSで初めての袋綴じということで…(笑⁠)⁠。 ゆ:袋綴じって(笑⁠)⁠。 弾:さっそくですが、Web開発に携わったきっかけってなんですか? ゆ:僕は大学院まで行ってるんですけど[2]⁠、そのときの研究は、コンピュータをいじることではあったんですが、インタフェースとかアート寄りで、コンピュータは専門じゃなかったんです。で、卒業と同時に父親と会社をやり始めて[3]⁠。Web

    #21 和田裕介(ゆーすけべー) | gihyo.jp
  • 第2回 検索エンジンを形作るもの | gihyo.jp

    はじめに 前回は、検索エンジンとはどういうもなのか?について簡単に触れました。今回は、システムとしての検索エンジンの概要を見ていきます。 検索エンジンの構成 検索エンジンは他のシステムと同様に、複数のコンポーネントから構成されています。ざっくり分けると以下のようなコンポーネントから構成されています(図1⁠)⁠。 索引構築部(Indexer, インデクサー) 検索部(Searcher, サーチャー) 索引(Index, インデックス) 図1 検索エンジンの構成 たった3つ?と思うかもしれませんが、これは大きな枠組みで分けているからです。もちろん、各コンポーネントは複数のサブコンポーネントから構成されていますので、実際はもう少し複雑になりますが、基はこの構成となります。 次は、それぞれのコンポーネントで具体的に何を行っているかを見てみましょう。 各コンポーネントの概要 ●索引構築部(Inde

    第2回 検索エンジンを形作るもの | gihyo.jp
  • 第1回 Hello, Wicket | gihyo.jp

    Wicketとは WicketはApache Software Foundationで開発されている、Webアプリケーション開発用のフレームワークです。フレームワークにもさまざまなものがあり、それぞれ用途が異なります。Wicketの行うことは、ブラウザからのリクエストを受け付け、処理を振り分け、ページを生成してブラウザにレスポンスを返すことです。位置づけとしては、Apache Strutsと同じと考えれば良いでしょう。 Wicketの特徴 Wicketには他の多くのWebフレームワークとは異なる、大きな特徴があります。多くのWebフレームワークが、リクエストからレスポンスまでのフロー(流れ)をどのようにコントロールするか、という方針で作られているのに対して、Wicketは「Webページをページというオブジェクトとして扱い、オブジェクトを組み立てることでアプリケーションを構築する」という考え

    第1回 Hello, Wicket | gihyo.jp
  • 第1回 検索エンジンとは | gihyo.jp

    はじめに 検索エンジンと聞くと、みなさんは何を思い浮かべるでしょうか? GoogleYahoo!などの検索ページを思い浮かべる方がほとんどだと思います。近年は、それら企業の努力によって検索エンジンというものが非常に身近になり、私たちの生活に欠かせないものとなりつつあります。 しかし、検索エンジンと一言で言っても、上記のような一般の方々へのUI(ユーザインターフェース)を指す場合もあれば、そのUIの裏側(バックエンド)にあるシステムを指す場合もあります。 連載では、Google,Yahoo!などを代表とする検索エンジンの裏側のしくみに着目し、検索エンジンというシステムのアーキテクチャやその内部で使われているデータ構造やアルゴリズムを、近年の手法や研究事例などを交えて解説していきたいと思っています。 検索エンジンとは 検索エンジンには、さまざまな種類があります。GoogleのWeb検索のよ

    第1回 検索エンジンとは | gihyo.jp
  • 第3回 PHP 5.3の追加機能と仕様変更 (1) | gihyo.jp

    PHP 5.3では、目玉機能として説明した仕様の追加以外にも多くの変更が行われています。PHP 5.2とPHP 5.3の互換性はかなり高いですが注意が必要な変更もあります。 互換性に注意が必用な変更 モジュール関数のパラメータに互換性の無いデータ型を渡すと、NULLを返します。以前のPHPではFALSEを返していました。一部に例外があり、get_class()等ではFALSEを返します。 clearstatcache関数がデフォルトでrealpathキャッシュをクリアしなくなりました。 realpath関数がプラットフォームに依存しなくなりました。 call_user_func関数が親クラスからの呼び出しでも$thisが渡されるようになりました。 配列関数(natsort、natcaserot、usort、uksort、array_flip、array_unique)がオブジェクトを引数と

    第3回 PHP 5.3の追加機能と仕様変更 (1) | gihyo.jp
    fujimogn
    fujimogn 2009/07/29
  • 第2回 クロージャとgoto文 | gihyo.jp

    クロージャ クロージャとは関数の一種で、多くのスクリプト系言語がサポートしている機能です。PerlRubyPythonなど、モダンなスクリプト系言語すべてがサポートしています。JavaScriptもクロージャをサポートしいます。JavaScriptプログラミングではクロージャがよく利用されるので使い方をご存知の方も多いと思います。 クロージャは関数がアクセス可能な変数が、環境によって決まります。この特徴を利用してオブジェクト指向設計よりも分かりやすい設計が行えたり、呼び出された関数の内部から呼び出すコールバック関数として様々な動作を行わせることが出来ます。 クロージャの使い方 クロージャはラムダ関数、無名関数と呼ばれることもあります。無名関数の名前の通りクロージャは名前が無い関数を定義して利用します。 クロージャに慣れていない方は、名前が無い関数をどうやって使うのか?どうして便利なのか

    第2回 クロージャとgoto文 | gihyo.jp