愛車:マツダアテンザ
Webを中心とした、ビジネス&テクノロジーに関する思いつき
by F-shin
[ このサイトについて ] [ F-shinについて ] [ トップ ]
iPhoneアプリ
author:えふしん
photo_20.jpg
藤川真一について


初代モバツイ開発者
想創社再創業 / KMD博士課程
著書〜100万人から教わったウェブサービスの極意―「モバツイ」開発1268日の知恵と視点 [Kindle版]
お求めやすい夏休み特価!
このカテゴリ[Web系]の最新30件
本ブログは移転しました インターネットの遊び方を身につけよう ネットでの選挙活動と投票率 Web2.0がうまくいかなかったワケ WebにおけるMVCアーキテクチャの勃興と変遷 何故、PCはブラウザ、スマホはアプリなのか。 言っとくけどスマホは退化でもあるからな。 アイコン5000円とか、Web受注(発注)価格について。 残念なWeb論の骨子 HTMLってホントよく出来てるな。 「やまもといちろう×イケダハヤト対談イベント」のログを読んで ネットサービスの成功者は「とりあえず受託」という言葉使うのやめません? 全収集型RSSリーダーの終焉とソーシャル化するWeb 頑張ると報われるプログラマーの社会とは。 Perlが○○な話 アメリカ製品のすごさと不思議とワイヤフレーム どの人件費を考えても絶対にお得!利用規約ナイトがきっかけの本が出ます。 クラウドやモバイルを、もっと仕事で活用したいけど、どうやって会社を説得したら良いかわからない! スマホアプリらしいUXとは。 インターネットの変化に対して起こるモヤモヤすることを考え、整理する活動 Facebookは見なくてもいい情報が出てくるSNS 「あなたは影響力があるから、そんなことを言っちゃいけません」の問題点 Facebookに時間を取られすぎる対策 Paypalの本人確認がむかつく件 ネット系イベントがとても主催しやすくなった件 モバイルファーストが失敗なハズはないが、今はまだ時期尚早 やりがいはソートできない…非情なデータベース社会 2012年までのふりかえりと2013年へ ブラウザという平面の限界 ブログ記事の流通の難しさ
[このカテゴリをもっと見る]
Powered by
Movable Type

October 22, 2005

スポンサーリンク

Ajaxな制御とかActiveXとの通信とか、やれダイアログの制御や、それらが連携するデータ登録プロセスのフロー制御、クライアントサイドのValidation、フォームに関するDHTMLのUI制御とか組み込むのを、もろもろ他の人に任せていたら、JavaScript (+ VBScript)が1000行を超えてるわ、DHTMLとして使うHTMLフォームのブロックが、ほとんど同じで微妙に状態が違うだけのHTMLが4つも書いてあるわ最悪。

うーん、割と気軽に複雑な設計をしちまったのかなぁと、ちょっと後悔しています。

まだ世の開発者の多くは、JavaScriptは全然得意ではないと思っています。というか、僕も偉そうなことを言える立場ではありませんが、むしろ不慣れではないでしょうか?

JavaなどOO言語で、言語仕様によるコード文法の強制が確立している言語なら、開発者が正しいコード記述にキャッチアップするのは難しくないハズなのですが、JavaScriptは、まず自由な記述ができます。いわゆる普通のJavaScriptは、Flashでいうなら、タイムライン上に直接ActionScriptを記述するようなスタイルと言えます。また、データを出力する基本的なアプローチも違っていて、HTML + JavaScriptをサーバサイドで組み立てるときは、「クライアントサイドは、ただの文字列処理」感覚でソースコードを作りがちなんですね。

開発者のくせに同じようなHTMLを4つも書いてしまって、何の疑問も思わないというのは、HTMLやJavaScriptをJavaと同じようなプログラムだと認識していない証拠です。JavaならMVCを遵守したがるのに、HTML + JavaScriptに出力する文字を独立させようと意識しないのはおかしい話です。サーバサイドのスタンスで物事を考えているんでしょう。

JSPからは、できる限りデータだけを構築すべきだと思います。JavaScriptのオブジェクトや配列だけを構成し、画面の構築はJavaScriptの仕事にするべきです。

HTMLとサーバサイド出力が密結合してしまっていると、いざリファクタリングしようにも、サーバサイドからの出力コードがあっちこっちに埋まっているのは非常にやりにくい。これでは今一度、組み直すぐらいの決断が必要になってしまいます。

GoodPic.ComさんのAjax時代の、サーバ<->クライアントで協調するMVCフレームワークを見て、このネタを書く気になったのですが、確かにクライアントサイド実装のテンプレートエンジンやデータロジックなど各部を自動化してくれるフレームワークを使って、強制的にMVCを切り離すことが重要だよなぁと思っています。

ただ、自分としては今はまだフレームワークに頼るほどではないけど、基本的なプログラミングの仕方は変わってほしいというのが、今、JavaScriptを書くエンジニアに意識してほしいことです。少々ベタでも良いから、OOなJavaScript記述を意識して、少しでも効率の良いコードを書くことを実践するようにしてほしい。

僕が強烈にほしいと思っているのは、参考にすべきJavaScriptのコードパターンをまとめた本です。単純に世の中に出回っているフレームワークのコードを読めば学べるとは思いつつ、それはそれとしてバイブルとすべき文法本がほしいところです。

僕もHTML + JavaScriptにおいて、UIとロジックの切り離しのコードは全然できていなかったりします。いろいろUI制御があると、直接、ロジック内から操作する方が楽ですから、油断するとすぐUIに依存したスクリプトを書いてしまいがちだったりします。

しかし、Ajax時代にその10行を楽すると、結局、1000行に繋がってしまうということがよくわかりました。でもAjax時代のJavaScript記述の意識も持っていない開発者に口頭だけでOO的JavaScript記述を意識させるのは難しいと思っていて、ちょっと面倒でも効率よく、ソースコードをまとめる意識がもてるようになって、オライリーよりも読みやすい「ちゃんとしたJavaScriptを書けるようになる本」をどこかの出版社で作ってもらえませんでしょうかねぇ。

スポンサーリンク
■同じカテゴリ[Web系]のエントリー
<<前の記事 mixi仕様変更UIとAjax
>>次の記事 SNSって何よ。私見的再考。
■このblogの書き込み最新3件
本ブログは移転しました インターネットの遊び方を身につけよう トトロが陽なら、『風立ちぬ』は陰?〜『風立ちぬ』の感想