• 私の個人アプリを作る流れを全部見せます その2:技術調査編

    本企画の全記事はこちらから

    前回の記事で作るものは「Pixel Art Pocket - ドット絵ポケット」というドット絵エディターに決まりました。 今回は、それが実際に作れるかどうかを確かめていきます。

    以下が、今回のアプリに必要そうな機能です。

    1. エディター
    2. 絵の保存
    3. 一覧表示
    4. SNSへのシェア
    5. 色の選択
    6. Undo/Redo
    7. アニメーションGIF

    それぞれ自分に実装できそうか確認していきます。

    1. エディター → ◎

    タップした位置にドットを描画し、完成した絵を画像にする機能です。

    拙著 15章の図形描画(15.1)や画像作成(15.5)の応用で実装できそうです。 UIはタップした座標を使って処理(17.1)するか、UIButton(12.1)を並べればなんとかなると思います。

    2. 絵の保存 → ◎

    作成したドット絵のデータを保存する機能です。

    各ドットの色情報を構造体に配列で持っておき、Codable(9.11)でテキストに変換し、テキストファイルとして保存(18.1)すればよいでしょう。

    3. 一覧表示 → ◎

    今まで保存したデータを一覧表示する機能です。

    テーブルビュー(11.7、13.8)を使えば簡単です。エディター画面との画面遷移にはナビゲーションコントローラー(13.6)を使うことにします。

    4. SNSへのシェア → ◎

    ドット絵をSNSにシェアする機能です。

    これはUIActivityViewController(13.14)に画像を渡すだけでよさそうです。

    5. 色の選択 → ◯

    エディターをタップした時にどの色でドットを描くか、ユーザーが選択する機能です。

    iOSには色を選択する標準部品はありません。 GitHubで

  • 私の個人アプリを作る流れを全部見せます その1:アイディア編

    本企画の全記事はこちらから

    今回は個人アプリなので自分で全部決めます。 会社やチームで作成する場合は、流れが違ってくるでしょう。
    (本当は個人アプリでもこの段階でデザイナーさんにお手伝いいただいた方が絶対に良いのですが…。)

    作るものを決める

    まずは作るものを決めます。

    私が作るものは以下のようなものが多いです。

    • 自分が使うもの
    • 家族が使うもの
    • 売れそうなもの、儲かりそうなもの
    • 新しい技術を使って作れそうなもの(勉強になるもの)
    • 思いつき

    今回は完全に思いつきで「ドット絵を描けるアプリ」を作ることにしました。

    どんな機能が必要か

    作ると決めたアプリにだいたいどんな機能が必要そうか、書き出します。

    • ドット絵を描くエディター機能
    • 絵のサイズは32などの固定でよい。
    • 色の選択
    • Undo/Redo
    • 保存
    • 編集・複製・削除
    • SNSへのシェア
    • 一覧表示
    • 広告表示(マネタイズ)
    • アニメーションGIFとかできたらおもしそう。

    後で詳細化するので、ここではあまり難しく考えずに思いつくままです。

    名前を決める

    名前を考えるのはとても大変です。

    しかし、今は便利な指標があります。それは「ドメインを取れるか」です。

    私は以下のような流れで決めています。

    1. 思いつく名前をいくつかあげる。
    2. ムームードメインなどで検索して、.com.netを取得できるか確認する。
      (末尾にappを付けたドメインで許容することもある。)
    3. ドメインが取れたものの中から一番気に入ったものをアプリの名前にする。

    この流れのデメリットは、気に入った名前のドメインが取れなかった時に結構ショックを受けることです…。

    今回は実際にドメインは取りませんが、以下のような案からドメインを取れるものを探しました。

    • dotdot
    • pictdot
    • pixelart
    • picturecellart
    • pixelput
    • dottoe
    • pixela
    • ...
  • 「私の個人アプリを作る流れを全部見せます」という企画を始めます

    「iOSアプリを作りたくて、入門書で勉強した。サンプル程度のアプリなら作れるようになった。でもいざ自分のオリジナルアプリを作ろうとすると何から始めていいかわからない…。」

    初心者の方が陥りがちな状況かもしれません。

    そのような方々に向けて、私が実際に1つの個人アプリを作り始めてリリースするまでの流れを赤裸々に見せる企画を始めたいと思います。

    Swift 4プログラミング入門 iOS 11+Xcode 9対応」は、初めてアプリを作る人でも、実際にストアのリリースまで行って欲しいなという思いで書きました。 この企画が、初めてストアにアプリをリリースする方々の背中を押せれば幸いです。

    実際の記事は下のリンクから読めます。

    記事は随時更新して追加いきます。

  • SwiftをWebブラウザ上で試せるサービス

    Swift 4プログラミング入門 iOS 11+Xcode 9対応」のPart 2ではSingle View Appテンプレートで作成したプロジェクトを使ってコードを試す方法を紹介しています。 (やや面倒ですが、プロジェクトの操作に慣れてほしいという狙いがありました。)

    より手軽な方法として、ボーナスPDFではPlaygroundを取り上げています。

    第3の選択肢として、Webブラウザを使ってオンラインで試せるツールがあります。 私がよく使うのは、以下のサイトです。

    Run Swift code online - Swift Playground | iSwift

    Swiftのバージョンを切り替えられるのが特徴です。

    Swift 4で動かした例

    以下のfor-inで文字列を列挙する簡単なコードを動かしています。

    for c in "hello" { print(c) } 

    Swift 3.1で動かした例

    3.1を選択して実行すると、同じコードでもエラーになります。

    ※ Swift 3ではcharactersプロパティを使う必要があるため。

    同様のサービスは他にもあり、Swift OnlineなどのキーワードでGoogle検索するとすぐ見つかるでしょう。...

  • 「Swift 4プログラミング入門 iOS 11+Xcode 9対応」が発売されました

    本日、「Swift 4プログラミング入門 iOS 11+Xcode 9対応」が発売になりました。

    書籍タイトルの通り、プログラミング言語SwiftによるiOS開発の入門書です。

    対象読者

    これ1冊でアプリをリリースするところまで行けることを目指した書籍ですので、以下のような様々な方々が対象になります。

    • 初めてiOSアプリをSwiftで作る人
    • 「Hello, World!」やチュートリアルなどは終えて、オリジナルのアプリを作ろうとしている人
    • Android経験者で、iOSに手を出そうと考えている人

    ただ、残念ながら全てのトピックをカバーすることは不可能であり、省略や簡略化されている部分は多々あります。
    入門以外の明確な目的がある場合は、それぞれにあった詳しい本を選んだほうが良いと思います。

    目的 お勧めする本
    iOS 11の新機能を詳しく知りたい iOS 11 Programming
    Swiftの言語仕様を詳細に理解したい 詳解 Swift
    もっとSwiftらしく書けるようになりたい Swift実践入門

    見どころ

    本書には以下のような特徴があります。

    Xcodeの操作手順を細かく説明

    僕は方向音痴なので、よく駅で途中看板がなくなって途方に暮れることがあります。
    そのようなことがないようにするため、特に序盤は手順をくどいぐらいに載せています。

    ...