ファイルシステムでHello World
この連載では"ファイルシステムの作り方"をご紹介します。第1回目の今回は簡単なイントロダクションと単純なHello Worldファイルシステムの作り方を説明します。次回以降で詳しい解説と本格的なファイルシステムの作り方をご紹介しようと思います。
作者 Jon Rose, 翻訳者 金森 諭 投稿日 2008年4月24日 午前12時2分
この記事ではAdobeのJames Ward氏(source)がこの記事(参考記事)とは別のFlexに関するトップ10を教えてくれる。Flexはオープンソースのアプリケーション開発環境で、Flash Playerを使ったウェブのリッチインターネットアプリケーション(RIA)を作ることができ、またAdobe AIRを使えばデスクトップで動くアプリケーションも作れる。総合的に見てFlexは使いやすくパワフルなフレームワークだが、今回はFlexアプリケーションを作る時によくある間違いに注目してみよう。
Flexを初めて知る人はInfoQの最近の記事Adobe Flex Basics(参考記事)を読んでもらえばこのフレームワークについての簡潔な概要を知ることができる。さて、10の間違いを挙げよう。
Javaデベロッパにとってオブジェクト指向のActionScriptとUIマークアップ言語を習得するのは全く簡単なことです。しかし(Javaの)デベロッパにとって壁となるのは、RIAテクノロジにはデベロッパのスキルだけでなくデザイナのスキルも必要とされることです。
コンテナを無作為に使ってしまうことは、Flexのパフォーマンスを最も下げる原因になります。多くのコンテナを何重にも入れ子にするとアプリケーションのパフォーマンスを妨げてしまいます。これはFlexデベロッパが突き当たる一番のパフォーマンスの壁なのですが、幸運なことに、これは100パーセント回避可能な問題です。
ほとんどのアニメーションは長すぎです。長くて遅くて退屈でやりすぎです。きちんと加減してほしいものです。しかしこのような経験をする中で、馬鹿げたアニメーションが終わる待つくらいなら何か他のことをするという自分の性格を知ったのは新しい発見でした。
私がアニメーションを非難していると誤解しないでください。私が非難しているのは、その目的の割りには長すぎて時間を無駄にさせるアニメーションだけです。全てのアニメーションの本質には目的があります。自分の使っているアニメーションの目的を見極め、状況に合わせて使うようにしましょう。
共有で使われるファイルなどをアプリケーションの実体であるSWFファイルとは別のファイルにすることで、アプリケーションのサイズを小さくできます。これらの共有ファイルはクライアント側で別々にダウンロードしてキャッシュされますが、一つのクライアント上にある複数のFlexアプリケーションが同じ共有ファイルを使う場合には、そのアプリケーションのいずれかで1回だけダウンロードすれば、他のアプリケーションでも利用できます。このような共有ファイルをRuntime Shared Librariesと呼んでいます。
フレームワークの機能であまり使われてないものにはアクセシビリティのビルドイン機能がある。Adobeのlivedocs(source)にアクセシビリティ機能について詳しい情報が載っている。アクセシビリティのビルドイン以外に、このフレームワークはローカリゼーションの機能(source)も提供している。最新のFlex 3フレームワークの機能については、AdobeのGetting Started(source)をチェックしてみるといい。
この連載では"ファイルシステムの作り方"をご紹介します。第1回目の今回は簡単なイントロダクションと単純なHello Worldファイルシステムの作り方を説明します。次回以降で詳しい解説と本格的なファイルシステムの作り方をご紹介しようと思います。
あなたのチームが、既存アプリケーションを「シングルトンの入れ子」設計から依存性注入(DI)へ移行しようとしているなら、この論文に心引かれるでしょうが、DIへの移行は難しいことが分かっています。論文にはGoogleのJava DIコンテナ(Guice)の名を入れていますが、Javaや.NET、Python、Rubyなどにも当てはまります。
アジャイルの「自己組織化チーム」のパラダイムでは、チームのメンバに新しいスキルが要求されます。この記事では、発展しつつあるチームの自己組織化を壊さずに、新たなスキルを伝えるためのいくつかの戦略を提案します。そして、新しいスキルを身につけるのに役立つ資料のありかを提示しています。
今回の記事では、非同期ワークフローと呼ばれるワークフロー機能の面白い使用法を考察しますが、非同期ワークフローは.NETの非同期プログラミングモデルを単純化することを目的としています。
アーキテクチャは一般に、Word文書に主として見られるような極めて実体のない、ソフトウェアシステムの概念的な側面であるか、または完全に技術によって駆動されるものかのいずれかです。そのどちらも間違っています。では、どう対処すればよいでしょうか? この記事ではアイデアを説明します、そしてアプローチのキーポイントを要約します。
Werner Schuster氏が、簡単な例を示しながら、Javaのようなプロパティをメタプログラミングを使ってRubyに追加する方法を示します。
現在のRIAアーキテクチャにおいて、クライアント/サーバーの通信は重要な位置を占めています。本稿では、James WardとShashank TiwariがアドビによるオープンソースのBlazeDSメッセージングサーバーの世界へ飛び込みます。
ウィルス対策ソフトや情報漏えい防止用のソフトは、いわば影の存在です。ユーザの操作性やGUIを工夫する以上に、いかに目立たない存在となるかにその技術を注ぎ込んでいます。ここでは日立ソフトが開発した「秘文」の事例を紹介します。
No comments
返信