タグ

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

  • 文字の位置を揃えたい! エディタのキーボードマクロによる整形テクニック(1/5):CodeZine

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

    文字の位置を揃えたい! エディタのキーボードマクロによる整形テクニック(1/5):CodeZine
  • Hadoopのインストールとサンプルプログラムの実行

    前回はGoogleの基盤技術とそれに対応するオープンソースソフトウェアとして、Hadoop & hBaseを紹介しました(図1 参照)。今回はHadoopを1台にインストールし、サンプルプログラムを動かします。次にHDFSとMapReduceのアーキテクチャを解説します。最後にサンプルプログラムのソースコードを解説します。 2. Hadoopの概要 Hadoopは主にYahoo! Inc.のDoug Cutting氏によって開発が進められているオープンソースソフトウェアで、GoogleFileSystemMapReduceというGoogleの基盤技術のオープンソース実装です。Hadoopという名前は開発者の子供が持っている黄色い象のぬいぐるみの名前に由来しています。HadoopはHDFS(Hadoop Distributed File System)、Hadoop MapReduce F

    Hadoopのインストールとサンプルプログラムの実行
  • BoostでC++0xのライブラリ「TR1」を先取りしよう (2):CodeZine

    はじめに C++の新しい規格「C++0x」では、言語とライブラリの両面から便利な機能が追加されます。「TR1」(Technical Report 1)はC++0xのライブラリ部で、標準C++に新たに追加されるライブラリの多くはBoostの中から選ばれたものです。2008年春にリリースが予定されているVisual Studio 2008にも追加パッケージとして供給されるとの情報を得ています。 TR1に収録されたクラス/関数の中からいくつかをピックアップし、その概要と使い方を予習しておきましょう。 正規表現について さまざまなアプリケーションの実装で必ずと言っていいほど必要となるのが文字列の処理です。簡単なところではファイル、ユーザー入力、あるいはネットワーク越しに手に入れた文字列を空白やカンマで区切るとか、特定の文字列の検索などがあります。 <string.h>(C++では<cstring>

  • POCO::Netライブラリによる組み込みWebサーバの実装:CodeZine

    はじめに 記事ではPOCO(C++ Portable Componentsの略)というオープンソースのC++用クラスライブラリを紹介します。 日語の情報が少なく、あまり有名ではありません。しかし、強力なライブラリが揃っているのでプログラミングの強い味方になること間違いありません。 今回は、POCOの導入方法と、いかにPOCOが強力であるかを示すために、アプリケーション組み込み型のWebサーバのサンプルソースを解説します。Webサーバが非常に少ないコード量で記述できることに驚かれると思います。 POCOのクラスは数多くあり、今回の記事だけではとてもすべてを紹介しきれません。引き続き、クラスの利用方法や、アプリケーションを作る上で便利なパーツの製作などの記事を予定しています。対象読者 オブジェクト指向を理解し、C++のクラスライブラリを活用できる方を対象としています。必要な環境 POCOは

  • 文字コードから画像ファイルを生成する:CodeZine

    はじめに 文字コード関連の文書を書いていると「この文字の画像ファイルが欲しいな」というケースがよくあります。そんなときに、わざわざ画面に表示させてから、PrintScreenでコピーして、ペイントに貼り付けて、範囲指定してから切り取って……という手順で画像ファイルを作成するのは面倒です。1つならそれほどではないかもしれませんが、いくつもの文字となると手作業で行うのはかなり大変です。 というわけで、プログラムから文字の画像ファイルを作成する方法を紹介したいと思います。対象読者 文字の画像ファイルが欲しい方C言語およびWindowsAPIプログラミングについて知識のある方画像ファイルの動的な生成に興味のある方 必要な環境Windows VistaまたはWindows XPWindowsAPIに対応したCコンパイラバイナリエディタ  ただし、Windows XPの場合は、事前にJIS2004対応

  • MySQLのシステムアーキテクチャ:CodeZine

    SQLを使う業務では分析関数を使いこなすと、生産性とSQLの可読性とパフォーマンスを、大きく向上させることができます。分析関数を使う際の考え方と、処理のイメージを解説します。今回は総集編として、前編、中編、後編、完結編に関連した内容を扱います。

  • CodeZine:DeNAの人気サイトに学ぶ LAMPによるWeb-DBシステム構築/運用の極意(前編)(モバオク, モバゲー)

    シングルマスタの非同期レプリケーション機能では、マスタサーバーが1台に限定され、マスタからスレーブへの複製は非同期で行なわれるため遅延が生じ、短時間のスケールで見ると全スレーブとの同期が保証されない。しかし、その反面スレーブの台数を増加させていってもマスタサーバーの更新負荷は大きくならず、スケーラビリティを維持できるという利点がある。DeNAによる運用実績でも、マスタとスレーブ間の遅延は通常数秒程度以内に収まる。 このレプリケーションを利用する場合、アプリケーション側ではデータ更新時にはマスタサーバーへ接続し、データ参照のみを行なう場合はスレーブサーバーへ接続するように作成する必要がある。 Webや携帯電話向けサービスの場合、小さな規模で始めてユーザー規模、データ規模、ページビュー数を徐々に増加させていくことが多い。小さな規模のためDBの負荷分散が不要な場合でも、マスタサーバー1台、スレー

  • CodeZine:JavaScriptでつくるSchemeインタプリタの基礎の基礎(lisp)

    はじめに 現存するプログラミング言語の中で2番目に古いのがLispです。生まれは古くても、いまだに使われ続け、また、Rubyなどの新しい言語にも影響を与えています。そのLispの派生であり、シンプルさが売りなのがSchemeです。 ここではSchemeの簡単なインタプリタをJavaScriptで作ってみます。対象読者 稿はLispやSchemeは少し触ったことはあるけど、インタプリタは書いたことがないという方を読者対象としています。また、JavaScriptの文法や、簡単なデータ構造についての知識を前提とし、説明は省きます。必要な環境 テキストエディタと、JavaScriptが動くWebブラウザがあれば十分です。他に特に用意するものはありません。概要作成するインタプリタについて インタプリタのコードはJavaScriptで書き、HTMLのフォームを使って、Schemeのプログラムの入力お

  • CodeZine:OpenIDを使ってみよう(openid, 認証方法, Perl)

    はじめに OpenIDは最近非常に注目が高まっている認証技術の一つです。ここでは、OpenIDを利用したPerlのサンプルを通じてOpenIDのメカニズムに触れていきたいと思います。必要な環境 Perl 5.8以上が動作する環境が良いと思います。基動作の確認はMac OS Xを利用しましたサンプルの紹介 早速サンプルコードの「openid-test.cgi」を見ることにしましょう。このサンプルはOpenIDを利用した簡易ログインページです。 #!/usr/bin/perl use strict; use warnings; use CGI; use Net::OpenID::Consumer; #use LWPx::ParanoidAgent; use LWP::UserAgent; my $query = CGI->new; $query->charset('utf-8

  • REXML:RubyによるXML処理

    Scaffoldで生成したアプリケーションは出発点にすぎず、自立した完成品のアプリケーションではありません。このため、開発者がプロジェクトに適した形になるように手を加える必要があります。しかし、毎回似たような修正を行うのであれば、生成した時点でその修正が反映されている方が、より生産性も向上します。そこで稿では、Scaffoldをカスタマイズする方法を紹介します。

  • CodeZine:Rubyを使ってWebアプリケーションの脆弱性を早期に検出する(Web, テスト, Ruby)

    Scaffoldで生成したアプリケーションは出発点にすぎず、自立した完成品のアプリケーションではありません。このため、開発者がプロジェクトに適した形になるように手を加える必要があります。しかし、毎回似たような修正を行うのであれば、生成した時点でその修正が反映されている方が、より生産性も向上します。そこで稿では、Scaffoldをカスタマイズする方法を紹介します。

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

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

  • PHPEclipseを拡張してEclipseプラグインを作成しよう:CodeZine

    始めに PHPEclipseというEclipseプラグインはPHP開発で欠かせない豊富な機能(コードフォーマッティングやテンプレート、コードアシスト、Apache・MySQLとの連携など)が用意されています。しかし、豊富な機能が用意されていても、あなたが関わっているプロジェクトで、必ずしも「かゆいところ」に手が届くとは限りません。 そこで、PHPEclipseが用意している機能を使用して「かゆいところ」に手が届くようにEclipseプラグインを作成します。今回作成するプラグインはPHPのクラスプロパティからsetter/getterの生成を行う簡単なプラグインを作成する手順を紹介します。 なお、PHPEclipseはSourceForge.net内のページよりダウンロードすることができます。対象読者PHPEclipseを利用している方Eclipseプラグインを作成したことのある方 必要な環

  • 「ちょっと待て」 真・MySQLのクエリを最適化する10のTips:CodeZine

    Jaslabs: High performance phpで紹介された「MySQLのクエリを最適化する10のTips」に対して、反論している人がいる。ブログ「20bits」のJesse氏だ。彼は「10 Tips for Optimizing MySQL Queries (That don’t suck)」というエントリーで、Jaslabs氏の記事は適切でないとしている。 Jesse氏の経験によれば、SQL最適化で最も重要なことはSQLDBの基をしっかりと理解することであり、60%がこれで解決するという。残り35%はDBやクエリの特殊な性質に対する対処であり、最後の5%で発想の転換などを求められる。Jaslabs氏はここにばかり力を入れており、それはまったくもって時間の無駄だと述べている(Jesse氏は「SQL_SMALL_RESULTなんて、生まれてこの方使ったことすらない」とまで言

  • 1