見出し画像

【Swift(スウィフト)】プログラムコードを書かない勉強記録

プログラム言語のSwift(スウィフト)の勉強をしようと思い下記はその勉強記録。

プログラムの時代的な流れ

Swift(スウィフト)は、AppleのiOSおよびmacOS、Linux、Windowsで利用出来るプログラミング言語である。Worldwide Developers Conference (WWDC) 2014で発表された。Apple製OS上で動作するアプリケーションの開発に従来から用いられていたObjective-CやObjective-C++、C言語と共存できるように、共通のObjective-Cランタイムライブラリが使用されている。

Swiftは、動的ディスパッチや動的バインディング等のObjective-Cの特長を受け継いでいる一方で、Objective-Cより「安全」にバグを捕捉できることも意図している。また、タイプや構造体、クラスに適用可能なプロトコルによるシステムの拡張性の概念は「プロトコル指向プログラミング」と呼ばれる 。Swiftは、マルチパラダイムのコンパイラプログラミング言語であるが、XcodeのPlaygroundsの上やターミナルでインタラクティブにデバッグする事が可能である。

【プログラム言語】Swift(スウィフト)の特徴

AppleはSwiftの発表に際して「モダン、安全、高速、インタラクティブ」を大きな特徴として挙げている。2014年にリリースされた誰でも使えるオープンソースのプログラミング言語。

モダン:クロージャやタプル、ジェネリックプログラミング、Optional型の採用などが挙げられる。モダンの辞書単語の意味合いとしては現代的、当世風。

安全:静的な型チェック、変数の初期化の強制、数値型のオーバーフローの検査、自動参照カウントによるメモリ管理などが挙げられる。

インタラクティブ:Swiftはコンパイラ言語でありながら、インタプリタとしてスクリプトを実行することも可能で、対話実行環境 (REPL) も用意されている。「C言語の荷物のないObjective-C」と表現している。Objective-CはC言語をベースにした言語。歴史あるC言語がベースであることから、豊富なライブラリがあるのが強み。

【プログラム言語】Objective-CとSwiftの解釈|個人の解釈

モダンで安全、インタラクティブが特徴であるとAppleが発表していることから、安全は自動化でトランザクション(処理転換)されるだろうと考えられる。インタラクティブはライブラリが強みであり『C言語の荷物のないObjective-C』をSwift(スウィフト)と表記していることからライブラリ(図書館や倉庫などの保管庫)から引き出すor引き出し利用する、使用する、扱う、部品として取り扱うなどと言ったことがいえるだろうと考えられる。

問題なのはモダンである。辞書で調べると『現代的な』とであるので柄かと考えたがもう少し抽象度をあげて考えると今風のものであるのはわかるが“それで十分である”というような意味合いかな~と推測する。

『2014年にリリースされてからどんどんアップデートしていき使いやすくなった。』というような考えからなるといい意味ではあることは分かる。

サンプルコード


出力の仕方はprint。

print( "Hello, World!" ) // これだけで動いて、Hello, World! と出力される。

Printの辞書での意味は、印刷する、印刷して出版する、プリントする、(…に)押しつける、印する、押印する、(…を)捺染(なつせん)する、(…の)模様をつける、焼き付ける、(…を)活字風に書く。

※必要な時に読んでください

動詞:他動詞

1
a〈本などを〉印刷する,印刷して出版する
b〈印刷機・コンピューターなどが〉〈文字・写真などを〉印刷する,プリントする

2〔+目的語(+前置詞+(代)名詞)〕
a〈印などを〉〔…に〕押しつける,印する,押印する 〔on,in〕.
b〈布地などに〉〔…を〕捺染(なつせん)する,〔…の〕模様をつける 〔with〕

3〈写真を〉焼き付ける

4〈…を〉活字風に書く

5〔+目的語+前置詞+(代)名詞〕〔心・記憶に〕〈…を〉刻みつける,印象づける 〔on,in〕

自動詞

1 [well などの様態の副詞を伴って]
a(…に)印刷する.
b〈フィルムが〉(…に)写る,〈陰画が〉(…に)焼ける

2出版する,出版を業とする

3活字風に書く

まとめ

Swiftでは自動参照カウント (Automatic Reference Counting) ARCでアプリが使うメモリを追跡管理する。ARCはクラスインスタンスが使われなくなった時に自動的にそれが使っていたメモリを開放する。Objective-Cで参照カウント方式を使用する場合のように、明示的にrelease、retainを記述する必要はなく、そもそも記述することができない。

自動詞の意味合いがSwift(スウィフト)のprintにこもっているのであれば本の出版のソフトウェアとして使われているものがSwift(スウィフト)だったということも考えられる。Macbookはletter(手紙)を書く際におそらく作られたのが語源だとするとSwiftは本か~と連続的な点ではあるが納得できるので書いていて笑った。iphoneはおそらく音楽を聴きたくて作ったとipodを見ているとそうかもしれないなと考えられたのだった。

【最近読んだ本】

イシューからはじめよ-知的生産の「シンプルな本質」:安宅和人』

タオは笑っている-改訂版-愉快な公案集-:レイモンド・M・スマリヤン』


この記事が気に入ったらサポートをしてみませんか?