Archive for the ‘iOS’ Category

Swiftではじめよう その3

木曜日, 7月 3rd, 2014

前回は寄り道したので戻ります。

swiftのREPL(Read-eval-print loop 対話型評価環境だそうです)環境を整えましたが、複数行コピペすると思った通りに動かなくて

イライラしたので、ファイルに落としてswiftコマンドの引数に渡してコンパイルと実行をしてみました。

vim hoge.swift

swift -i hoge.swift

 

// If

//閉じブレースが特徴的

var com = “pepabo”

ifcom.isEmpty {

    println(“Empty”)

} else {

    println(com)

}

// Optional

//下記の:Type?で条件指定できる

// 変数:Type?で表現される

let cityDict = [

    “Japan”:“Tokyo”,

    “France”:“Paris”

]

let cityOpt:String? = cityDict[“Japan”]

if let cityName = cityOpt {

    let currentityName = “You ar in “ + cityName

   println(currentityName)

} else {

   let message = “You ar not here”

  println(message)

}

//ifの簡略化

/*

let opt:String? = cityDict[“France”]

if opt {

    println(“Do something”)

}

*/

// optをつけないとエラーになる。

//unwrappedされていない値ということだが、飲み込めていない

let opt:String? = cityDict[“France”]

if opt {

    let message = “You are in “ + opt!

}

//forループ

for var idx = 0; idx < 5; idx++ {

    var message = “かえりたい + String(idx)

    println(message)

}

// 5回実行される idx < 5

for idx in 15 {

    var message = “Count=” + String(idx)

    println(message)

}

// 4回実行される 条件式のドットの数が違う idx <= 5

for idx in 1..5 {

    var message = “Count=” + String(idx)

    println(message)

}

// List Collectionの要素を回す

//eachのような使い方

let names = [“Hikari”, “Kodama”, “Nozomi”, “Komachi”]

for name in names {

    println(“Hello, \(name)!”)

}

// Dictionary型の要素を回す。(連想配列)

for (country, city) in cityDict {

    println(“Country : \(country), city: \(city)”)

}

つづく

Swiftではじめよう その2

火曜日, 7月 1st, 2014

前回の続きをやる前に一つ。

playground でコードを書いていると実行結果が見えてスバラシイ!って聞いていたのですが、

ShellScritpt を書きながらquickrun(vimのプラグイン)を実行するイメージだったんです。。

irbやらpryやらインタラクティブなプロンプトを期待していました。

 

そんな感じで困っていたら、swiftコマンドをターミナル上で実行すると上記の悩みが解決出来ると聞きました。

ターミナルを起動してswiftコマンドを実行するもcommand not found

 

私の場合はここにありました。

/Applications/Xcode6-Beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

 

PATHを探して、.bash_profile や.zshrcに追加してあげましょう。

export PATH=/Applications/Xcode6-Beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin:/Users/osho-3/local/ruby-1.9.3/bin:$PATH

プロンプトを抜ける時は

:quit

です。コロンを忘れるとエラーになるので注意です。

 

追記:2014/07/03

playground上でバックスラッシュが出なくて困っていました。

xcode バックスラッシュでググったら出てきた。

option + ¥ -> \

となります。

今までエディターはvimでしたので困った事が無くて知りませんでした。

 

つづく

 

Swiftではじめよう その1

金曜日, 6月 20th, 2014

Swiftとは

AppleがWWDC2014で発表したプログラミング言語です。

Ccoa,Cocoa Touchに対応したMac OSX,iOSの開発を目的としています。

Objective-Cに変わるものとされています。

今後はオープンソース化されApple製品以外でも使われるかもしれません。

 

インフラをメインにやってきてどの言語もモノになっていないので、このビッグウェーブに乗ろうと思いました。

iOS Developer Programmingに申し込む所からです。

 

AppleIDの取得をして下さい。すでにiPhoneやiPad、Macを持っている方は取得されているかと思います。

次に、下記サイトの右上、Member Centerをクリックします。

https://developer.apple.com

ここから先は先人が詳しく書いてくれているので参照してください。

ちなみにApppleIDの名前はアルファベット表記に変更してから申し込んだほうがよいようです。

エラーになって再実行を促され、結局1ヶ月くらいかかったと複数の同僚が言っていました。

 

用意するのはxcode6betaが動くmac

Swiftの教科書としては、iBooksで無料で手に入れる事ができます。検索窓でswiftと入力して下さい。

私はKindleで発売された 先取り!Swiftを購入しました。

 

では、早速xcode6betaを起動します。

一番上のplaygroundを選択します。

あとは実際にコードを書いて右の画面に表示される実行画面を見ていきましょう。

 

定数、変数について

キャメルケースを使うようです。

定数はletから始めます。

変数はvarから始めます。

let myName = “osho”

var lastName = “333”

 

Swiftの型について

String:文字列

Array:配列

Dictionary:Swift(Objective-C)では連想配列(Hash)を辞書型(Dictionary)と呼びます。

Int:マイナスを含む整数値

UInt:0から始まる整数値

Float:32bit浮動小数点

Double:64bit浮動小数点

Bool:true or false

 

Swiftでは変数の宣言をする際に型の宣言をしなければ値によってSwiftが自動で判断してくれます。

var name: String = “osho”

name = 333  /*これはエラーになります*/

name = “333” //これなら大丈夫

 

つづく