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

TypeScript,a JavaScript

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
0 głosów
919 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 Mentor (354,120 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 Mentor (354,120 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 Mentor (354,120 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 (607,060 p.)
Ok, a co zyskasz przepisując w taki sposób kod JS na TS?
1
komentarz 5 sierpnia 2020 przez adrian17 Mentor (354,120 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 (607,060 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 Mentor (354,120 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 266 wizyt
pytanie zadane 27 maja 2016 w JavaScript przez jegor377 Stary wyjadacz (13,230 p.)
0 głosów
2 odpowiedzi 353 wizyt
+3 głosów
0 odpowiedzi 485 wizyt

93,434 zapytań

142,429 odpowiedzi

322,661 komentarzy

62,797 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

...