2012-01-31 5 views
8

私はiOS開発の新人ですし、自分ができることを「最良の」方法で学ぶことができます。COS/Javaの世界から来たときのiOSデザインパターンと同等か?

私はIOCコンテナを介して依存関係を注入する、リポジトリパターンを使用してデータアクセスを抽象化する、ドメインサービスとオブジェクトを使用するビジネスデータや行動などをカプセル化するためのものです。これは、iOS開発でまだ見ていないことです。

私はObjective-CがCのスーパーセットであり、ダイナミックな/ゆるく型付けされた言語であることを実感しています。それは、良いデザインのプラクティスに関してはおそらくゲームをかなり変更するでしょう。誰でも私のデザインをしなやかに保ちつつ、ソリッドな原則を遵守しながら、強く型付けされた管理された環境からこの新しい世界への精神的な飛躍を助けるいくつかの本/ブログ/その他の指示に私を向けることができますか?

EDIT - 私はここで明確にしたいです。私はCocoaフレームワークと、Objective-Cの機能を言語として学ぶ方法を尋ねていません。私はそれについてたくさんのリソースを見つけました。私はこれを次のレベルに引き上げようとしています.TDDをやり始め、私が構築しているプロジェクトが拡張して維持しやすいようにしてください。

+1

私たちの何人かは、すべてのエンタープライズナンセンスから離れてiOS開発を始めました。 :) –

+2

@robmayoffこれらのタイプのものは確かに過ぎるかもしれませんが、 "ナンセンス"はやや厳しいものです。私たちは間違いなく、インラインSQLの時代に戻って行きたくないので、我々は後になってバランスが取れています。バランスの取れたアプローチに沿って、iOSでデザインを改善するためにあなたがやることは何ですか? –

+0

私は、アダムは言うように、あなたはAppleのAPIを見ることから始めるべきだと思います。 APIはシンプルで、最小限で、一貫性があります。例えば、コレクションを表現するために、Cocoaには 'NSArray'、' NSSet'、 'NSDictionary'という3つのクラスがあります。標準的なライブラリの一部として提供されるJavaやその他の言語と比較してください。また、「コードを変更しやすいように書く」というWWDCの講演、2011年の「CocoaとCocoa TouchのAPI設計」フォームをチェックしてください。 – Anurag

答えて

4

物事を行うための「最良」の方法を学ぶための最善の方法は、Appleの既存のAPIの設計方法のできるだけ深い理解を得ることです。結局のところ、理論的に最も良い方法が何であるかにかかわらず、最終的にはこれらのAPIを使用してコードを処理する必要があるため、ほとんどの場合、同様のパターンに従うべきです。

は限り本が行くように、人はアマゾンのレビューに基づいて、この正確な主題をカバーし、Cocoaのデザインパターンが呼ばれ、好評を博しているように見えます。

+0

おすすめです。 – JoePasq

+0

私はこれが私のためにすべてのギャップを埋めるだろうとは思っていませんが、それは私をかなり遠くまで追いやる素晴らしい本のようです。ありがとう。 –

1

私はあなたがcs193pのコースをたどると、AppleのウェブサイトからLearning Objective-Cを読むことをお勧めします。

私は、これらの2つのリンクが、iOS上でどのように動作するかについて正しい方向に向けると思います。 Objective-Cのとココアの開発に特有のデザインパターンの多くがあり

1

、あなたはthis bookでとても素敵な要約を見つけるでしょう。言語の組み込みパターン、さらに複雑で高水準の(必要に応じてアーキテクチャ的な)パターンもカバーしています。一般的に

、SOLID原則が適用されないと、彼らは強く型付けされた1にあるような動的言語で何の関連性が低いです。もう一つは、Objective-Cではデザインに強力な型を使用するという選択肢があるので、かなり古典的なOOPパターンが適用されますが、より洗練され、仕事に適したフレームワーク/言語構造がいくつかあるかもしれません。

関連する問題