Posts Tagged With: TypeScript

Quick Note: TypeScript

เพิ่งเจอลูกค้าใช้ภาษา TypeScript (Wiki) เห็นว่าน่าสนใจเลยลองศึกษาดูสักพักล่ะ

  • มันเป็นภาษา Super Set ของ JavaScript ที่คิดค้นโดยเทพ Anders Hejlsberg
  • เพราะว่า JS มันโคตร flexible จนเราเขียนให้มันผิดพลาดได้ง่ายๆ TypeScript ก็เลยแก้ปัญหาด้วยการเพิ่มความเป็น Static Type, Scope, Class-based OOP เข้าไปใน ECMAScript syntax แล้ว compile ออกมาเป็น JS หรือ ECMAScript ver ต่างๆ ได้เลย ปัญหาพวก type ก็ detect กันตอน compile นี่แหละ
  • เพราะมันเป็น Super Set ของ JS ดังนั้นเราเขียน JS ใส่มันไปดื้อๆ ก็ compile ผ่าน
  • ถ้าทำงานกับทั้งภาษา Dynamic กับ Static Type พร้อมๆ กันแล้วจะรู้สึกว่ามันเป็นธรรมชาติมาก ดูไม่ฝืนความเป็น JS แต่ถ้าทำงานกับภาษา Dynamic ล้วนน่าจะชอบ CoffeeScript มากกว่า
  • โดยรวมทำให้เขียน code ช้าลงนิดนึง แต่ได้ความมั่นใจเรื่อง type, การเขียน class แบบที่คุ้นเคยมา
  • ข้อเสียคือเวลาทำงานกับ JS library อื่นๆ มันต้องการ file definition (.ts.d หรือ typing) ที่ระบุ structure ของ function, class, type, module ของ library นั้นๆ เพื่อให้มัน compile ผ่าน (อารมณ์ .h ของภาษา C)
  • ถ้าเป็น lib ดังๆ แบบ jQuery, Angular, React พวกนี้มีคนทำ file พวกนี้ให้อยู่แล้ว แต่คำถามที่สำคัญคือบางคนทำ file พวกนี้ก็ไม่ใช้คนที่เขียน lib นั้น ดังนั้นก็ต้องดูกันยาวๆ ว่าจะไล่แก้ file definition ตาม update ได้ตลอดไหม
  • ถ้าเป็น lib internal (หรือ legacy) lib เนี่ยยากสุดๆ ที่จะมีเจ้า file นี้หรือเขียน file นี้้ย้อนหลัง ขนาดจะลองกะ JS API ตัวเองยังต้องไปเอา file นี้จากลูกค้า (ซึ่ง decompile API ผมออกมาเขียนไอ้ file นี้) มาใช้เลย
  • ส่วนตัวคิดว่าถ้าเป็น Project ใหม่ + ใช้ lib ที่สนับสนุน TypeScript (เช่น Angular 2) หรือ lib ที่เราเขียนใหม่เองก็น่าสนใจที่จะใช้มัน
  • แต่ถ้าทำงานกับ legacy lib เยอะๆ ก็… ตัวใครตัวมัน

ป.ล. กำลังหัดอยู่จาก link TypeScript Tutorial เข้าใจง่ายดี

Categories: Code, Diary, Tech | Tags: , , , , | Leave a comment

Blog at WordPress.com.

Bon appétit

Good food, Good taste for you

Bomreview

โบ้มรีวิว โตแล้วจะรีวิวอะไรก็ได้

rerng.rak

Just another WordPress.com weblog

neizod

Smile! You’re at the best WordPress.com site ever

Admod's blog

just logs

freeclub

พยายามเขียนให้ยาวกว่าเฮดเดอร์ข้างบนจะได้ดูสวยๆ

Anontawong's Musings

a daily dose of a new perspective

TravelKanuman

Travel around the world

kemisara

Belle Kemisara Paladesh's Fan Site - เว็บไซต์แฟนคลับเบลล์ เขมิศรา พลเดช

eatandysummers

eat. travel. live.

Jonathan Fleming's Blog

A Photography Blog

Viewfinder - Street Photography Blog

Jimmy Yang Street Photography Blog

PinkiiGirl

Be one of those who change things and push the human race forward

บล็อกอะไรไม่รู้ของแบม

Ordinary guy blogging about comic books, video games, movies and stuffs.