ベイズの公式

ベイズの公式

2015年3月20日金曜日

Swift学習、第一段階は終了

Swift練習問題を完了

Objective-Cで自作したフレームワークを一つと、サンプルアプリを2つ Swiftでの書きなおし作業が終わった。これで大概のSwiftの言語機能を使ってみたことになると思う。おおよそ下記の要素について理解できた。(文法の暗記はしてないが、マニュアルみれば即対応できるレベル)


  • class とstruct
  • イニシャライザ、デイニシャライザ
  • 型推論
  • var と let
  • optional変数、メソッド
  • プロパティ、計算プロパティ
  • subscript
  • Array, Dictionary
  • protocol
  • generics, typealias
  • enum の特徴
  • switch 文とレンジ表現
  • dynamicType, Class.self
  • 例外がないこと
  • @objc
  • 無名関数、closure
  • extension
  • Equatable, Comparable
  • Xcode6 の cocoa framework 作成機能
  • 名前空間

Swiftの印象

トータルな印象は良い。これからは原則Swiftで開発しようと思う。
基本的なコーディングの気分はJavaに近く、Javaの欠点を上手く取り去って、C++的な気持ちよさや最近のLL言語っぽい簡潔さが取り入れられていると感じた。

例外機構は今後取り入れられるのだろうか?いらない気もするけど。

2015年3月7日土曜日

Swift とトップダウン勉強法

訳あって Swift プログラミングを勉強しはじめた。

Swift は Apple が昨年発表した新しいプログラミング言語である。型推論や関数型プログラミング、言語標準に組み込まれたコンテナや辞書の導入など、最新のプログラミング言語の進化潮流を取り入れた言語である。

勉強法はいつものとおりトップダウン式である。既に出来上がっている知識体系を学ぶときは、これが一番速い習得方法だ。教科書と問題集を用意したら、教科書の目次だけを頭にいれ、いきなり問題集にとりかかる。これがトップダウン式。

プログラミング言語のトップダウン式勉強の場合は、教科書=言語仕様書、問題集=実際のプログラム題材となる。

Swiftの場合も、Appleの言語仕様書は目次をざっと目に通す程度で留めておき、とにかく以前Objective-Cで書いたコードを移植してみている所である。

コード題材は自分の慣れ親しんだ定番を作っておくとよい。私の尊敬する先輩の方々は、こうした題材を用意している人が多かった。新しい言語や新しいOSに出会ったら、かならずその題材をそこで実装してみるのである。それが最も速く、かつ実感を伴って新しいものを理解できるからである。

例えば、ある先輩はいつもテキストエディタを作っていた。また、別の先輩はいつも自作の小型言語のインタプリタを書いていた。つまり、新しい環境で使う自分の仕事道具を自分で作るのである。これは素晴らしい方法だ。勉強にもなり、実用ツールが手に入るという一石二鳥。しかも、カッコイイw。