iPhoneで動くアプリの開発が、Windowsとどのくらい違うか、それは慣れていないと大変か、という質問です。iPhoneアプリはMACで開発しなければいけないと聞きます。


Windowsで今作っているアプリをiPhone4で動かしたいです。

開発予定のアプリの概要はコメント欄に示しました。VBA換算で200行もないくらいのソフトです(の予定です)。

このプログラム自体は(たぶん)できるのですが、iPhoneに移植ということを考えた場合、どのような環境ですれば良いのかなぁと。あと、意外と勉強しながらやれば何とかなるよ!とかVBA初中級者程度だと厳しいよ!という諸先輩方の所感を伺いたく質問しました。

ちなみに、MACもLINUXも経験なく、環境としてWindowsしか使ったことがありません。

言語はVBAとC等が初中級といったところです。よろしくお願いします。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2010/09/26 19:00:35
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:loio No.1

回答回数342ベストアンサー獲得回数50

ポイント20pt

環境はmac+xcode+objective-cしかないです。

xcodeの使い方は簡単です。

全体の概念は、VBがわかる程度の人なら、1~2週間。本を2冊、3回くらい読みこなせばなんとかなるでしょう。

webからhtmlを取り出すのは簡単です。

Ontimeとかwaitとかsleepも簡単ですが、バックグラウンド処理はできません。

メール送信も簡単です。

処理そのものはCが使えたら移植は楽勝です。

エクセルの表がないです。1次元のテーブルだけですね。

1次元のテーブルの中を自分で分割して2次元に見せるような工夫がいるかな。

もしかするとサードパーティ製の表組ライブラリがあるかもしれません。

って感じかな。

id:ReoReo7

なるほど、わかりました。ありがとうございます。

2010/09/24 06:36:50

その他の回答5件)

id:loio No.1

回答回数342ベストアンサー獲得回数50ここでベストアンサー

ポイント20pt

環境はmac+xcode+objective-cしかないです。

xcodeの使い方は簡単です。

全体の概念は、VBがわかる程度の人なら、1~2週間。本を2冊、3回くらい読みこなせばなんとかなるでしょう。

webからhtmlを取り出すのは簡単です。

Ontimeとかwaitとかsleepも簡単ですが、バックグラウンド処理はできません。

メール送信も簡単です。

処理そのものはCが使えたら移植は楽勝です。

エクセルの表がないです。1次元のテーブルだけですね。

1次元のテーブルの中を自分で分割して2次元に見せるような工夫がいるかな。

もしかするとサードパーティ製の表組ライブラリがあるかもしれません。

って感じかな。

id:ReoReo7

なるほど、わかりました。ありがとうございます。

2010/09/24 06:36:50
id:smart007 No.2

回答回数2ベストアンサー獲得回数0

ポイント20pt

iPhoneアプリのコードは難しくないですよ。

やる気さえあればどうとでもなります。

まずは触ってみることが大事だと思いますが、

開発にMacが必須なのとAppleへの登録にお小遣い程度のお金がかかるので、多少の出費は必要です。

id:ReoReo7

ありがとうございます!

実は、いっそWebブラウザーにアクセスするだけで動くソフトウェアにしようかと思っています!・・(汗)

検討してみます!

2010/09/24 09:20:49
id:tasklight No.3

回答回数323ベストアンサー獲得回数40

ポイント20pt

まずObjective-Cの文法を知ることですね。

VBAと違ってインタラクティブな言語ではありませんから、経験がないと少し時間がかかるかもしれません。


次に、オリジナルがWindowsAPIを使っているとすると、それに対応するiOS APIを探さなくてはなりません。APIによっては同じ機能が存在するかもしれませんが、こればかりは調べてみないと分かりません。

id:ReoReo7

なるほど、複雑なアルゴリズムだとVBAのインタラクティブ性はすごく役立つのですが・・・

サーバー側に複雑な処理を置いて、クライアント側は情報交信の機能など機能を絞ってほうが良さそうですね。

2010/09/24 12:07:17
id:gp334437g4723k87 No.4

回答回数126ベストアンサー獲得回数20

ポイント20pt

iPhoneの開発環境はObjective-CなのでVBA系のプログラマーの場合は、手掛かりとして開発はかなり難しいと思います。


