6 เครื่องมือเพื่อเพิ่มความเร็วในการพัฒนา UI และเอกสาร
เผยแพร่แล้ว: 2021-07-04การพัฒนาที่ขับเคลื่อนด้วยส่วนประกอบเป็นกลยุทธ์ที่ยอดเยี่ยมในการเร่งการพัฒนาส่วนหน้าและส่วนต่อประสานผู้ใช้ การใช้ส่วนประกอบทำให้สามารถนำกลับมาใช้ใหม่ได้และทำให้การสร้าง การทดสอบ และการทำให้เป็นโมดูลของแอปพลิเคชันง่ายขึ้น
ในแอปพลิเคชันขนาดเล็ก รายการส่วนประกอบที่ใช้งานสามารถจัดการได้ง่าย คุณไม่จำเป็นต้องมีเครื่องมือเฉพาะเพื่อรักษารายการเหล่านั้นนอกเหนือจากหน่วยความจำของคุณเอง แต่เมื่อแอปพลิเคชันและทีมพัฒนามีจำนวนและความซับซ้อนเพิ่มขึ้น จำนวนและความซับซ้อนของส่วนประกอบก็เพิ่มขึ้น จนถึงจุดที่คุณต้องการความช่วยเหลือในการติดตามส่วนประกอบ และรักษาความสอดคล้องกันใน UI ของคุณ
ในการปรับใช้การพัฒนาที่ขับเคลื่อนด้วยส่วนประกอบสำหรับโปรเจ็กต์ขนาดกลางถึงขนาดใหญ่ คุณต้องมีเครื่องมือที่สามารถจัดการไลบรารีส่วนประกอบ จัดทำเอกสาร จัดแสดง และเปิดใช้งานการพัฒนาโดยไม่ขึ้นกับแอพพลิเคชั่นที่ใช้
ความจำเป็นในการจัดการส่วนประกอบและการทำรายการนั้นโชคดีที่แก้ไขได้ด้วยเครื่องมือประเภทใหม่ที่มีจุดมุ่งหมายโดยตรงเพื่อเร่งการพัฒนาและจัดทำเอกสารของส่วนต่อประสานผู้ใช้และส่วนหน้า เครื่องมือเหล่านี้ให้การสนับสนุนไลบรารีต่างๆ ภาษาถิ่น JavaScript ที่แตกต่างกัน และเฟรมเวิร์ก JavaScript ที่หลากหลายสำหรับการพัฒนา UI เช่น Angular, React และ Vue
นอกจากนี้ เครื่องมือการจัดการส่วนประกอบบางส่วนยังทำหน้าที่สร้างคู่มือสไตล์ส่วนหน้าด้วย
อะไรคือแนวทางในขอบเขตของการพัฒนาส่วนหน้า?
เป็นคอลเลกชันสดขององค์ประกอบทั้งหมดในส่วนต่อประสานผู้ใช้ของแอพที่กำลังพัฒนา คู่มือเหล่านี้ไม่เพียงแต่แสดงรายการส่วนประกอบเท่านั้น แต่ยังรวมถึงตัวอย่างที่ใช้งานได้และทดสอบได้ พวกเขายังเสนอข้อมูลโค้ดของแต่ละองค์ประกอบ ซึ่งนักพัฒนาสามารถคัดลอกและวางลงในโค้ดของตนเองได้ โดยทั่วไป คู่มือลักษณะจะประกอบด้วยส่วนประกอบ UI ทั่วไป เช่น ปุ่ม ไอคอน เมนูการนำทาง องค์ประกอบการป้อนแบบฟอร์ม และโมดอลโอเวอร์เลย์
ด้านล่างนี้ คุณจะพบคำวิจารณ์เกี่ยวกับเครื่องมือที่กำลังเป็นผู้นำในการพัฒนาองค์ประกอบ UI และส่วนเครื่องมือเอกสาร
หนังสือนิทาน
Storybook เป็นเครื่องมือยอดนิยมสำหรับการพัฒนาส่วนประกอบส่วนหน้าและ UI ที่ช่วยให้คุณทำงานโดยไม่ต้องกังวลเกี่ยวกับการขึ้นต่อกันเฉพาะแอปพลิเคชัน มีแซนด์บ็อกซ์สำหรับสร้าง UI แบบแยกส่วน นอกแอปที่อยู่ในระหว่างการพัฒนา ซึ่งช่วยให้สามารถพัฒนาสถานะที่เข้าถึงยากและเคส Edge ได้ ส่งผลให้มีการปรับปรุงที่สำคัญในด้านความสามารถในการนำกลับมาใช้ใหม่ ความสามารถในการทดสอบ และความเร็วในการพัฒนา
นอกจากนี้ยังอำนวยความสะดวกในการโต้ตอบกับนักออกแบบ UX ทำให้งานในการดูส่วนประกอบที่มีอยู่ง่ายขึ้นและระบุองค์ประกอบที่จำเป็นต้องสร้าง
Storybook รองรับเฟรมเวิร์ก JavaScript ที่หลากหลาย รวมถึง React, Angular, Vue, Svelte, Web Components และอื่นๆ อีกมากมาย กรณีการใช้งานที่สร้างใน Storybook สามารถบันทึกเป็นเรื่องราวใน JavaScript ธรรมดา เพื่อการตรวจสอบระหว่างการพัฒนา การทดสอบ และ QA
เครื่องมือนี้มีระบบนิเวศที่กว้างขวางของส่วนเสริมที่ช่วยให้สามารถผสานรวมกับเครื่องมือการพัฒนา อำนวยความสะดวกในการปรับแต่งเวิร์กโฟลว์ และทำการทดสอบและจัดทำเอกสารโดยอัตโนมัติ ตัวอย่างเช่น Docs Addon อนุญาตให้เขียน Markdown/MDX เพื่อสร้างไซต์ที่ปรับแต่งได้สำหรับไลบรารีส่วนประกอบและระบบการออกแบบ
Styleguidist
Styleguidist สามารถจัดเป็นเครื่องสร้างคู่มือการใช้ชีวิตได้ แต่ฟังก์ชันการทำงานนั้นใกล้เคียงกับเซิร์ฟเวอร์สภาพแวดล้อมการพัฒนาสำหรับส่วนประกอบ UI คู่มือสไตล์ที่สร้างด้วย Styleguidist จะแสดงคุณสมบัติของคอมโพเนนต์และแสดงตัวอย่างการใช้งานที่แก้ไขได้ โดยอิงจากไฟล์ markdown (.md) เครื่องมือนี้เข้ากันได้กับภาษาถิ่นของ JavaScript เช่น ES6, Flow และ TypeScript

