• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

TypeScript,a JavaScript

Object Storage Arubacloud
0 głosów
518 wizyt
pytanie zadane 5 sierpnia 2020 w JavaScript przez Nickowy3456 Użytkownik (610 p.)
Witajcie.

Mam nadzieję że dobra kategoria i tytuł, no w miarę okej :D

Co do pytania.To zajmuję się aktualnie front-end,uczę się.Umiem HTML oraz CSS.Jednak teraz trzeba się uczyć JavaScript,tylko że jest problem.. Totalnie nie czuję tego języka,dynamiczne typowanie i ogólna jego zasada mnie totalnie rozbraja,no nie potrafię.Jestem człowiekiem,który duży nacisk kieruje na typy,za dużo Javy,C++,C#.Tak samo Python i jego dynamiczne typowanie,to samo nie potrafię i nie czuję za nic..

Ja muszę mieć typowany język,dzięki czemu wiem co robię i potrafię pracować.Dowiedziałem się że istnieje takie cudo jak TypeScript jako nadzbiór JS.Tutaj jest OOP oraz statyczne typowanie,dla mnie same plusy,bo ja to lubię.Powiedzcie mi można bez problemu,w moim przypadku się przenieść na TypeScript,uczyć się go? Czy jakbym w przyszłej pracy chciał iść jako Frontend to czy TypeScript jako alternatywa JS mi wystarczy? Czy koniecznie musi być JS i koniec.

Bardzo mi zależy na Frontend,tylko ta JavaScript to nie,próbowałem zrozumieć,przekonać się,ale się nie da,normalnie obrzydzenie do tego języka mam pomału :/
komentarz 5 sierpnia 2020 przez adrian17 Ekspert (344,860 p.)

A na boku:

Tak samo Python i jego dynamiczne typowanie,to samo nie potrafię i nie czuję za nic.

W Pythonie możesz opcjonalnie pisać typy, dokładnie jak w typescripcie (choć może trochę mniej ficzerów)

Python:

def costam(a: int, b: int) -> int:
    return a+b

Typescript:

function costam(a: number, b: number): number {
    return a+b;
}

Używając np PyCharma, masz w zasadzie za darmo sprawdzanie poprawności typów na żywo.

komentarz 5 sierpnia 2020 przez adrian17 Ekspert (344,860 p.)

I jeszcze na boku:

za dużo Javy,C++,C#

Tutaj jest OOP

Żeby nie było: część wzorców w obecnym "javowym" OOP nie jest traktowane jak zaleta, tylko jak smutna konsekwencja dość prymitywnego systemu typów w Javie. Więc to, że w Pythonie czy TSie jest statyczne typowanie, nie oznacza żeby traktować go jak Javę wchodzić w rzeczy typu factory/decorator/strategy pattern (a szczególnie nie robić ich na klasach), gdy sam język ma wbudowane wsparcie dla lambd, funkcji-jako-obiekt, dekoratorów jako części języka etc.

3 odpowiedzi

+1 głos
odpowiedź 5 sierpnia 2020 przez adrian17 Ekspert (344,860 p.)

Tutaj jest OOP

W zwykłym JSie też możesz pisać klasy.

w moim przypadku się przenieść na TypeScript,uczyć się go?

W najprostszym wariancie możesz dosłownie zamienić swoje pliki .js na .ts, skompilować kompilatorem typescripta i zadziałają (i powoli dodawać oznaczenia typów).

Czy koniecznie musi być JS i koniec.

Proporcji nie znam, ale AFAIK TS jest popularny i obecnie tylko idzie w górę.

+1 głos
odpowiedź 5 sierpnia 2020 przez Paweł Nąckiewicz Nałogowiec (48,990 p.)
Możesz zacząć uczyć się frontendu od TypeScriptu (ja tak zaczynałem - Angular) ale prędzej czy później będziesz musiał poznać JS i jego ekosystem. Wszystko co działa w TS musi działać w JS i na odwrót. Jednak wiem co czujesz bo też całe życie pisałem w Javie.
2
komentarz 5 sierpnia 2020 przez ScriptyChris Mędrzec (190,190 p.)

Wszystko co działa w TS musi działać w JS i na odwrót.

Nie bardzo. AFAIK to TypeScript jest kompilowany do JavaScript, ale nie na odwrót.

komentarz 5 sierpnia 2020 przez Paweł Nąckiewicz Nałogowiec (48,990 p.)
No dobra ale jak masz kod w JS i przepiszesz go na TS - dając wszędzie type any to też powinno działać. Chyba, że się mylę?
komentarz 5 sierpnia 2020 przez Comandeer Guru (601,590 p.)
Ok, a co zyskasz przepisując w taki sposób kod JS na TS?
1
komentarz 5 sierpnia 2020 przez adrian17 Ekspert (344,860 p.)
I mean... tak się czasem robi stopniową konwersję dużego kodu. Jak zamienisz .js na .ts, to TS automatycznie wszystkie nieznane typy traktuje jak any (o ile nie włączysz flagi noImplicitAny). Można wtedy w swoim tempie dodawać adnotacje typów, bez ryzyka że kompilator będzie narzekał na cały projekt na raz :D
1
komentarz 5 sierpnia 2020 przez Comandeer Guru (601,590 p.)
Jasne, jeśli mówimy o stopniowej konwersji, gdzie te typy będą regularnie poprawiane. Chociaż osobiście i tak bym po prostu przerabiał po pliku ;)

Natomiast po prostu zamienienie rozszerzenia z .js na .ts zadziała (bo każdy poprawny JS to też poprawny TS), tylko że… nic to nie daje. Oprócz wydłużenia procesu deployu z powodu "kompilacji" ;)
komentarz 5 sierpnia 2020 przez Paweł Nąckiewicz Nałogowiec (48,990 p.)
Nic nie zyskujesz przepisując kod z JS na TS oraz wstawiając wszędzie any. Chodziło mi po prostu o potwierdzenie tezy, że jeśli coś działa w JS to powinno działać w TS, mimo iż to TS jest kompilowany do JS
0 głosów
odpowiedź 5 sierpnia 2020 przez Nickowy3456 Użytkownik (610 p.)
To ogólnie rzecz biorąc warto TypeScript w moim przypadku? Nie czuję JavaScriptu w ogóle. Chyba nie różni się bardzo TS od JS,w końcu to nadzbiór języka.Ucząc się TS,uczę się też JS,tylko że w jednym mogę typy deklarować oraz jest lekko inne podejście.Tak więc?
2
komentarz 5 sierpnia 2020 przez adrian17 Ekspert (344,860 p.)

Ucząc się TS,uczę się też JS,tylko że w jednym mogę typy deklarować oraz jest lekko inne podejście.

Sam sobie odpowiedziałeś :)

Jeśli "nie czujesz JSa" to możesz też mieć problemy z TSem, bo to naprawdę ten sam język tylko z adnotacjami typów.

komentarz 5 sierpnia 2020 przez Nickowy3456 Użytkownik (610 p.)
A może sprawa jest taka że frontend do mnie nie pasuje? Co sądzisz? Bo jako tako backend (Java/C#) bardzo mi się podobał i dobrze się tam czuje.

Podobne pytania

–1 głos
0 odpowiedzi 252 wizyt
pytanie zadane 27 maja 2016 w JavaScript przez jegor377 Stary wyjadacz (13,230 p.)
0 głosów
2 odpowiedzi 249 wizyt
+3 głosów
0 odpowiedzi 282 wizyt

92,581 zapytań

141,433 odpowiedzi

319,666 komentarzy

61,966 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...