タグ付けされた質問 「objective-c」

Objective-cは、非常に動的なメッセージベースのオブジェクト指向言語であり、Cのスーパーセットであり、主にAppleのMac OS XおよびiOSプラットフォームのプログラミングに使用されます。

4
なぜヘッダーファイルを記述する必要があるのですか?
気味の悪いコメントを出す前に、私は知っています-これはヌービーな質問です。Cベースの言語を使用するのは初めてです。 私は、モバイル開発に関するコンピューターサイエンスコースのObjective Cを学んでいる学部生です。アカデミックな環境では、小規模なプロジェクトを構築したり、小規模なチームで作業したりするため、多くの現実世界の考慮事項は必要ありません。 しかし、私たちの教授は、.m実装ファイルごとに.hヘッダーファイルを要求し、XCodeがサポートします。私には、それは一種の忙しい仕事のように思えます。すべてのメソッドシグネチャとインスタンス変数を他のファイルにコピーする必要があります。1つのファイルを変更する場合、それが他のファイルと一貫していることを確認する必要があります。そのような小さな煩わしさの束のように思えます。 しかし、私はがなければならない知っているいくつかのヘッダファイルの実際の使用。素晴らしい答えは両方に対処します: 実装ファイルが適していないのに役立つヘッダーファイルとは何ですか?その目的は何ですか? プログラマーとしてヘッダーファイルを手動で記述する必要があるのはなぜですか?簡単に自動生成できるようです。 前もって感謝します!

3
Objective-C ++は段階的に廃止されますか?[閉まっている]
休業。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善してみませんか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 5年前休業。 AppleはObjective-C ++のサポートを段階的に廃止していますか?次の点に注意してください。 Objective-C言語マニュアル、対物-CおよびC ++の混合のセクションがあるように使用されます。そのセクションは現在欠落しています。 アップルの開発者向けウェブサイト上でのObjective-C ++の記事へのリンクが壊れているようだ、と今リダイレクトされ、例えば、この1私が上で見つけ、このstackoverflowの質問。 apple dev Webサイトでc ++を検索しても、現在の情報にはほとんど影響しません。 iOS開発にc ++を使用することについて心配する必要がありますか?
10 c++  objective-c  apple 

3
iOS開発のWebサービスからデータを取得するためにHTTPリクエストを作成するメソッドをどこに配置すればよいですか?
私のiOSアプリケーションにModel Carがあり、名前、年、値などのパラメーターがWebサービスからフェッチされ、リストに自動車のデータが入力されます。 非同期でサーバーに行き、車の配列を返すメソッドをどこに置くべきですか(このメソッドはすでにJSONをCar配列に変換しています)? 私の現在のアプローチは、HttpClientを受信して​​(クライアントをモックするユニットテストを実行できるように)Carクラスの静的メソッドであり、車のNSArrayを返しますが、これは良いですか? この状況で皆さんは何をしましたか? 私は最近、クラスは1つのことだけを行うべきであるというクリーンなコードを読み始めたので心配です。現在の方法では、2つのことを行うように見えます(Carに関する情報を保持し、Carのリストを取得します)。

2
ARCのプロパティ:常時またはパブリックのみ?
Robert McNallyによる「The Code Commandments:Best Practices for Objective-C Coding」という謙虚に名付けられた記事を2年ほど前に読んだ後、Objective-Cクラスのほとんどすべてのデータメンバーにプロパティを使用するという慣習を採用しました( 2012年5月の第3の戒め)。マクナリーはそうするためのこれらの理由をリストします(私の強調): プロパティはアクセス制限を強制します(読み取り専用など) プロパティはメモリ管理ポリシーを適用します(強い、弱い) プロパティは、カスタムセッターとゲッターを透過的に実装する機会を提供します。 カスタムセッターまたはゲッターを持つプロパティを使用して、スレッドセーフティ戦略を実施できます。 インスタンス変数にアクセスする単一の方法があると、コードが読みやすくなります。 私はほとんどの物件をプライベートカテゴリに分類しているので、1と4は通常、私が遭遇する問題ではありません。引数3と5はより「やわらかい」ものであり、適切なツールと他の一貫性があれば問題にならない可能性があります。最後に、私にとってこれらの議論の中で最も影響力があったのは、2番目のメモリ管理でした。それ以来、私はこれを続けています。 @property (nonatomic, strong) id object; // Properties became my friends. 最後のいくつかのプロジェクトでは、ARCを使用するように切り替えました。そのため、ほとんどすべてのプロパティを作成することは、それでも良いアイデアなのか、それとも少し不必要なのか疑問に思いました。ARCは、Objective-Cオブジェクトのメモリ管理を担当してくれます。ほとんどのstrongメンバーにとって、ivarを宣言するだけで問題なく機能します。とにかく、ARCの前後に手動で管理する必要があったCタイプであり、weakプロパティはほとんどパブリックプロパティです。 もちろん、クラスの外部からのアクセスが必要なものには、まだプロパティを使用していますが、ほとんどのプロパティはほんの一握りのプロパティであり、ほとんどのデータメンバーは、実装ヘッダーの下にivarとしてリストされています。 @implementation GTWeekViewController { UILongPressGestureRecognizer *_pressRecognizer; GTPagingGestureRecognizer *_pagingRecognizer; UITapGestureRecognizer *_tapRecognizer; } 実験として、私はこれをもう少し厳密に行っており、すべてのプロパティから離れると、いくつかの良い肯定的な副作用があります。 データメンバーコードの要件(@property/ @synthesize)は、ivar宣言だけに縮小されます。 私のself.something参照のほとんどは、ちょうどにクリーンアップされました_something。 プライベート(ivars)とパブリック(プロパティ)のデータメンバーは簡単に区別できます。 最後に、これはAppleがプロパティを意図した目的であるように「感じている」が、それは主観的な推測である。 質問に移ります。私は徐々にダークサイドに向かってスライドしており、implementation-ivarsを優先して、使用するプロパティを減らしています。すべてのプロパティを使用することに固執する必要がある理由について少し説明してください。または、必要な場合にのみivarを増やし、プロパティを減らす理由について、現在の一連の考えを確認してください。どちらか一方の最も説得力のある答えが私のマークを受け取ります。 編集:マクナリーはTwitterで、「プロパティにこだわる主な理由は、すべてを実行する1つの方法、すべてを実行する1つの方法(KVC / KVOを含む)だと思います」と言います。

6
Windows / LinuxからIOSアプリを公開する方法はありますか?
Linux(特にUbuntu)とWindows 7を長い間使用しています。iOSアプリを公開したいのですが、MacもiPhoneも持っていません。私の近くにはMacを貸してくれる人がいないので、実際に購入したくもありません。 だから私の質問は:WindowsまたはLinuxからiOSアプリを公開するにはどうすればよいですか?ジェイルブレイクしたiPhoneの公開プログラムについては言及していません。AppleStoreを通じて公開したいと考えています。 私の検索結果によると、WindowsまたはLinuxからiOSアプリを公開するための確実な方法はありません。また、有料アプリにして、無料でプレゼントしたくない。 WindowsまたはLinuxからiOSアプリを公開する方法を知っている人はいますか?

4
Objective-Cはどこから来たのですか?C ++またはC?
このプログラミング言語であるObjective-Cは、iOSアプリケーションの開発に使用されていると聞いています。 OOPの原則を使用していることは知っています。すでにC ++を知っていると、より簡単に学習できますか?名前は?Cプログラミング言語とC ++で使用するOOP原則の組み合わせですか?
8 c++  c  ios  objective-c 
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.