iOS Design Pattern-Äquivalente aus einer C # / Java-Welt?

8

Ich bin also neu in der iOS-Entwicklung und tue alles, was ich kann, um die "beste" Methode zu lernen. (Ja, ich weiß, das ist ein relativer Begriff)

Ich komme aus einer Welt von C # und Java, wo wir beispielsweise Abhängigkeiten über einen IOC-Container einspeisen, ein Repository-Muster verwenden, um den Datenzugriff zu abstrahieren, Domain-Services und Objekte zu nutzen, um Geschäftsdaten und -verhalten zu kapseln Dinge, die ich in der iOS-Entwicklung noch nicht gesehen habe. (Vielleicht schaue ich an die falschen Stellen)

Mir ist klar, dass Objective-C eine Obermenge von C und eine dynamische / lose typisierte Sprache ist, die das Spiel wahrscheinlich ziemlich verändern wird, wenn es um gute Designpraktiken geht. Kann jemand mich in die Richtung einiger Bücher / Blogs / anderer verweisen, die mir helfen würden, diesen mentalen Sprung von einer stark typisierten, verwalteten Umgebung zu dieser neuen Welt zu machen, während ich meine Entwürfe geschmeidig halte und die SOLID-Prinzipien befolge?

BEARBEITEN - Ich möchte hier klar sein. Ich frage nicht, wie ich den Cocoa-Rahmen und die Einzelheiten von Objective-C als Sprache lernen soll. Ich habe viele Ressourcen dazu gefunden. Ich versuche, dies auf die nächste Ebene zu bringen, TDD zu erstellen und sicherzustellen, dass die Projekte, die ich erstelle, einfach zu erweitern und zu warten sind.

    
Ross Hambrick 31.01.2012, 20:56
quelle

3 Antworten

4

Der beste Weg, um den "besten" Weg zu lernen, ist es, so weit wie möglich zu verstehen, wie Apples bestehende APIs aussehen. Unabhängig davon, was der theoretisch beste Weg ist, etwas zu tun, ist letztendlich, dass Ihr Code mit diesen APIs arbeiten muss. Daher ist es sinnvoll, dass Sie in den meisten Fällen ähnlichen Mustern folgen.

Was die Bücher angeht, so gibt es eines namens Cocoa Design Patterns, das genau dieses Thema abdeckt und, basierend auf der Rezension von Amazon, gut aufgenommen zu sein scheint.

    
UIAdam 31.01.2012, 22:05
quelle
1

Es gibt viele Entwurfsmuster, die spezifisch für die Objective-C- und Cocoa-Entwicklung sind. Sie finden eine sehr schöne Zusammenfassung in dieses Buch . Es umfasst sowohl eingebaute Muster als auch einige kompliziertere und höherwertige (Architektur, wenn Sie möchten) Muster.

Im Allgemeinen gelten SOLID-Prinzipien und sind in einer dynamischen Sprache nicht weniger relevant, da sie stark typisiert sind. Die andere Sache ist, dass Sie in Objective-C die Option haben, starke Typen in Ihrem Design zu verwenden, so ziemlich alle "klassischen" OOP-Muster anwenden, obwohl es einige Rahmen- / Sprachkonstrukte eleganter und passend für den Job geben kann. p>     

Tomas Vana 01.02.2012 14:56
quelle
1

Ich empfehle Ihnen, dem Kurs cs193p zu folgen und Learning Objective-C von der Apple-Website.

Ich denke, diese beiden Links werden Sie in die richtige Richtung weisen, wie die Dinge auf iOS funktionieren sollten.

    
Alex Terente 01.02.2012 07:54
quelle