เอกสารที่สร้างขึ้นโดยอัตโนมัติช่วยให้ Styleguidist ทำหน้าที่เป็นพอร์ทัลเอกสารสำหรับส่วนประกอบทั้งหมด ซึ่งมีให้สำหรับทีมพัฒนาทั้งหมด นอกจากนี้ยังช่วยลดความยุ่งยากในการสร้างและบำรุงรักษาไซต์เอกสารประกอบ UI ซึ่งรวมถึงแค็ตตาล็อกองค์ประกอบ UI นอกจากนี้ยังอนุญาตให้สร้างหน้ามาร์กอัปและนำเข้าส่วนประกอบ UI
เอกสารแบบรวมศูนย์ใน Styleguidist ช่วยประหยัดเวลาและความพยายามอย่างมากในโครงการขนาดใหญ่ แต่ต้องมีการจัดสรรทรัพยากรเพื่อให้เอกสารเป็นปัจจุบันอยู่เสมอ ไม่เช่นนั้น คุณอาจประสบปัญหาที่เรียกว่า style guide mortality ซึ่งเกิดขึ้นเมื่อเอกสารล้าสมัย นักพัฒนาหยุดใช้งาน และประโยชน์ของ style guide จะหายไป
เป็นเรื่องปกติที่ Styleguidist จะใช้ร่วมกับ Storybook เนื่องจากจุดแข็งนั้นเสริมกัน Storybook สามารถใช้เพื่อสร้างส่วนประกอบและเขียนเรื่องราวเพื่อติดตามการเปลี่ยนแปลงได้ ในขณะที่ Styleguidist สามารถใช้เพื่อบันทึกส่วนประกอบโดยใช้ Markdown
นิดหน่อย
Bit เป็นเฟรมเวิร์ก/พื้นที่เก็บข้อมูลแบบกระจายและขยายได้ หรือที่เรียกว่า monorepo หรือที่เก็บหลายแพ็คเกจของส่วนประกอบ UI ซึ่งสามารถใช้เป็นโครงสร้างพื้นฐานในการสร้างแอปพลิเคชันภายใต้วิธีการพัฒนาที่ขับเคลื่อนด้วยคอมโพเนนต์ (CDD) ด้วยวิธีการนี้ Bit ตั้งเป้าที่จะเร่งกระบวนการสร้าง ทดสอบ และบำรุงรักษา ทำให้รอบการพัฒนาแอปพลิเคชันสั้นลงอย่างมาก และปรับปรุงคุณภาพแอปพลิเคชัน


