อนาคตของเครื่องมือสร้าง JavaScript

Dec 02 2022
#TechBite02: Advent Calendar 2022 โดย Büro am Draht
มันคืออะไร? การสร้างซอฟต์แวร์ JavaScript เป็นกระบวนการที่ต้องใช้เครื่องมือมากมาย แม้ว่าเบราว์เซอร์อาจใช้ JavaScript โดยตรง แต่ก็มีกลไกที่ช่วยให้นักพัฒนาสามารถมุ่งเน้นไปที่การสร้างซอฟต์แวร์ได้

มันคืออะไร?

การสร้างซอฟต์แวร์ JavaScript เป็นกระบวนการที่ต้องใช้เครื่องมือมากมาย แม้ว่าเบราว์เซอร์อาจใช้ JavaScript โดยตรง แต่ก็มีกลไกที่ช่วยให้นักพัฒนาสามารถมุ่งเน้นไปที่การสร้างซอฟต์แวร์ได้ ทุกวันนี้ โค้ดมักถูกเขียนในTypeScriptซึ่งเป็นส่วนเสริมของ JavaScript ที่สร้างโดยMicrosoftซึ่งจำเป็นต้องแปลเป็น JavaScript ที่เบราว์เซอร์ (หรือรันไทม์ JavaScript อื่นๆ เช่นNode.js ) ต้องการ

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

ขึ้นอยู่กับโครงการ อาจเป็นประโยชน์ในการพิจารณาเครื่องมือของคุณเป็นประจำและจับตาดูตลาด เนื่องจากเครื่องมือใหม่ๆ หรือการทดแทนเครื่องมือเก่าให้ประโยชน์ที่แท้จริงในแง่ของความเร็วและเป็นมิตรกับนักพัฒนา

  • TypeScript ไม่ใช่เรื่องใหม่อีกต่อไปและได้รับการนำไปใช้ในโครงการซอฟต์แวร์มากขึ้นเรื่อยๆ มอบความปลอดภัยให้กับประเภทแม้ในแพ็คเกจต่างๆ และช่วยให้คุณป้องกันไม่ให้เกิดข้อผิดพลาดในขณะที่คุณกำลังเขียนโปรแกรมแทนที่จะเรียกใช้สิ่งเหล่านี้ในการผลิต ที่มาพร้อมกับค่าใช้จ่ายทั้งเมื่อเขียนซอฟต์แวร์และเมื่อประมวลผลเป็น JavaScript
  • โค้ดแอปพลิเคชันเบราว์เซอร์ของคุณ — อาจเป็น TypeScript, JavaScript, HTML, (ประมวลผลล่วงหน้า) CSS, สินทรัพย์ และอื่นๆ จำเป็นต้องบรรจุเพื่อปรับใช้ เครื่องมือเช่นwebpack , Rollup , Parcelและอื่น ๆ ทำงานนี้
  • สำหรับแอปพลิเคชันฝั่งเซิร์ฟเวอร์ คุณต้องมีสภาพแวดล้อมรันไทม์ เช่น Node.js เพื่อเรียกใช้ซอฟต์แวร์ของคุณ

ในแง่ของความเร็วesbuildเป็นตัวเปลี่ยนเกมในโครงการของเราอย่างแท้จริง อาจถูกใช้เช่นในการตั้งค่า webpack ที่มีอยู่เป็นตัวโหลดที่มาแทนที่ babel-loader โดยปกติแล้ว จำเป็นต้องมีการปรับแต่งเล็กน้อยในโค้ดของคุณ และเราเห็นการปรับปรุงความเร็ว 50% และมากกว่านั้นในโครงการของเรา

แต่ esbuild สามารถใช้แบบสแตนด์อโลนเพื่อเตรียมโค้ดสำหรับรันไทม์ได้ Esbuild เขียนขึ้นในGoที่คอมไพล์เป็นโค้ดเนทีฟซึ่งทำให้เร็วมาก

