Wpis z mikrobloga

Swift jest spoko do nauki jako kolejny język jeśli znam JS/TS? Tak hobbystycznie. Myślałem nad Rustem, ale nad nim pewnie tyle bym siedział, że już bym wolał masterować JSa, widziałem też język Nim i też o nim myślałem, bo na pewno łatwiejszy, a tak teraz popatrzyłem, że przecież siedzę na macu i mi się przypomniało, że takie coś jak Swift istnieje XD
#programowanie
  • 12
@Thiocomaster: Swift spoko jak chcesz sobie klepnąć apke na iOS/MacOS. Niby jest server-side też, ale nikt pomijając ciekawość w sumie w tym nie pisze. Jak myślisz bardziej zawodowo, nie wiem czy przy znajomości JSa, nie lepiej ogarnąć sobie React Native czy coś w ten deseń. Chociaż żeby nie było, Swifta mega polecam bo sam w tym pracuje
@Thiocomaster: przecież Swift jest bardziej skomplikowanym, wręcz barokowym językiem w porównaniu z Rust. Ma wiele rzeczy które niepotrzebnie komplikują język: dziedziczenie klas, podział na typy wartościowe i referencyjne, podział na wyrażenia i polecenia, obsługa błędów wyjątkami, które rządzą się zupełnie innymi zasadami niż zawracanie wartości z funkcji, rozbudowana składnia - bardzo dużo słów kluczowych i udogodnień wbudowanych w język zamiast jako biblioteki.

Do tego Swift ma mniejszą społeczność, mało materiałów do
@Krolik: ja czytałem, że jest łatwiejszy. Ja nie zamierzam w nim pracować, a chcę pouczyć się i popisać w czymś silnie typowanym i nie mainstreamowym. Zawsze mam tak, że jak już coś przyjmuję do wiadomości, to przychodzi ktoś inny i mówi dokładną odwrotność xd

@Prism2772: Sorry, nie chcę Cię wciągać w żadną gównoburzę, ale mógłbyś napisać z dwa słowa, czy ta krytyka jest jakkolwiek uzasadniona, czy to zwykły hejt?
ja czytałem, że jest łatwiejszy


@Thiocomaster: czy coś jest łatwe czy trudne to kwestia bardzo subiektywna i zależy od tego co już znałeś wcześniej. Rust jest trudny dla ludzi którzy wyrobili sobie złe nawyki w obiektowych językach z GC, gdzie np. robią cykle referencji, gdzie nadużywają klas abstrakcyjnych, gdzie stosują dziedziczenie do unikania duplikacji kodu, gdzie ktoś im wmówił że lepiej używać polimorfizmu niż switcha/ifów. Potem próbują uprawiać taki overengineering w
@Thiocomaster: Rozumiem, że masz na myśli wypowiedź @Krolik?
Trudno mi się odnieść do porównania z Rustem, bo nie kojarzę po prostu szczegółów tego języka.
Faktycznie Swift posiada to wszystko o czym Krolik wspomniał, ale nie uznawałabym tego za wady.
Kwestia podziałów typów na wartości i referencje pozwala lepiej zarządzać pamięcią, obsługa wyjątków faktycznie jest inna niż we wszystkich językach, ale nie powiedziałbym że z tego powodu jest zła.
Ot, ten
@Prism2772: nie miałem zamiaru krytykować Swifta, tylko chciałem się odnieść do stwierdzenia, że Rust jest rzekomo bardziej skomplikowany. Rust nie ma wielu mechanizmów które ma Swift, jest oparty na niewielkiej liczbie koncepcji a większość tych rzeczy które Swift ma w języku, Rust załatwia bibliotekami. Jak próbowałem się uczyć Swift to miałem wrażenie że strasznie dużo różnych rzeczy w tym języku jest, wydawał mi się dosyć barokowy. Ale może to tylko takie
Rust jest trudny dla ludzi którzy wyrobili sobie złe nawyki w obiektowych językach […], gdzie ktoś im wmówił że lepiej używać polimorfizmu niż switcha/ifów


@Krolik: XD Po co komu obiektowość, jak nie może uzyskać polimorfizmu? A potem, po co komu pofimorfizm jeśli właśnie nie po to, żeby pozbywać się logiki IFowej z implementacji?!

Tworzysz jakiegoś potworka argumentacyjnego, bo raczej wątpię, że to jest tak utrudnione w Ruście (o którym na sucho
@Thiocomaster: Jako programista webowy z okolic PHP/JS postanowiłem spróbować swoich sił w czymś z goła odmiennym, czyli C++. To jest katorga. Ten język i środowisko (narzędzia i społeczność) to totalna patologia.

Gadki, że PHP to gówno, a C++ to język dla prawdziwych programistów to jest dobry żart – no właśnie, żart i nic więcej. Może kiedyś tak było, IDK. Dzisiaj C++ to SYF w porównaniu do PHP. Takie moje zdanie.

A
@MacDada: No C++ to nawet nie rozpatruje. Moja znajomość z nim skończyła się na kursie Mirka Zelenta XD
Ja elixira teraz się uczyłem i też fajnie się pisze, podoba mi się, ale ma bardzo wąski use case.
Po co komu obiektowość, jak nie może uzyskać polimorfizmu?


@MacDada: Obiektowość nie jest wartością samą w sobie. Co więcej, polimorfizm nie jest cechą kluczową obiektowości, istotą obiektowości jest izolacja stanu. Można mieć polimorfizm bez obiektowości (np. wskaźniki na funkcje w C, templates C++ czy Rust traits), można mieć obiektowość bez polimorfizmu (structy Rust).

A potem, po co komu pofimorfizm jeśli właśnie nie po to, żeby pozbywać się logiki IFowej z implementacji?!
Moja znajomość z nim skończyła się na kursie Mirka Zelenta XD


@Thiocomaster: Czyli problemem jest kiepski kurs, a nie język programowania. C++ trzeba się uczyć od ludzi którzy umieją w nim programować, a nie utknęli dwie dekady wcześniej na C z klasami. Polecam poczytać dzieła takich inżynierów jak Stroustrup, Sutter, Alexandrescu, z naciskiem na dzieła świeże, a nie te przed 2010 rokiem.
@Krolik: spoko, na pewno masz rację, bo Zelent nie jest żadnym znawcą i było to wiele lat temu, jak w ogóle zaczynałem się interesować programowaniem, a sam później w zasadzie nigdy się nie interesowałem C++, ani nie był celem mojej nauki.