Android-App Code-Review durchführen

deka

deka

Dauergast
351
Hallo,

ich arbeite zurzeit an einer App und wollte mal fragen, ob es die Möglichkeit gibt Code-Reviews mit Experten durchzuführen. Damit meine ich, dass man sich zusammen den Code anschaut und optimiert. Wäre auf jeden Fall sehr nützlich.

Wird sowas irgendwo angeboten? Habe im Internet nichts dazu gefunden.
 
Hallo deka,

Programmaufbau, Verwendung und Optimierung von verschiedenen Techniken ist idR individuell - das ist
Dir wahrscheinlich nichts Neues :)
Würde sich also eine dritte Person die Zeit nehmen und sich in die Komplexibilität Deines Projektes
einarbeiten, und vor allen Dingen sich in deine Denkweise einarbeiten, käme das der Entwicklung gleich - dann wären wir bei den Kosten

Bei kommerziellen Projekten mit mehreren Entwicklern wird das auch nicht getan, sondern jeder hat seine Vorgaben für sein Zahnrad im gesamten Uhrwerk - er bekommt lediglich gesagt , wie die einzelnen Zähne auszusehen haben , wie er es zum Drehen bekommt , ist wieder seine Sache .
Baut er Mist, wird es das letzte Zahnrad sein.

Deshalb wirst du auch schwer was im INet finden - sowas findet maximal auf privater Basis statt.


Nachtrag : Ich biete meinen Kunden grundsätzlich immer den Quellcode des für sie in Auftrag gegebenen Produktes an.
Es gibt Ihnen eine gewisse Sicherheit - aber im Grunde genommen können sie mit diesem NULL anfangen.
Meine eventuellen "Nachfolger" machen es lieber direkt neu , bevor sie sich in meine Arbeit eindenken ...

Mental-Property hin oder her - MEIN Mental-Property ist eh einzigartig - negativ oder positiv gesehen.
Das will und kann keiner kopieren :)

lg Stefan
 
Zuletzt bearbeitet:
  • Danke
Reaktionen: deka
Danke für deine Antwort. Das habe ich mir schon gedacht, dass sowas offiziell nicht angeboten wird. Die genannten Punkte von dir sind natürlich eine individuelle Sache. Mir geht es hauptsächlich um die Optimierung und damit meine ich allgemeine Elemente von Android und nicht die Logik. Beispielsweise die ganzen Layouts, Lifecyle usw.. Das man hier einfach noch mehr rausholt. Da ich komplett alleine entwickele, dachte ich wäre es mal hilfreich jemanden über solche Punkte drüberschauen zu lassen :)
 
Dafür gibt es z.b. das Forum hier.
Auch ich komme selbst nach über 20 Jahren hauptberufliche Entwicklung hin und wieder an meine Grenzen.

Und aus den Kontakten hier ergibt sich dann meistens auch wieder ein weiterer Kontakt , bei dem hin und wieder dann ein gemeinsames Projekt abfällt.

Hast du also Fragen - her damit .

Wir werden immer versuchen , dir unseren vermeidlichen Dilettantismus einzutrichtern :)
 
  • Danke
Reaktionen: deka
deka schrieb:
Hallo,

ich arbeite zurzeit an einer App und wollte mal fragen, ob es die Möglichkeit gibt Code-Reviews mit Experten durchzuführen. Damit meine ich, dass man sich zusammen den Code anschaut und optimiert. Wäre auf jeden Fall sehr nützlich.

Wird sowas irgendwo angeboten? Habe im Internet nichts dazu gefunden.

Im Grunde genommen bietet dir genau das die Android Studio Entwicklungsumgebung.

Siehe dazu hier: Improve Your Code with Lint | Android Studio

In Firmen wird dafür dann gern SonarQube SonarQube™ » Effective Code Review with Sonar eingesetzt, dass kannst du gern versuchen zu benutzen, denke aber das es gerade für private Projekte etwas zu viel ist.

