タグ

ブックマーク / codezine.jp (323)

  • http://codezine.jp/a/article/aid/1616.aspx

  • 例外処理とロギングのベストプラクティス:CodeZine

    はじめに システム開発において例外処理は重要なポイントですが、あまりに軽視されているのが現状ではないでしょうか。稿では、これまでの著者の開発経験の中から培った汎用的な手法を説明します。 この記事は「美しい設計」ではなく「現実的な設計」、現場に適用できる「できるだけ手間の少なく、汎用的な設計」を目指しています。 対象読者 J2EE開発者・アーキテクト。特に業務システムの開発現場の方が対象です。 必要な環境 概念の説明が中心ですので、開発環境は必要ありません。 エラーの分類 実装時に考慮すべきエラーは2つに大別できます。 想定内でトランザクションの実行開始前にチェックするエラー。主に入力エラー。 異常な状態としてトランザクションの続行が不可能なエラー(例外)。 前者については、例外を使うべきではありません。入力チェックエラーを表現するには、ステータスコードを使うべきです

  • iアプリ版「モバイルGoogleマップ」リリース:CodeZine

    Googleは21日、iアプリで動作する「モバイルGoogleマップ」をリリースした。iアプリは無料でダウンロードできる。利用にあたっては別途パケット料金が必要。 モバイルGoogleマップはJavaを利用することで、地図のスクロール・拡大・縮小をスムーズに行うことができ、現在Web版として提供している「モバイルGoogleローカル」よりも軽快に操作することが可能。地図だけでなく航空写真や地域のビジネス情報を参照することができる。 モバイルGoogleマップは、DoJa 5.0プロファイルをサポートしているNTT DoCoMo 903i以降の機種で利用可能となっている。 モバイルGoogleマップ

    t_43z
    t_43z 2007/08/21
  • Javassistでクラスのバイトコードを直接書き換える:CodeZine

    はじめに Javaのクラスファイルというのは、ソースコードからコンパイルして作成する――これが、長い間の常識でした。しかし昨今、この常識を覆すような技術が次々と登場しています。最近のフレームワークなどを見ていて、ふと不思議に思ったことはありませんか? XMLで必要な情報を定義すると、自動的にそのクラスが生成されたり、既にあるクラスの機能が書き換わったりする。プログラマがソースコードを書くこともなく、必要なクラスが作成されてしまう。そうした「クラスの自動生成」の技術を大幅に進歩させたのが「クラスのバイトコードを直接書き換える」技術です。対象読者Javaを使ったプログラム作成を行っている中級レベルのプログラマ。クラスのバイトコード操作について興味のあるひと。同じようなBeanクラスをひたすら作り続けるのに、いい加減、嫌気がさしている人。 クラス生成の新しい形とは? 最近のフレームワークなどでは

  • 「Windows Live認証機能を手軽に導入」 MS、6つの言語に対応したSDKを無償公開:CodeZine

    MicrosoftWindows Live認証機能をWebサイトに設置できるライブラリ「Windows Live ID Web Authentication 1.0 SDK」を公開した。ダウンロードセンターより無償でダウンロードできる。 Webサイト上でIDとパスワードを使った認証機能を導入しようとした場合、IDの発行や管理、ユーザ増加によるシステム負荷、安全性を保つための技術開発など、さまざまな手間がかかってしまう。「Windows Live ID Web Authentication 1.0 SDK」を使うことで、この認証機能を全てWindows Live認証機能に肩代わりさせることができ、これによりWebサイト構築時の開発コストを下げることが可能になる。 SDKはASP.NET(C#)、JavaPerlPHPPythonRubyの6言語が用意されており、Windows

    t_43z
    t_43z 2007/08/20
    「ASP.NET(C#)、Java、Perl、PHP、Python、Rubyの6言語が用意されており、Windows XP、Vista、Linuxの各OSをサポート」
  • サーバサイドJava入門 Java DBによるデータベースアクセス:CodeZine

    はじめに サーバサイドで各種のデータを管理する場合、テキストファイルなどで済ませるケースはあまり多くないでしょう。やはり、ある程度以上の規模ともなれば、データベースで管理をすることになります。一般的には「SQL(Structured Query Language)」と呼ばれる問い合わせ言語を使ってデータベースに問い合わせを行うタイプのものが多用されます。このデータベースにSQLを使ってデータアクセスをする方法について説明をしていくことにしましょう。対象読者Javaの基(文法全般および基的なクラスライブラリの使い方程度)をマスターしている人。サーバサイド(JSP、サーブレット)について基礎から勉強したい人。Eclipse WTPを使った開発に興味がある人。 Java DBの利用について SQLに対応したデータベースは多数存在します。ここでは、Java 6よりJDKに標準で組み込まれること

  • MySQLのシステムアーキテクチャ:CodeZine

    SQLを使う業務では分析関数を使いこなすと、生産性とSQLの可読性とパフォーマンスを、大きく向上させることができます。分析関数を使う際の考え方と、処理のイメージを解説します。今回は総集編として、前編、中編、後編、完結編に関連した内容を扱います。

    t_43z
    t_43z 2007/08/09
  • JavaScriptでDOMレンジを扱う:CodeZine

    japan.internet.com は、1999年9月にオープンした、日初のネットビジネス専門ニュースサイト。月間2億以上のページビューを誇る米国 Jupitermedia Corporation (Nasdaq: JUPM) のニュースサイト internet.com や EarthWeb.com からの最新記事を日語に翻訳して掲載するとともに、日独自のネットビジネス関連記事やレポートを配信。

  • Google Web APIsを使用したEclipseのプラグインの作成:CodeZine

    はじめに Eclipseにはいろいろ便利なプラグインがあり、Javaの開発環境として非常に普及していますが、そのプラグイン自体の開発方法はまだ書籍も少なく、ネットにも情報が少ないのが現状だと思います。そこで稿では、「Web Services経由でGoogle検索を行うEclipseプラグイン」の作成を通じて、Eclipseプラグイン開発の基的な流れを紹介したいと思います。過去の記事第1回:Webサービスを利用したEclipseプラグインの作成第2回:Webサービスを利用したEclipseプラグインの作成 対象読者Eclipseプラグインの開発に興味がある方。 必要な環境 今回は以下の環境で開発・確認を行っています。

  • CodeZine:DeNAの人気サイトに学ぶ LAMPによるWeb-DBシステム構築/運用の極意(前編)(モバオク, モバゲー)

    シングルマスタの非同期レプリケーション機能では、マスタサーバーが1台に限定され、マスタからスレーブへの複製は非同期で行なわれるため遅延が生じ、短時間のスケールで見ると全スレーブとの同期が保証されない。しかし、その反面スレーブの台数を増加させていってもマスタサーバーの更新負荷は大きくならず、スケーラビリティを維持できるという利点がある。DeNAによる運用実績でも、マスタとスレーブ間の遅延は通常数秒程度以内に収まる。 このレプリケーションを利用する場合、アプリケーション側ではデータ更新時にはマスタサーバーへ接続し、データ参照のみを行なう場合はスレーブサーバーへ接続するように作成する必要がある。 Webや携帯電話向けサービスの場合、小さな規模で始めてユーザー規模、データ規模、ページビュー数を徐々に増加させていくことが多い。小さな規模のためDBの負荷分散が不要な場合でも、マスタサーバー1台、スレー

    t_43z
    t_43z 2007/08/01
    「MySQLのスレーブサーバーだけでも、モバオクは約50台、モバゲータウンは約200台を運用している。このような大規模システムであるが、各サービスとも5人程度のメンバーで開発/運用両面を担当している。」
  • Adobe製、AjaxでFLVを制御するオープンソース「Flash-Ajax Video Component」:CodeZine

    Adobeは27日、Adobe Labsを通じて「Flash-Ajax Video Component」を公開した。BSDライセンスのオープンソースとして提供されており、サンプルソースをダウンロードすることもできる。なお、実行にあたってはFlashのグローバルセキュリティ設定の「許可」が求められる場合がある。 「Flash-Ajax Video Component」は、FLV(Flashビデオファイル)の実行をHTMLJavaScriptのみで制御するコンポーネント。呼び出し側の制御に従い、コンポーネントがFLVを操作する。WebサイトにおけるFLVの実行はswfファイルを通じて行われることが多いが、このコンポーネントを使うことで、HTMLベースのWebサイトにおいても、Flashビデオを再生するのが容易になる。 サンプルソース 「favideo_072707.zip」にはサンプル

  • サーバサイドJava入門 カスタムタグの使い方:CodeZine

    はじめに 今回は、より複雑なGUIを汎用的な部品として簡単に作成できるようにする「カスタムタグ」について説明をしましょう。カスタムタグは、主にGUIを汎用的に再利用できるようにする仕組みです。タグに関する情報を記述したXMLファイルとクラスファイルを定義するだけで利用可能になります。対象読者Javaの基(文法全般および基的なクラスライブラリの使い方程度)をマスターしている人。サーバサイド(JSP、サーブレット)について基礎から勉強したい人。Eclipse WTPを使った開発に興味がある人。 カスタムタグとは? JSPとサーブレットを連携して利用するようになってくると、表示関係はJSP、処理関係はサーブレット、といった使い分けをするようになってきます。となると、次の段階は「汎用性のあるGUIの部品化」になってくるでしょう。 JSPは、その場で必要に応じてダイナミックに表示を生成することが

  • CodeZine:携帯シミュレータ入門(開発ツール, まとめ)

    はじめに 携帯サイトは、PCのWebブラウザではテストできません。携帯のWebブラウザにはさまざまな機種依存仕様があるからです。マークアップ言語の違い(HTML/HDML)絵文字表示可能な画像形式(gif/png/jpg、カラー/モノクロ、色数、サイズ)受信サイズアクセスキー  これらは携帯の実機でテストする必要がありますが、開発中に携帯の実機でテストをするのは大変です。実機ではソースを見ることもできませんし、経費もかかります。 そこで携帯シミュレータの出番です。すべての機種依存仕様を正確にシミュレートできるわけではありませんが、上記のうち、1. 、2. 、5. をテストすることができます。稿では、携帯サイトの開発に必須となる携帯シミュレータの紹介と、使用上のポイントを説明します。対象読者 携帯向けWebサイトの開発者必要な環境 Windows 2000/XP携帯シミュレータ一覧 携帯シ

  • Google AJAX Search APIにイメージ検索できるAPIが追加:CodeZine

    GoogleはAJAX Search APIにイメージ検索用のAPIを追加した。APIを利用した検索ツールはWebサイトやブログに設置することができる。また、他のAPIと組み合わせることで簡単にマッシュアップできるようにもなっている。 <link href="http://www.google.com/uds/css/gsearch.css" type="text/css" rel="stylesheet"/> <script src="http://www.google.com/uds/api?file=uds.js&v=1.0" type="text/javascript"></script> <script type="text/javascript"> function OnLoad() { var searchControl = new GSearchContr

  • L2Lisp in Ruby:CodeZine

    はじめに P.Graham著『On Lisp』に示されているように、現代的なLispプログラミングでは静的スコープ(字句的スコープ)と末尾呼出し(末尾再帰を含む)の最適化のもとでのマクロが重要な意味をもちます。しかし、今まで処理系作成の初心者が内部に手を入れやすい手頃な大きさの実装が事実上ありませんでした。 ここでは、そういったモダンな特徴を備えた小さなLispインタープリタL2LispをRubyで作ってみます。L2Lisp(Little Lambda Lisp)は、Lispの理論的背景であるラムダ算法(lambda calculus)に対し、有力なLisp方言であるSchemeと同程度に忠実である一方、その他の点では広く普及しているEmacs Lispのサブセットとしたオリジナルの小型Lispです。 実行例としてtak関数を定義し、実行する様子を示します。Ruby以外に必要なのはL2Li

  • CodeZine:サーバサイドJava入門 JSP〜サーブレット〜Beanを相互利用する(JSP, サーブレット)

  • CodeZine:漢字変換しなくてもページ内の日本語が検索できるFirefox拡張機能「XUL/Migemo」(アドオン)

    「XUL/Migemo」は、半角アルファベット入力のまま、ページ内の漢字やひらがな、カタカナを検索できるFirefox拡張機能だ。14日に「XUL/Migemo 0.7.4」がリリースされた。Firefox Add-onsより入手することができる。 XUL/Migemoを使うと「kanzi」と入力するだけで、そのまま「漢字」「感じ」「幹事」「かんじ」「カンジ」といった日語文字をページ内検索することができるようになる。「すべてを強調表示」させたり、「ハイライト表示」させたりするオプションも備わっている。 XUL/Migemoは、検索バー右端にある「Migemo」にチェックを入れると有効になる。また、アドオンの設定で最初から有効にしておくことも可能となっている。 Firefox Add-ons:XUL/Migemo

  • XMLDBとJavaAPI、JAXB2.0を活用したWebアプリケーション開発(実装編) :CodeZine

    はじめに 前回は、APIチュートリアル編として、サンプルアプリケーションで主に使用するJAXB API(クラス・アノテーション)とCyber Luxeon Java APIについて説明しました。実装編となる稿では前回説明したAPIを用いて、XMLDBのCRUD(生成・抽出・更新・削除)処理を中心としたサンプルアプリケーションを実装していきます。過去の記事第1回:XMLDBとCyber Luxeonの基第2回:XMLデータの操作(前編) ~ XPath、XQuery第3回:XMLデータの操作(後編) ~ XML updategramの基第4回:XMLDBJavaAPI、JAXB2.0を活用したWebアプリケーション開発(設計編)第5回:XMLDBJavaAPI、JAXB2.0を活用したWebアプリケーション開発(APIチュートリアル編) 対象読者 XMLに触れたことがある方、RDB

  • 最先端プラットフォーム「Silverlight」を使ってみよう:CodeZine

    はじめに リッチクライアント技術が数多く発表される中、その姿を現した「Silverlight」という新しいプラットフォームは、開発コード「WPF/E(Windows Presentation Foundation/Everywhere)」で呼ばれており、同様の新技術である「WPF(Windows Presentation Foundation)」のサブセットとして誕生しました。そのため、WPFと同様に「XAML(Extensible Application Markup Language):ザムル」というXMLベースのプレゼンテーション記述言語を使用する次世代のリッチクライアント言語と呼ばれています。 Silverlightはまだバージョン1.0がBeta版、1.1がAlpha版であるため、今後大きく変わっていくことが予想されますが、現時点でも十分な魅力を備えていますので、それらを少しでも

  • サーバサイドJava入門 サーブレットの実装とWARファイルの作成:CodeZine

    はじめに 今回は、「サーブレット」についての説明を行います。サーブレットとは、サーバで動く小さなプログラム。このサーブレットこそ、JavaでWeb開発を行う際の最も基となるものといっていいでしょう。というより、実をいえば今まで説明してきたJSPも、その正体は「サーブレット」だったりするのですから。過去の記事第1回:TomcatとEclipse WTPの導入手順第2回:JSPを使ったサーバサイド処理の基第3回:フォームデータの取り扱いとページ遷移の基第4回:ログイン処理とサイト攻撃対策の基礎 対象読者Javaの基(文法全般および基的なクラスライブラリの使い方程度)をマスターしている人。サーバサイド(JSP、サーブレット)について基礎から勉強したい人。Eclipse WTPを使った開発に興味がある人。 JSPからサーブレットへ! 前回まで、JSPの基的な利用について説明を行ってきま