ზოგადი რჩევები
Last updated
Last updated
თუ რამე მიზეზი არ გვაქ იმის რომ interface გამოიყენოთ არ გამოყნოთ და უბრალოდ ტიპის ანოტაცია გამოვიყენოთ. ეს იმის გამო რომ interface-ებს აქვთ თავიანთი დანიშნულება კლასებთან მუშაობის და რედეკლარციის სახით და ბევრი დევლეოპერი როცა interface-ს ხედავს ჩათვლის რომ აქედან რომელიმე არის გამოყენებაში და თუ არ იქნება მაშინ დამაბნეველი ქიენბა
ინამები არ გამოვიყენოთ. ინამების არგამოყენების მიზეზი ის არის, რომ უფრო gimmick არის ვიდრე რეალური feature, არ არსებობს JS-ში ინამები. ამის გამო საკმაოდ უცანური რაღაცების გაკეთება უწევს TS-ს იმისთვის, რომ ინამების ილუზია მოგვცეს, მაგალითად: თუ ჩვენ დავწერთ backed enum-ს უბრალოდ ობიექტად გადააქცევს და Object.freezze-ს გამოიყენებს მაგრამ იმის გამო რომ backed enum-ია, თუ ჩვენ შევქმნით 3 case-იანს ამ ინამს runtime-ში ექნება 6 key და არა 3 რაც საკმაოდ დამაბნეველია. კიდე საკმაოდ ბევრი მიზეზი არსებობს და თქვენით დარისერჩება ჯობია, თუ ეს დამაკმაყოფილებელი მიზეზი არ არის თქვენთვის
.d.ts ფაილებს თავი ავარიდოთ, ეს ფაილები არის ტიპის ანოტაცისთვის შექმნილი მაგრამ რეალური type checking არ ხდება თვითონ ფიალების შიგნით, ანუ თუ დავწერეთ ამ .d.ts ფაილში არასწორი იმპორტი, მაშინ უბრალოდ any-ზე გადავა და ერრორს არ გვაჩვენებს. ამის გასწორება შეგვიძლია ამ კონფიგურაციის შეცვლით, მაგრამ ამის პრობლემა ის არის რომ ეს ჩვენ node module-ებსაც გადაამოწმებს სადაც უამრავი პრობლემა იქნება და ვერც ავუვალთ გასწორებას. ამის გამო თუ jsdoc-ს არ ვიყენებთ და typescript-ის პროექტია მაშინ ჯობია უბრალოდ .ts ფაილები გამოვიყენოთ და სრული typechecking გვქონდეს
თუ რაიმე კონფიგურაციის მასივი/ობიექტი/ცვლადი გვაქვს, მაშინ აჯობებს თუ as const-ს გავუწერთ და მერე ტიპად გამოვიყენებთ, მაგალთად: const config = [...] as const
მერე ჩვენ ტიპის ფაილში შეგვიძლია გავწეროთ, type Config = typeof Config[number]
და სხვა ბევრი იტერაციის გზა არის
თუ რაიმე ლაიბრარის იყენებთ, 9/10 times ისინიც typescript-ს იყენებენ და თუ არა ცალკე ლაიბრარი იქნება, რომელსაც ექნება ტიპები ცალკე გაწერელი ასერომ ყოველთვის მოძებნეთ და თუ რამეს გამოყენება გინდათ ლაიბრარიდან ნახეთ რა ტიპი არის ის ობიექტი და აუცილელად ის ტიპი გამოიყენეთ, უბრალოდ any არ დაწეროთ რახანც ვერ მიაგენით ტიპს, სადმე იქნება და თუ არა ჯობია ხელით გაწეროთ