Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
Odpowiedźbrzmi:pouruchomieniuprogramu.Programmożezostaćuruchomiony,
gdytestujemygowprzeglądarcelubgdyużytkownikodwiedzinasząstronę,lubgdy
wykonamytestjednostkowy.Zdyscyplinowaniprogramiści,którzypisządużotestów
jednostkowychie2e(end-to-end),wykonujątestydymneprzedwypchnięciemkodu
itestujągolokalnieprzedprzekazaniemdoużytkowników,zazwyczajdowiadująsię
oswoichbłędachprzedużytkownikami.Alecozresztąprogramistów?
TuzpomocąprzychodziTypeScript.Jegodużązaletąjestnietylkodostarczaniepomoc-
nychkomunikatówobłędach,lecztakżemomentichprzekazywania:TypeScriptpoka-
zujekomunikatyobłędachwedytorzetekstowymwczasiewpisywaniakodu.Tooznacza,
żeniemusimypolegaćnatym,żetegotypubłędyzostanąwykryteprzeztestyjednost-
kowe,testydymnelubnaszychwspółpracowników:TypeScriptwykrywatebłędyiinfor-
mujenasonichpodczaspisaniaprogramu.Zobaczmy,coTypeScriptmówionaszym
poprzednimprzykładzie:
3+[]
letobj:{}
obj.foo
//BłądTS2365:NiemożnazastosowaćoperatoraI+’dotypówI3’
//iInever[]’.
//BłądTS2339:WłaściwośćIfoo’nieistniejewtypieI{}’.
functiona(b:number){
returnb/2
}
a(Πz”)
//BłądTS2345:NiemożnaprzypisaćargumentutypuI”z”’
//doparametrutypu’number’.
Nietylkoeliminujeoncałeklasybłędówzwiązanychztypami,aletaknaprawdęzmienia
sposóbpisaniakodu.Wefekciezaczynamyodnaszkicowaniaprogramunapoziomie
typów,adopieropóźniejwypełniamygonapoziomiewartości2-przypadkibrzegowe
bierzemypoduwagęjużwfazieprojektowaniaitworzymyprogramy,któreprostsze,
szybsze,bardziejzrozumiałeiłatwiejszewutrzymywaniu.
Gotowydorozpoczęciaprzygody?Wtakimraziewyruszamy!
2
Jeśliniedokońcarozumiesz,cooznaczanpoziomtypów”
,nicnieszkodzi.Tozagadnienieomówimyszczegó
-
łowowkolejnychrozdziałach.
Wprowadzenie|3