รัน Script บน Ubuntu ง่ายๆด้วย Typescript

Nicha Rojsrikul
Nextzy
Published in
1 min readAug 19, 2019

บางทีเราก็อยากลองรันโค้ดเพื่อดูว่าเขียนถูกมั้ย หรือบางโค้ดเราก็อยากรันเพียงครั้งเดียว จะลงทุน deploy ขึ้นไปก็เสียเวลา เพราะฉะนั้นมาดูกันดีกว่าว่าจะสร้างโปรเจ็คเพื่อรันโค้ด Typescript ยังไง

1. สร้าง Project ด้วย yarn

ก่อนอื่นเลยให้เราเปิด Terminal ในโฟลเดอร์ที่เราอยากจะสร้าง Typescript Project แล้วพิมพ์คำสั่งนี้

yarn init

เมื่อพิมพ์แล้ว Terminal จะโชว์คำถามให้เราใส่รายละเอียดเข้าไป โดยเราสามารถกด Enter ไปได้เรื่อยๆจนเมื่อขึ้นว่า main ให้เราใส่ไปว่า src/index.ts จากนั้นให้กด Enter ไปเรื่อยๆจนเสร็จสิ้น yarn ก็จะสร้างไฟล์หนึ่งให้ชื่อ package.json ซึ่งจะมีข้อมูลที่เรากรอกไปเมื่อกี้ทั้งหมด

2. ลง Typescript ในโปรเจ็ค

เมื่อเราสร้างโปรเจ็คเสร็จเรียบร้อยแล้ว เรามาแปลงให้โปรเจ็คกลายเป็น Typescript Project ดีกว่า โดยการพิมพ์คำสั่งนี้

yarn add --dev typesript ts-node

ซึ่งคำสั่งนี้จะลง typescript และ ts-node ให้เป็น devDependency ซึ่ง ts-node จะช่วยให้เรารันไฟล์ Typescript ได้ทันทีเหมือน node ที่รันไฟล์ Javascript ได้เลยนั่นเอง

3. รันโค้ดในไฟล์ Typescript

เมื่อเราลง Typescript ในโปรเจ็คเสร็จเรียบร้อยแล้ว เราสามารถสร้างไฟล์ Typescript ที่จะอ่านได้ ตามที่เราได้ระบุไว้ใน main ตอนที่เราสร้างโปรเจ็คด้วย yarn init ซึ่งในกรณีนี้คือ src/index.ts ฉะนั้น เราสามารถสร้างโฟลเดอร์ชื่อ src และสร้างไฟล์ชื่อ index.ts ข้างในได้เลย

เมื่อสร้างไฟล์เสร็จแล้ว ให้เราเปิดไฟล์นั้นขึ้นมา พร้อมเขียนโค้ดที่เราอยากรันลงไปข้างในได้เลย ซึ่งเราได้เขียนโค้ดไปดังนี้

console.log('hello world')

เมื่อเสร็จเรียบร้อยแล้ว ให้เราเปิดไฟล์ package.json ที่ yarn สร้างให้เราอีกรอบหนึ่ง และพิมพ์เข้าไปเพิ่มดังนี้

{
...
"scripts": {
"start": "ts-node ./src/index.ts"
}
}

เมื่อเซฟเรียบร้อยแล้ว ให้เราเปิด Terminal ในโฟลเดอร์ที่มีไฟล์ package.json จากนั้นพิมพ์คำสั่ง

yarn start

ซึ่งคำสั่งนี้จะไปเรียกให้ ts-node รันโค้ดในไฟล์ index.ts ในโฟลเดอร์ src ตามที่เราระบุไว้ใน package.jsonอย่าง console.log('hello world') ก็จะทำให้ Terminal พิมพ์ hello world ออกมา

เห็นมั้ยว่าการสร้าง Typescript Project เปล่าๆขึ้นมานั้นไม่ยากเลย ซึ่งแค่นี้เราก็สามารถรันโค้ดต่างๆได้แล้ว แต่การรันโค้ด Typescript นั้นมีข้อจำกัดและกฎหลายอย่าง ที่เราสามารถแก้ไขได้ผ่าน tsconfig.json สามารถอ่านเพิ่มเติมได้ที่นี่

นอกจากนี้เรายังสามารถทำให้ประสบการณ์การเขียนโค้ดดีขึ้นไปอีกด้วย dependency ตัวอื่นๆอย่างเช่น prettier หรือใครที่อยากแยก environment variables ก็มี dotenv และ dotenv-flow ที่ช่วยจัดการไฟล์ .env ให้อีกด้วย

สุดท้ายแล้ว ต้องขอบอกไว้ก่อนว่าโปรเจ็คนี้เหมาะแค่กับการรันโค้ดเพื่อการทดสอบ หรือลองเล่นเท่านั้น ไม่เหมาะกับการนำไปเผยแพร่ให้คนอื่นใช้ ซึ่งจะต้องนึกถึงเรื่องความสะดวกในการใช้งาน ประสิทธิภาพการใช้งาน และความปลอดภัยของข้อมูลอีกด้วย

แต่ถ้าหากอยากจะลองเล่นดู ก็สามารถทำตามขั้นตอนที่บอกได้เลย หรือหากขี้เกียจก็สามารถไป fork จาก GitHub ได้เลย

--

--