Square zwiększa produktywność dzięki Compose
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Square pomaga milionom sprzedawców prowadzić działalność – od bezpiecznego przetwarzania płatności kartą kredytową po rozwiązania w punktach sprzedaży i zakładanie bezpłatnych sklepów internetowych. Square od jakiegoś czasu przechodzi na deklaratywny interfejs, ale zamiast dalej tworzyć własne ramy, zdecydował się na Jetpack Compose, unikając kosztów utrzymania i korzystając z ulepszeń, które przynosi w porównaniu z systemem widoków Androida.
Rozwiązanie
Zespół Square zaczął tworzyć system projektowania w Compose, aby umożliwić zespołowi ds. systemu projektowania i inżynierom produktów szybszą pracę.
Ponieważ ich aplikacja jest już zorganizowana w architekturze jednokierunkowego przepływu danych, „inżynierowie produktu mogą bardzo łatwo zastępować poszczególne ekrany za pomocą Compose”. Podczas wdrażania Compose zauważyli, że „czasami jest to tak proste, że aż trudno w to uwierzyć. Wszystko po prostu działa”.
Wyniki
„Dzięki Compose możemy skupić się na elementach unikalnych dla Square i naszej infrastruktury interfejsu użytkownika, zamiast rozwiązywać szerszy problem związany z tworzeniem deklaratywnej platformy interfejsu użytkownika”.
Zespół inżynierów stwierdził, że Compose zwiększa produktywność, ułatwiając zrozumienie, organizowanie i pisanie kodu, a narzędzia Androida Studio oszczędzają im dużo czasu.
„Stylizowanie komponentów jest prostsze i szybsze. Łatwiejsze jest też czytanie kodu złożonych komponentów. W Compose łatwiej jest organizować kod i sprawiać, że jest on czytelny. System układu w Compose jest prostszy pod względem koncepcyjnym, dzięki czemu łatwiej go zrozumieć. Podglądy pozwalają zaoszczędzić sporo czasu podczas tworzenia komponentów”.
Rozpocznij
Dowiedz się więcej o tworzeniu.
Treść strony i umieszczone na niej fragmenty kodu podlegają licencjom opisanym w Licencji na treści. Java i OpenJDK są znakami towarowymi lub zastrzeżonymi znakami towarowymi należącymi do firmy Oracle lub jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2021-07-28 UTC.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2021-07-28 UTC."],[],[],null,["[Square](https://squareup.com/) helps millions of sellers run their\nbusiness -- from secure credit card processing to point of sale solutions to\nsetting up a free online store. Square has been moving to declarative UI for\na while but rather than continuing to build their own framework, they decided to move to\nJetpack Compose, avoiding the maintenance costs and taking advantage of the\nimprovements it brings over the Android Views system.\n\nWhat they did\n\nThe Square team started building their design system in Compose, with the goal\nof enabling their design system team and product engineers to move faster.\nBecause their app is already organised with a unidirectional data flow\narchitecture, *\"It's really easy for product engineers to swap in Compose one\nscreen at a time.\"* While adopting Compose, they've seen that *\"sometimes it's\nalmost so simple you expect it to be more complicated. **Things just work.**\"*\n\nResults\n\n*\"By using Compose, we can **focus on things that are unique to Square** and our UI\ninfrastructure, rather than solving the broader issue of building a\ndeclarative UI framework.\"*\n\nThe engineering team found that Compose improved their productivity, making the\ncode easier to reason about, organise, and write, and the Android Studio\ntooling saved them a lot of time.\n\n*\"It's **simpler and faster to style components** . Reading the code for complicated\ncomponents is easier as well. It's **easier to organize code and make it\nreadable** in Compose. The layout system of Compose is conceptually simpler so\nit's **easier to reason about. Previews are a big time saver** when building\ncomponents.\"*\n\nGet started\n\nLearn more about [Compose](/jetpack/compose)."]]