Dla konsumentów i obserwatorów zewnętrznych Ogólnoświatowa konferencja programistów Apple (WWDC) zawsze jest szansa, aby zobaczyć, co się wydarzy, gdy na ich urządzeniach pojawią się kolejne wersje systemów operacyjnych. Jednak programistom chodzi o to, aby dowiedzieć się, co Apple robi pod maską. Podczas tegorocznego wydarzenia Apple ujawniło Chmura Xcode, nowa funkcja aplikacji programistycznej Xcode, która według Apple ułatwi życie twórcom aplikacji.
Zawartość
- Co to jest chmura Xcode?
- „Projekt długoterminowy”
- Wdrażanie tego w praktykę
- Problem cenowy
- Funkcja z prawdziwym potencjałem
Polecane filmy
Pracownicy Apple powiedzieli nam, że byli niesamowicie podekscytowani Xcode Cloud i rozczarowani, że programiści nie mogli być na miejscu, kiedy to było możliwe ogłoszone na firmowym wydarzeniu internetowym — a szybka lektura Twittersphere przywołuje na myśl wielu programistów oszołomionych oczekiwaniem na nową funkcja.
Ale czym właściwie jest Xcode Cloud i dlaczego Apple jest przekonany, że to tak wielka sprawa? Aby się tego dowiedzieć, spotkaliśmy się zarówno z inżynierami w firmie Apple, jak i programistami, na których skupia się firma, aby zobaczyć, jak Xcode Cloud może wpływ na ich pracę, aby poznać wszelkie obawy, jakie mogą mieć, i dowiedzieć się, co to może oznaczać dla przyszłości aplikacje.
Powiązany
- Myślałem, że znienawidzę gogle VR firmy Apple, ale się myliłem
- Oto dlaczego chip Apple M3 MacBook może zniszczyć swoich rywali
- Zestaw słuchawkowy Apple Reality Pro może zostać wydany wcześniej, niż ktokolwiek się spodziewał
Co to jest chmura Xcode?
Zacznijmy od podstaw. Aby tworzyć aplikacje na platformy Apple, programiści korzystają z utworzonej przez firmę Apple aplikacji dla komputerów Mac o nazwie Xkod. Istnieje na rynku od 2003 roku i pozostaje jednym z najważniejszych programów w katalogu Apple. Xcode Cloud to jedna z największych aktualizacji Xcode od lat, wprowadzająca nowe funkcje, dla których wielu programistów musiało w przeszłości opuszczać Xcode.
Apple pozycjonuje Xcode Cloud jako narzędzie, które udostępnia wcześniej złożone narzędzia wszystkim programistom. Zapytałem Wileya Hodgesa, dyrektora ds. marketingu produktów ds. narzędzi i technologii w Apple, co słyszeli od programistów, którzy doprowadzili do stworzenia Xcode Cloud.
„Widzieliśmy, że istnieją… zadania takie jak dystrybucja aplikacji wśród beta testerów, zarządzanie opiniami i raportami o awariach, które są naprawdę kluczowe w tworzeniu świetnych aplikacji” – powiedział Hodges. „Zauważyliśmy, że coraz więcej naszych programistów jest zainteresowanych ciągłą integracją i użytkowaniem ten zautomatyzowany proces kompilacji i automatycznego testowania, aby stale weryfikować jakość oprogramowania w trakcie jego tworzenia wybudowany."
To są dokładnie problemy, które Xcode Cloud ma rozwiązać.
Xcode Cloud umożliwia programistom uruchamianie wielu automatycznych testów jednocześnie i wykorzystuje ciągłą integrację (CI), dzięki czemu kod aplikacji można szybko iterować i aktualizować. Upraszcza także dystrybucję wersji aplikacji wśród testerów wersji beta i umożliwia programistom zapoznawanie się z opiniami. Może tworzyć aplikacje w chmurze zamiast na komputerze Mac, aby zmniejszyć obciążenie i pozwala na tworzenie zaawansowanych przepływów pracy, które automatycznie uruchamiają się i zatrzymują w zależności od ustawionych warunków.
„Chcieliśmy udostępnić te narzędzia i usługi wszystkim naszym programistom, ponieważ w tej chwili było to coś, o czym marzyłem Myślę, że programiści byli na bardziej zaawansowanym poziomie, aby skonfigurować tę konfigurację i uruchomić ją w ramach swojego procesu” – Hodges wyjaśnione.
To brzmi wystarczająco obiecująco. Ale co myślą prawdziwi programiści?
„Projekt długoterminowy”
Umieszczenie tych narzędzi na pierwszym planie to coś, co według kilku programistów było kluczową atrakcją Xcode Cloud. Teraz, gdy wcześniej dość wyspecjalizowane możliwości zostały zintegrowane z głównym narzędziem, z którego korzystają tworzenia aplikacji, znacznie mniej jest potrzeby znajdowania alternatyw innych firm i dodawania do nich dodatkowych kroków przepływy pracy.
Denys Telezhkin, inżynier oprogramowania w ClearVPN, podsumował to uczucie w wywiadzie dla Digital Trends.
„Byłem bardzo zainteresowany [Xcode Cloud], ponieważ wystąpiło wiele problemów z różnymi CI” – powiedział mi. „Na przykład Microsoft Azure jest trudny w konfiguracji, GitHub Actions jest drogi i tak dalej”.
Ponieważ wszystko jest zintegrowane z Xcode Cloud, korzystanie z niewiarygodnych alternatyw może stać się niepotrzebne. Oczywiście Apple chętnie odciągnie deweloperów od swoich rywali.
Jednak głównym impulsem, jak twierdzi Hodges, było coś innego: „Motywacją do stworzenia Xcode Cloud były nasze obserwacje że chociaż istniała grupa oddanych użytkowników Xcode Server, większość programistów nadal nie wdrażała rozwiązań w sposób ciągły integracja. Zaczęliśmy przyglądać się przeszkodom uniemożliwiającym wdrożenie i doszliśmy do wniosku, że najlepszym sposobem na uzyskanie szerokie przyjęcie CI jako praktyki, szczególnie wśród mniejszych programistów, dla których konfigurowanie i zarządzanie dedykowanymi serwerami kompilacji było większym wyzwaniem wyzwanie."
„Widząc narzędzia i usługi, takie jak Xcode Cloud zintegrowane bezpośrednio z platformą deweloperską, byliśmy podekscytowani”.
Jednak dla programistów to coś więcej niż tylko CI. Scott Olechowski, dyrektor ds. produktów i współzałożyciel Plex, mógł wypróbować wersję beta Xcode Cloud przed ogłoszeniem przez Apple WWDC. Powiedział mi, że potencjalne korzyści są szerokie.
„Od tego czasu byliśmy podekscytowani możliwością zintegrowania narzędzi i usług, takich jak Xcode Cloud bezpośrednio z platformą deweloperską powinno to naprawdę pomóc nam być bardziej wydajnymi w rozwoju, kontroli jakości [zapewnianiu jakości] i wypuszczaniu starania."
Część tej zwiększonej wydajności prawdopodobnie będzie dotyczyć narzędzi współpracy Xcode Cloud. Każdy członek zespołu może zobaczyć zmiany w projekcie od swoich współpracowników, a powiadomienia mogą być wysyłane po opublikowaniu aktualizacji kodu. Moment jest pomyślny, biorąc pod uwagę sposób, w jaki trwająca pandemia fizycznie rozdzieliła zespoły na całym świecie. Jednak był to również przypadek, powiedział Hodges.
„Rzeczywistość jest taka, że podążamy tą ścieżką już od dłuższego czasu, dosłownie od lat, więc myślę, że moment w tym względzie może być przypadkowy. Jest to z pewnością projekt długoterminowy, który był już w toku przed naszymi niefortunnymi wydarzeniami.
Wdrażanie tego w praktykę
Jeśli jest jedna rzecz, w której Apple jest świetny, to budowanie ekosystemu aplikacji i produktów, które ze sobą współpracują. Nic dziwnego, że Xcode Cloud to odzwierciedla — łączy się z TestFlight dla testerów wersji beta, umożliwia równoległe uruchamianie kompilacji na wielu wirtualnych urządzeniach Apple, dobrze współpracuje z App Store Connect i nie tylko. Dla wielu programistów taka integracja może mieć bardzo pozytywny wpływ na ich pracę.
Vitalii Budnik, inżynier oprogramowania w Setapp firmy MacPaw, powiedział mi, że posiadanie wszystkiego w jednym miejscu będzie oznaczać więcej czasu spędzonego na kodowaniu, a mniej czasu na żonglowanie wieloma narzędziami i opcjami. Dla kolegi Budnika z MacPaw, Bohdana Mihilieva z Gemini Photos, proces dystrybucji aplikacji będzie szybszy i płynniejszy niż obecnie.
Apple postrzega Xcode Cloud jako coś, co może poprawić życie dużych i małych programistów. Alison Tracey, główna programistka Xcode Cloud w Apple, podkreśliła sposób, w jaki Xcode Cloud wyrównuje szanse mniejszych programistów.
„Dzięki szerokiej gamie opcji dostępnych w środowisku konfiguracyjnym podczas konfigurowania przepływów pracy naprawdę możesz zaspokoić potrzeby mały programista lub ktoś, kto prowadzi mały warsztat programistyczny, lub ktoś, kto nie ma doświadczenia w ciągłej integracji, aż do bardziej zaawansowanych możliwości użytkowników.”
Obejmuje to prosty, czteroetapowy proces wdrażania po integrację Aplikacje na Maca oraz narzędzia takie jak Slack i dashboardy dzięki wbudowanym interfejsom API.
Problem cenowy
Jednak nie wszystko przebiega gładko. Apple odmówił ujawnienia szczegółów cen Xcode Cloud na WWDC, twierdząc, że więcej informacji będzie dostępnych dopiero jesienią. Wielu programistów, z którymi rozmawiałem, było tym w takim czy innym stopniu zaniepokojonych i wydaje się, że nieco osłabia to podekscytowanie wielu programistów na temat potencjału Xcode Cloud.
Pojawiły się również pytania dotyczące wartości Xcode Cloud dla zespołów programistów tworzących aplikacje zarówno dla platform Apple, jak i innych firm, ponieważ Xcode można uruchomić tylko na komputerze Mac. Zapytałem o to Alexa Stevensona-Price, menedżera ds. inżynierii w Plex, ponieważ Plex ma aplikacje dla komputerów Mac, Windows, Linux, Android, iOS i wiele innych systemów. Powiedział mi, że różne aplikacje Plexa są tworzone przez różne zespoły przy użyciu różnych narzędzi, więc jest to świetna nowość sznurek na kokardce zespołu Apple, nie będzie to zbyt przydatne dla zespołów innych niż Apple, ponieważ nie będą one używać Xcode W każdym razie.
Jeśli chcesz korzystać z zalet Xcode Cloud podczas tworzenia aplikacji na Androida, nie masz szczęścia.
Oczywiście nie powinno dziwić, że Apple ma ograniczone zainteresowanie dostarczaniem narzędzi dla konkurencyjnych ekosystemów. Jeśli chcesz uzyskać korzyści z Xcode Cloud podczas tworzenia aplikacji na Androida, nie masz szczęścia, ale Xcode zawsze był ograniczony (Apple mógłby powiedzieć, że jest skupiony) w ten sposób. Może to stwarzać problemy dla programistów, którzy mają tę samą aplikację zarówno na iOS, jak i na iOS
Inni programiści powiedzieli mi, że będą musieli poczekać i zobaczyć, czy rzekome korzyści Xcode Cloud sprawdzą się w rzeczywistości. Kwestionowano również jego zastosowanie dla programistów indywidualnych, częściowo dlatego, że wiele jego funkcji jest przeznaczonych dla zespołów składających się z wielu członków.
Na przykład Lukas Burgstaller, twórca aplikacji takich jak Fiery Feeds i Tidur, powiedział mi, że użyteczność Xcode Cloud zależy od ustawień.
„Chociaż nie sądzę, że będę go używać w moich osobistych projektach, [ponieważ] czuję, że ciągła integracja jest w najlepszym razie umiarkowanie pomocna dla solowego programisty konfiguracji, na pewno zacznę go używać w mojej codziennej pracy jako lider zespołu iOS, gdzie planowaliśmy skonfigurować jakiś CI przez ponad rok, ale nigdy nie udało nam się To."
Ale nawet jeśli nie będzie mógł skorzystać ze wszystkich funkcji, Burgstaller nadal opisał Xcode Cloud jako „wreszcie” ogłoszenie, mówiąc, że jest niezwykle szczęśliwy, że Apple dodaje tę usługę do Xcode.
Funkcja z prawdziwym potencjałem
To wciąż początek dla Xcode Cloud. Podobnie jak wiele innych aktualizacji i nowych funkcji ogłoszonych podczas WWDC 2021, od iOS 15 Do MacOS Monterey, jest obecnie dostępna tylko dla beta testerów. Pomimo kilku obaw i złych wspomnień z nieoczekiwanego wprowadzenia na rynek kolejnego narzędzia dla programistów, Katalizator Mac, kilka lat temu — korzyści wydają się znacznie przewyższać wady, przynajmniej według twórców, z którymi rozmawiałem.
Tak naprawdę żaden z tych programistów nie stwierdził, że Xcode Cloud jest całkowicie bezwartościowy, co sugeruje, że większość osób pracujących nad tworzeniem aplikacji dla ekosystemu Apple znajdzie coś dla siebie. Pod warunkiem, że Apple będzie nadal je udoskonalać w miarę zmieniających się potrzeb programistów i dopóki jego ceny nie będą rażąco wysokie, Apple może odnieść zwycięstwo dzięki Xcode Cloud.
Jak zawsze, dowód jest w środku i wiele będzie zależeć od stanu, w jakim znajdzie się Xcode Cloud w momencie uruchomienia. Jednak dla wielu programistów jego jesienne wydanie nie może nastąpić wystarczająco szybko.
Zalecenia redaktorów
- Rywal Apple ChatGPT może automatycznie napisać kod za Ciebie
- Oto wszystkie powody, dla których jestem podekscytowany (i zmartwiony) zestawem słuchawkowym Apple Reality Pro
- Kolejne MacBooki i iPady Apple mogą mieć poważne kłopoty
- Gogle VR firmy Apple nie mają zabójczej aplikacji – ostrzega znany autor przecieków
- Oto dlaczego WWDC może być „wydarzeniem krytycznym” dla Apple