CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。
はじめに この連載では、今日のウェブ業界の流行語となっている「HTML5」をとりあげ、全6回に分けて、これまでの技術とどのような違いがあるのか、具体的にサンプルのコードを示しながら解説していきます。 過去の連載も読む 第1回:HTML5が注目を浴びる理由とは? 第2回:HTML4から変化したHTML5のマークアップ 第3回:HTML5で再定義された要素と属性 第4回:HTML5で実現できるマルチメディア系機能 第5回:HTML5で進化したフォーム機能 オープン・ウェブ 本連載では、HTML5のマークアップについてウェブページという視点で解説してきました。しかしこの視点は、HTML5やそれに関連する新たなウェブテクノロジーが扱う範囲のごく一部でしかありません。本連載の最後となる今回は、HTML5を含む次世代のウェブテクノロジーが進む方向性について見ていきましょう。 本連載の第1回では、HTM
ウォーターフォール型の開発では、要件定義、設計、プログラミング、テスト、運用といった作業工程が時系列に進んでいく。開発当初に作成される要件定義や基本設計のドキュメントは、そのプロジェクトに関わる人たち全員が目にするため、そのドキュメントにあいまいな点や複雑な点などがあれば、後々の行程で問題が発生し、品質と生産性に影響する。この課題を解消するのが、株式会社シーイーシー PROVEQサービス事業部の開発した日本語文のあいまい度診断ツール『ClearDoc』だ。 ウォーターフォール型の開発では、要件定義、設計、プログラミング、テスト、運用といった作業工程が時系列に進んでいく。開発当初に作成される要件定義や基本設計のドキュメントは、そのプロジェクトに関わる人たち全員が目にするため、そのドキュメントにあいまいな点や複雑な点などがあれば、後々の工程で問題が発生し、品質と生産性に影響する。この課題を解消
システムの多機能化により、プログラムの内容が複雑化している。テクマトリックスの『Understand』は、プログラムの構造を可視化することで、ソースコードの解析時間を大幅に削減できる開発支援ツール。今回は同社の福永一寛氏に、Understandの機能や特徴について聞いた。 システムの多機能化により、プログラムの内容は複雑化している。既存コードの改修や多人数での開発における情報共有のためには、プログラム構造の理解が必須だが、ドキュメントと実装内容とが乖離している場合も多く、解析自体に工数がかかることもある。テクマトリックスの『Understand』は、プログラムの構造を可視化することで効率的なソフトウェア開発をサポートするソフトウェア開発環境。「組込みシステム開発技術展(ESEC)」にて、同社の福永一寛氏にその特徴を聞いた。 ソースコードの解析作業時間を大幅に削減する『Understand』
Apps連携サービスのオンラインストア「Google Apps Marketplace」公開 11日、Googleの開発者向けイベント「DevFest 2010 Japan」が開催された。 今回の参加条件は少し変わった趣向が凝らされており、申し込みの際に出題されたDevQuizという全10問のスコア上位者のみが来場することができた。この件に関して基調講演では「招待制や先着順などのイベントの参加システムに疑問を感じていた。情報収集に意欲的な方が参加でき、楽しい物を考えてこのシステムに至った」(石原氏)と語られた。パススコアは46点中22点。2113人の申し込みがあり、461人が参加できる権利を勝ち取った。 基調講演では、まずはじめにGoogle東京研究開発センターのエンジニアリングディレクター ジョセフ・ターナスキ氏が登壇し、11日に発表されたオンラインストア「Google Apps Mar
はじめに 前回では、フロー制御のメソッドを使用してアクションからURLを遷移することなく別アクションを呼び出す方法、そしてリダイレクトを行う方法を紹介しました。これでコントローラに関する主要な機能についての紹介を終えて、今回からはモデルに移っていきたいと思います。 ところで、Catalystの5.7から5.8にバージョンアップされた際に、内部を実装する仕組みとしてMooseが採用されました。MooseとはPerl5にオブジェクトシステムを導入するためのモジュールであり、これまでのblessを使用したPerlのオブジェクト指向プログラミングよりも簡単に、より多くのことを実現できます。 本記事では、簡単にではありますがblessとMooseを比較したPerlのオブジェクト指向プログラミングについて説明し、その後でモデルの概要を説明していきます。 対象読者 Perlで簡単なスクリプトを作成したこ
しのぎを削る日本版twitterクローン 2009年に最もブレイクしたWebサービスは、やはり「twitter」だろう。2007年のSXSWでブレイクしたtwitterは、2009年6月のイラン大統領選後の騒動でRetweet(RT)とハッシュタグによる情報の拡散と集積の力を見せつけて、確実に次の段階に入ったことを感じさせた。もっとも、それが日本国内に入ってきたときにRTのパワーを感じさせた事件が「ヒウィッヒヒー」だったというのは彼我の違いを感じさせなくはないが、流行り物が好きなギークやマーケッターだけでなく、確実に一般ユーザーにも「つぶやき」が広まっていることを感じさせる1年だった。 それを受けて、12月に芸能人ブログの雄であるアメーバがミニブログ(twitterクローン)市場に本格的に参入した新規サービス「Amebaなう」は、この1年を象徴するようなサービスだと言えるだろう。Ameba
はじめに 「人類が使うすべての情報を集め整理する」 この壮大なミッションを掲げ設立されたGoogleは、そのミッションを遂行するべく、マシン・ネットワークなどのインフラ環境に莫大な金額を投資し、独自の技術を開発し続けています。Googleは検索エンジンだけにとどまらず、Gmail、Google Calendar、Google Maps、Google Analystics、Youtube、Google Apps、Google Earthなど、いまや全世界のユーザーが使用するサービスをリリースしており、その扱うデータ量、アクセス数は天文学的な数になることが予想されます。Googleはそれらのデータ量、アクセス数を高速にさばき、なおかつ耐障害性の高いスケーラブルな大規模分散システムを構築しています。 そんな中、2008年4月にGoogle App Engineがリリースされました。Googleが
Scalaとは Scalaは、2003年にJavac(コンパイラ)やJavaのGenericsの設計/開発貢献者であるMartin Odersky氏(スイス・ローザンヌ工科大学教授)によって、開発が開始された比較的新しいプログラミング言語です。Javaは実用言語として幅広いシステムで使用されてきましたが、下位互換性を保つという要請の中、言語としての機能強化がなかなか進まないといった限界も見えてきています。そのような現状もあることから、ScalaはJavaの後継として実用的な言語を目指して開発されています。 Scala最大の特徴は、Javaの良さを最大限継承しつつ、スクリプト言語や関数型言語の良いところも吸収し、先進的な機能/文法を取り入れている点です。また、今後のハードウェアのマルチコア化を見据え、簡易に並列処理プログラミングを行うことができるライブラリが付属しています。 Scalaのメリ
はじめに Ruby on Railsの登場から、Webアプリケーションを構築するためのフレームワークはさまざまなLL(Lightweight Language)系言語を中心に生み出されてきました。 本連載ではPerlで実装されたWebアプリケーションフレームワークであるCatalyst(カタリスト)について、基本的な仕組みや実装方法などをサンプルを交えて紹介していきます。 第1回目では、Catalystのインストール、簡単なアプリケーションを作成するまでの方法を説明しました。第2回目となる今回は、Catalystでの処理の流れや主要なコンポーネントについて、サンプルを交えつつ説明していきます。 対象読者 Perlで簡単なスクリプトを作成したことのある方 Webアプリケーションの基本的な仕組み(HTTPリクエスト、レスポンスなど)についての知識のある方 これまでの連載 初めてのCatalys
ソースコード読解力は個人差が大きい コードレビューなどで、他の人のソースコードを読んだり理解したりする速度が気になることはありませんか? また、読む速度や理解する速度がとても速い人がいると感じたり、自分が周りの人よりも速いと思ったりすることがあるのではないでしょうか。私たちの研究グループで実施した観察でもソースコードを読む速度は個人差が大きいことを確認しており、同じソースコードを理解するための時間に6倍の差がある事例を確認しています。 では、自分自身のソースコードを読む速度や理解する速度が、平均と比べて速いのか遅いのかを知るためにはどうしたらよいでしょうか? 最も簡単な方法は、社内などの身の周りの人とコードレビュー時間を比べてみることでしょう。他にも、参加者全員でソースコードを読むような社外勉強会に参加する方法もありそうです。 文献からは大まかな速度を知ることができる 書籍、標準、論文の情
はじめに Windowsの操作の基本はGUIですが、ファイル操作などを手早く行うためにコマンドプロンプトを使うこともあると思います。本稿では、Windowsのコマンドプロンプトをより便利に使うためのちょっとしたテクニックを10個紹介します。 対象読者 Windowsのコマンドプロンプトをある程度使ったことがある方 動作確認環境 Windows Vista Windows XP 一部の機能は、Windows XPでは利用できません。本文内で都度補足します。 コマンドプロンプトからエクスプローラに移動する コマンドプロンプトで作業中に、カレントディレクトリのファイルをエクスプローラで操作したくなることがあります。たとえば、カレントディレクトリにあるいくつかのファイルをほかのディレクトリにコピーする場合、各ファイルの名前をキーボードから入力するより、マウスを使ったほうが簡単です。そんなときに便利
増え続けるレガシーコード この記事を読んでいる皆さんの多くは、これまでたくさんのシステム開発に関わってきたことでしょう。仕様変更と闘い、納期に追われ、やっとのことで稼働したシステムも数多いはずです。厳しい状況になればなるほど、実際にコードを動かすことが最優先になり、「コードを保護する」ための単体テストの整備は後回しになってしまいがちです。 ところが、システム開発はシステムが完成して無事に稼働した時点で終わりではありません。ユーザーが実際に使い始めると、保守開発としてさまざまな仕様変更や機能追加が発生するのが常です。それらに対応するためには、厳しいスケジュールの中で、やっつけ仕事で間に合わせたコードに対して改修や機能追加をする必要があります。では、このような仕事にどうやって取り組めば良いのでしょうか? さて、前回の記事では、『レガシーコード改善ガイド』におけるレガシーコードの定義を紹介しまし
「レガシーコード」とは何か 最初に1つ質問です。皆さんは、「レガシーコード」と聞いて何を想像するでしょうか? 多くの方はCOBOLなどで書かれたメインフレームで動くコードを真っ先に思い浮かべるのではないかと思います。しかし、本当にそれだけでしょうか? ここでは「レガシーコード」という言葉を『何年も前に誰かが作り、内容が複雑で何をしているのかよく分からず、まともな仕様書もない』というコードを指すものとします。そう考えると、必ずしもメインフレームだけの話ではなくなります。この記事を読んでいる皆さんなら、そのようなコードを少なからず目にしていることでしょう。 現在の業務システムは、Java EEや.NETなどの基盤上に構築される、いわゆるオープンシステムが主流になっています。このようなオープンシステムであっても、構築されてから既に5年以上経過していることが珍しくなく、何度も手が加えられたコードは
はじめに 実を言うと、私はずっとJavaScriptを嫌っていました。JavaScriptのコードを書くのが嫌でしたし、いろいろなブラウザに対応するために大量のスクリプトコードを使わなければならないのも嫌でした。そうした点は今でも変わらないのですが、最近になってJavaScriptへの理解が深まったことと、jQueryという小さなJavaScriptクライアントライブラリのおかげで、クライアント中心のAJAXスクリプトコードを書かなければならないときでも恐怖を抱かなくなりました。それどころか、今では喜んで引き受けるほどになっています。クライアントロジックがもっと複雑になり、ブラウザの機能や実装の多様化がさらに進んだとしても、jQueryをはじめとするクライアントライブラリが、JavaScriptやHTML DOMを扱う際に必要な正規化を提供してくれます。 私はJavaScriptの初心者と
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く