メイン 迷える子羊の部屋【初心者専用】 strictモードについて | 投稿するにはまず登録を |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
ebi | Åê¹ÆNo.49441 投稿日時: 2012-10-17 20:37 |
フォーラム芸人 居住地: nagoya 投稿: 926
使用環境:
.6.8 CS6 <参考書> ・基本からしっかりわかるActionScript 3.0(既読) ・ActionScript3.0プロフェッショナルガイド(進行中) ・ActionScript3.0パフォーマンスチューニング(未読) ・ActionScript 3.0 逆引きクイックリファレンス(購入予定... |
strictモードについて えびです。おひさしぶりです。
AS3はじめました。またお世話になります。(-人-) rootに配置されたMC内から以下のようにして、
まんまと「1061: 未定義である可能性のあるメソッド gotoAndStop を(以下略)」 と怒られてしまいました。これについては、 MovieClip(root)とするか、strictモードをOFFする事で解決できると分かりました。 お尋ねしたいのはこの「strictモード」についてです。 単刀直入、これは何なのでしょう? 「そんなの自分で調べろ!」という声が聞こえてきそうですが、 案外「strictモードとはこういうもの」というズバリの情報に行きつかないもので… (多いのは前述のようなエラーに対する対応法として「OFFにしましょ」的な) strictというからには厳密にチェックされるんだろうなーと予想はつくのですが、 エラー対処法という感じで「OFFにしましょ」とわりとアッサリ書かれているので、 「あれ? だったら、最初から無くても良くない? 」と思ったり、 「いやいや、わざわざ存在してデフォルトONって事は何か意味が… 」と思ったり、 かと思えば、strictモードをOFにした状態は「standardモード」と呼ばれると知り、 「スタンダード…標準…こっちか!? 」とまた混乱したり… というわけで、思い切ってお尋ねしようと思いました。 前置き長くなりましたが、お尋ねしたいのは2つです。 1.一般的にはstrictモードはONなのでしょうか。OFFなのでしょうか。 それによりscriptが変わってくるとなるとこれから勉強してくにあたり、 わりと大きな分岐な気がしまして。 2.strictモードのON/OFFによって実行時の動作に影響があるのでしょうか? コンパイル時のチェックのみに関係するもので実行には影響ないのか、 実行時の動作に大きく影響するのか、影響するけど知れたもの程度なのか、 どうなのでしょう。 以上、宜しくお願いします。 |
野中文雄 | Åê¹ÆNo.49442 投稿日時: 2012-10-18 6:06 |
ちょんまげら 居住地: 東京 投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1) |
Re: strictモードについて ほぼ「ズバリの情報」かと。
「rootプロパティでメインタイムラインの関数にアクセスできない」 引用: ebiebiさんは書きました: 1. デフォルトでは「strictモードはON」です。データ型の指定と似て、外してもスクリプトが正しく書かれていれば動きます。ただ、プログラムをかっちり書きたい人たちは、一般的に活用していると思います。 2. 上述のとおり、スクリプトが正しければ動作に問題はありません。strictモードを外すと、実行時にエラーがあってもそれを示さず、黙って動かないことがあります。 引用: 1.一般的にはstrictモードはONなのでしょうか。OFFなのでしょうか。 |
ひろゆき | Åê¹ÆNo.49445 投稿日時: 2012-10-18 12:44 |
ちょんまげら 居住地: 東京砂漠 投稿: 4403
使用環境:
10.8.5 Flash Professional CS4/CS6/CC Safari 6.1 |
Re: strictモードについて 端的に言えば、「エラーを出力してくれるのは、有り難い」ってことです。
もうこれに尽きます。 むしろ、strictをオフにする意味の方が分かりません。 standardってのは、そっちが基準というわけではなくて、 strictの対義語として適切な命名ができずに、standardになったのではないかと。 その証拠に、デフォルトは、strictです。 個人的には、standardモード使ったことないです。 AS3.0の触り始めは、なにをするにもエラーが出力されちゃうことばかりで、 うるさく感じることもありましたが、いまではエラーが出ないとむしろ不安です。 お前のこのコードの記述のしかた間違ってるやん!って通知してくれるってことなので、 エラーには慣れてください。さもなくば、AS3.0は断念すべき。 あと、strictをオフにすると、 おせっかいなコンパイラがエラーを通知しないので、うるさくなくなった、というだけで、 自分が書いたスクリプトのエラーがなくなったわけではないので。 まぁ、なんでもかんでもFlashがいい感じに調整してくれるAS2.0の流儀は 通用しないということです。はい。 むしろ、エラーを吐かれたときは、そのエラー内容が解決のヒントになるので、 質問などする際にも、より具体的に提示すべきでしょうね。 なんかエラー出ました。は、何の情報提供にもならない。 実験的に、stirictをオフにして、1ヶ月くらいAS3.0やってみてはどうですか? エラーが出力されずに静かになる代わりに、AS3.0の学習は進まなくなると思いますけど。 エラーが出て半人前、エラーに対処できて一人前。かと。
|
ebi | Åê¹ÆNo.49446 投稿日時: 2012-10-18 14:20 |
フォーラム芸人 居住地: nagoya 投稿: 926
使用環境:
.6.8 CS6 <参考書> ・基本からしっかりわかるActionScript 3.0(既読) ・ActionScript3.0プロフェッショナルガイド(進行中) ・ActionScript3.0パフォーマンスチューニング(未読) ・ActionScript 3.0 逆引きクイックリファレンス(購入予定... |
Re: strictモードについて 野中さん、こんにちは。(´ー` )」
ご紹介頂いた記事「ズバリ」でした。ありがとうございます。 同じ並びのAS3.0の項目も読ませていただきます。感謝です。 引用: スクリプトが正しければ動作に問題はありません。 standardモードではエラーが出ないスクリプトなら “正しいスクリプト”と言って良いものなのでしょうか。 (「野中さんが」的な揚げ足とりな意味でなく一般的に) |
ebi | Åê¹ÆNo.49447 投稿日時: 2012-10-18 15:15 |
フォーラム芸人 居住地: nagoya 投稿: 926
使用環境:
.6.8 CS6 <参考書> ・基本からしっかりわかるActionScript 3.0(既読) ・ActionScript3.0プロフェッショナルガイド(進行中) ・ActionScript3.0パフォーマンスチューニング(未読) ・ActionScript 3.0 逆引きクイックリファレンス(購入予定... |
Re: strictモードについて ひろゆきさん、ご回答ありがとうございます。
こちらは感覚的な意味で、ズバリ!ドーン!でした。 どちらかというと求めていたのはこっちかもです。 strictオフ or キャスト――と並んだ対処法は、 「どっちでもいいけどどっちにしとく?」程度にも 受けてとれちゃいますが、やっぱ重要ですよね。 デフォルトじゃないのにstandard?の謎もスッキリ納得です。 引用: むしろ、strictをオフにする意味の方が分かりません。 最初からこう言われば、ふわっとした感じにならなかったんですが。 っていうか、そもそも、なぜモードが2つ用意されてるんでしょうかねぇ。 引用: 実験的に、stirictをオフにして、1ヶ月くらいAS3.0やってみてはどうですか? 楽なのドッチ? みたいな事を尋ねたかったわけではないので。 引用: エラーが出て半人前、エラーに対処できて一人前。 |
野中文雄 | Åê¹ÆNo.49448 投稿日時: 2012-10-18 16:08 |
ちょんまげら 居住地: 東京 投稿: 4531
使用環境:
CS5.5 .6.8 Vista Home Premium (SP1) |
Re: strictモードについて ランタイムがチェックしないものを、承知で書いて動いているかぎり「正しいスクリプト」といえるでしょう。ただ、「良い習慣」(good practice)とはいえず、何かの弾みにヘタこくよ、という警告をstrictモードは伝えています。
ちなみに、前の回答で例に出したデータ型の指定は、その型によって書出すバイトコードが最適化されます。したがって、動くという結果は変わらなくても、正しく指定した方がランタイムでもお得です。 引用: ebiebiさんは書きました: |
ebi | Åê¹ÆNo.49464 投稿日時: 2012-10-23 22:48 |
フォーラム芸人 居住地: nagoya 投稿: 926
使用環境:
.6.8 CS6 <参考書> ・基本からしっかりわかるActionScript 3.0(既読) ・ActionScript3.0プロフェッショナルガイド(進行中) ・ActionScript3.0パフォーマンスチューニング(未読) ・ActionScript 3.0 逆引きクイックリファレンス(購入予定... |
Re: strictモードについて えびです。
遅くなってすみません。野中さん、ご回答ありがとうございました。 じゃじゃ馬ならし、悪戦苦闘しておりますが、がんばります(´ー` )/ 引用: 正しく指定した方がランタイムでもお得です。 なるほどです! good practice、心掛けます。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
投稿するにはまず登録を | |