タグ

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

  • PDFを作成する (1/3):CodeZine

    はじめに PHPPDFを作成する場合にはPDFLibやmPDF、FDPDFなどさまざまな選択肢がありますが、ライセンス、パフォーマンスなどの点で問題がある場合に、Haruの利用を検討してみてはいかがでしょうか。 HaruはZLibやPNGと同様に、非常に緩いライセンス形態を取っているため、サービスの種類を問わず組み込みやすい点に特徴があります。 また、PHPのネイティブエクステンションとして提供されているため、PHPのライブラリとしてパフォーマンスが出ない場合にも利点があります。 とはいえ、サイト上にもあまり情報がなく、日語の利用に関して不安があるかもしれません。しかし最初にいくつか挙げたライブラリは、元々は海外発信のライブラリでした。対して、HaruはlibharuというCのライブラリのエクステンションであり、libharuは日が発信元となっていますので、日語に関しても安心して利

    PDFを作成する (1/3):CodeZine
    ryster
    ryster 2013/05/30
  • 毎時300万通のメール配信を可能にする高速リレーサーバをErlangで実現

    高速リレーサーバ「Cuenote SR-S」の魅力 顧客向けの案内メールなどのように一度に大量のメール配信を行う場合、正しく配信されなかったり、遅れて配信されたりするケースが多々ある。代表的な原因としては、配信先の増加によってメール配信システムの時間辺りの配信数の上限を超えてしまうケースや、無効なアドレスを正しく管理できていないケースなどが挙げられる。また携帯電話向けに配信する場合などには、同じドメインから同時に大量のメールを送るとキャリア側の制限によって配信が中断されてしまうことも多い。 リレーサーバであるCuenote SR-Sの魅力は、これらの問題を既存の配信システムに改修を加えることなく導入できるという点である。簡単に説明すると、Cuenote SR-Sはメール配信のためのネットワーク経路上に配置し、他のメールサーバやメール配信システムからメールの文面を受け取って、登録された配信先

    毎時300万通のメール配信を可能にする高速リレーサーバをErlangで実現
  • TDDでデータベースと付き合う方法

    はじめに データベースを読み書きする部分のユニットテストがやりにくいのには、いくつか理由があります。 複数人でテストを同時に実行すると、競合する データベースを使ったテストは、時間が掛かる データベース内のデータが変わると、テストが失敗する 1番目は、各自の開発環境にテスト用のデータベースを用意することで、解決できます。2番目の問題は、データベースにアクセスするコードをロジックから分離して、データベースに実際にアクセスするテストケースを減らすことで、改善できます(ロジックのテストにはモックやダミーを使います)。3番目は、テストのたびにデータベースの内容を初期化することが基になりますが、そうするとテストに長い時間が掛かるようになってしまいます。 今回は、ビジネスロジックの開発時にモックやダミーを使いやすくするにはどうするか、また、テスト時にデータベースの内容を安定させるにはどうしたらよいか

    TDDでデータベースと付き合う方法
    ryster
    ryster 2012/10/31
  • モバイルアプリをCurlで作る!

    はじめに Curlでモバイルアプリを開発できる環境「Caede Preview版」は、スマートフォンとPCのアプリケーションを同じ開発環境/開発言語で作れることがコンセプトで、開発者はCurl言語を習得するだけで両プラットフォーム対応のアプリを開発できます。例えば、エンタープライズの現場において、バックエンドシステムを主体としながらも一部のサブモジュールをモバイルにて運用したい、というようなシーンにはぴったりです。 もともと、CurlWindowsだけでなく、MacLinux上でも稼動する言語です。スマートフォンやタブレットなどのデバイス環境が多様化する昨今、モバイル環境にも従来のPC環境にも対応しているCurlは、とても魅力的な言語です。 また、Curlは、エンタープライズRIAに取り組んでいる言語であるため、バックエンドシステムをCurlで構築している事例が数多くあります。そのため

    モバイルアプリをCurlで作る!
    ryster
    ryster 2012/02/02
    Curlと言われるとcURLしか頭に出てこない...
  • Excelマクロによる、seleniumテストケースの自動生成(1)

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    Excelマクロによる、seleniumテストケースの自動生成(1)
  • PHPでよりユーザフレンドリなURLを設計するために - Zend_Controllerの新しいルーティング機能 -

    はじめに 連載では、PHP上で動作するアプリケーションフレームワークであるZend Frameworkについて紹介していきます。今回はZend_Controllerの最新機能を紹介したいと思います。以前Zend_Controllerを扱ったときからおおよそ2年半経過し、その間にZend Frameworkのバージョンも1.0から1.10にまでなりました。 この間にZend_Controllerコンポーネント内でもいくつかの変更がありました。具体的にはルーティングとアクションヘルパーについて、追加された機能や変更された機能があります。今回はこれらのうち、ルーティングへの変更を取り上げます。 対象読者 PHPの基構文については一通り理解している方を対象としています。また、過去の記事からの差分を中心に扱っているため、必要に応じて過去の記事を参照してください。 必要な環境 Zend Frame

  • サンプルで理解するFlexアプリケーションの作り方~Java開発者のためのFlex 4入門(1/5):CodeZine

    プロジェクトのインポート方法 Flash Builderでは、プロジェクトのファイル群をそのままワークスペースにコピーしても、プロジェクトとして認識されません。そのため、稿のサンプルソースとして提供しているFlexプロジェクトファイルを読み込む際には、メニューより[ファイル]-[FlexプロジェクトFXP)を読み込み]をクリックして、ワークスペースに取り込んで利用してください。 自分好みのFlash Builderに設定変更するポイント さて、実際にアプリケーションの開発を始める前に、Flash Builderを自分好みにカスタマイズしておきましょう。 自身の使いやすいようにカスタマイズできるのがEclipseの魅力の1つですが、Eclipseベースの開発環境であるFlash Builderでも、当然、設定をカスタマイズすることが可能です。開発方法の解説をする前に、多くの方が変更するで

    サンプルで理解するFlexアプリケーションの作り方~Java開発者のためのFlex 4入門(1/5):CodeZine
    ryster
    ryster 2010/08/24
  • PHPで行う動画変換(後編)

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    PHPで行う動画変換(後編)
  • PHPで行う動画変換(前編)

    はじめに オープンソースの動画変換ソフトフェアの一つにffmpegがあります。ffmpegはさまざまな形式の動画、音声データの変換に対応していて、コマンドラインから操作でき、PHPJavaなどで作成したアプリケーション内から呼び出すこともできます。 ffmpegの機能の一部をPHPで使えるようにしたエクステンションにphp-ffmpegがあります。php-ffmpegを利用するとPHP内でffmpegの機能を容易に呼び出せます。またphp-ffmpegとは別にPHPのみでffmpegの機能を使えるライブラリ FFMPEG-PHP Classが公開されています。 記事ではphp-ffmpegFFMPEG-PHP Classを使用して動画のプロパティ取得、flv(注1)への動画変換、Youtubeから動画をダウンロードして3gp(注2)への動画変換を実装する方法を2回にわたって説明します

    PHPで行う動画変換(前編)
  • 「携帯用ページ」の作り方

    はじめに 連載では、Web標準のメリットを最大限に活かすことをテーマに、仕様書には書かれていない部分を中心に取り上げ、実際のWeb制作現場で起こり得る問題について、解決の糸口を紹介しています。 多様なデバイス向けのページ制作として、前回は印刷用ページの作り方を紹介しました。連載第6回目となる今回は、携帯電話向けページの作り方を扱います。 携帯電話の国内3大キャリアと言えば、NTTドコモ、au by KDDI、ソフトバンクモバイルですが、それぞれに仕様が異なり、すべてのキャリアに対応させるには工夫が必要です。キャリアごとにページを作成し、ユーザーエージェントで振り分ければ、精度の高いデザインを再現できますが、それなりの制作・運用コストがかかってしまいます。稿では、なるべくコストをかけずに3キャリアに対応した携帯サイトを制作・運用する方法を紹介します。 対象読者 XHTMLCSSの基

    「携帯用ページ」の作り方
  • CSSでマルチカラムレイアウト

    はじめに 連載では、「クロスブラウザに対応したデザインテクニック」をテーマに、保守性や互換性に優れたXHTML+CSSの書き方を紹介していきます。 今回は、連載の総まとめとして、CSSでマルチカラムレイアウト(段組レイアウト)を実現する方法を紹介します。CSSでマルチカラムレイアウトを実現する方法はいろいろありますが、今回は、最も基的な方法として、前回の記事で解説した「floatプロパティ」および「positionプロパティ」を利用した、「フロート型」と「ポジショニング型」のレイアウトテクニックを紹介します。同時にページレイアウトで起こりがちな問題とその対処方法についても扱います。 対象読者 XHTMLCSSの基を理解している方。 Web標準サイトの実践的な作り方に興味のある方。 必要な環境 (X)HTMLCSSを記述するエディタと、それを確認するブラウザがあれば、特別な環境は

    CSSでマルチカラムレイアウト
    ryster
    ryster 2010/03/17
  • mixiアプリで友達情報を取得する

    はじめに 前回は、OpenSocialアプリケーションからOpenSocialコンテナに対して情報のリクエストを行うためのDataRequestオブジェクトの使い方について説明しました。また、個人の情報を取得するためのリクエストを作成するnewFetchPersonRequestメソッドの使い方についても説明しました。 今回は、友達の情報を取得するためのnewFetchPeopleRequestメソッドの使い方を見ていきましょう。 友達の情報の取得サンプル 今回のサンプルではVIEWERのマイミクの人数と、それぞれのニックネームを表示します。 DataRequestオブジェクトを使ったリクエストの流れはnewFetchPersonRequestメソッドを使う場合と同様ですが、リクエストの作成とレスポンスの処理の部分が異なってきます。 newFetchPeopleRequestメソッド ne

    mixiアプリで友達情報を取得する
    ryster
    ryster 2009/11/25
  • Adobe Flexに関してありがちな10の誤解

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    Adobe Flexに関してありがちな10の誤解
    ryster
    ryster 2009/11/21
  • これからはじめるRIAとFlexプログラミング ~第2回 Flex開発のためのプログラミング基礎知識~

    はじめに FlexとRIAに関する基知識から開発方法の基礎を習得していただくことを目的とする連載です。対象とする読者は次のような方です。 デザイナーでFlex、RIAの概要や開発方法を知りたい方 PHPPerl、J2EEなどのWebアプリ開発者でFlex開発に興味がある方 FlashやDreamweaverでサイト構築をしている方でFlex開発に興味がある方 つまり、プログラミングの経験を問わず、RIAの概念、Flexの基を理解したうえで、シンプルなFlexアプリケーションを作成できることを目標とします。 第2回目はプログラミングの経験がない方のために、最低限必要な知識を身につけていただくことを目指して、Flex開発のためにもっともベーシックとなるトピックをご紹介します。 これまでの連載 第1回 RIAの基とFlexの優位点 必要なソフトウェアとファイル Flex SDK Flex

    これからはじめるRIAとFlexプログラミング ~第2回 Flex開発のためのプログラミング基礎知識~
    ryster
    ryster 2009/10/29
  • PHPライブラリ「Imagick」で携帯の機種に応じた画像を表示する

    はじめに 画像処理を行うライブラリの1つにImageMagickがあります。 ImageMagickとは ImageMagick Studio LLC が開発する画像操作のためのソフトウェアで、GIF、JPEG、JPEG 2000、PNG、PDF、PhotoCD、TIFF、DPXなどの幅広いファイルフォーマットに対応しています。GPL互換性のあるライセンスで提供されています。 そして、ImageMagickの機能をPHPで利用するための拡張インターフェースがImagickです。PHPでこのImagickを使うと簡単なコードでImageMagickの機能を利用できます。 記事ではImagickを利用して、アクセスしてきた携帯電話の機種に応じて画像を表示させる仕組みの構築例について説明します。 対象読者 PHPでのWebアプリケーション開発について基的なことを理解している方 動作環境と開発

    PHPライブラリ「Imagick」で携帯の機種に応じた画像を表示する
  • JaxerによるサーバーサイドJavaScript

    はじめに 既に「Ajax」という言葉が陳腐に感じてしまうほど、JavaScriptはWeb開発者の間に広く浸透しています。今では、クライアント側でのUI構築にJavaScriptは不可欠となっている、といってよいでしょう。クールなサイトを目指してJavaScriptを必死に勉強する人はずいぶんと多いはずです。 が、ある程度まで学習が進むと、多くのJavaScriptプログラマは「壁」にぶつかってしまいます。それは「サーバーサイドプログラム」という壁です。Ajaxによるサーバーへの非同期通信が当たり前のように使われるようになった今、JavaScriptプログラミングといえども「サーバー側に用意されるプログラム」の作成なしには行えなくなりつつあります。 サーバーサイドのプログラム作成はどうすべきなのか。PHPを勉強するのか、Perlあたりがいいのか、はたまたRubyPythonか。いずれにせ

    JaxerによるサーバーサイドJavaScript
    ryster
    ryster 2009/09/30
  • 仮想ネットワーク実装でTCP/IPを学ぼう(4) ― トランスポート層の勘所

    はじめに この連載では仮想的なLANを実装することにより、目に見えないTCP/IPプロトコル群を、手を動かして目で実際に確認しながら習得することを目的としています。ただし、TCP/IPのすべてを解説するのは分量上不可能ですし、余計に読者を混乱させてしまいますので、筆者が重要と考えている部分だけ解説します。またサンプルコードや記事に出てくるIPアドレスMACアドレスについては架空のものであり、実際にそのIPアドレスを取得した組織などを意識したものではありません。あらかじめご了承ください。 今回はトランスポート層のプロトコルとそれに関係する事柄について解説します。 トランスポート層の概要 この層の役割は、アプリケーション層のデータを2台のホスト間で、どのようにやり取りをするのかを既定することです。特徴は通信方式の信頼性です。 純全たるこの層のプロトコルは今の所2つしか存在しません。それは、

    仮想ネットワーク実装でTCP/IPを学ぼう(4) ― トランスポート層の勘所
  • DeNAの人気サイトに学ぶ LAMPによるWeb-DBシステム構築/運用の極意(前編)

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    DeNAの人気サイトに学ぶ LAMPによるWeb-DBシステム構築/運用の極意(前編)
  • フレームワーク導入に備え身に着けておきたい4つの習慣 ~Ruby/Perl/PHPユーザーのためのMVCフレームワーク入門~

    フレームワークを導入する前にやっておきたいこと 第2回、第3回とRuby/PHP/Perlの言語別のフレームワークを比較してきました。今回は、フレームワークを導入する前に、身に着けておきたい4つの習慣をまとめました。より良い開発工程を模索する参考となれば幸いです。 これまでの連載 第1回「効率的なWebアプリ開発の定石」 第2回「言語別フレームワークの比較」 第3回「Webサービスの開発にフレームワークが必要な理由」 1.案件について分析する Web開発では、そのサービスが『誰を対象としたものか』によって、プログラマが担う役割や作業負荷が変わります。 コンシューマを対象としたWebサイトの改変の多くは、デザイン・UIの変更です。この場合、ロジックとデザインの切り離しを行うことで、プログラマは作業負荷を軽減することが可能となります。そのため、なるべくシンプルなテンプレート構造を持ったフレーム

    フレームワーク導入に備え身に着けておきたい4つの習慣 ~Ruby/Perl/PHPユーザーのためのMVCフレームワーク入門~
  • プログラミング未経験から始めるPHP入門 (5) 入力フォームを使ってデータを送受信しよう!

    はじめに 連載では、PHPまたはプログラミング初心者の方を対象に、PHPを用いたWebアプリケーションの作成方法を説明していきます。今回はテキストボックスなどの入力フォームを使い、データを送受信する方法に関して説明をします。PHPの環境構築に関しては第2回をご参照ください。 対象読者 プログラミングが初めてでこれから学習する予定の方 プログラミングの経験はあるがPHPを初めて学習する方 これまでの連載 第1回「プログラムってなんだろう? PHPってどういうもの?」 第2回「XAMPPをインストールして開発環境を整えよう!」 第3回「変数の扱い方を習得しよう!」 第4回「条件分岐と繰り返しを使いこなそう!」 動作確認環境 PHPが動作する環境が必要となります。以下に、今回のアプリケーション作成/動作確認に用いた環境を示します(インストールにあたっては最新安定版の使用を推奨します)。 Win

    プログラミング未経験から始めるPHP入門 (5) 入力フォームを使ってデータを送受信しよう!
    ryster
    ryster 2009/03/16