タグ

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

  • いま最も注目のライブラリ「React.js」でシングルページアプリケーションを作ってみよう! 【前編】

    対象読者 JavaScriptフレームワーク・ライブラリの選定に悩んでいる方 格的にJavaScriptを触るのが初めてという方 jQueryでの大規模なフロントエンド開発に限界を感じている方 必要な環境 Node.jsがインストールされていることが推奨です。 React.jsとは何か React.jsは最近注目を浴びているFacebook製のライブラリで、MVCアーキテクチャでいうViewにあたる機能を提供します。 前提として、JavaScriptの世界でMVCのVといえば、紛れもなくDOM(Document Object Model)のことを指します。特に何も意識しないで作った場合、都合の良いDOMからデータを引っ張り出しては別のDOMを書き換えるといった、行き当たりばったりな作りになりがちです。そこで、MVCの考え方を導入することにより、データを画面とは独立した構造体として切り出し

    いま最も注目のライブラリ「React.js」でシングルページアプリケーションを作ってみよう! 【前編】
  • サイバーエージェントのGitHub活用 ~ 導入から運用体制、開発フロー、勉強会による現場への普及活動まで

    また、Organization[1]の数も360を超え[2]、リポジトリ数もOrganizationのものだけでも2000近く作られています[3]。 新規のプロジェクトは基的にGitを利用しており、既存プロジェクトもほとんどがSubversion(以下SVN)などからGitに移行しました。 記事では、Ameba事業部がどのようにGitを組織内に普及させていったか、その運用体制、現場でどのように利用されているのかをご紹介します。 [1] 複数アカウントをまとめるグループ機能です。リポジトリは個人単位だけでなく、Organization単位で作ることもできます。 [2] プロジェクト単位で1つのOrganizationを用意しています。 [3] 個人アカウントで作成したり、他からforkしたリポジトリは除いた数です。 GitHub Enterprise導入への道のり GHE導入以前の標準

    サイバーエージェントのGitHub活用 ~ 導入から運用体制、開発フロー、勉強会による現場への普及活動まで
    pasela
    pasela 2014/09/10
  • PHP::Haruで簡単なPDF帳票を作成する

    はじめに 連載では、PHPPDFを作成するエクステンションであるHaruについて紹介しています。今回は画像の表示方法、帳票出力時に設定が好ましいプロパティとセキュリティ設定の方法、そして前回紹介した方法も含めて、簡単な帳票出力を通してより実践的な使い方を紹介します。 対象読者 PHPの基構文を理解している方で、帳票印刷やPDFファイルに興味がある方を対象としています。 必要な環境 この記事では、以下のライブラリを使用しています。 libharu 2.1 haru 1.0.4 また、PHP 5.4を使用し、Linuxで動作の確認を行っております。各項目のインストール方法は、前回を参照してください。 画像を表示する 画像を読み出すメソッドは、以下の3つのメソッドを使ってHaruImageオブジェクトを作成します。従って、それ以外のフォーマットの場合には、一度これらのフォーマットにGDライ

    pasela
    pasela 2013/07/01
  • PHPアプリでメッセージキューサーバを活用する - Zend_Queue -

    はじめに 連載では、PHP上で動作するアプリケーションフレームワークであるZend Frameworkについて紹介しています。今回は前回に続き、分散アプリケーション間でのデータのやりとりを行うための方法の一つである「メッセージキュー」を利用するためのZend_Queueコンポーネントを紹介します。 今回は、Zend_Queueのアダプタ(MemcacheqアダプタとPlatformJobQueueアダプタ)の紹介、次に自分でアダプタを作成する方法、そしてStompプロトコルを利用してメッセージキュー管理サーバにアクセスする方法について説明します。 対象読者 PHPの基構文については一通り理解している方を対象としています。 必要な環境 Zend FrameworkはPHP 5.2.4以降とWebサーバがインストールされている環境で利用可能です。稿ではWebサーバとしてApache 2.

    pasela
    pasela 2011/02/28
  • PHPUnitでできる単体テスト

    はじめに 単体テストとは、システムの構成要素であるクラスやメソッド単位での動作を確認する作業のことを言います。 Webシステムは基的に不特定多数に公開するものであり、公開前にはきちんとテストを行っておくことが重要です。 PHPにはテストツールとしてPHPUnitという単体テストのツールがあり、PHPUnitを利用するとクラス内のメソッドに対してテスト用のクラスを自動で生成し、効率よくテストすることができます。 PHPUnitを利用して単体テストする場合のプロセスは テスト対象となるクラス、PHPプログラムの作成 1.で作成したクラスからPHPUnit内のクラスを用いてテスト用のクラスを作成 2.で作成したテスト用のクラスに目的に応じてテストメソッドの実体を記述 テスト実行、結果の確認 となります。 記事では、連載第4回『GPS携帯を使った口コミサイト構築』の逆ジオコーディング処理をテ

    PHPUnitでできる単体テスト
  • PostgreSQLの再帰SQL(1) ――再帰SQLの構文

    はじめに 連載ではPostgreSQL 8.4を使って、再帰SQLの入門事項や、Oracle Technology Network(OTN)でよく見かける問題の解法、Oracleの階層問い合わせや再帰with句の機能を模倣する方法を、SQLのイメージを交えて解説します。 稿では、再帰SQLの構文などを扱います。 対象読者 PostgreSQLで再帰SQLを使ってみたい方 再帰SQLの理解を深めたい方 必要な環境 稿で扱うSQLは、PostgreSQL 8.4 beta 2で動作確認しました。その他、次の環境でも応用が可能です。 Oracle 11g R2以降 DB2 SQL Server 2005以降 1. 再帰SQLとは with句でselect文を実行して、そのselect文の結果を使ってselect文を実行して、そのselect文の結果を使ってselect文を実行して、……(以

    PostgreSQLの再帰SQL(1) ――再帰SQLの構文
  • 携帯電話の絵文字の標準進む 674文字が追加でUnicode符号化

    主に携帯電話のメールなどで利用される「絵文字」のUnicode標準化を進めてきたGoogleは、3月18日に「絵文字のUnicode符号化に関するアップデート」を発表した。これによると、絵文字の符号化はUnicode技術委員会で正式了承され、4月下旬にアイルランドで開催されるISO/IEC SC2/WG2標準化会議で審議・承認される運びという。 携帯電話の絵文字は、docomo、au、Softbankなどのキャリアがそれぞれ独自に仕様を決めて運用していたため、キャリアを越えてメールを送受信する場合や、全キャリアに対応した掲示板システムなど携帯向けWebサービスを構築する際に、これまで大きな弊害となっていた。 標準化のプロセスは、Googleが提供するWebメールサービス「Gmail」で絵文字送受信に対応したことと前後して、昨年11月から「emoji4unicode」プロジェクトとしてスター

    携帯電話の絵文字の標準進む 674文字が追加でUnicode符号化
  • Webサービスの開発にフレームワークが必要な理由 ~Perl/Ruby/PHPユーザーのためのMVCフレームワーク入門~

    はじめに 前回はRuby/PHP/Perl、それぞれの言語ごとにフレームワークとテンプレートエンジンについて比較を行いました。これにより、現在のWebアプリケーション開発に求められる仕組みを俯瞰できたと思います。 今回はこの比較を基に、Ruby on Railsのこれまでの動向を追いながら、『どのようなフレームワークが自分にふさわしいのか』を考えていくことにします。また、最後に前回の記事で掲載しきれなかった各言語のフレームワークを紹介します。 「Perl/Ruby/PHPユーザーのためのMVCフレームワーク入門」これまでの記事 第1回「効率的なWebアプリ開発の定石」 第2回「言語別フレームワークの比較」 フレームワークについて調査・分析を フレームワークの目的は、汎用処理を系統立てた仕組みの中に内包することで、プログラマの作業の効率化とWebアプリケーションの保守性を高めることにあります

    Webサービスの開発にフレームワークが必要な理由 ~Perl/Ruby/PHPユーザーのためのMVCフレームワーク入門~
  • PHPにおけるUnicode文字列の正規化

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

    PHPにおけるUnicode文字列の正規化
  • Gettextによるウェブアプリケーションの国際化と地域化

    はじめに アプリケーションをさまざまなロケール(言語や地域)で利用できるようにすることを「国際化」と言います。国際化されたアプリケーションを、実際に特定の言語や地域で利用できるようにすることを「地域化」と言います。 国際化・地域化の対象は、大きく分けて次の2つです。 日時や通貨・数値 メッセージ文字列 日時や通貨・数値については、『I18Nv2による日時と通貨・数値の表記国際化』で解説しました。 稿ではメッセージ文字列を扱います。ここで紹介する手法を取り入れたウェブアプリケーションは、クライアントのロケールにあった形式でメッセージ文字列を表示することができます。たとえば、ブラウザの言語を英語にしてアクセスすると「Hello Taro YABUKI!」、日語にしてアクセスすると「こんにちは、Taro YABUKI。」と表示するようなウェブアプリケーションを作ります。 必要な環境 XAMP

    Gettextによるウェブアプリケーションの国際化と地域化
    pasela
    pasela 2008/10/15
  • Zend Framework入門(9): Zend Frameworkにおけるビューの処理 - Zend_View(前編) -

    はじめに 連載では、PHP上で動作するアプリケーションフレームワークであるZend Frameworkについて紹介していきます。前回の予告どおり、今回はビューヘルパーの解説を行います。今回紹介するビューヘルパーは、ウェブページの作成や管理に役に立つ仕組みです。ビューヘルパーを上手に使えば、ウェブページを部品ごとに分けて作成・管理・再利用できます。 対象読者 PHPの基構文は一通り理解しているが、フレームワークを利用したことはないという方を対象としています。 これまでの記事 Zend Framework入門(1):フレームワークの全体像とインストール Zend Framework入門(2):Hello World!アプリケーションの作成 Zend Framework入門(3):PHPでMVCアプリケーションを構築しよう - Zend_Controller(前編) - Zend Frame

    Zend Framework入門(9): Zend Frameworkにおけるビューの処理 - Zend_View(前編) -
  • PHPにおけるUnicode文字列の正規化:CodeZine

    はじめに 与えられた文字列を含む文書を返す検索機能を実装しているところを想像してください。 検索語として「ページ」が与えられれば、「ページ」という文字列を含む文書を返します。これは特に難しいことではありません。 半角の「ページ」が与えられたらどうでしょう。「ページ」と「ページ」を区別する必要がないような、一般的な文書検索においては、「ページ」という文字列を含む文書を返すのが望ましいはずです(もちろん、この2つは常に同一視できるわけではありません。同一視できない例として稿があります)。 もしかしたら、「㌻」で検索しようとする人がいるかもしれませんし、日語を母国語としない人が、「ぺ」(「ヘ」と半角の半濁点「゚」)や「ヘ゜」(半角カナ「ヘ」と半濁点「゜」)を使うかもしれません。 人間なら簡単に対応できることですが、コンピュータで対応するには特別な処理が必要になります。例えばUnic

  • Zend Framework入門(6):抽象化レイヤによるデータベースアクセス手法 - Zend_Db(前編) -:CodeZine

    はじめに 連載では、PHP上で動作するアプリケーションフレームワークであるZend Frameworkについて紹介していきます。前回まで、Zend FrameworkのMVCの中核となるZend_Controllerについて解説してきました。第6回目となる今回は、PHPとリレーショナルデータベースの基を知っている方向けに、Zend_Dbコンポーネントを用いたデータベースアクセス、その基的な使い方を取り上げます。対象読者 PHPの基構文は一通り理解しているが、フレームワークを利用したことはないという方を対象としています。これまでの記事Zend Framework入門(1):フレームワークの全体像とインストールZend Framework入門(2):Hello World!アプリケーションの作成Zend Framework入門(3):PHPでMVCアプリケーションを構築しよう - Ze

    pasela
    pasela 2008/05/19
  • 携帯サイトのUserAgent偽装対策:CodeZine

    はじめに 携帯サイトは、アクセスしてくる端末の機種をUserAgentで判別します。しかし、UserAgentは容易に偽装できるので、携帯実機以外からのアクセスを正確には判別できません。 稿では、IPアドレス判別を併用して携帯実機以外からのアクセスを締め出す方法を紹介します。 対象読者 携帯サイトの開発者。 携帯の機種判別の問題 携帯の機種判別にはUserAgentを用います。しかし、UserAgentは容易に偽装できます。つまり、携帯サイト側で、アクセスが物の携帯端末からのものであるかどうかを判別することはできません。UserAgentを偽装したDos攻撃などの不正アクセスに対して、対策を講じる必要があります。 携帯のIPアドレスとは? 携帯は通信会社の中継サーバを経由し、携帯サイトにアクセスします。携帯サイトから見ると、通信会社の中継サーバがアクセスしてきたように見

  • プログラミングと開発者のためのCodeZine:CGI::Applicationを用いたアプリケーションの実装(Perl, CGI, Application, フレームワーク)

    はじめに PerlCGIアプリケーションを作るフレームワークの1つが、CGI::Applicationです。CGI::ApplicationにはどのようなCGIアプリケーションにも必ず存在する定型処理があらかじめ用意されており、自ら記述するコードの量を減らすことができます。また、プラグインによって、足りない機能を補えます。稿では、CGI::Applicationとデータベースを用いた基礎的なCGIアプリケーションの実装方法を解説します。対象読者Perlで何らかのCGIアプリケーションを作成したことのある方。CGI、DBI、HTML::Templateモジュールを使用したことのある方。フレームワークを使用したことのない方。 動作環境 Perl 5.8以降を使ったCGIアプリケーションが正しく動作するWebサーバが必要です。また、以下の依存モジュールをCPANで導入しておいてください。

  • pthreadについて(シグナル・バリア等):CodeZine

    はじめに この連載ではUNIX系OSなどで使われるスレッド「pthread」についてサンプルを交えて説明していきます。pthreadはPOSIXが仕様化したスレッドモデルです。サンプルはCと一部C++、調査環境はFedora 8(2.6.23.1-49.fc8)、32bit、glibc-4.1-2、gcc-4.1.2-33およびFedora Core 6(2.6.18-1.2798.fc6)、32bit、glibc-2.5-3、gcc-4.1.1-30を使用しています。これまでの記事第1回:pthreadについて(概要・生成)第2回:pthreadについて(同期)第3回:pthreadについて(条件変数・モデル)第4回:pthreadについて(スレッド固有データ)第5回:pthreadについて(スタックサイズ)第6回:pthreadについて(スケジューリング)第7回:pthreadについて

    pasela
    pasela 2008/03/25
  • テキスト処理もPOCOにおまかせ:CodeZine

    はじめに 記事ではPOCO(C++ Portable Componentsの略)というオープンソースのC++用クラスライブラリを紹介します。POCOはコンポーネントとして6つのライブラリにわかれており、前回は、その中のPOCO::Foundationライブラリから、Loggingに関するクラス群を紹介しました。 POCO::Foundationライブラリは、名前のとおり基的な処理を行うクラスを集めたもので、そのまま実践に使えるクラスが豊富に含まれています。今回からしばらくは、そんなPOCO::Foundationライブラリから、テーマごとにクラスをピックアップし、サンプルコードを交えて解説していくことにします。今回のテーマは、テキスト処理を取りあげました。また、POCOには含まれていないシフトJISとUTF-8の相互変換関数のソースコードも公開しています。これまでの記事POCO::Ne

    pasela
    pasela 2008/01/30
  • 5分で使えるLoggingフレームワーク - POCO::Foundation -:CodeZine

    はじめに 記事ではPOCO(C++ Portable Componentsの略)というオープンソースのC++用クラスライブラリを紹介します。 POCOに関する概要とその導入方法については、別稿『POCO::Netライブラリによる組み込みWebサーバの実装』を参照してください。POCOはコンポーネントとして6つのライブラリに分かれていますので、今回からは、ライブラリ単位で順番に紹介したいと思います。まずは、POCO::Foundationライブラリをとりあげます。名前の通り基機能を集めたライブラリで、実際のアプリケーション開発にそのままでも使えるクラスが揃っています。対象読者 オブジェクト指向を理解し、C++のクラスライブラリを活用できる方を対象としています。必要な環境 POCOは、多様なプラットフォームで動作可能で、WindowsMac OS X、Linux、HP-UX、Tru64、

    pasela
    pasela 2007/12/05
  • CodeZine:Zend Framework入門(1):フレームワークの全体像とインストール(フレームワーク, PHP)

    はじめに 連載では、PHP上で動作するアプリケーションフレームワークの「Zend Framework」について紹介していきます。連載では、以下の内容を扱う予定です。Zend Frameworkフレームワークの特徴Zend Frameworkを利用するための環境設定手順Hello, Worldアプリケーションの作成/基的なコンポーネントについての解説その他Zend Frameworkにおける各種コンポーネントについて  導入の今回は、まずZend Frameworkの特徴と環境設定手順までを紹介します。対象読者 PHPの基構文は一通り理解しているが、フレームワークを利用したことはないという方を対象としています。必要な環境 Zend Frameworkは、PHP5.1.4以降とWebサーバがインストールされている環境で利用可能です。稿ではWebサーバとしてApache2.2を、OSに

  • CodeZine:PHPにおける日付と時刻の混乱(ユリウス日, DateTime, PEAR Date, エポックタイムスタンプ)

    はじめに 作成しているプログラムの中で、ある日付の翌日を取得したいという状況を想像してください。一見単純そうなタスクですが、自分で実装するとなると、かなり面倒だということは容易に想像できます。「日」が27以下の場合は単に1を加えればいいのですが(実はこれは間違いです)、「日」が28以上になると、日数は月によって異なるため、まず、それが何月なのかを調べなければなりません。さらに、もし2月だったら閏年なのかどうかをチェックする必要もあります。「『年』が4の倍数なら閏年」というような単純な話ではないことはご存じでしょう。 幸運なことに、現在広く使われているプログラミング言語の多くは、日付や時刻の計算のためのライブラリやクラスを持っているので、暦の詳細を知らなくても、日時を扱うことができるようになっています。 PHPにも日付や時刻を扱うための手段が用意されていて、簡単に使うことができます。困ったこ

    pasela
    pasela 2007/11/08