แทนที่จะสร้างส่วนประกอบให้เป็นส่วนหนึ่งของแอปพลิเคชัน Bit อนุญาตให้พัฒนาภายนอกแอพแล้วจึงใช้เพื่อเขียนแอปพลิเคชันจากล่างขึ้นบน ในทางกลับกัน ส่วนประกอบสามารถนำกลับมาใช้ใหม่ได้ในแอพพลิเคชั่นต่างๆ มากมาย สร้างตลาดส่วนประกอบที่พร้อมใช้งานสำหรับทีมพัฒนาทั้งหมด เป็นผลให้คุณได้รับแอปพลิเคชันที่ขยายได้ ซึ่งสามารถเปลี่ยนแปลงฟังก์ชันการทำงานได้โดยการเพิ่มหรือลบส่วนประกอบ
บิตเข้ากันได้กับไลบรารี React, Vue และ Angular โดยยึดตามปรัชญาของพื้นที่ทำงาน ซึ่งพื้นที่ทำงานถูกใช้เพื่อพัฒนาและเขียนส่วนประกอบ วิธีการทำงานนี้ช่วยให้คุณสร้างแอปพลิเคชันได้ในลักษณะแบบกระจาย แต่ด้วยประสบการณ์แบบเสาหิน UI ของพื้นที่ทำงานของ Bit ช่วยให้สามารถพัฒนาและจัดการส่วนประกอบได้อย่างง่ายดาย
ตอบโต้จักรวาล
React Cosmos เป็นสภาพแวดล้อมการพัฒนาที่ออกแบบมาสำหรับการสร้างอินเทอร์เฟซผู้ใช้คุณภาพสูงที่ปรับขนาดได้ ช่วยให้คุณสามารถพัฒนาส่วนประกอบ React แบบแยกส่วนและสร้างไลบรารีของส่วนประกอบ UI สามารถใช้เพื่อลดเวลาในการพัฒนาได้อย่างมาก ไม่ว่าจะผ่านการทดสอบการถดถอยด้วยภาพแบบทันที หรือผ่านการผสานการทำงานที่ปรับแต่งได้ตามความต้องการของคุณ

React Cosmos ใช้ปรัชญาที่ยึดตามส่วนประกอบที่ช่วยให้คุณบุ๊กมาร์กสถานะของคุณโดยกำหนดอินพุตตัวอย่าง การจัดกลุ่มอุปกรณ์ติดตั้งช่วยให้คุณสร้างไลบรารี่ของส่วนประกอบเหล่านั้น ซึ่ง React Cosmos จะแสดงภายใต้อินเทอร์เฟซผู้ใช้ที่หรูหราซึ่งออกแบบมาเป็นพิเศษเพื่อให้เวลาของคุณมีประสิทธิผลมากขึ้น
ในการทำงาน React Cosmos จะแทรกตัวเองลงในไพพ์ไลน์การสร้างของคุณเพื่อให้สามารถเข้าใจซอร์สโค้ดของคุณได้ ซึ่งหมายความว่าคุณสามารถใช้เครื่องมือนี้ได้ไม่ว่าคุณจะใช้ภาษา JS ใดในการเขียนโค้ดของคุณ ไม่ว่าจะเป็น Flow, TypeScript หรืออื่นๆ นอกจากนี้ยังหมายความว่าบางครั้งคุณต้องเพิ่มตัวเลือกบางอย่างในการกำหนดค่าบางอย่างเพื่อให้การผสานรวมทำงานได้
ตามชื่อของมัน React Cosmos ทำงานเฉพาะกับ React โดยเน้นที่บางแง่มุมของการพัฒนา UI แต่ทำอย่างนั้นด้วยรายละเอียดระดับสูงสุด
React Developer Tools
เครื่องมือนี้ให้บริการโดย Facebook เป็นปลั๊กอินของ Chrome ซึ่งช่วยให้คุณตรวจสอบลำดับชั้นของส่วนประกอบ React ภายในเครื่องมือพัฒนาของ Chrome ได้ นอกจากนี้ยังมีให้เป็นส่วนเสริมสำหรับเบราว์เซอร์ Firefox
React Developer Tools ช่วยให้คุณตรวจสอบและแก้ไขสถานะและคุณสมบัติของส่วนประกอบในขณะที่คุณสำรวจแผนผังลำดับชั้นของส่วนประกอบแอปของคุณ รูปแบบการพัฒนาเชิงโต้ตอบนี้ช่วยให้คุณเห็นได้ว่าการเปลี่ยนแปลงองค์ประกอบหนึ่งส่งผลต่อองค์ประกอบอื่นๆ อย่างไร คุณจึงสามารถประกอบโครงสร้างองค์ประกอบ UI ของคุณได้อย่างถูกต้องและบรรลุการแยกส่วนที่เหมาะสมระหว่างกัน

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

