CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。
![Amazon Redshiftによるビッグデータ分析環境の構築手順](https://cdn-ak-scissors.b.st-hatena.com/image/square/dbf63dcd7ced72e2b9d324d6ba31ad0db7d221d9/height=288;version=1;width=512/https%3A%2F%2Fcodezine.jp%2Fstatic%2Fimages%2Farticle%2F8003%2F8003_arena.png)
米Microsoftは15日、Office 97以降で使われているバイナリファイル形式の文書仕様を公開した。「Microsoft Open Specification Promise」(OSP)プログラムの下で使用できる。 公開されたのは拡張子が「.doc」「.xls」「.ppt」となるOffice製品のバイナリファイル仕様。これらのバイナリファイルはOffice 97より採用され、Office 2003まで基本的な保存形式となっている。最新版のOffice 2007からはデフォルト保存形式が「Office Open XML」(.docx、.xlsx、.pptx)となっているが、バイナリ形式での保存もできるようになっている。 MicrosoftのWebサイトでは「Word 97-2007バイナリファイルフォーマット」(.doc)、「Excel 97-2007バイナリファイルフォーマット」(
はじめに シグナルはUNIXなどのOSにおける非同期イベントを通知する仕組みですが、「最古のプロセス間通信」「SysV系とBSD系で動きが違う」「昔のシグナルを使うと汎用性が無くなってしまう」「スレッドと相性悪し」といった理由からか、私の経験上、業務系アプリケーションではあまり使われていません。たまに使っているものを見ると、誤った使い方をしているものが多かったりします。 ところがこのシグナル、いろいろ調べていくと意外と奥が深く、有用に使えるのに、以外と情報が少ないことがわかりました。 今さらな感もありますが、ここでは私が知っている事や、調べた結果、今までの経験から得た知識などをまとめてみたいと思います。 ただし、環境によって動作が違うことが想定され、また一部のプログラムは環境に対し重大な影響を与えてしまうものもあります。プログラム等の使用に際しては十分に注意して頂き、ご自身の責任の範囲で行
Java EE 5のリリースから2年以上の時間が経ち、次期仕様である「Java EE 6」は仕様策定状態ですが、あまりまとまった情報がありません。本稿ではJava EE 6に含まれる予定の技術を解説し、今後のエンタープライズ分野のJavaが進む方向について考察したいと思います。 はじめに エンタープライズアプリケーション向けのJavaの仕様「Java EE」の現行バージョンは「Java EE 5」です。このJava EE 5は、EJB 3.0を中心にDependency InjectionやPOJOを用いたO/Rマッピングなど、Java EE/J2EEの主流に対するオルタナティブとして出てきた技術を取り込んだ、従来のJava EE/J2EEから大きく変化したバージョンでした。 このJava EE 5のリリースから2年以上の時間が経ち、次期仕様である「Java EE 6」は仕様策定状態ですが
はじめに 「分析関数の衝撃(後編)」に引き続き、CodeZineのミック氏の記事で記載されたSQLを、分析関数を使って記述していきます。完結編では、数学を扱ったSQLを主に解説します。対象読者SQLの可読性を向上させたい方SQLのパフォーマンスを向上させたい方 この記事では、「SQLで集合演算」と「帰ってきたHAVING句」に記載されているSQLを、分析関数を使って記述します。先にそれらを読んでおくと理解が進むと思います。必要な環境 本稿で扱うSQLは、Oracle 10.2.0.1.0で動作確認しました。ソースコードはDB2 V9.5でも動作確認しました。その他、次の環境でも応用が可能です。Oracle9i以降DB2SQL Server 2005以降 「2つのテーブルが相等か」を判定するクエリ まずは「2つのテーブルが相等か」を判定し、結果を返すクエリについて考えてみましょう。「SQL
はじめに テキストを生成するアプリケーション(メールの本文やソースコード生成など)を作る場合、プログラム中でテキストを結合する方法が一般的です。しかし、長いテキストをプログラムで編集することは思いのほか面倒ですし、内容を変更する場合には再コンパイルを行わなければなりません。 そこで本稿では、雛形(テンプレート)として用意しておいたテキストファイルをアプリケーションの実行時に読み込み、動的に値を埋め込める「NVelocity」というプロダクトについて紹介します。NVelocityを利用すると、単純な文字列の挿入だけではなく、条件分岐、繰り返し、メソッド/プロパティの戻り値の利用など柔軟なテキスト生成が可能になります。また、プログラムを変更することなくテキストを変更できるため、保守性の高いアプリケーションを構築できます。対象読者 Visual Studio(.NET)にて開発を行っている方、テ
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
はじめに 関係モデルのデータ構造には、「順序」という概念がありません。必然的に、その実装であるリレーショナル・データベースのテーブルやビューにも、(たてまえ上)行列の順序がありません。同様にSQLも、順序集合を扱うことを直接的な目的とはしていません。 そのため、SQLでの順序集合の扱い方は、最初から順序を扱うことを目的とした手続き型言語とファイルシステムのアプローチとはかなり異質なものになります。しかし、異質ではあるものの、そこに確固たる原理が存在することも確かです。一言で言えば、集合と述語――特に「量化子」(quantifier)と呼ばれる特別な述語の使い方が鍵になります。 本稿では、SQLを使って、数列や日付などの順序を持つデータを扱う方法を解説します。単にTipsを列挙するだけでなく、できれば、解法に共通する基本的な原理を取り出し、未知の問題に取り組むときにも適用できる一般的な指針と
はじめに 『簡単なHTTPサーバの自作』第5回目の今回は、クライアントとの通信に、ブラウザ自身によるリクエスト/レスポンスに加えてAjaxとCometを利用した簡単なチャットアプリケーションを実装します。 Webアプリケーションでチャットを実装する場合に考えなければならないのは、他の発言者のメッセージをどうやってブラウザへ反映させるかです。自分が発言する場合は、サーバへ対してメッセージが送信されます。従って応答データに現時点の発言を返せば済みます。しかし、この方法だけでは他の参加者の発言を発言時に読むことはできません。 この問題を解決する手段は複数あります。 次の図は最も原始的ですが、確実な『F5連打法』を図示したものです。 F5連打法では、ユーザーは最新の発言がありそうだと感じた時に[F5]を叩きます。するとブラウザが最新の情報をサーバへ取りに行くため、もし発言が更新されていればその情報
はじめに SQLというのは変わった言語です。こういう印象は人によって差があると思いますが、おそらく最初に手続き型言語を学んだ正統派のプログラマやSEほど強くそう感じると思います。 SQLに違和感を感じる理由は、いくつか考えられます。第一に、SQLが「集合指向」という発想に基づいて設計された言語で、この設計方針を持つ言語が少ないことです。そして第二に、それに劣らず大きいのが、最初に学んだ言語のスキーマ(概念の枠組み)が心理的モデルとして固定され、それを通して世界を見るようになるため、異なるスキーマを持つ言語の理解が妨げられることです。 本稿では、HAVING句のさまざまな応用方法を紹介していきますが、その際、手続き型言語とSQLの考え方を比較します。それによって、私たちが手続き型言語で身に付けた無意識の心理的モデルを自覚し、集合指向という発想に感じる違和感を軽減したいと考えています。 今回は
はじめに DataAccessObjectパターンによる開発でDAOジェネレータを使うケースが増えてきました。DAOジェネレータを使う目的は開発コストの削減です。しかし、リリースを急ぐプロジェクトはDAOジェネレータの使用方法をメンバに十分理解させないうちに開発を始めてしまいます。 Hibernateのような高度なO/RマッピングフレームワークであればOO(オブジェクト指向)およびRDB(関係データベース)に関する高度な知識が必要となります。ところが、平均的な技術者にそのような知識はありません。本来であれば、開発工数を削ってでも彼らの理解を確保するための教育をしなければなりませんが、予算と納期といった制約上の理由からそれがされないのが現状です。 DAOジェネレータは知識のある技術者にとっては便利でも、そうでない技術者にとっては学習コストのかかる厄介な代物であることを管理者は理解すべき
はじめに SQLが提供する結合演算には、その特徴に応じて内部結合、外部結合、クロス結合などさまざまな名前が与えられています。普通、これらの結合の多くは、異なるテーブルまたはビューを対象として行われます。しかし、SQLは結合が同一のテーブルまたはビューに適用されることを禁止していません。同一のテーブルを対象に行う結合を「自己結合(self join)」と呼びます。自己結合は、使いこなせば非常に便利な技術ですが、動作がイメージしにくいため敬遠されがちです。そこで本稿では、この自己結合の便利さを例題を通して学び、その動作を分かりやすく解説します。 自己結合を理解することは、実務上のテクニックを身につける以外に、もう一つ利点があります。それは、集合指向(set-oriented)というSQLの重要な特徴を理解できることです。オブジェクト指向言語が世界をオブジェクトとして表現するように、SQLは世界
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く