タグ

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

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

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

  • あなたが学ぶべき10の現代実用プログラミング言語:CodeZine

    はじめに Webベースのアプリケーションや、Webベースで機能するサービス、加えてJavaや.NETのような物理的なシステムを抽象化するプラットフォームの台頭によって、現在のアプリケーション開発は環境によってアプローチが大きく異なり、それに伴って様々なプログラミング言語が使われるようになっています。 ネイティブの実行ファイルを対象としたアプリケーション開発であれば、古くから使われているC言語やC++言語が今でも主流です。しかしながら、Webアプリケーション開発ではPerlPHPRubyPythonなどの組み込み可能なスクリプト言語が人気です。Ajaxを代表としたブラウザ内で動作するクライアントベースのWebアプリケーションであればJavaScriptが駆使されることになります。 仮想システムを対象としたアプリケーション開発には、仮想システム専用の言語が使われます。Javaアプリケーシ

  • JavaFXによるGUIアプリケーションの作成:CodeZine

    はじめに JavaによるGUIアプリケーション開発を一気に加速するといわれるJavaFX。前評判は上々のようですが、果たしてそんなに簡単にGUIが作れるものなのでしょうか。既に利用可能なOpenJFXを使って、JavaFXがどれほどのものか、確かめてみましょう。対象読者Javaを使ったプログラム作成を行っている中級レベルのプログラマ。GUIを使ったアプリケーション開発を行っている人。次期Java 7に大いなる興味を持っている人。 JavaFXとは何か? 今年のJavaOneでは、次期Java 7に向けての新技術がいろいろとお目見えになりました。中でも注目度が高かったのが「JavaFX」ではないでしょうか。JavaFXは、「Javaプラットフォーム上で動作するRIA(Rich Internet Application)技術」といわれています。RIAと言うとFlashやAJAXのようなものが思

  • iBATISを使ったO/RマッピングによるDBアクセスの実例 2:CodeZine

    はじめに iBATISはSQLを利用することに注力したフレームワークです。高機能なO/Rマッピングフレームワークに比べて簡単に理解でき、レガシーなJDBC、ResultSetを使ったプログラミングから簡単に乗り換えられます。 特にSQLを多用する人には使いやすいフレームワークです。 この記事は前回の「iBATISを使ったO/RマッピングによるDBアクセスの実例」の続編です。前回はSELECT、INSERT、UPDATE、DELETEの基的な記述方法についてサンプルを紹介しました。今回はSELECT文に注目し、検索結果のマッピングと動的SQLの記述方法について説明します。 iBATISの基的な内容は、前回の記事を参考にしていただけると、分かりやすいと思います。対象読者Javaの基をマスターしている人SQL文を理解している人 必要な環境 iBATIS 2.3.0、J2SE 5.0の環境を

  • Amazon Web ServiceとMavenで開発する蔵書管理システム:CodeZine

    はじめに Amazon Web Serviceを利用した蔵書管理システムの開発を通して、以下の技術の利用方法を紹介します。Amazon Web ServiceApache Mavenと各種PluginJAXBによるXML Data→Java Objectへの変換Spring Framework、HibernateによるDAOの開発Web ServiceとDAOを統合したFacadeの開発BarracudaMVCによるWeb Applicationの開発  この回では、以下のテーマを紹介します。Amazon Web Serviceの登録ID(Subscription ID)の取得Mavenによる開発環境の構築Amazon Web Serviceへのアクセス  なお、Amazon Web ServiceやMavenに関する情報は、「参考資料」で紹介しています。対象読者中級レベルのJava開発者

  • Java開発者のためのRubyガイド:CodeZine

    Builderパターンは、Template Methodパターンによく似ています。Template Methodパターンとの大きな違いは、その目的がオブジェクトを生成することであり、アルゴリズムを実行することではないという点です。Builderパターンは、役割分担を明確にするだけでなく、インターフェイスと実装の分離を実現する代表的な事例であり、パターンを使用しない場合に起こりうる重複をかなりの程度防ぐことができます。

  • サーバサイドJava入門 ログイン処理とサイト攻撃対策の基礎:CodeZine

    はじめに 今回は、ブラウザに情報を保管するクッキーと、クライアントとの連続した接続を確保するセッションについて、その働きと使い方を学習します。また、ある程度プログラムが作れるようになってきたら、サイト攻撃への対応についても考えなければいけません。最も基とも言えるXSS攻撃関係の対応について簡単にまとめておきましょう。過去の記事第1回:TomcatとEclipse WTPの導入手順第2回:JSPを使ったサーバサイド処理の基第3回:サーバサイドJava入門 フォームデータの取り扱いとページ遷移の基 対象読者Javaの基(文法全般および基的なクラスライブラリの使い方程度)をマスターしている人。サーバサイド(JSP、サーブレット)について基礎から勉強したい人。Eclipse WTPを使った開発に興味がある人。 セッションとは何か? 前回までで、フォームを使ったデータのやり取りの基は大体

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

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

  • Adobe AIR開発もサポートしたフリーの開発環境「Aptana IDE」:CodeZine

    統合開発環境のAptana IDEは10日にバージョンアップを行い、Adobe AIR開発についてもサポートした。Aptana IDEはWebサイトより無償でダウンロードすることができる。なお、別途Adobe AIR SDKをインストールしておく必要がある。 Aptana IDEはEclipse RCPをベースとした統合開発環境。当初はJavaScriptや、HTMLなどの編集機能を持ったIDEだったが、Ruby on Rails用のプラグインが公開されるなど、サポートする言語の幅を大きく広げている。今回のAIRについてもプラグインという形で提供された。 Aptanaは単体で起動する「Aptana IDE」版と、Eclipseのプラグイン版の2種類が用意されている。AIRプラグインに関しては、Aptana IDEの場合はIDE起動後ホームページを通じて、Eclipseの場合は下記のURL

  • iBATISを使ったO/RマッピングによるDBアクセスの実例:CodeZine

    はじめに iBATISはSQLを利用することに注力したフレームワークです。高機能なO/Rマッピングフレームワークに比べて簡単に理解でき、レガシーなJDBC、ResultSetを使ったプログラミングから簡単に乗り換えられます。 特にSQLを多用する人には使いやすいフレームワークです。SQLは使いたいがJDBCは低レベルすぎる高機能なO/Rマッピングフレームワークは難しすぎるソースコードからSQLを分離したいが動的なSQLの実装も必要  このようなケースで、iBATISは特に有効です。 記事では、たくさんのサンプルソースを解説することで、「iBATISを使えばこんな風に書ける」ということが分かるようにしています。環境設定や、設定ファイルについての細かい説明は簡略化してあります。対象読者Javaの基をマスターしている人SQL文を理解している人 必要な環境 iBATIS 2.3.0、J2SE

  • サーバサイドJava入門 TomcatとEclipse WTPの導入手順:CodeZine

    はじめに 現在、最も広くJavaが使われているのは「サーバ」の世界です。Javaの基礎は一通りわかった、次はサーバサイドだ――そう思ってやってみようとすると、これが以外に大変。サーバのプログラムはどうする? サーバ用のJavaってどうやって作る? 公開は? なかなか一筋縄ではいきません。 そんな「サーバサイド・ビギナー」のために、サーバサイド開発のための基的な機能を一通りそろえたオープンソースの開発環境「Eclipse Web Tools Platform(WTP)」を使い、サーバサイドの講座を始めることとしました。「Javaは一通りわかったけど、サーバサイドって?」というあなた、一緒にサーバの世界を勉強していきましょう。対象読者Javaの基(文法全般および基的なクラスライブラリの使い方程度)をマスターしている人。サーバサイド(JSP、サーブレット)について基礎から勉強したい人。Ec

  • 日はまた昇る「Javaアプレット」をもう一度:CodeZine

    はじめに 「Javaアプレットなんて、もう誰も使っていない。いまさら何を…」と思ってはいませんか。 近年、Ajaxの発見によるJavaScriptの再評価は目覚ましいものがあります。コンピュータ言語学に詳しい技術者たちの間では、JavaScriptが高度なオブジェクト指向を備えている事実が知られていましたが、その能力を十分に活用した実装はほとんど見られませんでした。ところが、Ajaxが一般に周知されて以来、高度なJavaScriptライブラリも次々と登場し、多くの技術者がJavaScriptに再び注目しています。 余談になりますがLispのような古い関数型言語もまた、ここ数年で実用的な言語として再評価されるなど、このほかにも過去の技術が再浮上する例はいくつもあります。 稿を書くきっかけとなったのは、こうしたAjaxブームの中で再浮上したJavaScriptを目の当たりにして、かつてインタ

  • プラグインで拡張できるJavaプログラムを作る:CodeZine

    はじめに 最近のプログラムの多くは、最初から機能がすべて確定したものではなく、後からプログラマが拡張していけるような形をとるようになってきています。この種のプログラムでよく用いられるのが「プラグイン」でしょう。仕様にそって作成すれば誰でもプラグインを作り機能を拡張していくことができるというのはなかなか魅力的です。そこで、Javaプログラムでこうした「プラグインによる機能拡張」を実装する方法について考えてみることにしましょう。対象読者Javaを使ったプログラム作成を行っている中級レベルのプログラマ。プラグイン型のプログラム拡張に興味がある方。 プラグインによるプログラム拡張とは? 多くのプログラムでは、プラグインと呼ばれるプログラムを作成することで機能を拡張することができます。このプラグインというのは、大抵の場合、次のような働きをします。あらかじめ用意されている仕様に沿ってプログラムを作成す

  • インターネットアプリケーションの新しいフレームワーク「Guise」:CodeZine

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

  • ECサイト構築オープンソース「EC-CUBE 1.3.0」正式版リリース:CodeZine

    株式会社ロックオンは26日、ECサイト構築システムのオープンソース「EC-CUBE 1.3.0」正式版がリリースした。同社のWebページから無償でダウンロードできる。 EC-CUBEは、ASP型の手軽さと開発型のカスタマイズ性を持ったECサイト構築システム。商品一覧・詳細ページやユーザーレビューといったフロント部分、ショッピングカートやポイントといった商品購入部分、会員登録や注文履歴一覧表示といったアカウント部分など、ECサイトに必要な機能を一通り提供する。 また、管理者にとっても在庫管理、受注管理、売り上げ管理などを行う機能があらかじめ用意されており、円滑なECサイト運営をすぐに行うことができる。 EC-CUBE 1.3.0では、以前よりベータ版として搭載されていた「対モバイル機能」に正式対応した。モバイルは3キャリアに対応し、端末ごとに最適な画像サイズに自動変換する機能などを持つ。

  • Javaで3つの値を持つMapを作成する:CodeZine

    今回は、メニューからグラフの種類を変更できるようにします。これまでは、3D縦棒グラフでデータを表示していましたが、グラフの種類を折れ線グラフと円グラフに変えられるようにします。

  • Javaにおけるイメージのフィルタ処理:CodeZine

    はじめに イメージの加工については、単純に描画を組み合わせる方法の他に、イメージ全体の色値を特定の方法に従って変換する、いわゆるフィルタ処理があります。フィルタ処理は、そのための機能を提供するクラスがいくつか用意されています。それらの使い方を理解することで、ごく基的なフィルタ処理を実装できます。今回は、フィルタ処理全般について説明を行うことにします。過去の記事第1回 JSP/サーブレットでイメージを生成する第2回 Graphics2Dによる描画第3回 サーバサイドJavaにおける画像ファイルの読み書き 対象読者Javaの基およびJavaによるWeb開発の基礎(JSP/サーブレット程度)をマスターしている人。グラフィック関連のプログラミング経験があまりない人。Javaのグラフィック処理を学び直したい人。 イメージをセピア色にする イメージの加工と言うと、形状の加工の他に、イメージの状態に

  • CodeZine:「超高速、完全自動、しかもフリー」 WebテストツールのGITAK公開(TIBCO, 開発ツール)

    TIBCOは、オープンソースのWebサイトテストツール「TIBCO General Interface Test Automation Kit 0.7」(GITAK)を公開した。TIBCO Developer Networkより無償でダウンロードできる。 「TIBCO General Interface Test Automation Kit」は、Webサイトの入力チェック、ボタンの動作内容、JavaScriptの動作などを自動で一気にテストできるツール。すべてのテストがブラウザで完結するのが特徴だ。ダウンロードファイルにはサンプルが含まれているので、試しに動作させてみることができる。 1.GITAKの入手 TIBCO Developer Networkよりファイルをダウンロードし、解凍する。 2.TestRunner.htmlの起動 解凍してできたフォルダから「/gitak/c

  • iTextを利用してJavaからPDF形式の帳票を出力する(Java, サーブレット, PDF, 帳票)

    はじめに 現在のWebシステムにおいて帳票の出力を行う場合、PDF形式が選択されることが一般的になっています。その理由としては、データサイズをコンパクトにすることができる、情報の改ざんを防止できる、などが挙げられます。一般ユーザにも普及していますので、システム開発時に顧客からPDF形式での情報の出力を求められることも多いのではないでしょうか。 この記事では、「iText」というライブラリを活用して、PDFの出力を行う方法を解説します。 対象読者 Javaプログラミングで開発を行った経験のある方、および、Javaプログラミングに興味をお持ちの方を対象としています。 必要な環境 このサンプルアプリケーションを動作させるには、以下のソフトウェアが最低限必要です。環境についての詳細や設定方法については、サーバサイド技術の学び舎 - WINGSにある「サーバサイド環境構築設定」を参照して

  • 「これがApolloだ」 Adobeの次世代デスクトップアプリ用ランタイムリリース:CodeZine

    Adobeは19日、Adobe Labsを通じて「Apollo Runtime Alpha」をリリースした。ランタイム並びにSDKは、Adobe Labsから無償でダウンロードできる。 Apollo Runtimeは、Javaランタイムや.NET Frameworkと同じ、デスクトップアプリケーションの実行環境。Apollo上では、Flash、PDFHTML、Ajax(JavaScript)を動作させることができ、ブラウザ上でのユーザーインターフェイスよりもはるかに豊かな表現を実現させることができる。 今回のアルファ版リリースに合わせ、サンプルも用意されているので、実際に動作させてみよう。 1.Apollo Runtime Alphaのインストール まずはランタイムをAdobe Labsのサイトからダウンロードする。Windows版の場合、msiファイルをダウンロードし、インスト