2014年09月24日
Posted by 屋台ブルー at
2014年09月24日00:00 Comment(0)
Swiftで遊ぼう! - 75 オブジェクト指向 プロおも本に戻る
何となくオブジェクト指向の考え方が理解できてきた。限られたメモリー空間を有効活用するために、クラスという設計図を作り、必要な時に実体化するインスタンス(オブジェクト)をメモリーヒープ領域に作ってやるという考え方は、今までのプログラミング言語の歴史を紐解くと納得できるし、必要がないインスタンスを消してメモリーを解放させる重要性も理解できる。また、プログラムの再利用という観点からオブジェクト指向プログラミング技法が生まれたが自由度が高ため、まだまだ自分でプログラムを組み立てラレ内。しかし、クラスを使ったプログラミングに馴れる必要もあり、再び「プログラマの考え方がおもしろいほど身につく本 問題解決能力を鍛えよう!」のクラスの項目に戻ろうと思う。
さて、課題に取り組んではいるものの、Swiftの文法を忘れている。非常に基本的な事だが、Switch Case文の使い方が分からなくなった。
以下のようなコードをPlaygroundに書いた時、最初の「var mark = ""」を書かなかったら、println(mark)でエラーが出る。これを加えると、let Markに"C"が加えられて、「C」が表示される。でも、私は最初に変数(var)でmarkを宣言しているのに、let(定数)に変更さるのはどうしてでしょう? なぜ、「var mark = ""」を加えないとエラーになるんでしょう? 不思議だ...
var score = 76
var mark = ""
switch score {
case 93...100:
let mark = "A"
case 90...92:
let mark = "A-"
case 87...89:
let mark = "B+"
case 83...86:
let mark = "B"
case 80...82:
let mark = "B-"
case 77...79:
let mark = "C+"
case 73...76:
let mark = "C"
case 70...72:
let mark = "C-"
case 67...69:
let mark = "D+"
case 60...66:
let mark = "D"
default:
let mark = "F"
}
println(mark)
さて、課題に取り組んではいるものの、Swiftの文法を忘れている。非常に基本的な事だが、Switch Case文の使い方が分からなくなった。
以下のようなコードをPlaygroundに書いた時、最初の「var mark = ""」を書かなかったら、println(mark)でエラーが出る。これを加えると、let Markに"C"が加えられて、「C」が表示される。でも、私は最初に変数(var)でmarkを宣言しているのに、let(定数)に変更さるのはどうしてでしょう? なぜ、「var mark = ""」を加えないとエラーになるんでしょう? 不思議だ...
var score = 76
var mark = ""
switch score {
case 93...100:
let mark = "A"
case 90...92:
let mark = "A-"
case 87...89:
let mark = "B+"
case 83...86:
let mark = "B"
case 80...82:
let mark = "B-"
case 77...79:
let mark = "C+"
case 73...76:
let mark = "C"
case 70...72:
let mark = "C-"
case 67...69:
let mark = "D+"
case 60...66:
let mark = "D"
default:
let mark = "F"
}
println(mark)