Jabłka Katalizator Mac projekt wydaje się wystarczająco nieszkodliwy. Zapewnia programistom iOS prosty sposób przenoszenia aplikacji na komputer Mac — scenariusz korzystny zarówno dla programistów, jak i Apple, prawda?
Zawartość
- To nie jest magiczne pole wyboru
- Z iPada na Maca w kilka minut
- Kiedy zderzają się dwa światy
- Obejścia, przyszłe żądania i ceglane ściany
- Przyszłość Mac Catalyst
Polecane filmy
No tak. Ale jeśli oceniać po historii, stawka jest wysoka. Wypełnienie luki między światem urządzeń mobilnych i komputerów stacjonarnych wydaje się zadaniem herkulesowym, biorąc pod uwagę różne cele, problemy i problemy ze wsparciem. Microsoft wielokrotnie poniósł porażkę podczas przejścia, a sam Apple przez wiele lat unikał takich prób.
The początkowe wysiłki nie wzbudziły większego zaufania, ale teraz, gdy projekt trwa już prawie dziewięć miesięcy, nadszedł czas, aby podsumować, na jakim etapie jest naprawdę Catalyst.
Powiązany
- Apple właśnie dał graczom komputerów Mac duży powód do ekscytacji
- iMac 27-calowy: wszystko, co wiemy o większym i wydajniejszym iMacu Apple
- Masz iPhone'a, iPada lub Apple Watch? Musisz go zaktualizować już teraz
Czy wizja Apple dotycząca przyszłości komputerów Mac sprawdza się dla programistów?
To nie jest magiczne pole wyboru
Plotki o Apple „łączy” MacOS i iOS krążyły od lat, mimo że Apple odniósł się do tego bezpośrednio w swoim przemówieniu. Nie tym jest Mac Catalyst.
Jest to raczej zestaw narzędzi, które pozwalają programistom szybko i łatwo przenosić aplikacje z iPada na komputer Mac. W najprostszym scenariuszu programiści mogą po prostu zaznacz pole wyboru w XCode (aplikacja Apple do tworzenia oprogramowania) i większość ciężkiej pracy zostanie wykonana za nich.
Perjan Duro jest założycielem aplikacji finansowej MoneyCoach i jednym z pierwszych programistów, z którymi rozmawialiśmy na temat Catalyst. Powiedział, że konwersja aplikacji jego zespołu z iPada na komputer Mac była „jedną z najważniejszych atrakcji tego lata” po tym, jak firma Apple przedstawiła narzędzia programistyczne Mac Catalyst na konferencji WWDC w czerwcu 2019 r. Częściowo dzieje się tak dlatego, że umożliwiło to zmianę projektu aplikacji, co doprowadziło do wielu ulepszeń i dodatkowych funkcjonalności.
„W osiemdziesięciu procentach przypadków udaje się wykonać zadanie”.
„Jeśli pracujesz nad aplikacją na iPadOS i optymalizujesz ją pod kątem komputerów Mac, oszczędzasz czas i koszty” – powiedział Duro.
Powiedział nam, że jego zdaniem technologia jest „bardzo obiecująca”, chociaż to, czy programista powinien z niej skorzystać, zależy od „przypadku użycia aplikacji i wykorzystywanych w niej technologii”. W osiemdziesięciu procentach przypadków udaje się wykonać zadanie.
Ale Catalyst tak naprawdę zajmuje się tylko back-endem — zapewnia obsługę myszy i okien, umożliwiając faktyczne działanie aplikacji na komputerze Mac i tym podobne. Większość prac front-endowych, takich jak dostosowywanie wyglądu aplikacji i dodawanie dodatkowych funkcji, spoczywa na programistach. Firma Apple powiedziała nam, że postrzega Mac Catalyst bardziej jako narzędzie umożliwiające programistom niż cokolwiek innego oraz zestaw narzędzi, które będą dostępne, jeśli programiści zdecydują się przenieść swoje aplikacje na iPada na nową platformę.
Duro twierdzi, że Catalyst nie tylko oszczędza czas — przełamuje bariery, które mogły powstrzymywać programistów od przenoszenia aplikacji na nowe platformy.
„Od samego początku chcieliśmy zobaczyć MoneyCoach na komputerze Mac” – przyznaje. – Udało nam się to osiągnąć dopiero w zeszłym roku. To daje mi radość i pozwala zapomnieć o trudnych chwilach.”
Apple nie postrzega tego jako magicznego systemu, który natychmiast zmienia aplikację, która działa jak w domu na iPadzie, w taką, która wygląda i działa dokładnie tak, jak aplikacja na Maca. Zamiast tego Apple zapewnia podstawowe narzędzia. To od programistów zależy, czy wykorzystają te narzędzia i będą z nimi pracować.
W dłuższej perspektywie Apple twierdzi, że celem jest stworzenie lepszego, bardziej płynnego doświadczenia zarówno dla programistów, jak i użytkowników. Przykładem, który podała nam firma, był Szybkie place zabaw, aplikacja do kodowania firmy Apple, która uczy ludzi tworzenia prawdziwych aplikacji przy użyciu języka programowania Swift. Swift Playgrounds to aplikacja Mac Catalyst, która umożliwia uczniom uzyskanie takich samych wrażeń niezależnie od tego, czy tworzą kod na iPadzie, czy na komputerze Mac. To rodzaj nieprzerwanego doświadczenia, które Apple chce udostępniać coraz częściej dzięki Mac Catalyst.
Apple poszedł pierwszy, jak każdy dobry lider, zastępując starszą aplikację iTunes z trzema oddzielnymi aplikacjami Catalyst. Pierwsza partia nie wzbudziła większego zaufania. Wieloletni użytkownicy komputerów Mac, tacy jak ja, byli zmuszeni zadać sobie pytanie, czy do czego prowadzi pseudomałżeństwo obu platform platforma traci duszę.
Wczesne próby można wybaczyć. Prawdziwym testem byłoby to, jak zewnętrzni programiści korzystali z tych narzędzi. Poza początkowym cyklem prób programistów, rozmawiałem z kilkoma programistami, którzy zanurzali się w świecie aplikacji dla komputerów Mac. Ku mojemu zdziwieniu większość z nich była zachwycona.
Z iPada na Maca w kilka minut
Nawet bez żadnych poprawek płynne działanie aplikacji na iPada na komputerze Mac było ekscytującym doświadczeniem dla wielu programistów, z którymi rozmawiałem.
Atlassian to firma programistyczna z siedzibą w Sydney w Australii, znana z aplikacji Jira do śledzenia problemów. Rozmawiałem z Simonem Stiefelem, starszym inżynierem firmy, który był całkiem pozytywnie nastawiony do tego, jak Catalyst pomógł firmie Atlassian w rozpoczęciu prac nad rozwojem komputerów Mac.
„Firma Apple wykonała świetną robotę, przenosząc interfejsy API iOS do systemu MacOS, a dzięki Catalyst mogliśmy szybko uruchom naszą aplikację na MacOS, używając większości kodu, który już napisaliśmy dla iOS” – powiedział Stiefel Ja. „To było bardzo ekscytujące, zobaczyć po raz pierwszy naszą aplikację na iPada działającą na komputerze stacjonarnym”.
Kriss Smolka, założycielka twórcy HabitMinder Funn Media, również była podekscytowana możliwością rozpoczęcia pracy. Zanurkował bezpośrednio w Mac Catalyst pod adresem WWDC 2019, twierdząc, że przeniesienie HabitMinder na komputer Mac zajęło jemu i jego zespołowi niecałe trzy dni.
Według Smolki około 80% funkcji aplikacji działało od razu po wyjęciu z pudełka, a reszta wymagała drobnych poprawek, aby zaczęła działać. Tak szybkie zobaczenie działającej aplikacji jest zachęcające dla programistów. Jest to szczególnie prawdziwe w przypadku mniejszych zespołów, które mogą nie mieć zasobów, aby spędzać wieczność na ulepszaniu i rozwiązywaniu problemów, aby ich aplikacje działały na nowej platformie.
„Uruchomienie aplikacji Fiery Feeds w systemie MacOS przebiegło niezwykle szybko” – powiedział Lukas Burgstaller z Cocoacake Software, którego aplikacje obejmują czytnik RSS po odtwarzacz muzyki na iOS służący do zasypiania.
Dla wielu programistów stworzenie wersji aplikacji na iPada dla komputerów Mac było spełnieniem marzeń.
„To była aplikacja na iPada i w ciągu pół godziny miałem działającą wersję aplikacji na Maca” – powiedział mi Burgstaller. „Wymyśl dokładnie aplikację na iPada działającą z obramowaniem okna. Dojście do czegoś, co wygląda i przypomina w połowie prawdziwą aplikację na Maca, zajęło około czterech miesięcy… zrobienie tego samego z AppKit zajęłoby 1-2 lata — dlatego nie stworzyłem aplikacji na Maca zanim."
Dla wielu programistów stworzenie wersji aplikacji na iPada dla komputerów Mac było marzeniem, którego wcześniej nie można było zrealizować ze względu na czas i wysiłek wymagany do stworzenia aplikacji na komputer Mac. Mac Catalyst zrobił różnicę.
Ale to tylko jedna strona historii.
Kiedy zderzają się dwa światy
Kalkulator PCalc od dawna jest dobrze znanym oprogramowaniem dla komputerów Mac. Ale programista James Thomson jak dotąd zdecydował się nie używać Mac Catalyst do przenoszenia go z iPada. W październiku 2019 r. podał powody, powołując się na interfejsy API, które wydawały się „niedokończone” i nie na miejscu, takie jak wspomniany selektor dat w stylu iOS.
Ostatecznie uznał przeniesienie PCalc przy użyciu Mac Catalyst za zbyt ryzykowne dla jego flagowej aplikacji. Kiedy rozmawiałem z nim później o jego wrażeniach z Catalyst, powiedział mi, że zdecydował się przenieść swoją prostszą aplikację Dice, „aby mieć oko na technologię”.
Ta niechęć do zaangażowania się w nową technologię nie jest niczym nowym. Weźmy na przykład sytuację, w której Microsoft znajduje się od wielu lat. Wielokrotne próby firmy, aby pomóc programistom w przejściu z jednego systemu na drugi, kończyły się jedną porażką po drugiej.
Firma Microsoft starała się pozyskać swoich starszych programistów Win32 i przekonać ich, że najlepszym rozwiązaniem jest platforma uniwersalna systemu Windows (UWP). Ambitne pomysły, takie jak Windows RT, Windows 10 Mobile, Windows 10 S, a nawet Powierzchnia Pro Xw rezultacie zeszły na dalszy plan. Wydaje się, że nowe podejście Microsoftu polega po prostu na połączeniu wszystkiego — aplikacji dla systemu Windows 32, platformy UWP, Internetu (a nawet systemu Android na urządzeniu Surface Duo) — w Windows 10X. Jest to bezpieczna metoda, chociaż może prowadzić do powstania systemu operacyjnego, który będzie sprawiał wrażenie kilka kawałków zszytych razem, a nie pojedyncze, ujednolicone doświadczenie.
Wymachiwanie się Microsoftu pokazuje, jak trudne może być połączenie dwóch platform. Apple ma mniejsze trudności z przekonaniem twórców komputerów Mac o zaletach Mac Catalyst, ponieważ proces ten jest (na razie) jednokierunkowy. W końcu programiści komputerów Mac nie są proszeni o to, aby ich aplikacje działały na iPadach.
Ale Catalyst zmienia sytuację. Nagle Apple wspiera aplikacje na Maca, które zostały utworzone zarówno przy użyciu tradycyjnych narzędzi, jak i tych stworzonych za pomocą Catalyst.
Jeśli mowa o Apple przejście z chipów Intela na procesory ARM wyprodukowane przez Apple okaże się prawdą, może warto się tym zająć. Plotki nasiliły się ostatnio za sprawą znanego analityka branżowego Ming-Chi Kuo przewidywania, że firma dokona zmiany w ciągu najbliższych 18 miesięcy.
Trwa walka o to, aby aplikacje Mac Catalyst przypominały aplikacje Mac.
Zestaw narzędzi takich jak Mac Catalyst, dzięki którym programiści mogą łatwo przenieść aplikację zaprojektowaną dla jednego systemu na inny system co innego, może być nieocenione podczas takiego przejścia, umożliwiając szybkie ponowne zapełnienie ekosystemu komputerów Mac z procesorem ARM natywnymi aplikacjami z się udać. iPady Apple działają już na procesorach ARM; gdyby komputery Mac poszły w ich ślady, aplikacje Mac Catalyst byłyby już doskonale przygotowane do działania na obu platformach.
Na razie toczy się walka o to, aby aplikacje Mac Catalyst przypominały komputery Mac, z czym borykało się wiele aplikacji. Obecnie wielu z nich brakuje standardowych konwencji projektowych, które przez lata wskazywały użytkownikom komputerów Mac, jakiego zachowania mogą oczekiwać aplikacje.
Powinny one z czasem ulec poprawie, w miarę jak programiści iPadów lepiej opanują Catalyst i będą stale ewoluować system. Jak dowiedziałem się z rozmów z programistami, mają oni pewne pomysły, jak dokładnie powinno to się odbyć.
Obejścia, przyszłe żądania i ceglane ściany
Odkąd programiści po raz pierwszy dostali go w swoje ręce pod adresem WWDC 2019W systemie Mac Catalyst wprowadzono kilka ulepszeń na podstawie opinii użytkowników. Na przykład właśnie zadebiutował narzędzie do wybierania dat, bardziej przypominające Maca, zastępując projekt drażniąco przypominający iOS.
Apple powiedział nam, że stale rozmawia z programistami i słucha opinii na temat ulepszeń Mac Catalyst. Podkreślono również, że technologia jest bardzo nowa i z biegiem czasu będzie się rozwijać. Wielu programistów, z którymi rozmawialiśmy, podzielało tę opinię i mówiło nam, że prowadzą ciągły dialog z Apple w sprawie wszelkich napotykanych przez nich problemów.
Kolejną bardzo oczekiwaną funkcją jest uniwersalny system zakupów, w którym aplikacja Mac Catalyst zakupiona na iPadzie będzie działać na komputerze Mac i odwrotnie. Reutter opowiedział nam o swojej frustracji związanej z koniecznością odtworzenia opcji zakupu i subskrypcji dla każdej platformy i wygląda na to, że Apple uwzględnił tę krytykę, ponieważ niedawno ogłoszone dodanie uniwersalnych zakupów produktów w App Store.
Gdzie indziej inni programiści byli w stanie wdrożyć żądane funkcje, ale tylko za pomocą różnych hacków i prowizorycznych rozwiązań.
„Przejście z iPadOS na MacOS za pośrednictwem Catalyst było z jednej strony łatwe, ale z drugiej strony pełne tajemnic i obejść” – powiedział mi Duro z MoneyCoach.
Duro miał obszerną listę próśb dotyczących przyszłych wersji Mac Catalyst, w tym „bardziej natywnych Elementy interfejsu AppKit, lepsza dokumentacja, więcej przykładów i ujednolicony sposób zarządzania IAP i subskrypcje.”
Tymczasem dla Reuttera przeniesienie aplikacji z iPada na komputer Mac oznaczało konieczność „usunięcia niektórych funkcji iOS”. mogłoby być świetne na MacOS”, łącznie z obsługą Siri, rozszerzeniami Wiadomości i Skrótami integracja. Chociaż ma nadzieję, że ta funkcja zostanie wkrótce dodana, konieczne jest usunięcie funkcji obecnych w pliku Aplikacja na iPada przeniesiona na nominalnie mocniejszy komputer Mac może zniechęcić każdego deweloper.
Ze wszystkich tych próśb jasno wynika, że Mac Catalyst nie jest jeszcze gotowym artykułem.
Inni muszą polegać na obejściach, aby pokonać obecne ograniczenia Catalyst. Jeden z programistów zauważył, że trzeba było zrezygnować z przewijania w poziomie, podczas gdy inny musiał zaimportować kilka pakietów AppKit, takich jak menu rozwijane i alerty modalne. Inni nadal domagali się większej liczby natywnych gestów dla komputerów Mac, elementów sterujących i widoków podobnych do AppKit oraz lepszego zarządzania oknami poza obecnie ograniczoną implementacją.
Tymczasem Gabriel Jourdan z aplikacji GoodNotes szukał „więcej wskazówek dotyczących projektowania i rozwoju aplikacji Catalyst”, które ułatwiłyby poruszanie się po nowym terytorium.
Ze wszystkich tych próśb jasno wynika, że Mac Catalyst jest daleki od ukończenia artykułu i brakuje w nim wielu funkcji, które być może powinny były być obecne w momencie premiery.
Przyszłość Mac Catalyst
Te ograniczenia nie nadszarpnęły zaufania programistów, z którymi rozmawialiśmy. Kiedy zapytaliśmy, czy będą go używać do tworzenia aplikacji w przyszłości, odpowiedź brzmiała „tak”. Stiefel opisał to jako „świetne narzędzie, które warto mieć w zestawie narzędzi”, dodając, że inni programiści powinni przynajmniej na nie rzucić okiem, aby sprawdzić, czy może być przydatne używać.
Zarówno Smolka, jak i Burgstaller powiedzieli nam, że pracują nad większą liczbą aplikacji, które zostaną przeniesione przy użyciu Mac Catalyst. Smolka „bardzo polecam” Mac Catalyst, dodając: „Jeśli Twoje aplikacje mają już dobre iPada wsparcia, nie czekaj i zacznij przenosić je na komputer Mac. Oszczędzi to czas… Dzięki AppKit musielibyśmy spędzić znacznie więcej czasu na tworzeniu aplikacji dla komputerów Mac. Nasze aplikacje są proste w obsłudze i nie posiadają skomplikowanych funkcji, co pozwala nam z łatwością korzystać z Mac Catalyst.”
Nawet Thomson, który przez lata dużo inwestował w natywne aplikacje dla komputerów Mac, powiedział nam, że od czasu, gdy napisał swój post na blogu, w przypadku Mac Catalyst wiele się poprawiło.
„Gdyby w iOS i Catalyst pojawiły się dodatkowe elementy sterujące podobne do komputerów Mac, zdecydowanie rozważyłbym je ponownie w przypadku PCalc” – wyjaśnił. „Dzięki temu tworzenie Dice jest bardzo proste, przy użyciu tego samego kodu na wielu platformach… Nadal mam wielką nadzieję, że Catalyst spełni swoją obietnicę”.
Zarówno Reutter, jak i Jourdan polecili Mac Catalyst, z zastrzeżeniem, że musi on być odpowiedni do danej sytuacji. Jeżeli Aplikacja na iPada ma sens na komputerze Mac — na przykład, gdy aplikacja Mac działa jako dodatek do jej odpowiednika na iPadzie — wtedy Mac Catalyst może mieć sens i zapewnić zgodność funkcji na różnych platformach. To powiedziawszy Jourdan ostrzegł, że „Jeśli wersja na komputery Mac wymaga zupełnie innej architektury niż aplikacja na iPada, Catalyst może nie być właściwym wyborem”.
Jak Apple stwierdził od początku, Catalyst to zestaw narzędzi pomagających programistom w przenoszeniu aplikacji, a nie rozwiązanie uniwersalne. Jak sama nazwa wskazuje, ma jedynie zapoczątkować coś nowego. W przeważającej części jest to projekt, za który twórcy projektu wydają się być wdzięczni, nawet jeśli najwyraźniej ma jeszcze sporo do zrobienia.
WWDC może być przełomowym momentem, w którym dowiemy się, jak Apple jest zaangażowany w Catalyst.
Wszystko to jest dobrym znakiem dla Apple. Jeśli firma rzeczywiście zamierza przejść na Procesory ARM i stworzyć bardziej ujednoliconą platformę aplikacji, Catalyst robi pierwszy krok w tym kierunku. Jury wciąż nie rozstrzygnęło, czy Apple pewnego dnia zmusi swoich programistów do korzystania z Mac App Store i Catalyst, ale data rozliczenia wciąż pozostaje w sferze hipotetycznej.
WWDC w czerwcu może być kluczowym momentem, w którym dowiemy się dokładnie, jak Apple jest zaangażowany w przyszłość Catalyst. Bez wątpienia jest to data, na którą każdy programista, którego to dotknęło, będzie czekał z zapartym tchem.
Na razie, jeśli Mac Catalyst będzie w stanie zachęcić więcej programistów do przeniesienia swoich aplikacji na inne urządzenia Apple, prawdopodobnie będzie to miało pozytywne skutki dla wszystkich zaangażowanych. Programiści dotrą do nowych odbiorców, zyskają użytkownicy nowe aplikacje na Maca, a Apple otrzyma wzmocniony, bardziej tętniący życiem ekosystem – nie wspominając już o części przychodów.
Zalecenia redaktorów
- Instalacja istotnej aktualizacji zabezpieczeń dla urządzeń Apple zajmuje tylko kilka minut
- Mam nadzieję, że Apple wprowadzi tę funkcję Vision Pro do iPhone'a
- Poważny wyciek ujawnia każdy sekret Maca, nad którym pracuje Apple
- Apple umożliwi teraz samodzielną naprawę większej liczby komputerów Mac i iPhone'ów
- WWDC 2023: wszystko ogłoszone podczas ogromnego wydarzenia Apple