Programowanie

Nauka i Swift

Często na blogach i w innych miejscach widzę pytania:

  • jaki język jest dobry na początek?
  • czy mogę się uczyć C++?
  • czy Java Script to dobry początek?
  • czy muszę się uczyć Pascala?

Moja odpowiedź jest taka – nieważne jak, byleby zacząć 🙂 Nieistotne jaki język wybierzesz, po jakimś czasie dojdzie do tego, że to umiejętność formułowania programów i myśli jest ważna. Sam język jest szczegółem implementacyjnym (choć istotnym).

Sam chyba nie jestem w stanie powiedzieć o sobie, że jestem ekspertem jakiegoś języka. Jedne znam lepiej, inne gorzej. Znam ich raptem kilka, w tym również te całkiem nieużyteczne na tą chwilę.

Ponieważ w ramach Daj się poznać, poznaję nowy język jakim jest Swift, widzę że jest on całkiem fajny dla początkujących. Posiada obszerną dokumentację, jest dość nowy i interesujący. Stoi za nim naprawdę duża firma, ale z drugiej strony jest projektem open source. Ma sporo minusów i naleciałości, ale z drugiej strony uczy to rozwiązywania pewnych problemów i podstawowego zarządzania pamięcią.

Ma niesamowite narzędzia dodatkowe, oraz podstawowe dostępne na Macu. To co jest fajne w XCode to “piaskownica”. Można tam wypróbowywać kod i naprawdę szybko uczyć się nowych elementów języka. Dodatkowo ostatnio widziałem jak taki playground sprytnie wykorzystać w prezentacji – świetna sprawa.

To co jest naprawdę dobre w Swift (a także w F#, GoLang, etc…) to to, że kod może być obiektowy i funkcyjny zarazem. Czyli można pisać na oba sposoby i mieszać je ze sobą.

Poważnym mankamentem Swifta jest to, że by rzeczywiście wykorzystać jego potencjał trzeba mieć MacBooka (wcale nie taki fajny sprzęt). A to droga zabawka. Dostępny jest też dla Linuxa, oraz ponoć ma być dostępny na Androidzie, ale jak na razie to OSX i IOS jest targetem tego produktu.

Podsumowując, jest to fajna, nowa, interesująca, ale zarazem droga droga do nauki programowania. Z tą ceną jest też tak, że chyba się opłaca…

Nauka i Swift

1 thought on “Nauka i Swift

  1. Pingback: dotnetomaniak.pl

Leave a Reply

Your email address will not be published. Required fields are marked *