การเขียนปัญหา

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

งานก่อนเริ่มเวิร์กช็อป

มีคำถามไหม

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

ตรวจหารายการที่ซ้ำกัน

ก่อนที่คุณจะเขียนปัญหาใดๆ คุณควรตรวจสอบว่ามีปัญหาที่ตรงกันอยู่แล้วหรือไม่ ถ้าถ้ามี ก็ไม่ต้องเสียเวลาเขียนเองเลย! ดังนั้น ก่อนเริ่มเขียน ให้ค้นหา รายการที่ซ้ำกันหรือปัญหาที่เกี่ยวข้อง

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

รายงานข้อบกพร่อง

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

  1. ตรวจหารายการที่ซ้ำกัน
  2. รวบรวมหลักฐาน
  3. ค้นหาปัญหา
  4. เพิ่มการสืบพันธุ์
  5. แนะนำสาเหตุ
  6. เขียนปัญหา

รวบรวมหลักฐาน

โดยทั่วไป ยิ่งข้อบกพร่องมีข้อมูลมากเท่าใดก็ยิ่งดี ต่อไปนี้คือสิ่งที่ คุณอาจต้องการระบุ

  • ภาพหน้าจอหรือ GIF จะมีประโยชน์มากหากข้อบกพร่องทำให้เกิดปัญหาด้านภาพ
  • โค้ดตัวอย่างมีประโยชน์หากข้อบกพร่องส่งผลต่อการบล็อกบางประเภทหรือการกำหนดค่าพื้นที่ทำงานเท่านั้น
  • เว็บไซต์ที่โฮสต์เหมาะอย่างยิ่งสำหรับในกรณีที่คุณพบปัญหาในการสร้างข้อบกพร่องซ้ำนอกสภาพแวดล้อมที่เฉพาะเจาะจง

ค้นหาปัญหา

ระหว่างไลบรารีหลัก ปลั๊กอิน ตัวอย่าง และโค้ดแล็บ เรามีโค้ด Blockly มากมาย โปรดช่วยเราโดยแจ้งให้เราทราบถึงตำแหน่งที่มีปัญหา

หากปัญหาอยู่ในหลัก องค์ประกอบใด เช่น อาจเป็นปัญหาเกี่ยวกับกล่องเครื่องมือ การควบคุมการซูม หรือปัญหาการบล็อกของไลบรารี ระบุให้เฉพาะเจาะจงที่สุด

หากปัญหาอยู่ในบล็อกตัวอย่าง ให้ดูว่าปัญหาอยู่ในปลั๊กอิน, Codelab หรือตัวอย่างปัญหานั้น หากคุณพบข้อบกพร่องเดียวกันในหลายที่ โปรดแจ้งให้เราทราบด้วย

เสริมสร้างความแข็งแกร่งในการผลิตผลงานของคุณ

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

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

  1. เปิด X Codelab
  2. ไปที่หน้า Y
  3. เรียกใช้โค้ดตัวอย่าง Z
  4. ให้สังเกตพฤติกรรมที่ไม่ดี ซึ่งมีลักษณะเป็น W.

หากปัญหาอยู่ใน Blockly Core ให้ลองจำลองปัญหาดังกล่าวใน playground

แนะนำสาเหตุ

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

เขียนปัญหาของคุณ

ได้เวลาเขียนรายงานข้อบกพร่องแล้ว เลือกที่เก็บของคุณ:

ตรวจสอบว่าได้กรอกเทมเพลตปัญหาทุกส่วน รวมถึงส่วนที่ไม่ได้ระบุรายละเอียดในส่วนนี้

ขอขอบคุณที่สนใจรายงานข้อบกพร่องและขอให้มีความสุขในการเขียนปัญหา

ขั้นต่อไปคืออะไร

  • ระบบจะติดแท็กรายงานข้อบกพร่องโดยอัตโนมัติเพื่อคัดแยก
  • สมาชิกในทีม Blockly ที่พร้อมให้บริการทางโทรศัพท์จะคอยตรวจสอบและถามคำถามเพื่อความชัดเจน และยังเพิ่มป้ายกำกับที่เราใช้เพื่อจัดระเบียบข้อบกพร่องด้วย
  • ปัญหาอาจถูกระบุว่า "ต้องการความช่วยเหลือ" ซึ่งในกรณีนี้คุณสามารถอ้างสิทธิ์และเริ่มสร้างปัญหาได้
  • ระบบอาจกำหนดปัญหานี้ให้กับสมาชิกในทีม Blockly เพื่อแก้ไข
  • อาจมีการทำเครื่องหมายปัญหาด้วยเป้าหมายรายไตรมาส เพื่อระบุว่าจะเสร็จสิ้นเมื่อใด
  • ปัญหานี้อาจอยู่ในเป้าหมายของ Icebox ซึ่งหมายความว่าเราจะไม่พยายามแก้ไขปัญหานี้ในอนาคตอันใกล้
    • กรณีนี้อาจเกิดขึ้นกับปัญหาที่เกิดไม่บ่อยหรือข้อบกพร่องจากวิธีการแก้ปัญหาที่ทราบแล้ว
    • คุณยังคงแก้ปัญหาเกี่ยวกับ Iceboxed ได้
  • ปัญหาอาจอยู่ในเหตุการณ์ Backlog ของ Bug Bash ซึ่งหมายความว่าปัญหายังไม่เร่งด่วน แต่เรายังอยากแก้ไข
    • เมื่อสิ้นสุดทุกไตรมาส ทีมจะใช้เวลา 2-3 สัปดาห์ในการจัดการข้อบกพร่องจากเหตุการณ์ Backlog ของ Bug Bash
  • ปัญหาอาจย้ายจาก Blockly Core ไปยังตัวอย่างที่ถูกบล็อก (หรือทิศทางตรงกันข้าม) หากจำเป็น
  • ปัญหานี้อาจปิดแล้ว

