mzgkworks

iOSを中心にプログラミング関係について書く

【Swift】辞書

黒帯本iOS開発の基礎を学び直す。
Chapter 2-02

ミュータブル(可変)とイミュータブル(不変)

  • varで宣言 : ミュータブル
  • letで宣言 : イミュータブル
  • Obective-CであったNSMutableDictionaryとかで区別しなくてもいい

要素なしで宣言

// 次の4つは同じことを意味する
let dict1: [String:Int] = [String:Int]()
let dic2 =  [String:Int]()   // 自分はこれを標準として使用する
// ,で宣言するので注意!!
let dic3: Dictionary<String,Int> = Dictionary<String,Int>()
let dic4 = Dictionary<String,Int>()

初期値あり

let dict5 = ["りんご":1, "みかん":2]
let dict6: Dictionary<String,Int> = ["メロン":1, "スイカ":2]

【Swift】配列

黒帯本iOS開発の基礎を学び直す。
Chapter 2-02

ミュータブル(可変)とイミュータブル(不変)

  • varで宣言 : ミュータブル
  • letで宣言 : イミュータブル(高速)
  • Obective-CであったNSMutableArrayとかで区別しなくてもいい

要素を指定しないで宣言する

// 次の4つは同じことを意味する
var array1: [String] = [String]()
var array2 = [String]()   // 自分はこれを標準として使用する
var array3: Array<String> = Array<String>() // Genericsの利用
var array4 = Array<String>()

【Swift】Float・Double

黒帯本iOS開発の基礎を学び直す。
Chapter 2-02

範囲

  • Float
    • 32ビットの範囲
  • Double
    • 64ビットの範囲

注意

  • Float,Doubleは演算速度は遅くなるので、本当に必要な場合のみ使用すること

整数値との計算

  • Intと計算を行う際には、型変換を行ってから実施すること
  • Int値 + Double値
    • Double(Int値) + Double値 -> Int値をDoubleにする
    • Int値 + Int(Double値) -> Double値は小数点部分が切り捨てられる
  • Int値 + Float値
    • Float(Int値) + Float値 -> Int値をFloatにする
    • Int値 + Int(Float値) -> Float値は小数点部分が切り捨てられる

【Swift】Int64, UInt64

黒帯本iOS開発の基礎を学び直す。
Chapter 2-02

  • iPhone5s以降の端末で対応される
  • ただし32ビット機で使用した場合は、32ビットとして使用される
  • マイナスを使用しない場合は、UIntを使うとプラスで扱える範囲が2倍になる
  • 最大値、最小値の求め方
var value1_1 :Int64 = Int64.max // Int64の最大値
var value1_2 :Int64 = Int64.min // Int64の最小値
var value2_1 :UInt64 = UInt64.max // UInt64の最大値
var value2_2 :UInt64 = UInt64.min // UInt64の最小値

【iOS】実機テストの観点

黒帯本iOS開発の基礎を学び直す。
P.30 Chapter1-06

実機でテストする意義と観点

  • アプリが片手でも操作可能か
  • 滑らかに動作するか
  • 全機能が動作するか
  • 繰返し操作しても快適に利用できるか

参考書

【iOS】シミュレータとDebugメニュー

黒帯本iOS開発の基礎を学び直す。
P.26〜 Chapter1-05

スクリーンショット

  • デスクトップにPNGファイル
    • File -> Save Screen Shot
    • cmd + s
  • クリップボードにコピー
    • Edit -> Copy Screen
    • ctrl + cmd + c

Color Blended Layers

  • 動作が滑らかなアプリを作るテクニックの1つ
  • レイヤーがかさなっている部分が確認できる
  • レイヤーが重なっている部分は赤で表示される(少ないほど描画が速い)

参考書

【iOS】課題解決エンジン

黒帯本iOS開発の基礎を学び直す。
P.4 Chapter1-02

アプリ作りの流れ

  1. 企画
    • どんなアプリを作るのか考える
    • 課題解決エンジン
    • もっとも大事な機能を明確にして、開発の優先順位を決める
  2. 制作
    • デザインの検討や画面のパーツを作成する
  3. 開発
    • 制作時に検討した画面デザインのプログラミング
    • 機能面のプログラミング
  4. テスト
    • アプリが正常に動くかテストを行う
  5. リリース
    • アプリをAppStoreに公開する
  6. フィードバック対応
    • ユーザーんの反響への対応とアップデートの内容を考える
    • アプリはリリースしてから洗練させていくことが重要

課題解決エンジン

ユーザーにとって価値があるものを作るときに考えること

  • 日常生活で、自分が抱えている課題を解決するアプリを考える
  • そのアプリを使うことで何かの課題が解決される人が確かに存在しているか
  • 作るアプリのもっとも大事な機能を明確にして、開発の優先順位を決めておくこと

参考書