Java 2 mal der selbe Code in verschiedenen Activitys?

1 Antwort

Das Thema hat prinzipiell nichts mit Android Studio oder Java zu tun, sondern ganz allgemein Software-Architekturen. Ich persönlich habe solche Situationen nur noch sehr selten und die sind dann so allgemein (z.B. Handling von MultiThreading-Scenarien), dass man sie wunderbar als eigenständige Klasse/Assembly auslagern kann und in mehreren Projekten nutzen kann.

Welche vorgehensweise nimmt man meist in solch einem Fall?

Es gibt zig verschiedene Wege, das zu lösen.

Die vermutlich einfachste und verbreitetste Vorgehensweise ist die Mehrschichten-Architektur - meist 3 Schichten. Die Activity ist dann die UI-Schicht, darunter die Business-Schicht und darunter wiederum die Daten-Schicht.

Alles, was tatsächliche Business-Logik ist, gehört in die Business-Schicht und darf auf keinen Fall in irgendeiner Weise von darüber liegenden Schichten abhängig sein. Gleiches gilt für die Daten-Schicht.

Wie die Business-Schicht aufgebaut ist, ist unterschiedlich. Bei einem aktuellen Projekt von mir habe ich ein Service-Prinzip, also jeder Teilbereich bekommt einen (oder mehrere) Service(s) und nutzt die Methoden daraus. Es gibt aber auch komplexere Prinzipien (z.B. CQRS) die deutlich komplexer sind, aber auch viele Vorteile (und natürlich auch Nachteile) bieten.

|

Oder Du lagerst es einfach nur in eine Klasse aus und rufst die auf. Viele machen das so, in gewissen Rahmen reicht das auch aus, aber es kann genauso gut auch in die Hose gehen, wenn ein Projekt größer wird und länger lebt.

Was Du aber auf keinen Fall tun solltest, ist einfach Activity 1 aus Activity 2 heraus aufzurufen.