Docz ตั้งเป้าที่จะลดความซับซ้อนของกระบวนการจัดทำเอกสารและอัปเดตไซต์เอกสารให้มากที่สุดเท่าที่จะเป็นไปได้ เพื่อที่นักพัฒนาจะได้ไม่ต้องเสียเวลาเพื่อใช้งานให้เสร็จเร็วขึ้น ด้วย Docz คุณสามารถเขียนและเผยแพร่เอกสารเชิงโต้ตอบของโค้ดของคุณได้อย่างง่ายดาย สร้างไฟล์ MDX ที่แสดงคุณธรรมของมัน เป็นผลให้คุณได้รับไซต์ที่พร้อมสำหรับการผลิตที่มีการรีโหลดแบบสด ซึ่งจะรีเฟรชอย่างครบถ้วนทุกครั้งที่มีการเปลี่ยนแปลงไฟล์
หากคุณใช้ API คุณสามารถสำรวจเครื่องมือเหล่านี้เพื่อสร้างเอกสาร API ที่สวยงามได้
นี่แค่เริ่มต้น
นอกเหนือจากเครื่องมือที่ได้รับการตรวจสอบแล้ว ยังมีโครงการอื่นๆ อีกมากมายสำหรับเครื่องมือในการจัดทำรายการ จัดการ และจัดทำเอกสารส่วนประกอบ เช่น Carte Blanche, Atellier, Bluekit และอื่นๆ หลายโครงการยังอยู่ในช่วงเบต้า ในขณะที่โครงการอื่นๆ เป็นโครงการที่ไม่ได้รับการดูแล แต่ก็คุ้มค่าที่จะทราบเกี่ยวกับโครงการเหล่านี้และคอยติดตามพวกเขา เนื่องจากสามารถนำเสนอคุณสมบัติที่สามารถลดเวลาในการพัฒนาซอฟต์แวร์ได้อย่างมาก
บริษัทสมัยใหม่ขนาดใหญ่หลายแห่ง รวมถึง Shopify, Atlassian, IBM, Spotify และ AirBNB กำลังนำระบบการออกแบบที่มีเครื่องมือสนับสนุนมาใช้ ซึ่งจะช่วยเร่งความเร็วในการพัฒนาและจัดทำเอกสารประกอบของส่วนประกอบ UI อย่างไรก็ตาม คุณไม่ต้องรอจนกว่าคุณจะเป็นบริษัทใหญ่เพื่อนำเครื่องมือเหล่านี้มาใช้ ทางที่ดีควรเริ่มใช้งานเมื่อคุณมีแค็ตตาล็อกส่วนประกอบเพียงเล็กน้อยที่ต้องบำรุงรักษา คุณสามารถทำความคุ้นเคยกับอุปกรณ์เหล่านี้ได้ เพื่อไม่ให้คุณถูกมองข้ามเมื่อรายการส่วนประกอบของคุณเติบโตขึ้น และมีราคาแพงเกินไปที่จะเริ่มจัดระเบียบ
