Z hobbysty na zawodowca - Swift vs Front

Z hobbysty na zawodowca - Swift vs Front
DS
  • Rejestracja:prawie 2 lata
  • Ostatnio:prawie 2 lata
  • Postów:3
0

Siemka!

Na początku:

  • z znam html,
  • znam css,
  • zacząłem trochę pisać w JS,

No ale! Tak średnio mi ciagle pyka front. Uczyłem się sporo, trochę nawet nauczyłem. Traktowałem to bardzo jako ogólna wiedzę na temat programowania itp. Co prawda - stronę zrobię.

Ofert pracy niby jest dużo, no ale ludzi również.

Od dłuższego czasu chodzi mi mocno po głowie zaczęcie bawienia się aplikacjami.

Posiadam cały ekosystem Apple, wiec wybór padł rzecz jasna na Swift. Mała analiza rynku - mało pracy. No właśnie, mało ale ludzi z tego co się zagłębiłem również mało.

No i zagwozdka. Nauka swift daje mi dyzo większy fun no i przy okazji (a raczej każdy do tego dąży) fajny hajsik. Ale ale, jak to jest z tymi juniorskimi pozycjami. Trochę wchodzi mi myślenie, że skoro poświecić x czasu na swift, zbuduje kilka apek połączonych z baza danych, aby wszystko fajnie śmigało. Będę miał wiedzę raczej dobra niż podstawową to chyba nic nie broni, aby startować na mida. Doświadczenie pracy w korpo mam, nie stricke z programowaniem ale IT.

Jak waszym zdaniem. Opłaca sie lecieć w pierwsza prace od razu na mobilki?

RequiredNickname
Zrobienie kilku pet projektów typu crud nie sprawi że nagle nabywasz coś takiego jak doświadczenie. Zwyczajnie nie jesteś wtedy żadnym modem bo każdy problem wychodzący poza ramy tutorial na YT Cię przerośnie.
LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:22 minuty
  • Postów:8410
1

Jeszcze masz React Native, czyli robisz apki mobilne w JS.
Nie wiem, czy to się opłaca, ale widziałem, że często szukają. Przynajmniej kiedyś szukali.


DS
  • Rejestracja:prawie 2 lata
  • Ostatnio:prawie 2 lata
  • Postów:3
0
LukeJL napisał(a):

Jeszcze masz React Native, czyli robisz apki mobilne w JS.
Nie wiem, czy to się opłaca, ale widziałem, że często szukają. Przynajmniej kiedyś szukali.

Tiaa, wiem, że również jest RN, No i Flutter. Ale cross platform wydaje mi się… hmm… nie spersonalizowany? Flutter w ogóle jest wyjściem Google co jakoś nie powoduje u mnie mega zaufania.

EH
  • Rejestracja:ponad 2 lata
  • Ostatnio:około rok
  • Postów:1208
1

@DeSad: no tylko widzisz, dziś nie opłaca się robić apek nie crossplatform, w ogóle sporo rzeczy powstaje w np ionicu czy electronie, wtedy raz napiszesz i masz apki desktop na każda platforme, apki mobile na każda platforme i apke web. Wszystko na jednym kodzie, a że to i tak tylko klient no to jest to idealne rozwiązanie. Tak więc przykro mi ale na pisanie w swift zapotrzebowanie będzie tylko maleć.

_cwel
to że crossplatform wyprze native i nie będzie się opłacało utrzymywać kilku codebaseów to słyszę już od dobrych kilku lat i co? i nic takiego nie ma miejsca jahahah
EH
@_cwel: twój nick jasno wskazuje że nie ma co z toba o tym gadać, przykładowo w firmach dla których robiłem i robię dawno wyparło natywne podejście.
_cwel
no i super, a w firmach w których ja robie i robiłem króluje native i co? dowód anegdotyczny tyle samo warty co ten twój
EH
@_cwel: no dlatego więcej wart jest ilość ogłoszeń gdzie na nativa jest zdecydowanie mniej
DS
  • Rejestracja:prawie 2 lata
  • Ostatnio:prawie 2 lata
  • Postów:3
0
ehhhhh napisał(a):

@DeSad: no tylko widzisz, dziś nie opłaca się robić apek nie crossplatform, w ogóle sporo rzeczy powstaje w np ionicu czy electronie, wtedy raz napiszesz i masz apki desktop na każda platforme, apki mobile na każda platforme i apke web. Wszystko na jednym kodzie, a że to i tak tylko klient no to jest to idealne rozwiązanie. Tak więc przykro mi ale na pisanie w swift zapotrzebowanie będzie tylko maleć.

Electron jest framework’iem JS o ile się nie mylę tak? Ehhhh… może w takim razie bardziej opłacalne będzie przeproszenie się po prostu z hateemeleami, dalsze klikanie wyskillowanie mocno css i js, No i napisać kilka projektów i aplikować. Mieszkam w DE, tutaj podobno łatwiej znaleźć prace na juniorka niż aktualnie w PL, także może coś z tego wyjdzie

LU
  • Rejestracja:prawie 7 lat
  • Ostatnio:około 6 godzin
  • Postów:25
4

