Udało się!

10 Września 2017
Oto pierwszy wpis na blogu. Bardzo długo zbierałem się do tego, żeby w końcu coś napisać i puścić w świat – wiecie, projekty, praca i inne wymówki, ale oto jestem!

W tym wpisie jeszcze bez technicznego mięsa, opowiem krótko jak zaczęła się moja przygoda ze Swiftem oraz co mnie w nim ujęło.

Zaczęło się rok temu, kiedy przyszło mi zabrać się za swoją pracę dyplomową. Była to prosta aplikacja społecznościowa, która implementowała pewien autorski rodzaj interakcji oraz tworzenia wspólnej treści przez użytkowników. Postanowiłem, bardzo ambitnie, że przy okazji nauczę się jakiejś nowej technologii lub języka. Byłem już wtedy etatowym deweloperem aplikacji mobilnych, piszącym m.in. w Objective-C oraz w technologiach hybrydowych. W związku z rosnącą popularnością języka Swift (wtedy wersja 2.1), postawiłem na język od firmy z Cupertino.

Początki były… cudowne :). Od pierwszej linijki było bardzo dobrze. Swift to język bardzo zrozumiały, czerpiący składnię z najlepszych (moim zdaniem) wzorców. Bardzo podobało mi się utrzymanie pewnych modeli, które z perspektywy programisty Objective-C bardzo ułatwiły naukę, np. closures (podobne do bloków w Obj-C), rozszerzenia, protokoły czy elementy programowania funkcyjnego, jak mapy czy filtry. Dodatkowo, Swift korzysta z tych samych narzędzi do kompilacji – LLVM.

Apple oczywiście zdawało sobie sprawę z niedoskonałości języka (nie wszystko od razu jest super), dlatego w dalszym ciągu Xcode oferuje możliwości łączenia elementów napisanych w Swift z tymi napisanymi w Objective-C wewnątrz jednego projektu. Dzieję się to za pomocą tzw. mostów (o czym jeszcze zdążymy kiedyś pogadać).

Nie zawsze było kolorowo. Pierwszy zgrzyt pojawił się momencie prezentacji trzeciej wersji języka. Oczywiście Swift 3 był już dużo, dużo dojrzalszy niż jego poprzednia wersja, jednak problem dotyczył procesu migracji. Xcode, w przypadku większych projektów, nie potrafił przeprowadzić tego poprawnie. Wtedy spędziłem kilka godzina podzielonych na dni, aby doprowadzić projekt do ładu.

Inaczej było w przypadku ostatniej wersji, kiedy to migracja ze Swift’a 3 na 4 odbyła się (przynajmniej w moim przypadku) bez większych rozczarowań.

W styczniu 2017 udostępniłem pierwszą, komercyjną aplikację napisaną w czystym Swift. Posiadała ona kilka ekranów, miała wbudowaną obsługę systemowych map, akcelerometru, żyroskopu i kamery. I tak się toczyło dalej…

Dzisiaj piszę w Swift praktycznie codziennie, pracując nad własnymi produktami lub dla swoich klientów. I naprawdę, naprawdę – mimo wielu wad wieku dziecięcego – lubię ten język.

Jak poznałem się ze Swift’em

Komentarze 3 thoughts on “Jak poznałem się ze Swift’em

  • Avatar
    Listopad 27, 2017 z 15:31
    Permalink

    Cześć, wpadłem na te stronkę zupełnie przypadkiem przez jakiś proponowany post na FB ;). Przeczytałem ten o to pierwszy wpis moje pierwsze wrażenie jest takie, że piszesz całkiem przyjemnie, przejrzałem też pobieżnie listę wpisów i widzę, że robisz jakiś wstęp do SpriteKit’a ale mam pytanie.

    Czy będziesz prowadził jakiś wstęp do języka lub np. projekt jakiejś prostej nawet nie do końca sensownej aplikacji wykorzystującej, właśnie mapy, żyroskopy czy inne “Ficzery”? 😉

    Powtórz
    • Avatar
      Listopad 27, 2017 z 15:32
      Permalink

      Przydała by się również możliwość edytowania komentarzy, bo już widzę, że w pewnym momencie ‘i’ zjadłem.

      Powtórz
    • Jakub Kornatowski
      Listopad 27, 2017 z 15:55
      Permalink

      Cześć,
      Lista tematów nie jest zamknięta, więc jeżeli będzie zainteresowanie tym, żeby zrobić jakąś serię dla początkujących, to pewnie 🙂
      Chciałbym żeby się tutaj trochę wpisy przeplatały, czyli żeby były wpisy bardziej zaawansowane, ale też takie poruszające podstawy + “Ficzery” 😁.
      Jakby było kilka osób, to jestem w stanie nawet jakieś małe warsztaty z podstaw zrobić, ale to fajnie jakby się znalazło kilka chętnych osób.

      Dzięki wielkie za Twój komentarz.

      PS. Co do edycji komentarzy, to kwestia wtyczki do WP, ale zwrócę na to uwagę 😅.

      Powtórz

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *