タグ

ブックマーク / atmarkit.itmedia.co.jp (41)

  • Node.js、Socket.IO、MongoDBでリアルタイムWeb

    Node.js+Socket.IO+MongoDB こんにちは! 著者は、マインドフリーという会社でNode.jsを使ってWebアプリなどを作成している。この連載では、最新Webテクノロジを使った研究開発の事例や実績を発信する弊社のサイト“Tech Release”のリニューアルで培ったNode.jsに関する知識を分かりやすくお伝えする。 Tech Releaseは一見、普通のブログに見えるが、実は記事の更新内容がリアルタイムにView画面に反映されている。管理者が、記事の文章(データ)に変更を加えると、その記事を見ている人にもページをリロードせずに、リアルタイムに文章(データ)が変化していく。 このUXを実現するために開発したシステムが、REALTIME BLOG ENGINE「REABLO」というエンジンだ。「REABLO」はNode.jsとSocket.IO、MongoDBを使用して

    Node.js、Socket.IO、MongoDBでリアルタイムWeb
    t_horie
    t_horie 2012/10/16
  • 表示が速過ぎても、誰も文句は言いません~CSS Nite「表示速度最適化」レポート

    CSS Nite LP, Disk 23「表示速度最適化」 2012年6月30日、ベルサール九段下で「CSS Nite LP, Disk 23」が開催されました。CSS NiteはWeb制作に関わる方のためのセミナーイベントで、マークアップエンジニアやデザイナーの方が多く参加しています。今回のテーマは「表示速度最適化」でした。 パフォーマンス計測の方法、画像の最適化、モバイル向け最適化、そしてフロントエンドからバックエンドまでを考慮した設計段階からの最適化と、幅広いながらとても密度の濃い内容でした。 自己満足で終わらないためのパフォーマンス計測 サイバーエージェントの石 光司(@t32k)さんから「Measuring Web Performance - 自己満足で終わらないためのパフォーマンス計測 - 」というタイトルで、サイトの最適化を行う上で重要なパフォーマンスの計測手段や分析方法に

    表示が速過ぎても、誰も文句は言いません~CSS Nite「表示速度最適化」レポート
    t_horie
    t_horie 2012/07/19
  • Java開発で泣かないためのPlay frameworkの基礎知識

    Javaの常識を変える「Play framework」とは 「Play framework」は、サーバサイドJavaScalaのためのMVCフレームワークです。この連載では、主にJavaのフレームワークとしてのPlay frameworkを紹介していきます。でも「Javaで、Web向けで、MVCで……」なんて、ありふれた感じですよね。それなら「Scalaで、どう作るのか」という話の方が興味あるという方もいるでしょう。 しかし、Play frameworkはバージョン1まではJavaのフレームワークとして作られていました。また、ScalaJavaVM上で動作するプログラミング言語です。つまり現在の最新バージョンの2でも基礎の部分で動いているのはJavaです。Play frameworkを知るためには、まず基礎から固めていくのが正攻法だと思います。Scalaについて知りたい読者は、以下の記

    Java開発で泣かないためのPlay frameworkの基礎知識
    t_horie
    t_horie 2012/05/22
  • いまなら無料! Unityで始めるiPhoneゲーム作成“超”入門

    Unityで開発するメリットは、それほどの知識がなくてもドラッグ&ドロップで手軽に3Dデータが扱えることと、物理エンジンをすぐに導入できることです。思いついた仕組みを短時間で実際に動かすまで持っていけるため、触り心地やレベルデザインの部分に時間を割くことができます。 また、1つのプロジェクトをiOSやAndroid、Flashといったマルチプラットフォームに書き出せるため、より多くの人に自分の作ったゲームを遊んでもらえます。 モバイル端末のゲーム制作に興味があっても、なかなかネイティブ言語(iOSだとObjective-C、AndroidだとJavaなど)による開発に手が出せなかったような人には、ぜひUnityによる開発を体験してみてほしいと思います。 連載では、Unityを使用した簡単な3Dゲームを仕上げるまでの過程を解説していきます。実際にUnityで作っていくところから説明していき

    いまなら無料! Unityで始めるiPhoneゲーム作成“超”入門
    t_horie
    t_horie 2012/04/06
  • Javaの例外処理で知らないと損する7つのテクニック

    Javaの例外処理で知らないと損する7つのテクニック:【改訂版】Eclipseではじめるプログラミング(24)(1/3 ページ) これからプログラミングを学習したい方、Javaは難しそうでとっつきづらいという方のためのJavaプログラミング超入門連載です。最新のEclipseとJava 6を使い大幅に情報量を増やした、連載「Eclipseではじめるプログラミング」の改訂版となります(この回と前回のみ、別連載「EclipseでJavaに強くなる」の改訂版です。今回は第4回Javaの例外のテクニックを知る」の改訂版です) 前回の「プログラマの宿命! 例外とエラー処理を理解する」では、Javaにおける例外の用途と基的なコードの書き方、例外が発生するさまざまなケースについて理解しました。 今回は、独自に例外を定義する方法や、ちょっとした例外のテクニックを紹介します。 【1】Eclipseで独自の

    Javaの例外処理で知らないと損する7つのテクニック
    t_horie
    t_horie 2012/01/09
  • 開発手法とコミュ力は捨てろ――SIエンジニアに告げる、Web企業への転職戦略

    開発手法とコミュ力は捨てろ――SIエンジニアに告げる、Web企業への転職戦略:きのこる先生のエンジニア転職指南(6)(1/2 ページ) 元プログラマ、現Web系企業の人事担当者による、エンジニア転職指南。「応募書類の書き方」や「自己PRの仕方」について、エンジニアの視点を持ちながらアドバイス。エンジニアの幸せな転職のために、菌類が奮闘する。 皆さん、こんにちは。2011年も残すところあとわずか。忙しい日々をお過ごしでしょうか。 師走ということで、師に負けず菌類も走り回っています。新卒採用のエントリが始まり、やるべきことは増えるばかり。冬眠したい気持ちをぐっとこらえてフル稼働中です。 繰り返す、ここはSIerではない さて今回は、かつて私が所属していた「システム・インテグレータ(SIer)」、そしていま所属している「Web系企業」についてお話します。 SIerは、長引く不況とIT業界の構造変

    開発手法とコミュ力は捨てろ――SIエンジニアに告げる、Web企業への転職戦略
    t_horie
    t_horie 2011/12/27
  • 開発者が知っておくべき、6つのUIアーキテクチャ・パターン - @IT

    .NET開発者中心 厳選ブログ記事 開発者が知っておくべき、6つのUIアーキテクチャ・パターン ―― 「matarillo.com」より ―― 猪股 健太郎 2011/12/15 「.NET開発者中心 厳選ブログ記事」シリーズでは、世界中にある膨大なブログ・コンテンツの中から、特にInsider.NET/.NET開発者中心の読者に有用だと考えられるブログ記事を編集部が発掘・厳選し、そのブログ記事を執筆したブロガーの許可の下、その全文を転載・翻訳しています。この活動により、.NET開発者のブログ文化の価値と質を高め、より一層の盛り上げに貢献することを目指しています。 Martin Fowler氏の『GUI Architectures』を訳して公開しようと思ったのだが、FAQページに「PofEAAの続編などは商業出版する予定なので翻訳はしないでほしい」と書いてある。なので翻訳の公開はやめて、「

    t_horie
    t_horie 2011/12/17
  • rsyslogの導入(1/2) − @IT

    UNIX系OSのシステムロギングをおよそ20年の長きにわたって支えてきた「syslogd」にも、限界が見えつつあります。その限界を打ち破る機能を備えた新しいシスログデーモンを紹介します。(編集部) 前回までの2回にわたり「syslog-ng」のインストール方法と特徴を解説しました。syslog-ngはキャリアクラスの信頼性や豊富な機能を持ちますが、それと引き替えにsyslogdとの互換性を犠牲にしていました。一方、今回紹介する「rsyslog」は、syslog-ng同様、多くの機能と高い信頼性を実現しながら、syslogdの設定をそのまま使用することができます。 今回から2回にわたり、次世代syslogデーモンのもう1つの候補「rsyslog」を取り上げます。まず今回は、rsyslogのインストール方法を解説します。 rsyslogの特徴 「reliable(信頼できる)シスログデーモン」

    rsyslogの導入(1/2) − @IT
    t_horie
    t_horie 2011/09/26
  • Eclipseで使えるメトリクス計測ツール

    Eclipseプラグインで提供されるテストツールが充実してきた。連載では、システム開発の現場に有効なテストツールを紹介し、統合開発ツールにEclipseを選択する開発におけるテストの効率化、ソフトウェア品質の向上のヒントを提供する。(編集部) 前回の記事ではソースコードのスタイルチェックやバグ検出を行う静的解析ツールを紹介しました。今回は、ソースコードの複雑さなどを計測するメトリクス計測ツールを紹介します。メトリクスを計測することにより、ソースコードの構造上の問題点を把握し、品質の評価および向上につなげることができます。今回は、Eclipse Metrics Plugin(2種類)、CAP、JDepend4Eclipseの4ツールを紹介します。 メトリクスとは ソフトウェアのメトリクスとは、ソフトウェアを計測する方法およびその尺度のことを意味します。今回紹介するメトリクス計測ツールは、ソ

    Eclipseで使えるメトリクス計測ツール
    t_horie
    t_horie 2011/09/13
  • 「クラスパス上にあるXMLファイルの読み込み方」(1) Java Solution - @IT

    IT 会議室 Indexリンク Windows Server Insider Insider.NET System Insider XML & SOA Linux Square Master of IP Network Java Solution Security & Trust Database Expert RFID+IC リッチクライアント & 帳票 Server & Storage Coding Edge @ITクラブ Cafe VB業務アプリケーション開発研究 @IT SpecialPR

    t_horie
    t_horie 2011/09/01
  • Java開発者が知らないと損するPaaSクラウド8選

    Java開発者が知らないと損するPaaSクラウド8選:ユカイ、ツーカイ、カイハツ環境!(25)(1/3 ページ) 進化・激変するJavaクラウドの現状を知る、まとめ 連載「ユカイ、ツーカイ、開発環境」では、Javaが利用できるクラウドコンピューティングのPaaS環境について、いくつか紹介してきました。最近では、レッドハットの「OpenShift」とヴイエムウェアの「Cloud Foundry」などのPaaSクラウドのβサービスが提供され始め、また、いままで紹介した各クラウドの事情も変わってきました。 稿では、Javaで利用できる以下の8つのPaaSクラウドの最新動向をお届けします。 機能を拡充し続ける「Google App Engine」 「Stax」はCloudBeesに買収され「RUN@cloud」に Morphの「AppSpace」は「mCloud」に .NETだけじゃない「Wi

    Java開発者が知らないと損するPaaSクラウド8選
    t_horie
    t_horie 2011/09/01
  • JNIより簡単にJavaとC/C++をつなぐ「JNA」とは(1/4)-@IT

    インターネットの普及に加えて、リッチクライアント/RIAの発展とともに、アプリケーションの形態は、C/S(クライアント/サーバ)システムから、Webアプリケーションシステムにシフトしています。一般の情報発信システムだけではなく、企業の基幹情報システムまで、盛んにWebアプリケーションで構築するようになりました。 この変化の主役であるといわれる、Java技術は、Webアプリケーションシステムの発展とともに、ネットワークの親和性や、プラットフォーム適用の多様性で、広く受け入れられて、Webアプリケーションシステム開発の基盤技術になっています。 これまでのC/Sシステムでは、サーバロジックはC/C++で実装されるケースが一般的でした。C/SシステムからWebアプリケーションシステムにシフトする際に、Java技術を導入することを決めた場合、Java技術で、すべて新規開発するのは1つの選択肢ですが、

    t_horie
    t_horie 2011/08/30
  • .NET Tools : テスト駆動開発ツール最前線(前編)(1/3) - @IT

    .NET Tools テスト駆動開発ツール最前線(前編) - .NET用テスト駆動開発支援ツールNUnit 2.2の新機能 - (株)ピーデー 川俣 晶 2004/11/06 前置き この記事は、「NUnit入門 Test Firstのススメ [NUnit 2.0対応版]」および「『テスト駆動開発』はプログラマのストレスを軽減するか?」の内容のアップデートという位置付けである。今回は、それに加えて関連する2つのツールを紹介する。NUnitとは何か、テスト駆動開発とは何か、という詳しい説明は繰り返さない。それについては、上記2つの記事を参照願いたい。 プログラム開発の効率をアップするための方法 プログラム開発の効率を上げるために、最も効果があることは何だろうか。いろいろな考え方があると思うが、設計、コーディング、テスト、デバッグといった大ざっぱな工程を思い浮かべたとき、デバッグこそが効率アッ

    t_horie
    t_horie 2011/08/11
  • UIオートメーションによる自動UIテストの実践 ― @IT

    特集:UIオートメーションによる自動UIテストの実践 WindowsアプリのUIテストを自動化しよう クロノス 亀野 弘嗣 2008/06/03 読者の方々は、UI(ユーザー・インターフェイス)にかかわるテスト(以下UIテスト)を自動化できているだろうか? UIテストを自動化しようとしても、UIテストのコードは記述しにくく、記述方法に一貫性がない、などの理由から、自動化をあきらめる場合が多いのではないだろうか。 .NETの開発においても単体テストの自動化は一般的に行われるようになってきているものの、UIテストの自動化はそういった理由で実現が難しく、あまり行われていないのが現状だ。 そこで稿では、標準的で一貫性のある記述ができるMicrosoft UIオートメーション(以下UIオートメーション。詳細後述)と、テスト・ツールであるNUnitを使用して、UIテストを自動化する方法を紹介する(N

    t_horie
    t_horie 2011/08/11
  • AIRアプリのウィンドウは自由自在で縦横無尽! (1/2) ─ @IT

    <?xml version="1.0" encoding="utf-8"?> <mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical"horizontalAlign="center" verticalAlign="middle"width="200" height="200" closing="closingHandler()"> <mx:Script> <![CDATA[ private var wa:Array = new Array(); private function createWindow (type:String, y:Number):void { //新しいウィンドウを作る var wOptions:NativeWindowInitOptions = new Na

    t_horie
    t_horie 2011/06/19
  • AptanaでAjax・AIR・iPhone用ページの開発を行う(1/3) ― @IT

    AptanaでAjax・AIR・iPhone用ページの開発を行う:どこまでできる? 無料ツールでWebサイト作成(2)(1/3 ページ) 第2回は、前回に引き続き「Aptana」を取り上げ、プログラミング的な観点から紹介しよう。Webオーサリングツール紹介が主のため、プログラミングそのものの説明は省略させていただくが、「こんなことも可能なんだ」と私自身が記事を書きながら再認識した驚きを、皆さまとも共有したい。 早速プログラミング時の特徴を確認、という前にもう一度「Aptana」がどのようなアプリケーションであったのかを振り返ってから、プログラミングという側面を見ていくこととしよう。 「Aptana」とは何かをもう一度振り返ってみる 「Aptana」はEclipseベースのJavaScript統合開発環境(IDE)だが、前回解説したとおり、HTMLCSSの構文の誤りを指摘してくれたり、構造

    AptanaでAjax・AIR・iPhone用ページの開発を行う(1/3) ― @IT
  • クロスブラウザはもう古い! HTML5+CSS3時代のプログレッシブ・エンハンスメント

    IE 9が登場! ユーザーの閲覧環境がますます多様化! 4月26日、ついに日でもInternet Explorer(以下、IE) 9が公開されました。また、マイクロソフトは早くもIE 10のプレビュー版を公開しており、CSS3やJavaScript周りが、さらに強化されるなどリッチなWeb表現が加速してきています。 IEのみならず、Firefox、Safari、Google Chrome(以下、Chrome)など他のWebブラウザもすさまじい勢いで進化してきており、スマートフォンやタブレットPCなどのデバイスも続々と開発され、ユーザーの閲覧環境がますます多様化してきています。 そうした流れの中で、必然的に欠かすことができなくなる知識が、この「プログレッシブ・エンハンスメント」という概念です。 プログレッシブ・エンハンスメントって何? Webブラウザや端末などの閲覧環境が多様化してきていま

    クロスブラウザはもう古い! HTML5+CSS3時代のプログレッシブ・エンハンスメント
    t_horie
    t_horie 2011/05/25
  • なぜY Combinatorだけ特別? Dropbox創業者に聞いた - @IT

    2011/04/27 シリコンバレーは、ITの世界にとって今も特別な場所だ。 Apple、Cisco、eBay、NVIDIA、Oracle、Intelといった名だたるIT企業が社を置き、Google、Facebook、PayPalなどWeb系ベンチャーが次々と生まれ続けている。 人口約200万。行政区域としてシリコンバレーという場所は存在しないが、人口100万を擁するサンノゼ市を筆頭に、サンタクララ、サニーベール、マウンテンビューなど約20市を含む領域に世界の才能が集まる。米国西海岸、太平洋に向かって親指を突き立てたような半島の南北30マイル(48km)の細長い領域、東京圏に地図を重ねて言えば、だいたい東京から横浜までぐらいの間に、IT企業群がキラ星のように点在しているような具合だ。建物は低く、緑も多い。風景を見る限りはのんびりした場所だ。 パロアルトの比較的大きな通り。クルマ移動が基

  • JUnitとEclipseを使って学ぶ、“テスト”の常識

    package junit; import servletunit.struts.MockStrutsTestCase; public class JUnitActionTest extends MockStrutsTestCase { public JUnitActionTest(String testName) { super(testName); } public void setUp() throws Exception { super.setUp(); } public void testSuccessfulLogin() { addRequestParameter("seireki_ymd","20090625"); setRequestPathInfo("/JUnit"); actionPerform(); verifyForward("success"); verifyFo

    JUnitとEclipseを使って学ぶ、“テスト”の常識
    t_horie
    t_horie 2011/04/01
  • 間違いだらけの「かんたんログイン」実装法

    今回は、そのかんたんログインの問題点について説明します。 「契約者固有ID」を用いるかんたんログイン かんたんログインとは、携帯電話の「契約者固有ID」を用いたログイン手法です。 第1回で説明したように、携帯電話のブラウザのリクエストヘッダには契約者固有IDと呼ばれるIDを付けることができます。契約者固有IDは、携帯電話事業者によって詳細は異なりますが、すべての携帯電話事業者が対応しています。 図1は、NTTドコモの携帯電話がサポートしている契約者固有IDである「iモードID」がサーバに送信される様子です。この情報は、ユーザーがそれと意識することなく送信されます。携帯電話のかんたんログインとは、契約者固有IDのみを用いて認証を行い、ログイン機能を実現することです。 かんたんログインは、ベーシック認証のようにIDとパスワードを管理する必要もなく、Cookieのように対応する端末を考慮する手間

    間違いだらけの「かんたんログイン」実装法
    t_horie
    t_horie 2011/03/02