Pembangunan web kadangkala boleh berasa seperti barat liar dunia pengekodan. Terdapat begitu banyak rangka kerja dan pustaka untuk digunakan, dan selalunya ia boleh berasa amat menggembirakan. Jika anda berasa seperti ini, saya di sini untuk memberitahu anda bahawa anda tidak bersendirian; apabila saya memulakan perantisan saya, saya bingung dengan teknologi yang ingin saya tambahkan pada timbunan teknologi saya. Saya tahu saya menikmati pembangunan bahagian hadapan tetapi tidak tahu jalan yang perlu diambil untuk mempertajam kemahiran saya di kawasan itu. Oleh itu, saya memutuskan untuk melakukan perkara terbaik yang boleh anda lakukan apabila anda tidak pasti tentang sesuatu: tanya seseorang yang lebih berpengalaman. Saya berunding dengan mentor saya dan dia memberitahu saya bahawa TypeScript dengan cepat telah menjadi aset berharga dalam banyak pasukan pembangunan syarikat. Saya melakukan beberapa penyelidikan lagi dan mendapati TypeScript sangat menarik; Saya seorang yang terperinci dan butiran TypeScript menawarkan cara baharu yang menyeronokkan untuk mengekod.
Ketidakpastian awal saya memberi inspirasi kepada saya untuk menulis lakaran kecil. Dilema saya mengingatkan rancangan temu janji yang anda mungkin atau mungkin tidak menonton tanpa berfikir pada lewat malam, dan saya memutuskan untuk menggunakannya sebagai latar belakang lakaran saya. Tanpa berlengah lagi, saya bawakan kepada anda:
[FUNKY INTRO MUZIK DIMAINKAN]
LUKE L. HOST: Selamat kembali ke “Full Stack Flirting”! Luke L. Hos di sini kembali dengan pembangun lain yang ingin mencari cinta sejati mereka. Adakah bintang kami akan mendorong mereka untuk menghasilkan? Atau adakah mereka akan kembali kepada bujang? Mari ketahui dan temui pengaturcara kami.
[PROGRAMMER MASUK]
NICOLE: Hai Luke, gembira berada di sini.
HOST: Hebat untuk memiliki anda! Sekarang, siapa nama anda dan apakah yang anda harapkan dapat diperoleh daripada pengeluaran yang sedikit di sini?
NICOLE: Saya Nicole, dan saya cuba memutuskan bahasa yang perlu saya tambahkan pada penggiliran tindanan teknologi kekal saya. Saya telah membawa dua pelamar hari ini; JavaScript, api lama saya dan TypeScript, pelamar tiba-tiba saya.
HOST: Bunyi pedas! Mengapa kita tidak bertemu dua bahasa kita sekarang?
[BAHASA MASUK]
JAVASCRIPT: Hai semua. Saya JavaScript.
TYPESKRIP: Dan saya TypeScript.
HOST: Gembira bertemu kamu berdua! Baiklah, Nicole, mari kita selami. JavaScript, anda telah berada di situ untuk seketika. Apakah yang menjadikan anda pilihan terbaik untuk susunan teknologi Nicole?
JAVASCRIPT: Baiklah, Luke, saya telah menjadi tulang belakang web selama beberapa dekad. Saya boleh dipercayai dan fleksibel, dan sintaks saya sangat mudah untuk diambil. Selain itu, saya mempunyai komuniti yang besar— limpahan timbunan akan menjadi kawan baik anda apabila ia datang kepada saya.
HOST: Mengagumkan, tetapi saya dengar anda mempunyai sedikit… bagasi? Mungkin jenis warisan?
JAVASCRIPT: Hei sekarang, saya telah memodenkan! ES6 ada di sini, dan ia menjadikan saya lebih baik daripada sebelumnya.
HOST: Dicatat. Sekarang, TypeScript, apakah yang membuatkan anda menonjol sebagai pelamar?
JENIS: Baiklah, Luke, saya mengambil semua perkara hebat tentang JavaScript dan menambah sedikit struktur. Saya seperti JavaScript… tetapi lebih baik. Saya membantu mencegah ralat dan membuat penyahpepijatan menjadi mudah. Pembangun seperti Nicole berhak mendapatkan sesuatu yang lebih selamat dan boleh dipercayai. Sesuatu seperti saya.
HOST: Selamat dan boleh dipercayai—muzik ke telinga pengaturcara. Tetapi ada yang mengatakan anda agak… penyelenggaraan yang tinggi?
JENIS: Tidak sama sekali, Luke. Sebaik sahaja anda mengenali saya, saya sangat mudah didekati. Jika Nicole tahu JavaScript, peralihan kepada saya akan menjadi sekeping kek.
HOST: Nicole, anda mempunyai banyak keputusan di hadapan anda. JavaScript membawa nostalgia dan kesederhanaan, tetapi TypeScript menawarkan jaringan keselamatan yang kita semua dambakan cinta dan kod. Adakah anda bersedia untuk komited, atau adakah anda memerlukan beberapa lagi demo ciri?
NICOLE: Saya rasa saya perlu menjalankan beberapa ujian lagi…
HOST: Baiklah, mari kita teliti butiran sebenar: keserasian kod! JavaScript, TypeScript, anda mendapat perhatian Nicole, tetapi kini tiba masanya untuk menunjukkan ciri terbaik anda. JavaScript, mengapa anda tidak mulakan?
JAVASCRIPT: Sukacitanya! Dalam kes saya, saya suka menjadikannya mudah. Begini cara saya mengisytiharkan pembolehubah:
let favoriteFood = "sushi"; console.log(favoriteFood); // sushi
Tiada jenis, tanpa tambahan—hanya kod tulen dan tidak ditapis. Santai dan mudah.
HOST: Tidak mudah, tetapi ada yang mungkin mengatakan sedikit… terlalu santai. TypeScript, bagaimana dengan anda?
JENIS: Luke, saya suka sedikit kejelasan dalam perhubungan saya. Tonton ini:
let favoriteFood: string = "sushi"; console.log(favoriteFood); // sushi
Nampak? Saya memastikan tiada kekeliruan tentang jenis data yang digunakan Nicole. Komunikasi yang kukuh adalah kunci.
NICOLE: Hmm, saya sukakan kejelasan... JavaScript, apakah yang berlaku jika saya cuba melakukan ini?
favoriteFood = 42; console.log(favoriteFood); // 42... wait, what?
JAVASCRIPT: Lihat, saya fleksibel! Siapa kata makanan kegemaran tidak boleh menjadi nombor? Saya mahu mengikut arus.
TYPESKRIP: Di situlah saya masuk, Nicole. Saya akan menangkap kesilapan itu sebelum anda menjalankan kod:
// Error: Type 'number' is not assignable to type 'string'.
Nampak? Saya sentiasa menyokong awak.
HOST: Baiklah, mari bercakap tentang fungsi. JavaScript, bagaimana anda mengendalikannya?
JAVASCRIPT: Saya suka menyimpan perkara yang terbuka. Katakan Nicole mahu menulis fungsi untuk menambah dua nombor:
let favoriteFood = "sushi"; console.log(favoriteFood); // sushi
Bukan masalah besar jika Nicole menyelitkan tali di sana—saya akan berjaya!
TYPESKRIP: Jadikan ia berkesan? Itu bukan asas yang mampan. Nicole, saya percaya dalam menetapkan jangkaan terlebih dahulu:
let favoriteFood: string = "sushi"; console.log(favoriteFood); // sushi
Dengan saya, tiada tekaan—input dan output anda jelas sekali.
NICOLE: Wah, anda berdua mempunyai pendekatan yang berbeza. JavaScript, anda sangat mudah menyesuaikan diri… tetapi TypeScript, anda seperti jaring keselamatan yang saya tidak tahu saya perlukan!
HOST: Nampaknya banyak perkara yang perlu dipertimbangkan oleh pembangun kesayangan kami! Mari kita beralih kepada satu soalan terakhir: Apakah pendekatan anda terhadap… kerja berpasukan? Bagaimanakah anda bekerja dalam perhubungan yang besar dan rumit—seperti apl tindanan penuh?
JAVASCRIPT: Kerja berpasukan? Saya berkembang maju dalam kekacauan kerjasama. Saya boleh berintegrasi di mana-mana, dengan sesiapa sahaja. Inilah saya menggunakan Promise untuk mengendalikan kerja async:
favoriteFood = 42; console.log(favoriteFood); // 42... wait, what?
Saya berterus terang dan mudah menyesuaikan diri.
TYPESKRIP: Sudah tentu, tetapi jujurlah, JavaScript—anda boleh menjadi sedikit ceroboh dalam pasukan besar. Saya membawa struktur dan akauntabiliti kepada perhubungan:
// Error: Type 'number' is not assignable to type 'string'.
Nampak? Saya memastikan semua orang tahu dengan tepat apa yang diharapkan; tiada kejutan, tiada drama yang tidak perlu.
HOST: Nicole, anda sudah cukup dengan kedua-duanya. Adakah anda mahukan semangat kembara JavaScript atau struktur TypeScript yang boleh dipercayai? Saya rasa kami akan menyerahkan keputusan itu kepada anda—sehingga kali seterusnya pada Full Stack Flirting!
[FUNKY OUTRO MUZIK DIMAINKAN]
Melalui penerokaan saya, saya telah mempelajari beberapa pelajaran penting tentang TypeScript yang saya fikir boleh membantu orang lain mempercepatkan pembelajaran mereka:
Seperti yang dibuktikan pada penghujung lakaran ini, saya sendiri masih tidak pasti sama ada saya akan menggunakan TypeScript atau JavaScript sebagai bahasa pengekodan utama saya; kedua-duanya menawarkan kelebihan dan kekurangan mereka. Saya akan mengatakan bahawa permainan saya ke TypeScript telah menarik. Saya akan meneruskan pembelajaran TypeScript saya dengan membina projek berskala kecil untuk membiasakan diri menggunakan ciri unik. Semasa membuat projek ini, saya akan cuba melaksanakan teknologi yang saya sudah biasa, seperti Vite atau React. Saya juga bercadang untuk menyelam lebih mendalam ke dalam dokumentasi Next.js dan mempelajari cara menggunakannya dengan sebaiknya.
Jika anda ingin menggunakan TypeScript sendiri, berikut ialah beberapa sumber yang mungkin membantu anda:
Atas ialah kandungan terperinci Hanya Jenis Anda: Leret Ke Kanan Pada JavaScript dan TypeScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!