次に、移植を考慮しているアプリが非公開の業務用のものの場合、iPhoneに移植することはライセンス上の問題点も発生します。Appleの企業向けの開発者(エンタープライズ)ライセンスを取得すれば、企業向けの非公開のアプリを開発することは可能ですが、このエンタープライズライセンスは従業員数が500名以上の大企業が条件となっており、中小企業は取得できません。したがって、中小企業がiPhoneの業務用非公開アプリを開発することを考えているのであればそもそもそれは無理です。


開発を行うのではあれば、iPhone専用のホームページとして普通のサーバーでcgiを使ったWEBアプリケーションとして移植するのがもっとも簡単で実用的ではないかと思います。

id:ReoReo7

ありがとうございます!自分で作った数値処理プログラムでもiPhoneに移植したら違法なのでしょうか?!

2010/09/24 15:24:40
id:gp334437g4723k87 No.5

回答回数126ベストアンサー獲得回数20

ポイント20pt

> ありがとうございます!自分で作った数値処理プログラムでもiPhoneに移植したら違法なのでしょうか?!


そこがiPodとその他のPC/MACとの大きな違いで、iPodにインストールできるアプリケーションを開発するには最終的にアップルの認証を受ける必要があり、アップルが認めないアプリケーションの開発は行ってもかまいませんが、非認証アプリは不特定のiPodにインストールすることは基本的にはできません。つまり、アプリケーションを開発する場合は、Apps Storeで公開アプリとすることを前提に開発する必要があり、非公開を前提とした(自分だけが利用するような、あるいは社内だけで利用するようなアプリケーション)の開発はできないということになります(この例外がエンタープライズライセンス)。


ただし、普通の開発者ライセンスであっても、最終的なテストは実機を用いて行う都合があるため、アプリケーションプログラムをビルドする際には、自分のiPadの個別IDを指定して、自分のiPadにはインストールすることができるようにしてビルドをします。したがって、自分のiPadだけで動作させるので問題なければ、Apps Storeを通さずに開発したアプリを使うことはできないわけではありません。しかし、この場合、ビルドしたアプリケーションはビルドの際に指定した1台のiPodにしかインストールすることはできませんので、公開したとしても、あなた以外のiPodユーザーはインストールすることはできません。


iPodのネーティブアプリの開発はアップルの開発環境を使う他、Adobe Flash/Air SDKを使う方法や、iphonegapなどのJavascriptベースの開発環境を使う手段などもあります。

id:ReoReo7

ありがとうございます!聞いたこと無いライセンス体系ですね・・・すごく参考になりました。

普通の開発者ライセンスでも、最終的なテストはできるし、一人で使えないことはないんですね。でも社内向けとかだと問題が出てくるんですね・・・。

知らないことばかりで参考になります。

2010/09/25 19:34:26

質問者が未読の回答一覧

 回答者回答受取ベストアンサー回答時間
1 umI 112 11 0 2010-09-26 14:03:05
  • id:ReoReo7
    アプリと言っても大したことはなくて、エクセルで作ったVBAを、OnTimeメソッドやWait メソッド、またはAPIのSleep関数を使って常にバックグラウンドで(と言えるほどスムーズに他のアプリが動くかは分からないけど、とりあえず常に実行して他のアプリを起動できるくらいの余力を残して)動かしつつ、ブラウザを更新してそこから取得したデータを取得し、一定の処理を施した後データを作成してメールを送信し続けるというVBA換算で200行もないくらいのソフトです(の予定です)。

    [参考:OnTimeメソッドやWait メソッド、またはAPIのSleep関数]
    http://q.hatena.ne.jp/ReoReo7/questionlist?page=1
  • id:loio
    普通のライセンスでも、100台までインストールできますよ。
    IDを集めないといけないので、面倒ですけど。
    ただIDさえわかればあとは、メールで送ってitunesにドロップするだけなので、遠隔地でもOKです。

    Ad Hoc Distribution
    Share your application with up to 100 other iPad, iPhone, or iPod touch users with Ad Hoc distribution. Share your application through email, or by posting it to a web site or server.
    http://developer.apple.com/programs/ios/distribute.html
  • id:ReoReo7
    ありがとうございます!
    うーん、iPhoneはもちろんアプリ開発というよりVBAの数値処理プログラムという認識だったのですが、ちょっとでも通信機能をつけると「アプリ」となってしまうんですね。

    いろいろとありがとうございます。知らないことばかりで勉強の方向性がみえてきます。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません