- ベストアンサー
開発しやすいのはJavaScriptそれともActionScriptのどちらですか。
また、入門書の分かりやすさ、言語のとっつきやすさ、言語として自分なりのアイデアの可能性の広さはJavaScriptとActionScriptのどちらが有利でしょうか。 個人的にはActionScriptの方が有利ではないかと思います。 なぜなら、WEBの世界ではJavaScriptやAjaxを使ったアプリケーションがほとんど出回っていない。Googleなどレベルの高い企業がそういうアプリケーションを提供しているが、一般的な企業や個人がそういうアプリケーションを提供しているのはあまり見たことがない。もしかして、JavaScriptやAjaxの言語は敷居が高いのではないかと思います。 逆にFlashを使ったアプリケーションはとても数多く出回っているようです。その多くが個人で作られたものではないでしょうか。もしかしてActionScriptの方がとっつきやすく開発しやすいではないでしょうかと思ったりします。 ちなみに私は「開発のしやすさ」といった簡単な言語を選ぶことが重要なポイントだと考えています。皆さんの意見も知りたいので、それを質問してみました。ご回答をよろしくお願いします。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
>mixiの経営陣はperlが使える社員よりPHPが使える社員の方がコストダウンにつながると言っている 直接笠原さんから聞いたわけでなく又聞きなのですが、 初期のmixiのコードはかなり酷かったようです。 perlで書かれていたのですが、当時の技術者の腕が相当に未熟だったというのが当方と仲間内での見解です。 ゆえ、「perl→phpとする」と低コストだ言う話ではなく正確には「perlで改修を重ねる→phpで一から作り直す」というのが低コストであるという話であったと記憶しています。 実際にそうしたかどうかは聞いていませんが。 >任天堂やソニーのゲーム機の戦略を見れば明らかだと思いませんか。 上記二社は開発戦略より経営戦略が上手かったという認識です。 むしろ現場的にはかなり凝り固まっている印象があり、お世辞にも「環境が素晴らしい」とは言い難い気がします。 開発のしやすさと言う意味ではDSの開発環境、XBoxのwindows互換性などを考慮すれば これらのデバイスが開発戦略的には最も成功していると言えましょう。 「開発のしやすさ」は後に作られるものであり、それを理由に言語選びしているのではその人材は到底上のレベルに到達することはありえないと当方は考えます。 楽をしようと言う怠惰の精神は悪くはありませんが、怠惰の方向性が間違っています。 怠惰をするために努力するのが真のプログラマといえましょう。 >要するには仕事は経営陣の言語選びというセンスが重要になると思いますが…。 言語を決定するのは経営陣ではないですよと言う上げ足取りはさておき。^^; 仕事の上では「どのような人材を集め」「人材がフルに力を発揮できる環境を整える」ということが肝要です。 先述のゲーム2社は確かに環境を整えはしたでしょうが、成功とは無関係です。 新人ばかりで言語をこれから知ります!というプロジェクトはその時点で既に破綻しているといえます。 なぜなら「プロジェクトに最適な言語を選択する」ということが出来ないのですから。 >JAVAが登場したばかりの頃は多くの人々から支持されていなかったため、 >その言語を覚えることは博打や投資と同じく将来性があるかどうかは不確実性があったくらいですし…。 javaが成功したのはIBMの功績といっても良いくらいですからねぇ もっとも他のベンダー達みなの努力があってこその今ですが・・・ // 当方的には当時大多数と同じく「javaは沈む泥舟だな」と思ってましたが当てが外れました^^; >この点を考えれば、ある意味プログラマーは悲惨な職業かも知れません。 悲惨じゃないプログラマなんて居ない! ・・・と言うのはさておき。 ルーチンワークと異なり、常に「他人が作った新しいこと」を脳に詰め込んでいかねばならないので 研究職などと比べれば確かに悲惨かもしれませんね。 >個人で単なるプログラムを楽しむであれば、ActionScriptよりJavaScriptの方が良いかも知れませんね。 当方斜め前のデスクにデザイナが居るのですが、彼曰く 「両方知っているとデザインの幅がかなり広がる」 らしいです。ASでgadgetを作成し、JSではCSSと連携し全体的な動的デザインを行うと。 どちらが良い、ではなく両方マスターしちゃる、と考えると楽しみかたが増えるかもしれません。
その他の回答 (5)
- BlurFiltan
- ベストアンサー率91% (1611/1754)
#2です。 > テレビで見る単なるアニメはコマごと絵を描いて作成するため、 > プログラムは必要ないかも知れませんが、 > Flashはその絵をクリックしてAパターンとBパターンのどちらにするかや、 > その絵をA地点からB地点へ移動するかといった > プログラムを仕込むようなものでしょうか。 絵をクリックしてAパターンとBパターンにすること自体は ActionScript です。 しかし例えばボタンがあったとして, ボタンにマウスオーバー(ロールオーバー)したときボタンが光って, マウスダウン(ボタンをプレス)したときボタンが暗くなる。 というのには ActionScript は必要ありません。 ボタンシンボルのインスタンスを作成して, そのボタンシンボルの中に 「普通の状態」「マウスオーバー状態」「マウスダウン状態」 の絵を用意すれば自動的にボタンが光ったり暗くなったりします。 ボタンを理解しよう! http://1art.jp/flash/le/lesson8/lesson8.htm JavaScript では, 「ボタンクリックでAパターンとBパターンにする」という本編プログラム以外に, 「ボタンの絵柄を変える」ような動作もプログラミングしなければなりませんよね。 Flash であればその必要はないということです。 元々が「動くため(アニメーション作成のため)のソフト」なので, 動くこと自体はほとんどプログラムを必要としないということです。 つまり, Flash のアニメーション機能は難しいのではなく簡単なのです。 また Flash でコマアニメをする人はめったにいません。 絵を A地点からB地点に動かしたいとき, A地点に絵を置いて,タイムライン(時間軸)の後の方で,B地点に同じ絵をコピーして配置し, モーショントゥイーンでつなげば勝手にその間が補完されてアニメーションが作成できます。 「モーショントゥイーンを作成しよう!」 http://1art.jp/flash/le/lesson2/lesson2.htm あと, 「スクロールバー」や「表の表示」などなど…, アプリケーション開発のための色々な素材は, UIコンポーネント(ユーザーインターフェイスコンポーネント) という形で 最初から Flash に内蔵されて付いて来ます。 こんな感じのものです↓。 http://park18.wakwak.com/~little-box/actionscript/flash12.htm これらの仕組みを一々自分でプログラムしていたら, 「見た目のプログラム」ばかりに手がとられて 「本編のプログラム」を開発するどころではないことになってしまします。 これらの UIコンポーネント を使えば, テキストデータ や XML などのデータを用意しておいて, 「そのデータを表示させる」 という簡単な命令文だけで, 自動的にテキストやXMLを「動く表」などが作成できます。 そういうことですよ。 Flash は元々の出が,アニメーション(動く物を見せるための)ソフトであるため, インターフェイス(見た目)はすごく簡単に作成できます。 見た目を重視するのでしたら, Flash(ActionScriptという意味ではなくActionScriptを含めたFlash全体)の方が向いている気がします。 ただ, ActionScript は内弁慶なので,外のことは他の言語を使用するしかない場合が多いです。
お礼
ご回答ありがとうございました。 参考にさせていただきます。
- taco_1975
- ベストアンサー率37% (6/16)
ウチの会社では、JavaScriptは「枯れた技術」と呼んでいて、ActionScriptは「枯れる技術」と呼んでいます。 アプリケーション開発のプラットフォームとしてはFlashに未来はありそうですが、Webサービスとしての未来はJavaScriptに軍配があがる気がしてます。 3年前はまるで逆の事を考えていたので、3年後はまた逆転しているかもしれませんが…
お礼
ご回答ありがとうございました。参考にさせていただきます。 JavaScriptはAJAXの登場まで「存在の浮き沈みが激しい言語」と言われたぐらいですね。JavaScriptを使って動画配信なんて、いずれは登場しそうな気がしますね。
- wynnjp
- ベストアンサー率71% (5/7)
開発環境については一長一短がありますし、アイデアの可能性の広さも対象範囲が違うので明言を避けます。 「言語のとっつきやすさ」という面では、JavaScriptの方が有利だと思います。 これは、WEBの世界ではJavaScriptやAjaxを使ったアプリケーションの方がActionScriptを用いて作られたアプリケーションより「圧倒的に多く存在する」からです。 GoogleのようにAPIを公開してといった使い方であれば、確かに数は少ないかも知れませんが、逆にJavaScriptを全く使っていない企業サイトは今や存在しないのではというくらい使われています。 逆に、Flashの方は使われているのはほとんどMovieであってActionScriptではありません。Flashの場合、しっかりクラスを作って管理しない限りデザインとシステムが一緒になってしまっているので、デザイナーとプログラマーが分業しにくいということが普及の妨げになっているのではないかと個人的に感じています。 少し話が横道にそれましたが、使用者の多い言語の方とっつきやすい理由は想像がつきますよね?ちょっと行き詰まった時に検索エンジンで他の人の解決方法やサンプルを探すだけでずいぶん楽になります。 ただ、どちらでも実現できることは確かに多いですが、どのようなサイトを作りたいかを決めると、JavaScriptで開発しなければならないかActionScriptで開発しなければならないかがある程度決まってしまうので、どちらが有利かを考えるのは最終的に無意味かと思います。
お礼
ご回答ありがとうございました。参考になりました。 「アプリケーションが圧倒的に多く存在する言語」=(イコール)「言語のとっつきやすさ」ですね。なるほどです。
- BlurFiltan
- ベストアンサー率91% (1611/1754)
単純に回答すると, ActionScript と JavaScript の対象とするオブジェクトが違います。 ActionScript は あくまでも Flash 内のオブジェクトしか掴むことができません。 JavaScript は,ブラウザ や HTML をもオブジェクトとして操作参照できます。 私は ActionScript の方が専門ですが, JavaScript も当然頻繁に使用します。 例えば ActionScript では window.open すらできません。 仕方ないので,ActionScript 中でブラウザに JavaScript を実行させます。 http://www.openspc2.org/reibun/FlashMX2004/sub_window/index.html そんな感じです。 ActionScript は内弁慶で,Flash 内でしかブイブイ物を言いません。 Flash外のことは何もできないので, PHP や JavaScript にお願いします。 Flash は基本がアニメーションソフトです。 物を動かしたり豪華にレイアウトしたりということは確かに向いています。 「見た目(インターフェイス)を簡単に作れる」 という点では Flash の方が優れていると思います。 ※ Flash の方が優れているであって, 決して ActionScript が優れているという意味ではありません。 ActionScript なんて Flash のごく一部の機能です。 > 開発しやすいのはJavaScriptそれともActionScript 見た目重視であれば, Flash(ActionScriptではない意味のFlash) の方が良いのではないかと思います。 しかし,手の届く範囲は JavaScript の方がはるかに大きいです。
お礼
ご回答ありがとうございました。参考になりました。 FlashがActionScriptの言語というより単なるアニメーション作成ソフトに過ぎないのは全く考えもしなかった。意外だった。 HTMLを演出したければJavaScriptの言語を使って、どのようなプログラムを作成してどのように演出するとすれば、Flashはアニメーションを演出したければActionScriptの言語を使って、どのようなプログラムを作成してどのように演出するものだと解釈しても宜しいでしょうか。 テレビで見る単なるアニメはコマごと絵を描いて作成するため、プログラムは必要ないかも知れませんが、Flashはその絵をクリックしてAパターンとBパターンのどちらにするかや、その絵をA地点からB地点へ移動するかといったプログラムを仕込むようなものでしょうか。 個人でFlashでActionScriptよりアニメーションを作るのはあまりにも敷居が高すぎると思います^^; やはり、個人で単なるプログラムを楽しむであれば、ActionScriptよりJavaScriptの方が良いかも知れませんね。
- wp_
- ベストアンサー率54% (132/242)
無粋な突っ込みですが。 ActionScriptもJavascriptもECMA-262に準拠したシステムです。 違うのはサポートしているシステムがブラウザなのかflashプレーヤなのかということです。 いわゆる適材適所です。 ゆえ、 >言語のとっつきやすさ >言語として自分なりのアイデアの可能性の広さ この辺を比較すること自体がナンセンスです。 ノーマルタイヤで走るか、スタッドレスで走るかの違いに等しいと言えましょう。 // 雪うざい。 アクセル踏んでハンドル握ってブレーキ踏んでと言った一連の運転技法に差異がないのと同様です。 違うのは路面の状態とアクセルの踏みかたなどの細かい作法だけです。 具体的にはrendererやaccesserなど内部処理に関連する箇所が違うくらいですね。 >入門書の分かりやすさ この辺は個人差があるでしょうからなんともいえません。 >ちなみに私は「開発のしやすさ」といった簡単な言語を選ぶことが重要なポイントだと考えています。 個人開発ならそれでも良いでしょう。ですが仕事でそれを言うと破綻します。 開発効率だけでなく、システムとの親和性や拡張性、既存ライブラリの適用など「言語の選択」には様々な理由があります。 GoogleAPIが良い例です。 Googleのもつ位置情報などはたまたまXMLが公開に最適で、ブラウザで公開するにはたまたまJavascriptが最適だっただけのことです。 入門として学ぶのであれば食わず嫌いはやめて時間と苦労を惜しまず全ての言語を舐めるべきでしょう。 ActionScriptだけ扱えても何の自慢にもなりませんし、そんな人材は五万といると思わねばなりません。 >JavaScriptやAjaxの言語は敷居が高いのではないかと思います 当方的には汎用なツールを別途購入せねばならないことから Flashの方がはるかに敷居が高いと感じます。 技術的な意味での敷居でしたら先述の通り全く変わりません。
お礼
ご回答ありがとうございました。とても参考になりました。 時間と苦労を惜しまず全ての言語を舐めるということは大切ですね。 やはり、仕事では「開発のしやすさ」を選ぶということは破綻するということは、確かにそうかも知れませんが、mixiの経営陣はperlが使える社員よりPHPが使える社員の方がコストダウンにつながると言っているみたいし、任天堂やソニーのゲーム機の戦略を見れば明らかだと思いませんか。要するには仕事は経営陣の言語選びというセンスが重要になると思いますが…。JAVAが登場したばかりの頃は多くの人々から支持されていなかったため、その言語を覚えることは博打や投資と同じく将来性があるかどうかは不確実性があったくらいですし…。この点を考えれば、ある意味プログラマーは悲惨な職業かも知れません。
お礼
ご回答ありがとうございました。 参考にさせていただきます。