Mobile App Software Engineering
Institut: HECKER CONSULTINGBereich: Technik, EDV, Telekommunikation
Kursbeschreibung
Ein Leitfaden für die Erstellung großer, nativer iOS- und Android-Apps - mit den typischen Herausforderungen und gängigen Lösungen in der Praxis.
Es gibt zwar viel Verständnis für die Herausforderungen im Sofware-Backend und bei verteilten Systemen, aber oft viel weniger Verständnis dafür, warum die mobile App-Entwicklung schwierig ist, wenn sie im großen Maßstab erfolgt.
Ein Backend-System zu bauen, das Millionen von Kunden bedient, bedeutet, hochverfügbare und skalierbare Systeme zu bauen und diese zuverlässig zu betreiben. Aber was ist mit den mobilen Clients für dieselben Systeme?
Die meisten Entwickler, die keine mobilen Apps gebaut haben, gehen davon aus, dass die mobile App eine einfache Fassade ist, die einen geringeren technischen Aufwand beim Bau und Betrieb erfordert. Wenn Sie sich genauer damit beschäftigen, werden Sie feststellen, dass dies nicht der Fall ist.
Es gibt viel Erfahrung in der Entwicklung großer, nativer, mobiler Anwendungen, aber oft wenig Interesse von Leuten, die nicht in diesem Bereich tätig sind, diese Herausforderungen kennenzulernen. Produktmanager, Business Stakeholder und sogar Entwickler, die keine nativen mobilen Anwendungen entwickeln, verstehen selten, warum es "so lange dauert", etwas für mobile Anwendungen zu entwickeln.
Lernen Sie die Herausforderungen kennen, mit denen Entwickler konfrontiert werden, wenn sie iOS- und Android-Apps in großem Maßstab entwickeln. Verstehen Sie, wie Teams kontinuierlich neue Funktionen auf den Markt bringen und trotzdem sicherstellen, dass die App zuverlässig und performant funktioniert. Entdecken Sie die besten Lösungen für Herausforderungen, wenn Ihre Apps von Millionen von Benutzern verwendet und von großen Entwicklerteams entwickelt werden.
Herausforderungen durch die Besonderheiten von mobilen Anwendungen- Zustandsverwaltung
- Fehler sind schwer rückgängig zu machen
- Die Last der alten App-Versionen
- Deeplinks
- Push- und Hintergrund-Benachrichtigungen
- App-Abstürze
- Offline-Unterstützung
- Barrierefreiheit
- CI/CD und der Build-Prozess
- Bibliotheken und SDKs von Drittanbietern
- Geräte- und Betriebssystem-Fragmentierung
- In-App-Käufe
- Navigationsarchitektur innerhalb großer Apps
- Anwendungsstatus und ereignisgesteuerte Änderungen
- Lokalisierung
- Modulare Architektur & Dependency Injection
- Automatisiertes Testen
- Manuelles Testen
- Planung und Entscheidungsfindung
- Architektonische Möglichkeiten, sich nicht gegenseitig auf die Zehen zu treten
- Gemeinsame Architektur über mehrere Apps hinweg
- Tooling-Reifegrad für große Entwicklungsteams
- Skalierung von Build- und Merge-Zeiten
- Mobile Plattformbibliotheken und Teams
- Neue Sprachen und Frameworks einführen
- Kotlin Multiplattform und KMM
- Plattformübergreifende Feature-Entwicklung
- Plattformübergreifende App-Entwicklung versus Native
- Web, PWA & Backend-getriebene mobile Apps
- Experimentieren
- Feature-Flag-Hölle
- Leistung
- Analytik, Überwachung und Alerting
- Mobile Rufbereitschaft
- Erweiterte Code-Qualitätsprüfungen
- Compliance, Datenschutz und Sicherheit
- Client-seitige Datenmigrationen
- Erzwungenes Upgrading
- App-Größe
Ein Leitfaden für die Erstellung großer, nativer iOS- und Android-Apps - mit den typischen Herausforderungen und gängigen Lösungen in der Praxis.
Es gibt zwar viel Verständnis für die Herausforderungen im Sofware-Backend und bei verteilten Systemen, aber oft viel weniger Verständnis dafür, warum die mobile App-Entwicklung schwierig ist, wenn sie im großen Maßstab erfolgt.
Ein Backend-System zu bauen, das Millionen von Kunden bedient, bedeutet, hochverfügbare und skalierbare Systeme zu bauen und diese zuverlässig zu betreiben. Aber was ist mit den mobilen Clients für dieselben Systeme?
Die meisten Entwickler, die keine mobilen Apps gebaut haben, gehen davon aus, dass die mobile App eine einfache Fassade ist, die einen geringeren technischen Aufwand beim Bau und Betrieb erfordert. Wenn Sie sich genauer damit beschäftigen, werden Sie feststellen, dass dies nicht der Fall ist.
Es gibt viel Erfahrung in der Entwicklung großer, nativer, mobiler Anwendungen, aber oft wenig Interesse von Leuten, die nicht in diesem Bereich tätig sind, diese Herausforderungen kennenzulernen. Produktmanager, Business Stakeholder und sogar Entwickler, die keine nativen mobilen Anwendungen entwickeln, verstehen selten, warum es "so lange dauert", etwas für mobile Anwendungen zu entwickeln.
Lernen Sie die Herausforderungen kennen, mit denen Entwickler konfrontiert werden, wenn sie iOS- und Android-Apps in großem Maßstab entwickeln. Verstehen Sie, wie Teams kontinuierlich neue Funktionen auf den Markt bringen und trotzdem sicherstellen, dass die App zuverlässig und performant funktioniert. Entdecken Sie die besten Lösungen für Herausforderungen, wenn Ihre Apps von Millionen von Benutzern verwendet und von großen Entwicklerteams entwickelt werden.
Herausforderungen durch die Besonderheiten von mobilen An…