Zwecks Performance-Optimierung gibt es einige gute Tools von Android selber, mit diesen kannst du deine App analysieren und dementsprechend anpassen/optimieren. Dafür ist folgende Seite ein guter Einstieg: Performance Tips | Android Developers

Viel Erfolg
 
  • Danke
Reaktionen: deka
@Madlip

Hast Du persönlich schon einmal einer der beiden von Dir vorgestellten Alternativen effektiv anwenden können ?
Wenn ja, welche Erfahrungen hast du gesammelt ?
(Bei meinen eher exotischen Anwendungs-Anforderungen hat Android Studio/resp Lint versagt und eher verwirrt)
 
Zuletzt bearbeitet:
@swa00 ich arbeite mit beiden, natürlich muss man selber hin und wieder entscheiden ob gewisse Regeln Sinn machen. Bis jetzt habe ich mehr positive als negative Erfahrungen gemacht. Eigentlich gibt es nur zwei Sachen die mir negativ auffallen

- Manche Regeln sind fragwürdig, da kann man diskutieren und wird stimmige Argumente auf beiden Seiten finden
- Priorität mancher Regeln, ein kleiner Auszug aus Regeln die mit "Major" Priorisiert sind:
  • Use ConcurrentHashMap, ConcurrentHashMap anstatt HashMap (macht halt nicht immer Sinn, berücksichtigt Sonar leider nicht)
  • Null Assignment (?!) Dafuq ...
Wobei diese auch mit zum ersten Punkt zählen können.

Jedoch kann man das innerhalb von Sonar auch einstellen.

Ich bin mir jetzt nicht sicher was du mit "exotischen Anwendungs-Anforderungen" meinst aber bei mir versagt die in Android Studio integrierte lint Validierung nicht, bin eigentlich recht zufrieden damit. Wobei man sicherlich da auch die ein oder andere Regel finden wird die man guten Gewissens auskommentieren kann.
 
  • Danke
Reaktionen: swa00
@Madlip
Ich danke Dir für deine Erfahrung. Vielleicht setze ich mich nochmal hin und gebe Lint eine Chance.
Du kennst das ja - ausprobieren , "Was soll denn der Mist ? " und beiseite gelegt :) - Thema beendet :)

(Lieber zwei Stunden einen Bug suchen , als ein Buch zu lesen )
 
  • Danke
Reaktionen: Madlip
@deka

Noch ein Nachtrag zum dem Thema:
Code-Review gehört zum Bereich testen. Eigentlich sollte es jeder Tester können, die meisten benutzen nur lieber Test-Units, oder lassen es ganz sein (Blackbox).
Der Haken dabei ist, dass man sehr viel Erfahrung braucht. Jeder Entwickler hat seinen eigenen Style, und man muss sich darauf einlassen. Und dann Anpassungen finden, die der Art zu programmieren entsprechen. Sprich die Leute, die das können, sind recht selten, und meist teuer.

Die meisten Tools sind nur begrenzt hilfreich, gerade die komplexeren Probleme (z.B. Memory Leaks) finden diese meist auch nicht.
 
  • Danke
Reaktionen: deka
Vielen Dank für eure hilfreichen Antworten :)

Es macht einfach einen großen Unterschied, ob man ganz alleine entwickelt oder in einem Team. Ich kenne auch viele der von euch genannten Tools. Natürlich sind diese hilfreich, aber es ersetzt dennoch keinen professionellen Entwickler.

Für mich ist und bleibt das wichtigste Tool aber immer noch die Seite Stackoverflow. Da kriegt man wirklich auf fast jede Frage eine Antwort.

Ich werde einfach versuchen mit meinem Wissen und den Tools das bestmögliche aus der App rauszuholen :)
 

Ähnliche Themen

B
Antworten
4
Aufrufe
470
bb321
B
FabianDev
Antworten
5
Aufrufe
547
swa00
swa00
D
Antworten
23
Aufrufe
2.498
Data2006
D
Zurück
Oben Unten