(1) - The Basic (2) - Basic Operators、Strings and Characters (3) - Collection Types (4) - Control Flow (5) - Functions (6) - Closures、Enumerations (7) - Classes and Structures (8) - Properties (9) - Methods、Subscripts (10) - Inheritance…
![Swift カテゴリーの記事一覧 - Tumbling Dice](https://cdn-ak-scissors.b.st-hatena.com/image/square/06a15c64ba0ceec233d86d71001ebb29a9dcbf5d/height=288;version=1;width=512/https%3A%2F%2Fcdn.blog.st-hatena.com%2Fimages%2Ftheme%2Fog-image-1500.png)
Swiftとは(Swift 入門) Swiftは、Appleが2014年のWWDCで発表したプログラミング言語です。 それまで、Appleが提供するMacやiPhone等のプラットフォーム向けにネイティブアプリを開発するには、Objective-Cという言語を使って開発しなくてはなりませんでした。Objective-CはC言語を拡張してオブジェクト指向を取り入れた非常に強力な言語ですが、C言語由来の複雑さと、他の言語とは少し毛色の違った独特なスタイルの拡張構文等のためか、特にプログラミング言語の初心者にとっては取っ付きにくく、習得にも比較的時間を要するという側面がありました。 そんな中Swiftは、なんの前触れもなく電撃的に発表されました。コンパイラ言語でありながら、まるでスクリプト言語のような見た目の印象と、実行結果がリアルタイムに可視化される実行環境のデモの様子は多くの人に期待を持って
I ended up not using the Application Badge at all and I abandoned the initial code snippet that I have posted here in the mean while. Since there are still people reading and commenting on this question I will add my working current solution here as well. It does contains checks for iOS7 but I do not use the callback method. Also this version doesn't just ask for Application Badge permission anymo
今日得たSwiftの知識 public/privateなどのアクセスコントロールはまだ実装されてない Apple Developer Forumsのスレッドで、もうすぐ実装されると書いてある。 Does Swift have access modifiers? - Stack Overflow Rangeの仕様がRubyと逆 for i in 1..3 { print( i ) } // => 12 for i in 1...3 { print( i ) } // => 123 Rubyと逆。 プロパティの監視ができる willset, didSetというものがあって、それぞれプロパティに"値を入れる前"、"値を入れた後"の処理を記述できる。 また、didSetの中でoldValueという変数で直前の値を参照できる。 class ExampleClass { var counter: In
Subscript って? Dictionary とか Array で hoge["fuga"] みたいな感じで、要素にアクセスするアレ。 Swift では、アレを自分でクラスや構造体に対して、開発者自身が定義して使うことが出来ます。 基本的な書き方 書き方には幾つかのパターンがあります。 基本的な書式に関しては通常の func と似ています。 読み書き可能な場合 get/set ステートメントを用いて、読み込みと書き込みそれぞれの処理内容を記述することが可能です。 set ステートメントの引数部分は省略することも可能です、その場合セット対象の値は newValue という変数に格納されます。 定義部分 class SubscriptSample { var userNames: Array<String> init(){ userNames = [] } // subscript の受け
Swift を学ぼう 弊社でも iOS エンジニアはもちろん、サーバーサイドのエンジニアや AWS エンジニアも Swift に興味津々です。Objective-C より読みやすく、モダンな書き方になっている反面、仕様を読み込んでみるとちょっと分かりづらいところもあったりします。 そこで、これまで Web で公開されている Swift について学べる記事を日本語の記事を中心にまとめてみました。今後も有益な情報が公開されたらガンガン追記していきます! 公式情報 一番有益な情報は間違いなく公式の情報です。 Xcode 6 から導入されたツール「Playground」で試しながら読んでいくことを想定して書かれているようです。Playground を使って挙動を確認しながら学ぶのが一番良いと思います。 Swift Programming Language | Apple Developer The
I'm trying to work out an appropriate singleton model for usage in Swift. So far, I've been able to get a non-thread safe model working as: class var sharedInstance: TPScopeManager { get { struct Static { static var instance: TPScopeManager? = nil } if !Static.instance { Static.instance = TPScopeManager() } return Static.instance! } } Wrapping the singleton instance in the Static struct should all
Swiftの配列コレクションを使ってみた Arrayって言う位だからList構造ではなくてホントに配列なのかも? 宣言のサンプル // 空配列の宣言 var citylist = [String]() // 宣言時に要素を設定 // ※型宣言は省略可能 // String[] は Array<String>のシンタックスシュガー let ishikawaCitylist:[String] = ["kanazawa","komatsu","nanao","kaga"] 構文が簡単でいいね! 要素の追加とか削除とか // 要素が設定されているか判定 if citylist.isEmpty { NSLog("からっぽ") } // 要素を追加 // +=でも追加できるし (array も 要素も直接足せる) citylist += ishikawaCitylist citylist += "no
背景 基本的な言語仕様はふんわりと学んだので、今後多用するであろうArrayとDictionaryの使い方を調べたのでメモ。 間違いとかあれば指摘お願いします。 Array サンプルコード // immutableなString型の配列 let names: String[] = ["name5", "name2", "name1", "name3"] //各データを取得 let name1 = names[0] //name5 let name2 = names[1] //name2 let name3 = names[2] //name1 let name4 = names[3] //name3 //各件数 names.capacity // 4 names.startIndex // 0 names.endIndex // 4 names.count // 4 // mutableな
公式の英文資料を読んでもいまいち理解できなかった(英語が読めなかった)のでいろいろ試してみる事にしました。 Xcode6 beta5 + Playground 更新: 2015/03/06, Xcode6.3 beta3, Playground 基本的な使い方 ストアド・プロパティにwillSetとdidSetを仕掛ける事で、プロパティの変更前/後で何か処理を書く事ができます。 (※グローバル変数やローカル変数にも仕掛ける事ができます。) class Person { var age: Int = 0 { willSet { println("age willSet:\(age) -> \(newValue)") } didSet { println("age didSet :\(oldValue) -> \(age)") } } } let p = Person() p.age = 20
iOS8より新しくプログラミング言語にSwiftが採用されることがWWDCのKeynoteにて発表されました。リファレンスを読んだ印象では、Haskellなどの関数型言語の影響をたぶんに受けているように感じます。 たしかに今までAppleがObjective-Cに新しくBlock構文を採用してクロージャをもりもりかけるようにしたり、コンパイラの改良を行って型チェックをより賢くして来たという経緯もふまえてみると、自然な流れにも思えます。 0.はじめに Swift is a new programming language for iOS and OS X apps that builds on the best of C and Objective-C, without the constraints of C compatibility. Swift adopts safe program
Objective-C と Swift とでは、それぞれで定義したクラスを簡単に相互利用できるようになっています。 ここでは Swift で定義したクラスを Objective-C で利用する方法を紹介します。Objective-C で定義したクラスを Swift で使用する方法については Objective-C で定義したクラスを Swift で利用する で紹介します。 Swift クラスが定義されたヘッダーファイルをインポートする Swift で定義したクラスを利用するには、それを使用したい実装ファイル内に、次のように #import 文を記載します。このとき、下記の $(PROJECT_NAME) のところは、目的の Swift コードが実装されているプロジェクト名に置き換えてください。 このファイルは、プロジェクト自体には登録されていないのですが、Derived Data の中間フ
Objective-C と Swift とでは、それぞれで定義したクラスを簡単に相互利用できるようになっています。 ここでは Objective-C で定義したクラスを Swift で利用する方法を紹介します。Swift で定義したクラスを Objective-C で利用する方法については Swift で定義したクラスを Objective-C で利用する で紹介します。 Objective-C のクラスを Swift で利用できるようにするための準備 ブリッジヘッダーファイルを用意する Objective-C のクラスを Swift から利用できるようにするためには、どの Objective-C クラスを Swift で利用するかを記載したブリッジヘッダーファイルをプロジェクト内に用意する必要があります。 このブリッジヘッダーファイルは一般的に "$(TARGET_NAME)-Bridg
Objective-Cでいうところの [[self class] classMethod] を Swift では以下のように書くことが出来るようです。 class Hoge { class func classMethod() { println("classMethod") } func method() { self.dynamicType.classMethod() } } let hoge = Hoge() hoge.method() // "classMethod" hoge.dynamicType.classMethod() // "classMethod"
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く