นี่คือเครื่องมือบางอย่างที่ควรระวัง:

  • Parcel CSS : CSS Parser คอมไพเลอร์ และตัวย่อ ซึ่งให้ความเร็วสูง (ตามที่เขียนในRust )
  • Vite.js : เครื่องมือส่วนหน้าและการรวมกลุ่มด้วยความเร็วของการสร้างภายใต้ประทุน มันอาศัยโมดูล Ecmascript และได้รับความเห็นอย่างมากเพื่อมอบประสบการณ์การพัฒนาที่ดีตั้งแต่เริ่มต้น
  • Bun : รันไทม์ JavaScript ใหม่ล่าสุด อ้างว่าเร็วสุด ๆ และนอกกรอบที่โดดเด่นด้วยความสามารถในการรวม, transpiling (เช่น TypeScript) และมีสิ่งต่าง ๆ ที่คุณได้รับจาก npm ที่อบโดยตรง ที่น่าสนใจคือมันเขียนด้วย Zig และมีเกี๊ยวเป็นโลโก้

ทำไมเราถึงแนะนำ

แม้ว่าสิ่งสำคัญคือต้องจัดหาแพลตฟอร์มที่เสถียรและผ่านการทดสอบอย่างดีสำหรับแอปที่จะสร้างขึ้น แต่สิ่งต่างๆ โดยเฉพาะอย่างยิ่งในโลกของ JavaScript กำลังพัฒนาอย่างรวดเร็ว เป็นการยากที่จะติดตามสิ่งใหม่ทั้งหมด และโครงการใหม่จำนวนมากจะได้รับการสนับสนุนต่ำในอนาคต คนอื่นๆ อยู่ที่นี่เพื่ออยู่ต่อและอนุญาตให้ย้ายไปยังเวิร์กโฟลว์ที่กำลังพัฒนาได้ดีขึ้น (เช่นที่กล่าวไว้ข้างต้น: TypeScript, esbuild-loader)

เราสนับสนุนให้ใช้เครื่องมือที่ผ่านการทดสอบอย่างดีและซอฟต์แวร์ที่ล้ำสมัยผสมกันเสมอ เพื่อให้คุณควบคุมความเสี่ยงที่คุณกำลังเผชิญอยู่ได้ สำหรับนักพัฒนา เครื่องมือที่นำเสนอช่วยให้เริ่มต้นได้ง่ายขึ้นและมีความเร็วสูงสำหรับงานที่น่าเบื่อในบางครั้งในขณะที่สร้างผลิตภัณฑ์ซอฟต์แวร์ใหม่

ผู้แต่ง: Dirk Weber
ภาพประกอบ: Kai Sinzinger

บทความนี้เป็นส่วนหนึ่งของซีรี่ส์ชื่อ #24TechBites เพื่อเติมความสุขให้กับเวลาที่เหลือจนถึงวันคริสต์มาส เราตั้งเป้าที่จะแจ้งให้คุณทราบเกี่ยวกับเทคโนโลยีปัจจุบัน สร้างแรงบันดาลใจให้คุณ หรือให้ความเห็นเกี่ยวกับแนวโน้มของซอฟต์แวร์แก่คุณ ทั้งหมดนี้อยู่ในรูปแบบของเรื่องเซอร์ไพรส์เล็กๆ น้อยๆ 24 เรื่องต่อวันตามประเพณีของชาวเยอรมันเรื่อง “Adventskalender”

หากต้องการสนุกกับ #TechBites อื่นๆ และดูข้อมูลเพิ่มเติมเกี่ยวกับเราและปฏิทินการถือกำเนิดของเรา คลิก#24TechBites !

เกี่ยวกับ

Büro am Draht เป็นที่ปรึกษาในเบอร์ลินซึ่งช่วยลูกค้าของเราในการสร้างแพลตฟอร์มดิจิทัลที่ยืดหยุ่นและปรับเปลี่ยนได้ เพื่อรองรับความต้องการทางธุรกิจในปัจจุบัน และแม้แต่เปิดตัวรูปแบบธุรกิจในวันพรุ่งนี้ที่เราอาจยังคาดการณ์ไม่ได้ ดังนั้นเราจึงทำงานร่วมกันอย่างใกล้ชิดในทุกขั้นตอนของกระบวนการเปลี่ยนผ่านสู่ดิจิทัล ตั้งแต่กลยุทธ์ดิจิทัล การออกแบบและพัฒนาโซลูชัน ไปจนถึงการสนับสนุนการปฏิบัติงาน

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

dasburo.com
LinkedIn