dynamic var を理解するための極意 – swift
Swiftに置けるdynamic キーワードに関して、我々が知っておくべきことは、たった一つだけで大丈夫です。それは「dynamicキーワードはObjective-Cのランタイムを用いるために用いる」ということです。言い方を変えるなら「Objective-Cのランタイムを用いるためにはdynamicキーワードが必要」ということです。ランタイムと言うのは、開発の機能を省き、実効の機能のみを取り出したプログラムのことです。噛み砕いて言うなら「Objective-Cのメソッド(機能)をSwiftで使うためにはdynamic キーワードが必要」と覚えていいかもしれません。
swiftに置けるdynamic キーワードに関して、詳しく知りたければ、もっと色々ググって沢山リファレンスを読めばいいと思うけれど、多分、そんなものを読んでも分かりずらいと思っている方がいるかもれないと思って書いてます。だって、実際自分がよくわかってません。Objective-CやCを嗜んでいる人じゃないと深く掴めないんじゃないかと思うんだよ。痛恨の極みです。
ただ、こういう風な状況に陥った場合に大切なのは、理解するよりも前に「理屈として覚えてしまう」ということです。理解っていうのは大変難しい行為ですので、大切なのは「こういうもの」と割り切って丸暗記して使えるようになってしまえばいいんです。暗記って言うと、なんだか印象が悪いのかもしれないけれど、こういう作業は、dynamic に限らず、プログラミングや、もっと言えば数学や物理や、理科系の学問を習得する時には大切な心得です。
理科系の学問ほど、まずは暗記力が必須です。頭に入ってないと、論理的な思考は停止します。