Code Archive Skip to content Google About Google Privacy Terms
App Engine 1.3.4でOpenID認証に対応しました。調べてみると意外と普通にシングルサインオンできたので、使い方と仕組みを説明します。 まず、OpenID認証を要求するURLパターンをweb.xmlに書きます。 <security-constraint> <web-resource-collection> <web-resource-name>Authentication required url</web-resource-name> <url-pattern>/user/*</url-pattern> </web-resource-collection> <auth-constraint> <role-name>*</role-name> </auth-constraint> </security-constraint> 例えば http://xxx.appspot.co
The following libraries are available to assist with the implementation of an OpenID Identity Server and Consumer. The libraries in this section are intended to help with handling all of the details specific to OpenID and leaving you to provide the glue to integrate it into your site. Note: these are libraries for consumer and/or server. Look in the standalone server area for links to OpenID serve
オブジェクト指向はしばしば,とっつきづらく難しい技術と言われます。その理由の一つには,対象とする分野が広く,それぞれに深みがあることが挙げられます。しかし,それ以上にこの技術を難しくしている落とし穴とも言うべき原因が二つあると筆者は考えています。それは比喩を乱用する説明の仕方の問題と,「もの中心」を意味するコンセプト自体の問題です。 そこで本特集では,「オブジェクト指向という言葉をよく聞くけど,実際どんなものかよくわからない」という方のために,初心者/入門者が陥りやすい落とし穴を明確にしながら,オブジェクト指向の全体像を説明します。余計な先入観やまぎらわしいたとえ話に惑わされなければ,オブジェクト指向そのものはそれほど難しい技術ではないことを理解していただきたいと思います。なお,オブジェクト指向プログラミング,デザインパターン,分析/設計といった個々の技術については特集2以降でそれぞれ解説
多言語に対応したWebサイトを構築する場合、サーバサイドで対応するのが一般的だった。例えばGetTextを使った国際化処理が有名だ。サーバサイドで処理をできるのは手軽な反面、言語ごとにリソースを消費してしまうのが問題だ。 JavaScriptで国際化を行う 結局のところ、国際化とは見た目の話でしかない。であれば見た目を操作するのに向いたJavaScriptで行わせるというのはあながち間違っていないかもしれない。 今回紹介するオープンソース・ソフトウェアはjquery.localize.js、jQueryを使った国際化ライブラリだ。 jquery.localize.jsはrel="localize[hoge]"といった要素で国際化する際のキーを指定する(この場合hogeがキーになる)。そして別途JSONファイルを用意し、hogeに対応した各国語の文字列を指定する。後は読み込み時にjquery
HTML5ではWebブラウザ内にSQLite3が組み込まれ、データベースが使えるようになる。既にHTML5に一部対応しているSafari(iPhone含む)ではブラウザ内部にデータベースを持っている。これを使えばGearsのような操作が可能になる。 データベースを使ったサンプル JavaScriptから使うデータベースなので、使う場所はきちんと考える必要があるだろう。使う方法はAlex Frameworkを利用すれば良い。 今回紹介するオープンソース・ソフトウェアはAlex Framework、HTML5に向けたJavaScriptフレームワークだ。 Alex FrameworkはWebブラウザ内部で使えるデータベース向けO/Rマッパーを提供している。これを使えばサーバサイドからデータをダウンロードし、クライアントで参照したり、加工するのがとても簡単になる。使い方が簡単であれば、実際に利用
Google Code PrettifyはJavaScript/CSS製のオープンソース・ソフトウェア。Google Codeではリポジトリにあるソースコードをオンラインで閲覧する機能がある。多様な言語に対応しており、色づけによってソースコードの閲覧が容易になる。 JavaScriptの正規表現 そんなハイライトライブラリがGoogle Code Prettifyだ。Google Codeに限らず容易に使えるインタフェースが提供されているので、任意のソフトウェアやブログに組み込むことが出来るだろう。標準で多数の言語に対応していることもメリットの一つだ。 対応している言語はCSS/Bash/C/C++/Java/JavaScript/Perl/Python/SQL/XML/HTML/XHTML/XSL/WhiteSpace/Lua/VBScript/Haskell/OCaml/Lisp/Sq
Code IlluminatedはWebベース、JavaScript製のオープンソース・ソフトウェア。開発者にとってシステムのソースコードを直接見られるというのは貴重だ。ライブラリの操作が分からないとき、どのように処理をしているのか気になった時にソースコードが見られれば簡単に解決する。 ハイライト表示されると見やすい しかし単なるソースコードのファイルだけが置いてあるのでは利便性が高いとは言いがたい。見やすくなっていてこそ、使いたいと思えるものだろう。JavaであればJavaDoc、PHP用のPHPDocumentorも知られているが、これらは書き方を習得するのが面倒に感じてしまう。JavaScriptに限定されるがCode Illuminatedはなかなかユニークなソースコードビューワーだ。 Code Illuminatedは左にクラスの説明やメソッドに関する説明がされ、右側にソースコー
GoはGoogleが中心となってオープンソースで開発が進んでいるプログラミング言語です。いろいろなプログラミング言語の良いところを採り入れたGoは、様々な“顔”を持っています。Go言語の生まれた背景や特徴などについて、グーグルのソフトウェアエンジニアである鵜飼文敏氏にお話を伺いました。 Goが生まれた経緯や背景について教えてください。 Googleの中には検索エンジンや「Google App Engine」など、様々なサーバーがたくさんあるのですが、その中でスピードを要求する部分ではC++を使っています。ただ、C++は実行速度は速いのですが、ビルドに非常に時間がかかります。社内では分散コンパイル環境を作っていますが、仮に検索エンジンのサーバーを1台のマシンでビルドしようとすると、1日くらいの単位で時間を見ておかなければなりません。CPUなどが速くなっているのにコンパイルが遅いというのは何か
書籍転載 文法からはじめるプログラミング言語Microsoft Visual C++入門 C++のクラスをマスターしよう(前編) ―― 第10章 クラス~オブジェクト指向プログラミング(前編) ―― WINGSプロジェクト 矢吹 太朗(監修 山田 祥寛) 2010/05/19 本コーナーは、日経BPソフトプレス発行の書籍『文法からはじめるプログラミング言語Microsoft Visual C++入門』の中から、特にInsider.NET読者に有用だと考えられる章や個所をInsider.NET編集部が選び、同社の許可を得て転載したものです。基本的に元の文章をそのまま転載していますが、レイアウト上の理由などで文章の記述を変更している部分(例:「上の図」など)や、図の位置などを本サイトのデザインに合わせている部分が若干ありますので、ご了承ください。『文法からはじめるプログラミング言語Micros
こんにちは、太田です。前回はJavaScriptの基礎的な部分を解説しました。今回はJavaScriptのクロージャについて解説します。クロージャはJavaScriptでは使用頻度が高く(意識して使用していなくとも、ほとんどの場合クロージャが使われています)、今後の連載の中でも積極的に使っていきますのでここで確実に理解してしまいましょう。 クロージャとは クロージャはその定義を説明されてもなかなか理解できないため、難しいものだと思われがちです。しかし、ソースコードを中心に見方を少し工夫すればすんなりと理解できると思います。 さて、クロージャの前に確認しておくべき基本事項があります。それは、JavaScriptでは関数を入れ子にできる、という点です。ある関数の中に別の関数を定義することができます。基本中の基本ですが、これがクロージャにおいてもっとも重要です。 では、それを踏まえて次のコー
この記事で分かること ソフトウェアのバージョン表記が示す開発段階や数字の意味 Alpha(アルファ)やBeta(ベータ)、その他特定の数字の意味 マーケティング戦略などに左右されたバージョンアップの例 ちまたにあふれるバージョン表記 少し前に「Web 2.0」「○○2.0」という表記が流行したのを覚えていますでしょうか。よく見かける広告のコピーにも、最近では「バージョンアップ」という言葉が普通に使われています。バージョンや、バージョン表記は、ソフトウェアの世界だけでなく、ごくごく一般化したように思えます。しかし実際には、どういう意味か分からないのが、バージョン表記です。 アプリケーションソフトウェアの開発は、さまざまな状態/段階を経て完成します。その段階/状態と、リリース後の状態/段階を示したのが、バージョン表記です。 例えば、数字以外でも、以下のような表記を見かけたことはありませんか?
Webアプリにおける11の脆弱性の常識と対策:Webアプリの常識をJSPとStrutsで身につける(11)(1/4 ページ) 本連載は、JSP/サーブレット+StrutsのWebアプリケーション開発を通じて、Java言語以外(PHPやASP.NET、Ruby on Railsなど)の開発にも通用するWebアプリケーション全般の広い知識・常識を身に付けるための連載です 【2013年2月25日】編集部より、おわびと訂正のお知らせ 本稿において読者の皆さまより多数のご指摘をいただきまして、誠にありがとうございます。編集部であらためて調べた結果、間違いを把握し、あらためて修正版を掲載させていただきます。この度は、長期にわたり誤った内容を掲載したので、読者の皆さまに多大なご迷惑をお掛けしたした点をおわび申し上げます。 通常、記事に間違いがあった場合には、筆者確認後に修正版を掲載するのですが、今回の場
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く