Platforma jest dość ciekawa jednak też hermetyczna. Działam w Swifcie i jedynie co mogę powiedzieć to to, że praca w tym jest, o ile jesteś dobry. Może nie tak dużo jak na web ale pojawiają się ciekawe oferty. Tylko jak już wspomniałem ta platforma to taki trochę zamknięty świat. Cały czas pojawiają się konkurencje (Flutter, React Native itp.) i jeśli klient chcę prostą aplikacje to jest to dobra opcja, w innym wypadku natywne platformy zawsze będą lepszym wyborem. Wydaje mi się również, że na iOS'ie jest wyższy próg wejścia dlatego nie każdy chcę się w to pchać. Technologia jest ciekawa ale w niektórych miejscach dość skomplikowana. I niestety trzeba to dobrze zrozumieć aby zamiast dobrego produktu nie stworzyć "małego potworka", który będzie zużywał sporą ilość pamięci. Trochę postraszyłem ale ogólnie pisanie na iOS'a to spora frajda, praca w tym jest i z pewnością jeszcze będzie. Jednak chciałem też nadmienić pewne fakty z którymi musiałabyś się zderzyć przy nauce tej platformy. Odpowiadając na pytanie czy warto startować w mobilki ? Warto chociaż wydaje mi się też, że trochę źle do tego podchodzisz. Bo nieważne jaką technologię wybierzesz to zawsze jest tylko technologia. Sprawia Ci to frajdę, to śmiało w to uderzaj. Ważniejsze w tym wszystkim i tak jest ogólna wiedza jak znajomość algorytmów, pojęcie o więlowątkowości, sieci, systemy czy nawet projektowanie baz danych.

edytowany 1x, ostatnio: Lukiruki
EH
z ciekawości czego brakuje innym co jest w swift? W firmie zrobiliśmy już nie jedną apkę i wszystko szło albo na ionicu albo na flutterze (w zależności który zespół akurat był wolny), nigdy niczego nie brakowało, do wykorzystania nawet natywnych rzeczy są odpowiednie rozszerzenia.
loza_prowizoryczna
@ehhhhh: Odpowiedź nie wprost: CEO po sześćdziesiątce.
PI
@ehhhhh: O Ionicu w sumie nie ma co się za wiele rozpisywać - kwestia wsparcia. Miał swój czas od po 2017 roku natomiast aktualnie umiera śmiercią naturalną. Flutter faktycznie jest ciekawą opcją. Rozpycha się na rynku rękami i nogami i co najważniejsze - ma za sobą Google. Dart jest ciekawy, jednak moim zdaniem mniej ciekawy od Swifta, natomiast podejście deklaratywne w Flutterze o dziwo działa bardzo dobrze, więc ciężko tutaj się do czegoś przyczepić
loza_prowizoryczna
i co najważniejsze - ma za sobą Google - czyli będzie co przepisywać jak osoba kierująca projektem odejdzie na inne stanowisko ;)
EH
@loza_prowizoryczna: jak i ze wszystkim. Jeszcze 6 lat temu na maca/iosa pisało się w objective-c kto dziś w tym pisze? Czy to w ogóle jeszcze żyje? Patrząc z perspektywy czasy to najbardziej stabilne są stacki c/c++, java, .net, php, python, czysty js. Cała reszta to się potrafi skończyć w moment.
loza_prowizoryczna
kto dziś w tym pisze - skoro nie wiesz to tym lepiej. Jest dużo aplikacji mających logikę biznesową poupychaną w libach C++. Oczywiście w ramach oszczędności czasu/kosztów ;)
EH
@loza_prowizoryczna: dodatkowo z tego co widzę libki w c++ da się użyć i we flutterze i w swifcie więc objective-c nie jest już nikomu do niczego potrzebny i nie jest w nim pisane nic nowego.
loza_prowizoryczna
Ależ owszem że się da. Kurde szkoda że te inżyniery od Kotlin Multiplatform tego nie załapali i dalej robią klej poprzez Obj-C ;)
EH
@loza_prowizoryczna: to już ich problem, ja przejrzałem trochę materiałów i widzę że umiera śmiercią naturalną
loza_prowizoryczna
Ty dalej nie rozumiesz clou problemu - da się w Swifcie robić interopy z C++ ale jest to upierdliwe i często/zawsze wymaga zabawy z unsafeCast i unsafeBufferPointer. Znacznie prościej jest napisać klej na Obj-C++ który bez problemu zostanie zaimportowany w Swift i komunikować się taką protezą. Możesz sobie taki klej wygenerować nawet maszynowo.
EH
a ty nie czaisz że nie rozmawiamy o takich wstawkach? To tak jakby powiedzieć że dalej się pisze w c++/cli :D
loza_prowizoryczna
O jakich wstawkach? Ja ci piszę że są duże kobyły gdzie masz wrażliwe moduły napisane w C/C++ i opakowane w UI natywny dla platformy. KMM to w zasadzie ten sam pomysł tyle że zamiast C/C++ masz kompatybilność na poziomie IR :D. A wszystko kręci się wokół tego że w biznesie dalej wierzą w WhORA jak w św. Graala mimo że na dłuższą metę się to nie sprawdza.
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)