คำขอฟีเจอร์

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

  1. ตรวจหารายการที่ซ้ำกัน
  2. ตรวจสอบข้อกำหนด
  3. รวบรวมความคิด
  4. เขียนคำขอฟีเจอร์

ตรวจสอบข้อกำหนด

เรายินดีอนุญาตให้ทุกความคิดเข้ามาในที่เก็บนี้ แต่ที่น่าเศร้าก็คือ เราเป็นเพียงมนุษย์คนหนึ่ง เราจึงมีหลักเกณฑ์บางอย่างเกี่ยวกับคำขอ ประเภทที่เราจะปฏิบัติตาม

ต่อไปนี้คือคำแนะนำสำหรับแต่ละหมวดหมู่ต่างๆ ของโปรเจ็กต์

  • Blockly Core
  • ปลั๊กอิน
  • ตัวอย่าง: แสดงวิธีใช้ฟีเจอร์ Blockly เพียง 1-2 รายการ
  • Codelab: แสดงวิธีทำงานเดียวให้เสร็จสมบูรณ์หรือใช้ลักษณะการทำงานเดียว

แต่กฎเหล่านี้ไม่ใช่กฎที่ตายตัวและรวดเร็ว รหัสเหล่านี้มีไว้เพื่อให้คุณได้เห็นภาพสิ่งที่เราต้องการ ก่อนที่คุณจะใช้เวลาสร้างคำขอคุณลักษณะของคุณ

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

รวบรวมความคิดของคุณ

ไอเดียของคุณไม่จำเป็นต้องสมบูรณ์แบบ 100% ด้วยกระป๋องและแผนภาพก่อนที่คุณจะนำเสนอต่อ แต่คุณควรมีแนวคิดที่ชัดเจนเกี่ยวกับสิ่งที่กำลังมองหา คำถามดีๆ ต่อไปนี้เป็นคำถามที่ควรพิจารณาก่อนที่จะเริ่มเขียน

  • ทำไมฉันจึงต้องการฟีเจอร์นี้
  • คุณลักษณะนี้ช่วยแก้ปัญหาได้หรือไม่
  • ผู้ชมเป้าหมายของฟีเจอร์นี้คือใคร
  • ทำไมฟีเจอร์นี้จึงแสดงต่อผู้ใช้
  • มีตัวเลือกอื่นๆ ใดบ้างที่สามารถบรรลุเป้าหมายเดียวกันได้

เมื่อทำความเข้าใจสิ่งเหล่านี้ได้แล้ว คุณก็จะสามารถ ขอรับฟีเจอร์ดีๆ ได้เกือบทั้งหมด!

เขียนคำขอฟีเจอร์

ตอนนี้คุณก็พร้อมที่จะเขียนคำขอฟีเจอร์ของคุณแล้ว เลือกที่เก็บของคุณ:

ตรวจสอบว่าได้กรอกเทมเพลตปัญหาทุกส่วน รวมถึงส่วนที่ไม่ได้ระบุรายละเอียดในส่วนนี้

ขอขอบคุณที่สนใจส่งคำขอคุณลักษณะและขอให้เขียนปัญหา อย่างมีความสุข!

ขั้นต่อไปคืออะไร

  • ระบบจะติดแท็กคำขอฟีเจอร์ของคุณเพื่อคัดแยกโดยอัตโนมัติ
  • สมาชิกในทีม Blockly ที่พร้อมให้บริการทางโทรศัพท์จะคอยตรวจสอบและถามคำถามเพื่อความชัดเจน และยังเพิ่มป้ายกำกับที่เราใช้เพื่อจัดระเบียบข้อบกพร่องด้วย
  • ฟีเจอร์ดังกล่าวอาจถูกระบุว่า "ต้องการความช่วยเหลือ" ซึ่งในกรณีนี้คุณสามารถอ้างสิทธิ์และเริ่มดำเนินการได้
  • เราอาจกำหนดฟีเจอร์นี้ให้กับสมาชิกในทีม Blockly เพื่อนำมาใช้งาน
  • คำขอฟีเจอร์อาจย้ายจาก Blockly Core ไปยังตัวอย่างแบบบล็อก (หรือทิศทางตรงข้าม) หากจำเป็น
  • คำขอฟีเจอร์อาจถูกปิด ซึ่งในกรณีนี้คุณยังคงมีตัวเลือกในการใช้งานเป็นปลั๊กอินของบุคคลที่สาม