※ ChatGPTを利用し、要約された質問です(原文:データ型の必然性について)
データ型の必然性について
このQ&Aのポイント
Flashではデータ型を指定する必要がなく便利だが、指定することでプロの人が使いやすくなる
データ型の指定による影響はないが、ソースコードの可読性を向上させるために使用される
データ型の必然性に疑問を感じるが、誤った使い方を防ぐために指定される場合もある
Flashに限らない話かもしれませんが、Flashでは変数にデータ型を指定する「必然性」がありません。例えばJAVAでは変数に必ずデータ型を指定する必要がありますが、Flashは指定しなくても可です。他に例を挙げれば、Perlも同じくデータ型を指定する必然性はありませんが、文字列と数値の区別はデフォルトでされています。等価式を書く際、数値の等価は==、文字列の等価はeqと書くように。しかしFlashは数字も文字列も==が使えます。この点、Flashは区別が無くて使いやすいというべきか、いいかげんというべきなのか・・・。
本題ですが、先述したとおりFlashではデータ型を指定する必然性がありません。にも関わらず「var i:Number;」のようにデータ型を指定したスクリプトを書いている人を特にプロの方でよく見かけます。あとは返り値の無いfunctionで「function aaaa():Void {」など。これらは何のためにわざわざ指定されているのでしょうか?誤った使い方をされないためですか?
同じ理由でvarの必然性にも疑問を感じます。あってもなくても動作に影響は全くなし。ただ、これは書いてくとソースが見やすくなるので、視覚的利便性の目的で使うことにしています。