นักพัฒนาแอปมักบอกเราว่าติดตามการเปลี่ยนแปลงบนเว็บและเข้าใจสาเหตุของการเปลี่ยนแปลงเหล่านี้ได้ยาก วันนี้เราจะเปิดตัวชุดเนื้อหาใหม่ชื่อ Chrome Dev Insider ซึ่งจะแชร์ (1) ข้อมูลที่น่าสนใจและควรทราบ (2) ข้อมูลเชิงลึกเกี่ยวกับวิธีที่เราตัดสินใจในหัวข้อสำคัญ (เช่น การเปลี่ยนแปลง FLOC) หรือแนวทางการทำงานกับระบบนิเวศ (เช่น Interop 2022) และ (3) สิ่งสำคัญที่คุณควรทราบ (เช่น การเปลี่ยนแปลงสตริง User Agent)
สิ่งที่เราจะแชร์จะอยู่ในบริบทของ 4 สิ่งสําคัญที่เราให้ความสําคัญในปี 2022 ดังนี้
- มอบประสบการณ์การใช้งานที่น่าพึงพอใจ: ทําให้ผู้ใช้ใช้งานได้ง่าย ไม่ว่าจะเป็นประสิทธิภาพ ธุรกรรม ข้อมูลประจําตัว หรือการเปลี่ยนผ่าน
- พัฒนาความสามารถของเว็บ: รองรับบทบาทที่เปลี่ยนแปลงไปของเว็บจากแพลตฟอร์มการบริโภคเนื้อหา ไปเป็นแพลตฟอร์มสําหรับประสบการณ์การใช้งานที่หลากหลาย รวมถึงประสบการณ์ที่ต้องมีการผสานรวมระดับระบบปฏิบัติการและฮาร์ดแวร์อย่างลึกซึ้ง
- ลดความซับซ้อนของการพัฒนาเว็บ: ช่วยให้การตัดสินใจง่ายขึ้นและปรับปรุงประสิทธิภาพการทำงานของนักพัฒนาซอฟต์แวร์
- การปรับปรุงความเป็นส่วนตัวของเว็บ: ตอบสนองความคาดหวังของผู้ใช้เว็บที่ต้องการการคุ้มครองความเป็นส่วนตัวของข้อมูลที่ดียิ่งขึ้น ท่ามกลางความซับซ้อนที่เพิ่มขึ้นเรื่อยๆ ของนักพัฒนาแอปในการติดตามและการกำหนดเป้าหมาย
ข่าวสาร: Interop 2022
ในการวางแผนโรดแมป เราพิจารณาความคิดเห็นของนักพัฒนาซอฟต์แวร์เพื่อทำความเข้าใจปัญหาและความต้องการที่สำคัญที่สุดของนักพัฒนาเว็บ และอื่นๆ ธีมหลักที่ปรากฏซ้ำๆ คือความเข้ากันได้กับเบราว์เซอร์ ซึ่งทำให้ประสบการณ์การใช้งานเหมือนกันในทุกเบราว์เซอร์ ในช่วงปีที่ผ่านมา เราได้ทํางานร่วมกับระบบนิเวศเพื่อจัดการกับธีมนี้ ซึ่งเป็นส่วนหนึ่งของความสําคัญของเราในการ "ลดความซับซ้อนของการพัฒนาเว็บ"
เมื่อปีที่แล้ว Microsoft, Chrome และผู้เล่นในระบบนิเวศได้ประกาศ Compat 2021 ซึ่งส่งผลให้เครื่องมือเบราว์เซอร์ยอดนิยมทั้งหมด (Chromium, Gecko และ Webkit) ได้รับคะแนนมากกว่า 90% ใน5 หัวข้อหลักที่เน้นซึ่งระบุไว้สำหรับปีนั้น Compat 2021 ยังช่วยสร้างรากฐานที่มั่นคงสำหรับฟีเจอร์ที่มีประสิทธิภาพ เช่น CSS Grid (การใช้งาน 12% และเพิ่มขึ้นอย่างต่อเนื่อง) และ CSS Flexbox (การใช้งาน 77%)
และเมื่อเดือนที่แล้ว Apple, Bocoup, Google, Igalia, Microsoft และ Mozilla ได้รวมตัวกันในฐานะผู้สนับสนุนเพื่อแก้ปัญหาความเข้ากันได้ของเบราว์เซอร์ยอดนิยมที่นักพัฒนาเว็บพบ และตกลงร่วมกันเกี่ยวกับมาตรฐานการวัดผล ผลที่ได้คือ Interop 2022 ซึ่งเป็นโปรเจ็กต์ที่มีเป้าหมายเพื่อทำให้แพลตฟอร์มมีความสอดคล้องกันมากขึ้น การเปรียบเทียบนี้มุ่งเน้นที่พื้นที่สำคัญ 15 แห่งที่นักพัฒนาแอประบุว่าเป็นกุญแจสำคัญในการปรับปรุงประสิทธิภาพการทำงาน
ข้อมูลวงใน: การทำงานร่วมกับพาร์ทเนอร์เบราว์เซอร์
เราพูดคุยกับ Robert Nyman และ Philip Jägenstedt ซึ่งมีส่วนร่วมในการสนทนาเหล่านี้เพื่อฟังเรื่องราวในวงในเกี่ยวกับ Interop 2022 ด้านล่างนี้คือวิดีโอฉบับตัดต่อที่แสดงให้เห็นว่าวิดีโอนี้เกิดขึ้นได้อย่างไร
โครงการริเริ่มนี้เกิดขึ้นจากอะไร
Robert: ทุกอย่างเริ่มต้นขึ้นเมื่อปี 2019 เมื่อเราทําแบบสํารวจ MDN DNA 2019 ปัญหาความเข้ากันได้เป็นปัญหาหลักที่นักพัฒนาแอปสร้างเว็บต้องพบเจออย่างชัดเจน และเราได้ติดตามผลอย่างละเอียดในรายงานความเข้ากันได้ของเบราว์เซอร์ MDN ปี 2020 ข้อมูลนี้ช่วยให้เรามีข้อมูลและข้อมูลที่นําไปใช้ได้เพียงพอในการเริ่มความพยายามด้าน Compat 2021 ซึ่งส่งผลให้เราทํางานต่อไปและขยายขอบเขตด้วย Interop 2022
Philip: เราขอพูดถึง web-platform-tests และ State of CSS 2021 ด้วย เราทำงานร่วมกับผู้ให้บริการเบราว์เซอร์รายอื่นๆ ในการทดสอบโดยใช้ WPT มาอย่างยาวนาน และต้องการใช้ประโยชน์จากความร่วมมือนี้ การทดสอบฟีเจอร์เหล่านี้ส่วนใหญ่เขียนไว้แล้ว เราจึงต้องตรวจสอบการทดสอบและเพิ่มการครอบคลุมที่ขาดหายไป Google ได้ลงทุนกับ wpt.fyi เป็นจำนวนมาก แต่ก็ต้องขอขอบคุณ Mozilla ที่ทำให้ WPT ประสบความสำเร็จจนถึงทุกวันนี้ แน่นอนว่า Mozilla มีส่วนสำคัญในแบบสํารวจ MDN DNA ด้วย นอกจากนี้ ยังมีรายงานสถานะของ CSS ปี 2021 ด้วย เราต้องได้รับข้อมูลใหม่เกี่ยวกับความต้องการของนักพัฒนาเว็บเพื่อรวบรวมข้อมูลสำหรับ Interop 2022 เราจึงทำงานร่วมกับ Sacha ผู้ดูแลการสำรวจเพื่อเพิ่มคำถามใหม่เกี่ยวกับปัญหาความเข้ากันได้ของเบราว์เซอร์ ข้อมูลนี้ช่วยเราอย่างมากในกระบวนการวางแผน Interop 2022
มีอะไรอยากแชร์หรือความคิดเห็นจาก Compat 2021 ไหม
Robert: การวัดผลและดูคะแนนและข้อมูลเชิงลึกเกี่ยวกับประสิทธิภาพของเครื่องมือเบราว์เซอร์แต่ละรายการมีประโยชน์มาก เราจึงติดตามความคืบหน้าและพูดคุยเพื่อแก้ไขปัญหาที่ไม่ชัดเจนหรือต้องให้ความสำคัญได้ และเราก็ตระหนักได้อย่างรวดเร็วว่า "การทำงานร่วมกัน" เป็นชื่อที่เหมาะกว่าสำหรับโครงการริเริ่มนี้ โดยปกติแล้ว ผู้ให้บริการเบราว์เซอร์จะแยกความแตกต่างระหว่างคำว่าความเข้ากันได้และการทำงานร่วมกัน โดยที่ความเข้ากันได้หมายถึงความเข้ากันได้ของเว็บไซต์ และการทำงานร่วมกันหมายถึงเบราว์เซอร์อย่างน้อย 2 เบราว์เซอร์ที่ทำงานเหมือนกัน ในคำศัพท์นั้น โครงการนี้เกี่ยวข้องกับความสามารถในการทำงานร่วมกัน ดังนั้นโปรเจ็กต์จึงสอดคล้องกับการตั้งชื่อดังกล่าว
วิสัยทัศน์ของเราคืออะไร
Robert: ความหลากหลายของเบราว์เซอร์และเครื่องมือแสดงผลเป็นสิ่งสําคัญในการทำให้เว็บเปิดกว้าง แต่ปัจจุบันการดำเนินการนี้ส่งผลเสียต่อนักพัฒนาแอปของเราที่ต้องคอยติดตามระดับการสนับสนุนที่แตกต่างกันสำหรับฟีเจอร์ในเครื่องมือแต่ละรายการ วิสัยทัศน์ของเราคือนักพัฒนาแอปเห็นว่าแพลตฟอร์มเว็บเป็นตัวเลือกที่ใช้งานได้จริงและน่าสนใจที่สุดสำหรับความต้องการของตน และสามารถมุ่งเน้นที่การสร้างประสบการณ์การใช้งานที่ดีที่สุดแทนที่จะเสียเวลาแก้ปัญหาการทำงานร่วมกัน และเราทราบดีว่าหากต้องการบรรลุเป้าหมายดังกล่าว ฟีเจอร์ที่ผู้ใช้ถามถึงมากที่สุดจะต้องพร้อมใช้งานในเครื่องมือเบราว์เซอร์หลักๆ ทั้งหมด เพื่อให้นักพัฒนาแอปประสบความสำเร็จบนแพลตฟอร์มเว็บอย่างแท้จริง
เราจะพัฒนาสิ่งต่างๆ ไปด้วยกันได้อย่างไรเมื่อเบราว์เซอร์ที่มีเป้าหมาย (บางครั้ง) แตกต่างกันมารวมกัน
Philip: แนวทางของเราคือการมองหาพื้นที่ที่มีความสนใจร่วมกัน เพื่อค้นหาการคอลแลบที่ทุกฝ่ายได้ประโยชน์ซึ่งเป้าหมายมีความสอดคล้องกันอยู่แล้ว และการกำหนดลำดับความสำคัญให้กับสิ่งที่ต้องดำเนินการพร้อมกันในจำนวนที่จำกัดจะช่วยให้เรามุ่งเน้นไปที่ส่วนเหล่านั้น และเดินหน้าได้เร็วขึ้น รวมถึงได้งานที่มีคุณภาพสูงกว่าหากทำงานแยกกัน นั่นคือแนวคิด
เราคิดว่าสิ่งสำคัญคือต้องตระหนักว่าแนวทางที่อิงตามความเห็นพ้องนี้มีข้อจำกัดอยู่ เมื่อเป้าหมายไม่สอดคล้องกันมากพอ เราจำเป็นต้องดำเนินการต่อด้วยวิธีอื่น บางครั้งการนําหลักฐานเพิ่มเติมเกี่ยวกับความต้องการของนักพัฒนาเว็บหรือผู้ใช้อาจช่วยได้ แต่ท้ายที่สุดแล้ว ผู้ให้บริการเบราว์เซอร์สามารถจัดส่งสิ่งที่ไม่มีการยอมรับอย่างกว้างขวาง ในกรณีที่ดีที่สุด นักพัฒนาเว็บจะแสดงให้เห็นถึงคุณค่าของฟีเจอร์นี้ด้วยการลองใช้ฟีเจอร์ดังกล่าว พบว่าฟีเจอร์ดังกล่าวตอบโจทย์ความต้องการของตน และขอให้มีฟีเจอร์เดียวกันนี้ในทุกเบราว์เซอร์
กลับมาที่ Interop 2022 จะมีการเปิดตัวฟีเจอร์ที่ไม่ใช่การออกแบบหรือเลย์เอาต์ไหม
Philip: ได้เลย Interop 2022 ไม่ได้จำกัดอยู่แค่ฟีเจอร์การจัดรูปแบบและเลย์เอาต์ แต่สุดท้ายก็เน้นไปที่ CSS เป็นอย่างมาก ส่วนหนึ่งเป็นเพราะ State of CSS 2021 เพิ่งเผยแพร่ไปไม่นาน และอีกส่วนหนึ่งเป็นเพราะนักพัฒนาเว็บแจ้งให้เราทราบว่าปัญหาที่พบบ่อยที่สุดคือความแตกต่างระหว่างเบราว์เซอร์ ขอบเขตความสนใจที่หลากหลาย เช่น องค์ประกอบแบบฟอร์มและกล่องโต้ตอบ ไม่ได้จำกัดอยู่แค่ CSS และเรายังมีความพยายามในการสืบสวนเกี่ยวกับ API การแก้ไข รวมถึงเคอร์เซอร์และเหตุการณ์เมาส์ด้วย เราหวังว่าใน Interop 2023 เราจะได้ข้อมูลใหม่เกี่ยวกับความต้องการของนักพัฒนาซอฟต์แวร์ในเว็บมากขึ้น และรวมฟีเจอร์ดังกล่าวไว้ในกิจกรรมนี้ด้วย
การเปลี่ยนแปลงที่สำคัญที่กําลังจะเกิดขึ้น
หนึ่งในวัตถุประสงค์ของชุดนี้คือแจ้งให้นักพัฒนาแอปทราบถึงการเปลี่ยนแปลงที่สำคัญที่กําลังจะเกิดขึ้น ซึ่งเป็นสิ่งสําคัญในการปรับปรุงประสบการณ์ของผู้ใช้และความสามารถของแพลตฟอร์ม
ลำดับเวลาที่กล่าวถึงด้านล่างคือเวลาที่คาดว่าการเปลี่ยนแปลงเหล่านี้จะเกิดขึ้น อย่างไรก็ตาม เวอร์ชันที่เผยแพร่ของฟีเจอร์อาจเปลี่ยนแปลงได้
การลด User Agent
ส่วนหัว User-Agent และอินเทอร์เฟซ JS ที่เชื่อมโยงกันไม่เพียงส่งข้อมูลเบราว์เซอร์และอุปกรณ์ที่เป็นประโยชน์เท่านั้น แต่ยังส่งข้อมูลเดิมและข้อมูลที่ไม่ถูกต้องด้วย สิ่งที่เป็นปัญหามากกว่าข้อบกพร่องในการแยกวิเคราะห์สตริง UA ที่มีอยู่มากมายมหาศาลคือความจริงที่ว่ามีการส่งข้อมูลแบบพาสซีฟไปยังเซิร์ฟเวอร์สําหรับคําขอการนําทางและทรัพยากรย่อยทั้งหมด ซึ่งแสดงถึงข้อมูลความผันผวนประมาณ 10 บิตที่เซิร์ฟเวอร์สามารถใช้เพื่อสร้างตัวระบุการติดตามที่เสถียรขณะที่ผู้ใช้ไปยังส่วนต่างๆ ของเว็บ
แผนปัจจุบันของเราคือการลดสตริง UA ที่มีอยู่ด้วยการส่งเวอร์ชันหลักของเบราว์เซอร์ ชื่อแพลตฟอร์ม และความเป็นอุปกรณ์เคลื่อนที่ที่มีเอนโทรปีต่ำต่อไป โดยหยุดข้อมูลที่มีเอนโทรปีสูงไว้ชั่วคราว สำหรับกรณีการใช้งานที่ต้องใช้ข้อมูลเพิ่มเติมนอกเหนือจากที่มีอยู่ในส่วนหัว เราส่ง User-Agent Client Hints API มาตั้งแต่ Chrome 89
เราได้เปิดช่วงทดลองใช้ Origin เป็นเวลา 6 เดือนเพื่อทดสอบและรับความคิดเห็น และยินดีที่ไม่ได้รับความคิดเห็นเกี่ยวกับข้อบกพร่องใดๆ แม้ว่าจะมีผู้เข้าร่วมมากกว่า 200 คน
- ลำดับเวลา: ใน Chrome 101 เราจะเดินหน้าต่อด้วยสิ่งที่เรียกว่าระยะที่ 4 ซึ่งก็คือการลดข้อมูล
MINOR.BUILD.PATCH
ในสตริง UA เหลือ0.0.0
และเราจะแจ้งให้เว็บไซต์ทราบล่วงหน้าและให้เวลาเว็บไซต์เตรียมพร้อมสำหรับระยะที่ 5 และระยะต่อๆ ไปต่อไป นอกจากนี้ เรายังได้สร้างนโยบายสำหรับองค์กรเพื่อเลือกไม่ใช้การเปลี่ยนแปลงเหล่านี้ และจะเปิดใช้ช่วงทดลองเลิกใช้งานจนถึง Chrome 113 เพื่อให้เว็บไซต์มีเวลามากขึ้นในการเตรียมพร้อมสำหรับการเปลี่ยนแปลงเหล่านี้ - คำกระตุ้นให้ดำเนินการ: ย้ายข้อมูลเว็บไซต์ไปยัง UA Client Hints หรือเข้าร่วมการทดลองการเลิกใช้งาน
Local Fonts Access API
Chrome กำลังเปิดตัว Local Font Access API แม้ว่าเว็บไซต์จะใช้แบบอักษรในเครื่องมานานแล้ว แต่ API นี้จะแสดงรายการแบบอักษรในเครื่องและให้การเข้าถึงข้อมูลแบบอักษร ฟังก์ชันนี้ช่วยให้ผู้ใช้ใช้แบบอักษรทั้งหมดกับการออกแบบบนเว็บและแอปพลิเคชันอื่นๆ ได้
แบบอักษรในเครื่องเป็นที่รู้จักกันมานานแล้วว่าเป็นเวกเตอร์ลายนิ้วมือ แม้ว่า API ใหม่นี้จะไม่เพิ่มความสามารถในการใช้แบบอักษรเพื่อเก็บข้อมูลลายนิ้วมือ แต่ Chrome กำหนดให้ผู้ใช้ต้องให้สิทธิ์ "local-fonts"
ใหม่แก่เว็บไซต์ก่อนจึงจะใช้ Local Font Access API ใหม่ได้
ในอนาคต เราวางแผนที่จะกำหนดให้ต้องได้รับสิทธิ์ "แบบอักษรในเครื่อง" เดียวกันก่อนใช้ API อื่นๆ ที่ให้สิทธิ์เข้าถึงแบบอักษรในเครื่อง
- ลำดับเวลา: กำหนดเป้าหมายเป็น Chrome 103 (มิถุนายน 2022)
- คำกระตุ้นให้ดำเนินการ: ดูข้อมูลเพิ่มเติมเกี่ยวกับ API และวิธีใช้เพื่อเริ่มใช้งาน
การทําให้ BFCache ทํางานร่วมกับ Cache-control: no-store
เราพบโอกาสสำคัญในการปรับปรุงความถี่ที่ Back-Forward Cache จะนำทางย้อนกลับ/ไปข้างหน้าได้ทันที ซึ่งต้องมีการเปลี่ยนลักษณะการทำงานของ BFCache ในหน้าที่แสดงด้วยส่วนหัว HTTP Cache-Control: no-store เรามีข้อเสนอแบบสาธารณะที่ออกแบบมาเพื่อป้องกันไม่ให้เกิดเหตุการณ์ที่ไม่คาดคิดที่สำคัญด้วยการตรวจสอบสัญญาณต่างๆ (เช่น การนำหน้าเว็บออกจาก BFCache เมื่อใดก็ตามที่มีการเปลี่ยนแปลงคุกกี้ HTTP เท่านั้น) และการยกเว้น (เช่น นโยบายกลุ่มสำหรับลูกค้า Enterprise/Edu) สำหรับบริบทที่ไม่ซ้ำกัน นี่เป็นโอกาสที่ซับซ้อนแต่น่าตื่นเต้น และเรายินดีรับการตรวจสอบและความคิดเห็นเพิ่มเติม
- ลำดับเวลา: กำหนดเป้าหมายเป็น Chrome 104 (กรกฎาคม 2022) ในกรณีที่ไม่เกิดเหตุการณ์สำคัญใดๆ
- คำกระตุ้นให้ดำเนินการ: ดูรายละเอียดเพิ่มเติมในข้อเสนอ ซึ่งรวมถึงวิธีเปิดใช้การติดตั้งใช้งานที่อยู่ระหว่างดำเนินการ และวิธีแชร์ความคิดเห็น เช่น สถานการณ์จริงที่แนวทางของเราจะทำให้เกิดอุปสรรคใหม่
เราหวังว่าซีรีส์นี้จะช่วยให้ชุมชนนักพัฒนาแอปของเรารู้สึกมีจุดหมายและเชื่อมโยงกันมากขึ้นด้วยการทำให้พวกเขาใกล้ชิดกับทีมของเราและงานของทีมมากขึ้น โปรดติดตามข้อมูลอัปเดตเพิ่มเติมในหน้านี้
ในระหว่างนี้ โปรดใช้ Web เบาสมอง
คุณคิดอย่างไรเกี่ยวกับ The Chrome Dev Insider ฉบับแรก แชร์ความคิดเห็น