CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。
本稿では、Amazon Web ServicesをPHPで操作する方法を説明します。AWSを利用する方法には大きく分けてRESTとSOAPがあります。本稿ではまず、簡単なため多くの開発者に利用されているRESTを紹介し(SOAPは本稿では扱いません)、より抽象度の高い方法であるPEAR Services_Amazonを使った利用方法を紹介します。 はじめに 一般に、「ショッピングサイトを利用する」と言えば、人間がウェブブラウザでアクセスして利用することを意味します。しかし、本稿で扱うアクセスの主体はPHPのプログラムです。これは、「PHPに人間がアクセスしているふりをさせる」ということではありません。そうしなければならないようなウェブサイトもありますが、Amazonは、プログラムのためのインターフェイス(API)をAmazon Web Services(AWS)として公開しているため、簡単
はじめに PHP界隈では現在、PHP 4からPHP 5への移行が進んできており、ここ最近ではPHP 5の機能を活用したフレームワークも多く出てくるようになりました。 PHP 5は、PHP 4に比べオブジェクト指向のサポートや速度面での向上などが取り上げられる中、最も注目すべき点であるデータベースへのアクセスを抽象化したレイヤーとしてPDOが登場しました。 今回はそのPDOに注目し、サンプルを交えてPDOの使い方を紹介します。 対象読者 PHP 5を使ったことがある方 以前PEAR::DBなどを用いてデータベースを使ったアプリケーションを作成したことのある方 必要な環境 PDOはPHP 5.1から標準で導入されるようになりました。Windows/UNIXを問わず利用することができます。よってPHP 5.1の環境と、PDOの動作に必要なデータベースの構築を行ってください。 PDOとは PDO(
はじめに どのようなソフトウェアも、市場に出て洗練された製品になるまでには、最適化のプロセスを経る必要があります。メモリリークを見つけて製品のパフォーマンスを向上させるのは、多くの作業時間と人的資源を必要とする難しい作業です。最適化という課題においてベンチマークは重要です。個別のコード部品と全体のコードの両方を検証できますし、ベンチマークのレポートや統計データから、実際の実行時のパラメータやパフォーマンスを推測できるからです。 PHPではBenchmarkパッケージを使用できます。これはPHPスクリプトや実行する関数のベンチマークに使われるPEARパッケージです。リリースされている最新版は1.2.7(安定版)です。パッケージのダウンロード後、次のようにしてインストールすることができます。 Benchmarkパッケージで何ができるかを示すため、フィボナッチ数列の生成という古典的な問題を例に、
はじめに こんにちは、hirataraです。 本稿はFFmpeg APIの解説の後編となります。前編をご覧になっていない方は、前編からお読みください。前回の記事FFmpeg APIで、さまざまな動画を操る - 前編 サンプル: サムネイル画像を作る 後編 前編では、動画から最初のフレームを取り込むプログラムを作成しました。後編では、このフレームをFFmpeg APIを使って書き出します。フレームを静止画としてファイルに書き込む それでは、取得したフレームを書き出す処理を書いてみます。今回のサンプルでは動画ではなく画像として書き出すので、実はlibswscaleを使ってフォーマットを変更した物を直接ファイルに出力するだけでもこの仕様を満たすことができます。しかし、FFmpeg APIのエンコーダの利用方法の説明を兼ねるため、ここではあえて"image2"フォーマットを利用して動画と同じように
はじめに 作成しているプログラムの中で、ある日付の翌日を取得したいという状況を想像してください。一見単純そうなタスクですが、自分で実装するとなると、かなり面倒だということは容易に想像できます。「日」が27以下の場合は単に1を加えればいいのですが(実はこれは間違いです)、「日」が28以上になると、日数は月によって異なるため、まず、それが何月なのかを調べなければなりません。さらに、もし2月だったら閏年なのかどうかをチェックする必要もあります。「『年』が4の倍数なら閏年」というような単純な話ではないことはご存じでしょう。 幸運なことに、現在広く使われているプログラミング言語の多くは、日付や時刻の計算のためのライブラリやクラスを持っているので、暦の詳細を知らなくても、日時を扱うことができるようになっています。 PHPにも日付や時刻を扱うための手段が用意されていて、簡単に使うことができます。困ったこ
システムを開発する際、「要求仕様文書」をいかにしてまとめるかが成功と失敗の分かれ道であるといえます。なぜなら、「要求仕様文書」によって新システムに盛り込むべき機能をユーザーと開発者の両者が理解できるようになるからです。これが十分でないと、品質、納期、コストの問題にはねかえってきます。 要求仕様をまとめきれないと、その影響は上流工程だけでなく、開発などの下流工程にも現れ、手戻りによる納期遅延やコスト超過などを引き起こします。さらには、システム導入後の品質の低さとして顕在化し、最悪の場合、取引ミスや不具合対応によるコスト増加や業務スピードの低下など、企業に大きなダメージを与えかねません。 最近、システム開発を取り巻く状況が次のように変化してきています。 従来の開発に比べ、期待される開発工期が相対的に短い 要求仕様が固まっていない状態で開発を始めねばならないケースが多い 要求の追加・変更が
Jaslabs: High performance phpで紹介された「MySQLのクエリを最適化する10のTips」に対して、反論している人がいる。ブログ「20bits」のJesse氏だ。彼は「10 Tips for Optimizing MySQL Queries (That don’t suck)」というエントリーで、Jaslabs氏の記事は適切でないとしている。 Jesse氏の経験によれば、SQL最適化で最も重要なことはSQLやDBの基本をしっかりと理解することであり、60%がこれで解決するという。残り35%はDBやクエリの特殊な性質に対する対処であり、最後の5%で発想の転換などを求められる。Jaslabs氏はここにばかり力を入れており、それはまったくもって時間の無駄だと述べている(Jesse氏は「SQL_SMALL_RESULTなんて、生まれてこの方使ったことすらない」とまで言
Microsoftは22日、XMLエディタ「XML Notepad 2007」をリリースした。同社のWebサイトから無償でダウンロードすることができる。 このエディタはXMLをツリーで表示できるペインと、実際の値が表示・編集できるペインからなる。要素や属性の追加、コピー、削除といった基本的な編集を視覚的に行うことができるほか、ツリービューのアイコンをドラッグ&ドロップすることで要素の移動をすることもできる。 また、XSLTを適用した際のプレビュータブも用意されており、XMLにまつわる開発における強力なツールになりそうだ。XML Notepad 2007は、Windows Server 2003、Windows XP、Windows Vistaに対応しており、.NET Framework 2.0が必要となる。 Microsoft:XML Notepad 2007
はじめに 本稿では、ホームページ製作に役立つさまざまなスクリプトをXSLTを用いて実装します。 XSLTはXMLの変換に特化したスクリプト言語で、ホームページ製作に使用するXHTMLの操作を簡単に行うことができます。繰り返し入力する内容の雛型化タイトルにサイト名を自動的に追加ローカルテスト時とアップロード時でのリンク先の切り替えヘッダとフッタの自動追加目次の自動生成キーワードの自動リンクサムネイルの自動生成 対象読者 本稿では、XSLTスクリプトの文法やテンプレートなど、XSLTの基礎に関する説明を省略しています。XSLTに初めて触れる方は、参考文献で紹介したXSLTの解説サイトなどと併せてご覧ください。必要な環境 このサンプルはInternet Explorer 6.0+MSXSLを使用して動作確認をしています。スクリプト中でMSXSLの独自拡張を使用しているため、実行にはMSXSLが必
はじめに 1998年にXMLがW3Cで勧告となり、その直後からXMLがITシステム上で急速に用いられるようになりました。その当初、XMLデータの保存先としては、ファイルシステム上に直接保存する手法がよく用いられました。しかし、ファイルシステム上に直接保存する方法ではファイルシステムの制約に依存し、さまざまな問題があることから、データの格納先として「XMLデータべース(以降、XMLDB)」が必然的に登場しました。その当時に登場したXMLDBは、第一世代のXMLDBと呼ばれます。 第一世代のXMLDBは、データを格納する際にスキーマを必要としたことや、検索に時間がかかるなど、使い勝手、性能などの面で実用的ではない製品も多かったいうこともあり、あまり普及は進みませんでした。 その後、スキーマレスという大きな特徴を持ち、検索性能などが大幅に向上した第二世代と呼ばれるXMLDBが世の中に登場します。
はじめに データアクセスを簡単にするO/Rマッピングライブラリやテーブルアダプタを採用しているにも関わらず、「設定ファイルを書くことが大変だ」「自動生成されたソースが複雑だ」などと感じたことはことはありませんか? 本稿では、コードがシンプルで、マッピングを定義するXMLファイルも書かなくてよい「S2Dao.NET」という新しいO/Rマッピングライブラリについて紹介します。対象読者 .NET開発者。データベースプログラミングやO/Rマッピングに興味をある方を対象としています。必要な環境 このサンプルはVisual Studio 2005で作成し、.NET Framework 2.0で動作確認をしています。データベースはMicrosoft Access(MDB)を使用しています。本稿ではC#にて解説をしていますが、VisualBasicのソースコードもダウンロードできます。 S2Dao.NET
前回は、実行時にユーザーの手で単一行表示から、複数行表示にレイアウトを変更する形で、エンドユーザーを巻き込んだ検索画面のモックアップを作成する手順を紹介しましたが、今回はそれに続き受注画面のモックアップを作成します。受注画面は、新規データの入力と既存データの表示が行えるものとし、今回もまた、実行時にユーザーの手でレイアウトを変更していただきます。 最近のWeb開発は、次々と新しいテクノロジーやコンポーネントが登場し、ますます使い勝手がよく、見栄えのするWebページが作れるようになりました。Infragistics社のNetAdvantage for .NETも、.NET環境で動作する洗練されたUIを提供する上で便利なさまざまなコンポーネントを統合していますが、このたび「2008 Volume 1 日本語版」にバージョンアップし、新しいコントロールが追加されています。今回は、その中からWeb
前回は、実行時にユーザーの手で単一行表示から、複数行表示にレイアウトを変更する形で、エンドユーザーを巻き込んだ検索画面のモックアップを作成する手順を紹介しましたが、今回はそれに続き受注画面のモックアップを作成します。受注画面は、新規データの入力と既存データの表示が行えるものとし、今回もまた、実行時にユーザーの手でレイアウトを変更していただきます。
前回は、実行時にユーザーの手で単一行表示から、複数行表示にレイアウトを変更する形で、エンドユーザーを巻き込んだ検索画面のモックアップを作成する手順を紹介しましたが、今回はそれに続き受注画面のモックアップを作成します。受注画面は、新規データの入力と既存データの表示が行えるものとし、今回もまた、実行時にユーザーの手でレイアウトを変更していただきます。 最近のWeb開発は、次々と新しいテクノロジーやコンポーネントが登場し、ますます使い勝手がよく、見栄えのするWebページが作れるようになりました。Infragistics社のNetAdvantage for .NETも、.NET環境で動作する洗練されたUIを提供する上で便利なさまざまなコンポーネントを統合していますが、このたび「2008 Volume 1 日本語版」にバージョンアップし、新しいコントロールが追加されています。今回は、その中からWeb
はじめに SQLというのは変わった言語です。こういう印象は人によって差があると思いますが、おそらく最初に手続き型言語を学んだ正統派のプログラマやSEほど強くそう感じると思います。 SQLに違和感を感じる理由は、いくつか考えられます。第一に、SQLが「集合指向」という発想に基づいて設計された言語で、この設計方針を持つ言語が少ないことです。そして第二に、それに劣らず大きいのが、最初に学んだ言語のスキーマ(概念の枠組み)が心理的モデルとして固定され、それを通して世界を見るようになるため、異なるスキーマを持つ言語の理解が妨げられることです。 本稿では、HAVING句のさまざまな応用方法を紹介していきますが、その際、手続き型言語とSQLの考え方を比較します。それによって、私たちが手続き型言語で身に付けた無意識の心理的モデルを自覚し、集合指向という発想に感じる違和感を軽減したいと考えています。 今回は
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く