Open rleh opened 8 years ago
Zum Konzept:
@Kryptur: Was ist denn für dich ein Konzept? Objekthierarchie? Grafik?
@Harry-R: Konzept wäre für mich eine grobe Beschreibung der Activitys, was Funktionen und UI-Aufbau angeht (Für jede Activity eine Wikiseite?). Wie genau das umgesetzt wird, können wir dann ja jeweils konkret diskutieren.
Ich denke das Konzept sollte grob folgendes beinhalten:
Namenskonventionen sind generell im Kodingstandard mit drin.
Pushbenachrichtigungen find ich gut.
Für den abstrahierten API Zugriff könnte ich in Java was machen. Also ein schönes subpackage dafür entwerfen
Ok, den Codingstandard hab ich noch nicht komplett gelesen.
Push Benachrichtigungen mittels GCM müssten dann in MyTFG noch entsprechend implementiert werden. (z.B. mit dieser Lib).
Beim Git-Branching würde ich vorschlagen, dass wir uns an dieses Modell halten.
Sieht gut aus. Wenn die jetzt hier vom Mergen reden: Ich wäre für rebasen^^
Und generell was den Master angeht (bzw. den Development Branch): Pull-Request?
Wie siehts mit nem Build-Server aus? Der kann Checkstyle, javadoc, junit wenn es das für Android Development gibt usw. ausführen und schöne Fehler ausspucken.
Kann man doch bestimmt einen Server in der Schule oder einen von 1&1 für nehmen.
Wie rebasen? Die Feature-Branches in den develop-Branch rebasen, oder vor dem mergen den develop-Branch in den jeweiligen Feature-Branch rebasen?
Was meinst du mit Pull-Request? Jeder forkt dieses Repo und macht dann Pull-Requests gegen (den development Branch) dieses Repo(s)? Oder Merge-Requests aus "eigenen" Branch stellen und die mergen lassen?
Bzgl. Build-Server: Ich würde vorschlagen Travis CI zu nutzen, da kann man dann auch direkt APKs Builden lassen (immer mit dem selben Signing-Key, sonst muss man immer beim Installieren die App-Daten löschen) und z.B. auf GIthub Releases hochladen lassen :)
Alternativ könnten wir versuchen das über https://ci.jufo.mytfg.de/ laufen zu lassen, da drauf kann man auch Android Linten und Builden. Die 1und1 VServer sind glaube ich nicht leistungsstark genug zum Builden...
Noch eine Frage: Wollen wir das Wiki zu diesem Repo nutzen? Derzeit ist das Wiki hier deaktiviert, ich wäre dafür stattdessen Markdown Dokumente im Repo zu nutzen.
Rebasen: development in die Features immer mal, dann ist es nicht so ein kuddelmuddel.
Entweder forks oder interne Pull Request / merge Request. Auf jeden Fall nicht einfach ohne Zustimmung. Es müssen der build Server und die anderen zustimmen bzw den Pull / merge bearbeiten, bevor er gemerged wird.
Build Server klingt gut! Ich glaube, dass die 1&1 Server das schon schaffen würden, aber eher lahm. Wobei github das auch gerne etwas verkackt und andauernd irgendwelche rebuilds veranlasst.
Bin auch für markdown.
Das Branchingmodell klingt auf jeden Fall sinnvoll. Ich finde das Wiki aber garnicht so schlecht, da hat man alles schön übersichtlich und geornet. Der Programmierer stellt dann einfach eine pull / merge request und die anderen schließen den merge dann ab. So ist sichergestellt, dass mindestens ein Person nochmal drüberguckt.
Was für eine .gitignore nehmen wir? @rleh ich fand die aus iBis eigentlich nicht schlecht.
Ich finde Markdown Dateien im Repo schöner, weil man die auch direkt auf dem PC (in Android Studio) sieht und bearbeiten kann. In den Markdown Dateien kann hat man die selben Gestaltungsmöglichkeiten (Links, Bilder, Tabellen, etc.) wie im Wiki.
Also diese gitignore-Datei: https://jufo.mytfg.de/ibis/app/blob/master/.gitignore ? Sind soweit ich weiß die Standard- und die JetBrains- gitignore-Dateien kombiniert.
Sehe ich auch so. Kann jemand demnächst mal die Sachen hier reinpushen? Dann könnte man da schonmal experimentieren.
Welche Sachen rein pushen?
gitignore und vlt eine Ordnerstruktur. Wenn ihr schon ne App entwickelt habt, habt ihr da vlt was schönes.
Mache ich.
Packagename ist de.mytfg.app.android, ok? Sonst bitte sehr schnell Einspruch einlegen ;)
Sehr gut :+1:
Done :smiley:
Ich würde das hier vlt nochmal fortführen. Es fehlen noch: Farbkonzept
Bedienkonzept
Klassen- und Paketstruktur
Die eigentliche Funktionalität (z.B. API Zugriff) sollte größtenteils ausgelagert werden. Hierzu für jedes Fragment ein Package in modules erstellen, dort dann eine / mehrere Klasse(n) implementieren.
Hier mal so zusammengefasst, was mir spontan eingefallen ist.
Farben finde ich gut bisher, aber wir haben das ja auch quasi mündlich diskutiert.
Das grobe Bedienkonzept ist ja jetzt auch quasi festgelegt. Bin ich auch mit einverstanden. Landscape orientation finde ich persönlich nicht wichtig, aber sauberer wäre es schon wenn das auch klappt. Gerade auf Tabletts ist das IMHO interessant. Bei Langeweile kann bestimmt noch einige Optimierungen (zwei spalten Ansicht, ...) für Landscape vornehmen.
Die klassenstrukur hört sich für mich auch sinnvoll an :wink:
Zusammenfassung dieses "Issues":