
iOS用アプリケーション(IP計算機)の開発経験を共有したいと思います。 経験を成功と呼ぶことはできませんが、それ以上に興味深いものであり、初心者向けの投稿がもっと役立つことを願っています。
私の専門的な活動はソフトウェア開発とは無関係であり、iOSの前はモバイルプラットフォームのプログラミング経験がありませんでした(SymbianのQtで簡単なユーティリティを書くことを除く)。
iOSの知識は、実際にはiPhoneの買収から始まりました。 そしてすぐに彼のために何かを書きたかった。 職場ではしばしばIPアドレスを処理する必要があるため、特定のマスクを使用してネットワーク上のホスト数以外の何かを計算することは容易ではなく、オンラインまたはオフライン(チートシート)のIP計算機は常に手元にありませんが、指定されたIPアドレスとマスクで有用な情報を表示する簡単なプログラムを作成するというアイデアが生まれました。 App Storeにはすでにそのようなアプリケーションがたくさんあることは明らかです。 それでも、リスト全体(約30個のアプリケーション)を調べても、使いたいものは見つかりませんでした。 これにより私は強くなり、厳格でクリーンなデザインのかなり単純なIP計算機を書くことにしました。 あなたは、私がこれをなんとかすることができたことを確かめることができます 。

開発には、MacOS Snow Leopard(10.6)を使用しました。 私の意見では、Windowsのみ(Macを持たない)が仮想マシンでMacOSを使用するのが最も簡単です。 「Macintosh vs. Hackintoshは、「できるとき」ワンクリックで「ホストWindows OSでMacOSの操作を開始します。 初心者(だけでなく)開発者にとって、これが最良の選択肢であるように思えます。
Objective-C言語と開発環境に非常に早く慣れました。 2冊の本がこれを助けてくれました。 最初の (「iPhone 4開発の開始:iOS SDKの調査」、David Mark、Jack Nutting、Jeff LaMarcheによる)は非常にシンプルで、文字通りすべてが噛み砕かれています。 2つ目 (「Objective-C 2.0でのプログラミング」、Stephen G. Kochan)ははるかに興味深いものであり、私の意見では、いくつかの点でも基本的です。 特に注意すべきは、メモリ管理の問題です。 初心者の方は、まずこのトピック(オブジェクトの存続期間に注意を払い、Xcodeのリークツール)を理解することをお勧めします。
開発に関しては、古いバージョンのiOS(3. *)向けにプログラミングするときに一部のクラスを使用する機能がないことを除いて、問題は発生しませんでした。 特に、これはジェスチャー(UI ... GestureRecognizer)および正規表現(NSRegularExpression)に適用されます。 App Stroreから判断すると、多くの開発者は熱心すぎず、iOS 4.0または5.0(!)の最小バージョンの形で示しています。 おそらくそれらは正しいものであり、古いiOSを搭載したデバイスはそれほど多くありませんが、統計を見たことがないので、iOSの新しいバージョンだけに依存したくありません。
誰かが興味を持っている場合、GestureRecognizerの欠如の問題は、 この方法で解決でき、NSRegularExpressionの欠如もあります。
連絡先番号をコピーするためにiPhoneアドレス帳で使用されているものと同様のポップアップメニューを実装する方法を理解したい人には、 この記事が役立ちます。
ライセンスを購入してプログラムをApp Storeに配置するプロセスは非常に簡単です(注意が必要なのは、iTunes Connectで銀行情報を入力することだけです。質問や疑問がある場合は、銀行に連絡することをお勧めします-時間を節約します)。 時間で:ファックスが送信されてから開発者のライセンスが受信されるまで7日が経過し、プログラムがiTunes Connectにダウンロードされてから受け入れられてApp Storeに配置されるまで6日が経過しました(最初に受信)。
以下のスクリーンショットから購入のダイナミクスを評価できます。 プログラムは最初の6つにしばらく留まり(3、5、6の場所を占めました)、この6つから脱落し、誰による購入も停止しました。

合計17件の購入が行われました。国別の分布は次のとおりです。
- アメリカ-7
- フランス-3
- ロシア-3
- オーストリア-1
- イタリア-1
- 日本-1
- ニジェール-1
iOS向けの開発における私の最初の経験は満足できるものであり、肯定的な結果はありませんが、否定的な結果もあると思います。 私はコメント/アドバイス/コメント/質問に喜んでいるでしょう。
UPD iOSで使用されるバージョンの統計について、 Infernalに感謝します。
私は著作権の侵害や、他の人に属するMac OSの開発への使用を促しません(ところで、ライセンス契約に違反しています)。 Mac OSの試用版(たとえば、31日間有効)でこの問題を解決できます。