Heim  >  Artikel  >  Web-Frontend  >  Mein erster Full-Stack-Hackathon: Lehren aus der Entwicklung einer mobilen App

Mein erster Full-Stack-Hackathon: Lehren aus der Entwicklung einer mobilen App

DDD
DDDOriginal
2024-10-01 22:23:02265Durchsuche

My First Full-Stack Hackathon: Lessons from Building a Mobile App

Dieser Beitrag lag monatelang in meinen Entwürfen und verstaubte. Endlich bin ich bereit, es das Licht der Welt erblicken zu lassen und die Erfahrung meines ersten Full-Stack-Hackathons mit Ihnen zu teilen.


Ich gebe offen, dass ich ein autodidaktischer Entwickler bin und dieser Hackathon das erste Mal war, dass ich eine Full-Stack-App erstellt habe.

Die Aufgabe dieses Hackathons bestand darin, eine mobile Anwendung für eine Wohnungsbaugesellschaft zu erstellen und grundlegende Funktionen wie das Senden von Hausberichten, Hausanträgen, das Anzeigen von Mietabrechnungen, das Anfordern von Hilfe und das Anzeigen der FAQs zu implementieren.

Ich war der Android-Entwickler und die anderen Teamkollegen kämpften intensiv mit Xamarin für IOS und bauten das Website-Portfolio für das Projekt auf.

Übrigens, fragen Sie mich nicht, warum wir nicht Xamarin für alle Plattformen verwendet haben, wir sind Quiche-Esser.

Gleichzeitig berücksichtigten die Wettbewerbsregeln nicht die Tatsache, dass Apple-Binärdateien nicht ohne Big Brothers-Rezension verteilt werden können.
Deshalb planten wir, eine Android-App zu erstellen und diese über Xamarin in eine IOS-Plattform-Binärdatei zu kompilieren.

( ...einer meiner Teamkollegen hat dies vorgeschlagen – ich weiß nicht, was für ein Kompilierungszauber vor sich geht, ich habe schon einmal eine Sprache erstellt und weiß, dass es nicht einfach ist, Sprachpakete in eine andere zu ändern)

Für Android verwendeten wir Javascript, das auf dem DroidScript Framework lief, zusätzlich kämpften die anderen Teamkollegen mit einem weiteren Hackathon und waren auf meine Bitte hin um Feature-Implementierungen bemüht.

Ich habe mich für DroidScript entschieden, weil es auf einzigartige Weise die Komplexität der Benutzeroberfläche auf Android reduziert und auf native APIs zugreift und gleichzeitig eine kleine Binärdatei erstellt.

Außerdem habe ich mich aufgrund meiner Erfahrungen mit der UI-Entwicklung dafür entschieden. Ich habe die Material Design 3-Bibliothek kürzlich als Plugin auf DroidScript portiert, daher wird die Benutzeroberfläche kein Problem darstellen.

Ich habe beschlossen, Node.js nicht für die Client-Anwendung hinzuzufügen, da Node viel zu schwer ist, aber für die Admin-App habe ich überall Node mit ESM-Varianten verwendet.

Wir haben das Projekt in 4 Tagen abgeschlossen und am selben Tag der Einreichung mit dem Entwurf der Admin-App begonnen, es ist uns jedoch nicht gelungen, es abzuschließen.

Also, was war das Ergebnis? Nun ja, wir haben weder gewonnen noch es in die Endrunde geschafft. Tatsächlich haben wir nie Feedback oder Updates erhalten, was frustrierend war. Ich bin nicht über den Verlust enttäuscht, sondern über den Mangel an Transparenz.


Trotz allem gab es einige wertvolle Erkenntnisse aus diesem Hackathon:

Tests schreiben, auch in einem Hackathon
Anfangs haben wir die Tests aus Zeitgründen ausgelassen, aber dann kam es wieder zu Problemen. Tests hätten uns geholfen, während der Entwicklung über 5.000 Firebase-Aufrufe zu vermeiden. Lektion gelernt.

Unterschätzen Sie XML DOM in Android nicht
Wir hatten Probleme mit der Leistung der Benutzeroberfläche, insbesondere beim dynamischen Hinzufügen mehrerer Elemente. Die Art und Weise, wie DroidScript das XML-DOM von Android verarbeitet, erwies sich als langsamer als erwartet. Ich hätte Enjine.IO verwenden sollen, eine webbasierte Version von DroidScript (geschrieben von den wichtigsten DroidScript-Entwicklern), aber schneller und mit den Vorteilen einer plattformübergreifenden Plattform.

Denken Sie zweimal darüber nach, Node.js auszuschließen
Wir dachten, der Ausschluss von Node.js für die Client-App würde Platz sparen, aber es kostete uns Funktionalität. Firebase war bei der Integration als Skript deutlich langsamer als bei der Verwendung als Node-Modul. Beim nächsten Mal würde ich die Kompromisse noch einmal überdenken.


Vielen Dank fürs Lesen! Es hat vielleicht Monate gedauert, bis dieser Blogbeitrag fertig war, aber die Lektionen, die ich gelernt habe, werden viel länger anhalten.

Sie können sich das Projekt hier ansehen: Hackathon-Projekt.

Teilen Sie mir Ihre Meinung mit!

Das obige ist der detaillierte Inhalt vonMein erster Full-Stack-Hackathon: Lehren aus der Entwicklung einer mobilen App. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn