「Swift」の版間の差分
ナビゲーションに移動
検索に移動
(→配列) |
(→配列) |
||
| 117行目: | 117行目: | ||
> var sa2: [String] = [] | > var sa2: [String] = [] | ||
sa2: [String] = 0 values | sa2: [String] = 0 values | ||
| + | </pre> | ||
| + | ====参照と追加==== | ||
| + | <pre> | ||
| + | > var ia = [1,2,3] | ||
| + | > ia[1] | ||
| + | $R0: Int = 2 | ||
| + | > ia.append(4) | ||
| + | > ia | ||
| + | $R1: [Int] = 4 values { | ||
| + | [0] = 1 | ||
| + | [1] = 2 | ||
| + | [2] = 3 | ||
| + | [3] = 4 | ||
| + | } | ||
</pre> | </pre> | ||
2020年12月8日 (火) 13:46時点における版
| Xcode | Mac | IPhone Xcode |
目次
環境
Xcode
コマンドライン
- swiftと入力
- 終了には、:q もしくは、ctrl+D
- パスが通ったところに配置されていれば実行できる
$ swift
Welcome to Apple Swift version 5.3.1 (swiftlang-1200.0.41 clang-1200.0.32.8).
Type :help for assistance.
1> print("test")
test
=コマンドラインツールを実行
- アクティブ開発ディレクトリのコマンドラインツールを見つけて実行する
- アクティブ開発ディレクトリは、xcode-select で指定する
- アクティブ開発ディレクトリを表示
$ xcode-select -p /Applications/Xcode.app/Contents/Developer
- 以下のようにswiftコマンドを実行もできる
$ xcrun swift
SDK
- SDKを指定してswiftを起動するときに、指定できるSDK一覧を表示
$ xcodebuild -showsdks
iOS SDKs:
iOS 14.2 -sdk iphoneos14.2
iOS Simulator SDKs:
Simulator - iOS 14.2 -sdk iphonesimulator14.2
macOS SDKs:
DriverKit 20.0 -sdk driverkit.macosx20.0
macOS 11.0 -sdk macosx11.0
:
SDKを指定して、swiftを起動
$ xcrun -sdk macosx11.0 swift
環境変数にSDKパスを指定
- 以下でSDKのパスを取得し、SDKROOT環境変数に設定し、swiftを起動
$ xcrun -sdk macosx11.0 --show-sdk-path /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk
データ型
- 型の実体はインスタンス
- 値型と参照型
- 基本データ型
- Int
- UInt
- Float
- Double
- Bool : true/false
- Character : Unicodeの1文字
- String : 値型
変数の定義
- 変数
var 変数名 : 型 = 式
var age : Int = 49
- 定数(単一代入)
let 変数名 : 型 = 式
let age = 49
型変換
- 暗黙の型変換は行われない
- Double() や Int() などのイニシャライザを利用する
1> var i:Int = 5 2> var d:Double = 0; 3> d = i error: repl.swift:3:5: error: cannot assign value of type 'Int' to type 'Double' 3> d = Double(i) 4> d $R0: Double = 5
文字列
- 連結は +
- リテラルは、"で囲む
- \n 改行など\でエスケープ
文字列埋め込み
- \(式) で展開される
> var i:Int = 5 i: Int = 5 > let s: String = "Number \(i * 3)" s: String = "Number 15"
配列
- 型省略初期化
> var ia = [1,2,3,4,5]
- 型宣言初期化
> var ia2: [Int] = [1,2,3,4,5]
- 要素0で初期化
> var sa = [String]() sa: [String] = 0 values
- もしくは
> var sa2: [String] = [] sa2: [String] = 0 values
参照と追加
> var ia = [1,2,3]
> ia[1]
$R0: Int = 2
> ia.append(4)
> ia
$R1: [Int] = 4 values {
[0] = 1
[1] = 2
[2] = 3
[3] = 4
}
SwiftUI
- https://developer.apple.com/jp/xcode/swiftui/
- 1セットのツールとAPIを使用するだけで、あらゆるAppleデバイス向けのユーザーインターフェイスを構築
- 宣言型シンタックスを使
- 宣言型のスタイルは、アニメーションなどの複雑な概念にも適用
デザインツール
- Xcodeには、SwiftUIでのインターフェイス構築をドラッグ&ドロップのように簡単に行える直感的な新しいデザインツールが含まれています
- デザインキャンバスでの編集内容と、隣接するエディタ内のコードはすべて完全に同期されます
ドラッグ&ドロップ
- ユーザーインターフェイス内のコンポーネントの位置は、キャンバス上でコントロールをドラッグするだけで調整できます
ダイナミックリプレースメント
- wiftのコンパイラとランタイムはXcode全体に完全に埋め込まれているため、Appは常にビルドされ実行されます
- 表示されるデザインキャンバスは、単にユーザーインターフェイスに似せたものではなく、実際のAppそのもの
- Xcodeは編集したコードを実際のAppに直接組み入れることができます
プレビュー
- プレビューを1つまたは複数作成して、サンプルデータを取得できる
チュートリアル
© 2006 矢木浩人