Monzo to bank i aplikacja, która oferuje cyfrowych usług finansowych. Misją firmy jest uczynienie pieniędzy narzędziem do osiągania sukcesu przez wszystkich. System projektowania Monzo zaczął odbiegać od Material Design, więc firma chciała łatwo pisać i utrzymywać niestandardowe komponenty, które stale się rozwijają. Dlatego wybrała Jetpack Compose.
Rozwiązanie
W Compose komponenty Material Design są udostępniane jako warstwa na interfejsach API podstawy niezależnych od systemu projektowania. Firma Monzo wykorzystała podstawowe interfejsy API do stworzenia własnej biblioteki komponentów, korzystając z komponentów Material Design jako odniesienia. Ta od przenoszenia pojedynczego ekranu, a teraz z funkcji Utwórz na wszystkich nowych ekranach. Obecnie Compose jest używane w produkcji przez wszystkich inżynierów Androida: „Nie napotkaliśmy żadnych poważnych problemów, więc zaczęliśmy używać tej technologii w przypadku wybranych nowych funkcji, a ostatecznie we wszystkich nowych funkcjach”.
Wyniki
Zespół Monzo stworzył komponenty, które umożliwiają łatwe tworzenie nowych ekranów: „Komponenty, które udostępniamy, znacznie ułatwiają tworzenie ekranów podczas nauki korzystania z Compose”. Interfejsy API oparte na slotach to fantastyczny wzorzec, który ułatwia nam tworzenie większych komponentów z wielu małych elementów składowych”.
Dzięki Compose zespół Monzo był w stanie stworzyć aplikację wyższej jakości, funkcje, do których wcześniej nie mieli dostępu sprinty: „Na przykład animacje. Można je łatwo dodać w funkcji Compose, nie ma bardzo powodów, by nie animować elementów, takich jak kolor/rozmiar/wysokość zmian. Te animacje „dodatkowe” są często zbyt skomplikowane, aby opłacało się stosować je w systemie View”.
Ich kod jest teraz krótszy, a także bardziej czytelny i zrozumiały. utrzymania: „Kod deklaracja jest znacznie łatwiejszy do wyciągnięcia wniosków niż obsługuje zmienną hierarchię UI. Łatwiej też analizować kod, gdy jest on napisany w tym samym języku i często w tym samym pliku, zamiast przełączać się między Kotlinem a XML-em. Nie wspominam nawet o tematach i stylach w pliku XML. Znacznie łatwiej jest zrozumieć tematykę w funkcji tworzenia wiadomości. Nasz motyw składa się tylko z właściwości zdefiniowanych przez nas, wartości są spójne na różnych urządzeniach, a ponieważ jest on w języku Kotlin, łatwo jest je wyszukiwać IDE”.
Zespół Monzo mógł łatwo przetestować aplikację i upewnić się, że przystępność: „Dzięki temu mogliśmy napisać mniej wrażliwe testy, które działają niezawodnie Dzięki temu mamy pewność, że nasza aplikacja działa w rękach naszych użytkowników. Testowanie za pomocą systemu semantycznego zapewnia też, że nasze ekrany są co najmniej „w przypadku większości przypadków dostępne domyślnie”.
Rozpocznij
Dowiedz się więcej o funkcji Utwórz.