توسعه دهندگان اغلب به ما می گویند که همگام شدن با تغییرات در وب و درک دلیل رخ دادن این تغییرات دشوار است. امروز، مجموعه جدیدی به نام Chrome Dev Insider را راهاندازی میکنیم که در آن (1) چیزهای جالب و ارزشمند، (2) بینشی درباره نحوه تصمیمگیری درباره یک موضوع کلیدی (مثلاً تغییر FLOC ) یا نزدیک شدن به کارمان با اکوسیستم (مثلاً Interop 2022 ) و (3) هر چیز واقعاً مهمی (برای مثال برای تغییراتی که کاربر باید بدانید) را به اشتراک میگذاریم .
همانطور که ما آنچه را که روی آن کار می کنیم به اشتراک می گذاریم، در چارچوب چهار اولویت ما برای سال 2022 خواهد بود:
- فعال کردن تجربیات کاربر لذت بخش: همه چیز را برای کاربران بصری کنید. چه عملکرد، معاملات، هویت یا انتقال.
- پیشرفت قابلیتهای وب: از نقش در حال تکامل وب از یک پلتفرم مصرف محتوا، به بستری برای طیف گستردهای از تجربیات، از جمله تجربیاتی که نیاز به سیستمعامل عمیق و ادغام در سطح سختافزار دارند، پشتیبانی کنید.
- ساده سازی توسعه وب: تصمیم گیری را آسان تر کنید و بهره وری توسعه دهندگان را بهبود بخشید.
- بهبود حریم خصوصی وب: به انتظارات کاربران وب برای محافظت بهتر از حریم خصوصی داده ها در مواجهه با پیچیدگی روزافزون توسعه دهندگان در ردیابی و هدف گذاری خدمت کنید.
در اخبار: Interop 2022
همانطور که نقشههای راه خود را برنامهریزی میکنیم، به بازخورد توسعهدهندگان نگاه میکنیم تا از جمله موارد دیگر، نکات و نیازهای اصلی توسعهدهندگان وب را درک کنیم. یک موضوع کلیدی که به طور مکرر نشان داده می شود سازگاری مرورگر است که باعث می شود تجربه در مرورگرها یکسان عمل کند. در طول سال گذشته، ما با اکوسیستم کار کرده ایم تا به این موضوع به عنوان بخشی از اولویت خود برای "ساده سازی توسعه وب" بپردازیم.
سال گذشته، مایکروسافت، کروم و بازیکنان اکوسیستم Compat 2021 را معرفی کردند که منجر شد تمام موتورهای مرورگر محبوب (Chromium، Gecko و Webkit) به امتیاز 90+٪ در پنج حوزه اصلی تمرکز مشخص شده برای سال دست پیدا کنند. از جمله موارد دیگر، Compat 2021 منجر به ایجاد پایه ای محکم برای ویژگی های قدرتمندی مانند CSS Grid ( 12% استفاده و رشد پیوسته ) و CSS Flexbox ( 77% استفاده ) شد.
و ماه گذشته، اپل، بوکوپ، گوگل، ایگالیا، مایکروسافت و موزیلا به عنوان حامیان گرد هم آمدند تا مشکلات برتر سازگاری مرورگرها را که توسط توسعه دهندگان وب شناسایی شده بود حل کنند و بر روی یک معیار مشترک توافق کنند. نتیجه Interop 2022 است، پروژه ای با هدف ایجاد همگنی بیشتر در پلتفرم. این معیار بر روی 15 حوزه اولویتی تمرکز دارد که توسط توسعه دهندگان به عنوان کلیدی برای بهبود بهره وری آنها شناسایی شده است.
Scoop Insider: کار با همتایان مرورگر ما
با توجه به فیلم Interop 2022، من با رابرت نایمن و فیلیپ یاگنشتد که در این گفتگوها شرکت داشتند، نشستم تا داستان داخلی را به دست بیاورم. در اینجا برش سردبیر از نحوه جمع آوری آن است.
منشأ این ابتکار چیست؟
رابرت: همه چیز از سال 2019 شروع شد، زمانی که ما بررسی MDN DNA 2019 را انجام دادیم. مشکلات سازگاری به وضوح به عنوان مشکل اصلی توسعه دهندگانی که برای وب ایجاد می کنند برجسته شد، و ما جزئیات بسیار بیشتری را در گزارش سازگاری مرورگر MDN 2020 پیگیری کردیم. این به ما اطلاعات کافی و داده های عملی داد تا تلاش Compat 2021 را شروع کنیم، که به نوبه خود منجر به ادامه آن کار و همچنین گسترش این دامنه با Interop 2022 شد.
فیلیپ: همچنین میخواهم به تستهای پلتفرم وب و وضعیت CSS 2021 اشاره کنم. ما همکاری قوی با سایر فروشندگان مرورگر برای آزمایش با استفاده از WPT داشته ایم که به سال ها قبل برمی گردد، و ما واقعاً می خواستیم به آن متمایل شویم. آزمایشهای مربوط به این ویژگیها عمدتاً قبلاً نوشته شده بودند، بنابراین ما فقط باید آزمایشها را مرور میکردیم و برخی پوششهای گمشده را اضافه میکردیم. گوگل روی wpt.fyi سرمایه گذاری زیادی کرده است، اما ما همچنین باید از موزیلا برای موفقیت WPT که امروز است تشکر کنیم. موزیلا البته در بررسیهای DNA MDN نیز نقش مهمی داشت. فراتر از آن ها، وضعیت CSS 2021 نیز وجود دارد. به منظور گردآوری تلاش هایی مانند Interop 2022، ما نیاز به ورودی تازه ای در مورد نیازهای توسعه دهندگان وب داریم، بنابراین ما با نگهدارنده نظرسنجی Sacha کار کردیم تا سؤالات جدیدی در مورد مسائل سازگاری مرورگر ارائه کنیم. این واقعا به ما در فرآیند برنامه ریزی Interop 2022 کمک کرد.
آیا یادگیری یا بازخوردی از Compat 2021 دارید؟
رابرت: اندازهگیری و داشتن امتیازات و بینش در مورد نحوه عملکرد هر موتور مرورگر واقعاً مفید بود، بنابراین میتوانیم پیشرفت را دنبال کنیم و مطمئن شویم که در مورد موضوعاتی که نامشخص بودند یا باید اولویتبندی شوند بحث و بررسی میکنیم. ما همچنین به سرعت متوجه شدیم که "اینتراپ" نام بهتری برای ابتکار عمل است. اصطلاحات سازگاری و قابلیت همکاری معمولاً توسط فروشندگان مرورگر متمایز می شوند، جایی که compat به سازگاری سایت اشاره دارد و interop به دو یا چند مرورگر اشاره دارد که رفتار یکسانی دارند. در آن اصطلاح، این تلاش در مورد قابلیت همکاری است و بنابراین پروژه با آن نامگذاری همسو شده است.
چشم انداز ما در اینجا چیست؟
رابرت: برای باز نگه داشتن وب، تنوع موتورهای مرورگر و رندر بسیار مهم است. متأسفانه، این در حال حاضر برای توسعه دهندگان ما که باید با سطوح مختلف پشتیبانی از ویژگی ها در هر موتور هماهنگ باشند، قیمت بالایی دارد. چشمانداز ما این است که توسعهدهندگان پلتفرم وب را مناسبترین گزینه و جذابترین انتخاب برای نیازهای خود بدانند و به جای صرف زمان زیاد برای حل مسائل قابلیت همکاری، بر ایجاد بهترین تجربیات ممکن تمرکز کنند. و بسیار واضح است که برای رسیدن به این هدف، ویژگیهایی که بیشترین درخواست را دارند باید در تمام موتورهای مرورگر اصلی قرار بگیرند تا واقعاً توسعهدهندگان را قادر به موفقیت در پلتفرم وب کنند.
وقتی مرورگرهایی با اهداف متفاوت (گاهی) در کنار هم قرار میگیرند، چگونه به طور جمعی کارها را به جلو پیش ببریم؟
فیلیپ: رویکرد ما این بوده است که به دنبال مناطق مورد علاقه مشترک باشیم، تا آن همکاریهای برد-برد را پیدا کنیم که در آن اهداف تقریباً در یک راستا قرار دارند. و با اولویتبندی تعداد محدودی از چیزها برای کار همزمان، تمرکز را به آن حوزهها میآوریم و سریعتر جلو میرویم و کیفیت بالاتری نسبت به زمانی که صرفاً بهصورت جداگانه کار میکردیم، دریافت میکنیم. این ایده است.
من فکر میکنم مهم است که بدانیم برای این رویکرد مبتنی بر اجماع محدودیتهایی وجود دارد، جایی که اهداف به اندازه کافی همسو نیستند، باید از راه دیگری به جلو حرکت کنیم. گاهی اوقات ارائه شواهد بیشتری از نیازهای توسعهدهنده وب یا کاربران میتواند کمک کند، اما در نهایت فروشندگان مرورگر میتوانند چیزهایی را ارسال کنند که توافق گستردهای ندارند. در بهترین حالت، ارزش این ویژگی توسط توسعهدهندگان وب نشان داده میشود که این ویژگی را امتحان میکنند، متوجه میشوند که این ویژگی نیازهای آنها را برطرف میکند، و از همه مرورگرها درخواست میکنند که ویژگی یکسانی داشته باشند.
با بازگشت به Interop 2022، آیا می بینیم که ویژگی های غیرطراحی یا چیدمانی در مرحله ای وارد خط لوله می شوند؟
فیلیپ: قطعا! Interop 2022 به ویژگیهای استایل و چیدمان محدود نشد، اما در نهایت به شدت به سمت CSS متمایل شد. تا حدی به این دلیل که State of CSS 2021 تازه بود، اما همچنین به این دلیل که توسعه دهندگان وب به ما گفته اند که اینجاست که بیشترین مشکل را با تفاوت بین مرورگرها دارند. حوزههای فوکوس چندگانه، مانند عناصر فرم و گفتگو، فراتر از CSS هستند، و ما همچنین تلاشهایی در زمینه ویرایش APIها و رویدادهای اشارهگر و ماوس داریم. امیدوارم که برای Interop 2023، داده های تازه تری در مورد نیازهای توسعه دهندگان در سرتاسر وب داشته باشیم و از این قبیل ویژگی ها در این تلاش استفاده کنیم.
تغییرات کلیدی آینده
یکی از اهداف این مجموعه این است که توسعه دهندگان را در مورد تغییرات کلیدی آینده آگاه کند. مواردی که برای بهبود تجربه کاربر و قابلیتهای پلتفرم مهم هستند.
جدول زمانی ذکر شده در زیر زمانی است که انتظار داریم این تغییرات رخ دهد. با این حال، ممکن است نسخه های انتشار برای ویژگی ها ممکن است تغییر کند.
کاهش عامل کاربر
هدر User-Agent - و رابطهای JS مرتبط با آن - نه تنها اطلاعات مفید مرورگر و دستگاه را منتقل میکند، بلکه میراثی از اصل و نسب و اطلاعات نادرست را نیز به همراه دارد. مشکل سازتر از عرضه تقریباً بی پایان اشکالات تجزیه رشته UA این است که به صورت غیرفعال برای همه درخواست های ناوبری و منابع فرعی به سرورها ارسال می شود. این تقریباً 10 بیت آنتروپی را نشان می دهد که سرورها می توانند از آن برای ایجاد شناسه های ردیابی پایدار در حین حرکت کاربران در وب استفاده کنند.
برنامه فعلی ما کاهش رشته UA موجود با ادامه ارسال نسخه اصلی مرورگر با آنتروپی پایین، نام پلتفرم و قابلیت حمل و نقل ، و منجمد کردن اطلاعات آنتروپی بالا است. برای موارد استفادهای که به اطلاعات بیشتری نسبت به هدر نیاز دارند، از Chrome 89 ، User-Agent Client Hints API را ارسال کردهایم.
ما یک آزمایش اولیه را به مدت 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 جدید توانایی استفاده از فونتها را برای اثرانگشت افزایش نمیدهد، کروم از کاربر میخواهد قبل از اینکه بتواند از API دسترسی به قلم محلی جدید استفاده کند، یک مجوز "local-fonts"
جدید برای یک سایت بدهد.
در آینده، ما قصد داریم قبل از استفاده از هر API دیگری که دسترسی به فونتهای محلی را فراهم میکند، همان مجوز «فنتهای محلی» را بخواهیم.
- جدول زمانی: هدف قرار دادن Chrome 103 (ژوئن'22)
- Call to action: درباره API و نحوه استفاده از آن برای شروع پیاده سازی بیشتر بیاموزید .
کارکرد BFCache با Cache-control: no-store
ما یک فرصت قابل توجه برای بهبود تعداد دفعاتی که حافظه پنهان Back/Forward می تواند مسیریابی فوری به عقب/ جلو را ارائه دهد، شناسایی کرده ایم. این امر مستلزم تغییر در نحوه رفتار BFCache در صفحاتی است که با هدر Cache-control: no-store HTTP ارائه میشوند. ما یک پیشنهاد عمومی داریم که با نظارت بر سیگنالهای مختلف (مثلاً حذف صفحات از BFCache هر زمان که یک کوکی فقط HTTP تغییر میکند)، و حک کردن (مثلاً خطمشی گروه برای مشتریان Enterprise/Edu) برای زمینههای منحصربهفرد، طراحی شده است. این یک فرصت پیچیده اما هیجان انگیز است، و ما دوست داریم بررسی دقیق و بازخورد بیشتری داشته باشیم!
- جدول زمانی: هدف قرار دادن Chrome 104 (22 ژوئیه)، با فرض اینکه هیچ شگفتی بزرگی وجود نداشته باشد.
- فراخوان اقدام: برای جزئیات بیشتر، از جمله نحوه فعال کردن اجرای کار در حال انجام، و راههای به اشتراک گذاشتن بازخورد مانند سناریوهای واقعی که در آن رویکرد ما موانع جدیدی ایجاد میکند، پیشنهاد را ببینید.
از طریق این مجموعه، امیدوارم بتوانم با نزدیکتر کردن آنها به تیم خود و کارشان، به جامعه توسعهدهندگان خود احساس تمرکز و ارتباط بدهم. پس با ما همراه باشید و این فضا را برای به روز رسانی های بیشتر تماشا کنید.
تا آن زمان، وب سایت مبارک.
نظر شما در مورد اولین نسخه The Chrome Dev Insider چیست؟ بازخورد خود را به اشتراک بگذارید .
،توسعه دهندگان اغلب به ما می گویند که همگام شدن با تغییرات در وب و درک دلیل رخ دادن این تغییرات دشوار است. امروز، مجموعه جدیدی به نام Chrome Dev Insider را راهاندازی میکنیم که در آن (1) چیزهای جالب و ارزشمند، (2) بینشی درباره نحوه تصمیمگیری درباره یک موضوع کلیدی (مثلاً تغییر FLOC ) یا نزدیک شدن به کارمان با اکوسیستم (مثلاً Interop 2022 ) و (3) هر چیز واقعاً مهمی (برای مثال برای تغییراتی که کاربر باید بدانید) را به اشتراک میگذاریم .
همانطور که ما آنچه را که روی آن کار می کنیم به اشتراک می گذاریم، در چارچوب چهار اولویت ما برای سال 2022 خواهد بود:
- فعال کردن تجربیات کاربر لذت بخش: همه چیز را برای کاربران بصری کنید. چه عملکرد، معاملات، هویت یا انتقال.
- پیشرفت قابلیتهای وب: از نقش در حال تکامل وب از یک پلتفرم مصرف محتوا، به بستری برای طیف گستردهای از تجربیات، از جمله تجربیاتی که نیاز به سیستمعامل عمیق و ادغام در سطح سختافزار دارند، پشتیبانی کنید.
- ساده سازی توسعه وب: تصمیم گیری را آسان تر کنید و بهره وری توسعه دهندگان را بهبود بخشید.
- بهبود حریم خصوصی وب: به انتظارات کاربران وب برای محافظت بهتر از حریم خصوصی داده ها در مواجهه با پیچیدگی روزافزون توسعه دهندگان در ردیابی و هدف گذاری خدمت کنید.
در اخبار: Interop 2022
همانطور که نقشههای راه خود را برنامهریزی میکنیم، به بازخورد توسعهدهندگان نگاه میکنیم تا از جمله موارد دیگر، نکات و نیازهای اصلی توسعهدهندگان وب را درک کنیم. یک موضوع کلیدی که به طور مکرر نشان داده می شود سازگاری مرورگر است که باعث می شود تجربه در مرورگرها یکسان عمل کند. در طول سال گذشته، ما با اکوسیستم کار کرده ایم تا به این موضوع به عنوان بخشی از اولویت خود برای "ساده سازی توسعه وب" بپردازیم.
سال گذشته، مایکروسافت، کروم و بازیکنان اکوسیستم Compat 2021 را معرفی کردند که منجر شد تمام موتورهای مرورگر محبوب (Chromium، Gecko و Webkit) به امتیاز 90+٪ در پنج حوزه اصلی تمرکز مشخص شده برای سال دست پیدا کنند. از جمله موارد دیگر، Compat 2021 منجر به ایجاد پایه ای محکم برای ویژگی های قدرتمندی مانند CSS Grid ( 12% استفاده و رشد پیوسته ) و CSS Flexbox ( 77% استفاده ) شد.
و ماه گذشته، اپل، بوکوپ، گوگل، ایگالیا، مایکروسافت و موزیلا به عنوان حامیان گرد هم آمدند تا مشکلات برتر سازگاری مرورگرها را که توسط توسعه دهندگان وب شناسایی شده بود حل کنند و بر روی یک معیار مشترک توافق کنند. نتیجه Interop 2022 است، پروژه ای با هدف ایجاد همگنی بیشتر در پلتفرم. این معیار بر روی 15 حوزه اولویتی تمرکز دارد که توسط توسعه دهندگان به عنوان کلیدی برای بهبود بهره وری آنها شناسایی شده است.
Scoop Insider: کار با همتایان مرورگر ما
با توجه به فیلم Interop 2022، من با رابرت نایمن و فیلیپ یاگنشتد که در این گفتگوها شرکت داشتند، نشستم تا داستان داخلی را به دست بیاورم. در اینجا برش سردبیر از نحوه جمع آوری آن است.
منشأ این ابتکار چیست؟
رابرت: همه چیز از سال 2019 شروع شد، زمانی که ما بررسی MDN DNA 2019 را انجام دادیم. مشکلات سازگاری به وضوح به عنوان مشکل اصلی توسعه دهندگانی که برای وب ایجاد می کنند برجسته شد، و ما جزئیات بسیار بیشتری را در گزارش سازگاری مرورگر MDN 2020 پیگیری کردیم. این به ما اطلاعات کافی و داده های عملی داد تا تلاش Compat 2021 را شروع کنیم، که به نوبه خود منجر به ادامه آن کار و همچنین گسترش این دامنه با Interop 2022 شد.
فیلیپ: همچنین میخواهم به تستهای پلتفرم وب و وضعیت CSS 2021 اشاره کنم. ما همکاری قوی با سایر فروشندگان مرورگر برای آزمایش با استفاده از WPT داشته ایم که به سال ها قبل برمی گردد، و ما واقعاً می خواستیم به آن متمایل شویم. آزمایشهای مربوط به این ویژگیها عمدتاً قبلاً نوشته شده بودند، بنابراین ما فقط باید آزمایشها را مرور میکردیم و برخی پوششهای گمشده را اضافه میکردیم. گوگل روی wpt.fyi سرمایه گذاری زیادی کرده است، اما ما همچنین باید از موزیلا برای موفقیت WPT که امروز است تشکر کنیم. موزیلا البته در بررسیهای DNA MDN نیز نقش مهمی داشت. فراتر از آن ها، وضعیت CSS 2021 نیز وجود دارد. به منظور گردآوری تلاش هایی مانند Interop 2022، ما نیاز به ورودی تازه ای در مورد نیازهای توسعه دهندگان وب داریم، بنابراین ما با نگهدارنده نظرسنجی Sacha کار کردیم تا سؤالات جدیدی در مورد مسائل سازگاری مرورگر ارائه کنیم. این واقعا به ما در فرآیند برنامه ریزی Interop 2022 کمک کرد.
آیا یادگیری یا بازخوردی از Compat 2021 دارید؟
رابرت: اندازهگیری و داشتن امتیازات و بینش در مورد نحوه عملکرد هر موتور مرورگر واقعاً مفید بود، بنابراین میتوانیم پیشرفت را دنبال کنیم و مطمئن شویم که در مورد موضوعاتی که نامشخص بودند یا باید اولویتبندی شوند بحث و بررسی میکنیم. ما همچنین به سرعت متوجه شدیم که "اینتراپ" نام بهتری برای ابتکار عمل است. اصطلاحات سازگاری و قابلیت همکاری معمولاً توسط فروشندگان مرورگر متمایز می شوند، جایی که compat به سازگاری سایت اشاره دارد و interop به دو یا چند مرورگر اشاره دارد که رفتار یکسانی دارند. در آن اصطلاح، این تلاش در مورد قابلیت همکاری است و بنابراین پروژه با آن نامگذاری همسو شده است.
چشم انداز ما در اینجا چیست؟
رابرت: برای باز نگه داشتن وب، تنوع موتورهای مرورگر و رندر بسیار مهم است. متأسفانه، این در حال حاضر برای توسعه دهندگان ما که باید با سطوح مختلف پشتیبانی از ویژگی ها در هر موتور هماهنگ باشند، قیمت بالایی دارد. چشمانداز ما این است که توسعهدهندگان پلتفرم وب را مناسبترین گزینه و جذابترین انتخاب برای نیازهای خود بدانند و به جای صرف زمان زیاد برای حل مسائل قابلیت همکاری، بر ایجاد بهترین تجربیات ممکن تمرکز کنند. و بسیار واضح است که برای رسیدن به این هدف، ویژگیهایی که بیشترین درخواست را دارند باید در تمام موتورهای مرورگر اصلی قرار بگیرند تا واقعاً توسعهدهندگان را قادر به موفقیت در پلتفرم وب کنند.
وقتی مرورگرهایی با اهداف متفاوت (گاهی) در کنار هم قرار میگیرند، چگونه میتوانیم به طور جمعی کارها را جلو ببریم؟
فیلیپ: رویکرد ما این بوده است که به دنبال مناطق مورد علاقه مشترک باشیم، تا آن همکاریهای برد-برد را پیدا کنیم که در آن اهداف تقریباً در یک راستا قرار دارند. و با اولویتبندی تعداد محدودی از چیزها برای کار همزمان، تمرکز را به آن حوزهها میآوریم و سریعتر جلو میرویم و کیفیت بالاتری نسبت به زمانی که صرفاً بهصورت جداگانه کار میکردیم، دریافت میکنیم. این ایده است.
من فکر میکنم مهم است که بدانیم برای این رویکرد مبتنی بر اجماع محدودیتهایی وجود دارد، جایی که اهداف به اندازه کافی همسو نیستند، باید از راه دیگری به جلو حرکت کنیم. گاهی اوقات ارائه شواهد بیشتری از نیازهای توسعهدهنده وب یا کاربران میتواند کمک کند، اما در نهایت فروشندگان مرورگر میتوانند چیزهایی را ارسال کنند که توافق گستردهای ندارند. در بهترین حالت، ارزش این ویژگی توسط توسعهدهندگان وب نشان داده میشود که این ویژگی را امتحان میکنند، متوجه میشوند که این ویژگی نیازهای آنها را برطرف میکند، و از همه مرورگرها درخواست میکنند که ویژگی یکسانی داشته باشند.
با بازگشت به Interop 2022، آیا می بینیم که ویژگی های غیرطراحی یا چیدمانی در مرحله ای وارد خط لوله می شوند؟
فیلیپ: قطعا! Interop 2022 به ویژگیهای استایل و چیدمان محدود نشد، اما در نهایت به شدت به سمت CSS متمایل شد. تا حدی به این دلیل که State of CSS 2021 تازه بود، اما همچنین به این دلیل که توسعه دهندگان وب به ما گفته اند که اینجاست که بیشترین مشکل را با تفاوت بین مرورگرها دارند. حوزههای فوکوس چندگانه، مانند عناصر فرم و گفتگو، فراتر از CSS هستند، و ما همچنین تلاشهایی در زمینه ویرایش APIها و رویدادهای اشارهگر و ماوس داریم. امیدوارم که برای Interop 2023، داده های تازه تری در مورد نیازهای توسعه دهندگان در سرتاسر وب داشته باشیم و از این قبیل ویژگی ها در این تلاش استفاده کنیم.
تغییرات کلیدی آینده
یکی از اهداف این مجموعه این است که توسعه دهندگان را در مورد تغییرات کلیدی آینده آگاه کند. مواردی که برای بهبود تجربه کاربر و قابلیتهای پلتفرم مهم هستند.
جدول زمانی ذکر شده در زیر زمانی است که انتظار داریم این تغییرات رخ دهد. با این حال، ممکن است نسخه های انتشار برای ویژگی ها ممکن است تغییر کند.
کاهش عامل کاربر
هدر User-Agent - و رابطهای JS مرتبط با آن - نه تنها اطلاعات مفید مرورگر و دستگاه را منتقل میکند، بلکه میراثی از اصل و نسب و اطلاعات نادرست را نیز به همراه دارد. مشکل سازتر از عرضه تقریباً بی پایان اشکالات تجزیه رشته UA این است که به صورت غیرفعال برای همه درخواست های ناوبری و منابع فرعی به سرورها ارسال می شود. این تقریباً 10 بیت آنتروپی را نشان می دهد که سرورها می توانند از آن برای ایجاد شناسه های ردیابی پایدار در هنگام حرکت کاربران در وب استفاده کنند.
برنامه فعلی ما کاهش رشته UA موجود با ادامه ارسال نسخه اصلی مرورگر با آنتروپی پایین، نام پلتفرم و قابلیت حمل و نقل ، و منجمد کردن اطلاعات آنتروپی بالا است. برای موارد استفادهای که به اطلاعات بیشتری نسبت به هدر نیاز دارند، از Chrome 89 ، User-Agent Client Hints API را ارسال کردهایم.
ما یک آزمایش اولیه را به مدت 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 جدید توانایی استفاده از فونتها را برای اثرانگشت افزایش نمیدهد، کروم از کاربر میخواهد قبل از اینکه بتواند از API دسترسی به قلم محلی جدید استفاده کند، یک مجوز "local-fonts"
جدید برای یک سایت بدهد.
در آینده، ما قصد داریم قبل از استفاده از هر API دیگری که دسترسی به فونتهای محلی را فراهم میکند، همان مجوز «فنتهای محلی» را بخواهیم.
- جدول زمانی: هدف قرار دادن Chrome 103 (ژوئن'22)
- Call to action: درباره API و نحوه استفاده از آن برای شروع پیاده سازی بیشتر بیاموزید .
کارکرد BFCache با Cache-control: no-store
ما یک فرصت قابل توجه برای بهبود تعداد دفعاتی که حافظه پنهان Back/Forward می تواند مسیریابی فوری به عقب/ جلو را ارائه دهد، شناسایی کرده ایم. این امر مستلزم تغییر در نحوه رفتار BFCache در صفحاتی است که با هدر Cache-control: no-store HTTP ارائه میشوند. ما یک پیشنهاد عمومی داریم که با نظارت بر سیگنالهای مختلف (مثلاً حذف صفحات از BFCache هر زمان که یک کوکی فقط HTTP تغییر میکند)، و حک کردن (مثلاً خطمشی گروه برای مشتریان Enterprise/Edu) برای زمینههای منحصربهفرد، طراحی شده است. این یک فرصت پیچیده اما هیجان انگیز است، و ما دوست داریم بررسی دقیق و بازخورد بیشتری داشته باشیم!
- جدول زمانی: هدف قرار دادن Chrome 104 (22 ژوئیه)، با فرض اینکه هیچ شگفتی بزرگی وجود نداشته باشد.
- فراخوان اقدام: برای جزئیات بیشتر، از جمله نحوه فعال کردن اجرای کار در حال انجام، و راههای به اشتراک گذاشتن بازخورد مانند سناریوهای واقعی که در آن رویکرد ما موانع جدیدی ایجاد میکند، پیشنهاد را ببینید.
از طریق این مجموعه، امیدوارم بتوانم با نزدیکتر کردن آنها به تیم خود و کارشان، به جامعه توسعهدهندگان خود احساس تمرکز و ارتباط بدهم. پس با ما همراه باشید و این فضا را برای به روز رسانی های بیشتر تماشا کنید.
تا آن زمان، وب سایت مبارک.
نظر شما در مورد اولین نسخه The Chrome Dev Insider چیست؟ بازخورد خود را به اشتراک بگذارید .
،توسعه دهندگان اغلب به ما می گویند که همگام شدن با تغییرات در وب و درک دلیل رخ دادن این تغییرات دشوار است. امروز، مجموعه جدیدی به نام Chrome Dev Insider را راهاندازی میکنیم که در آن (1) چیزهای جالب و ارزشمند، (2) بینشی درباره نحوه تصمیمگیری درباره یک موضوع کلیدی (مثلاً تغییر FLOC ) یا نزدیک شدن به کارمان با اکوسیستم (مثلاً Interop 2022 ) و (3) هر چیز واقعاً مهمی (برای مثال برای تغییراتی که کاربر باید بدانید) را به اشتراک میگذاریم .
همانطور که ما آنچه را که روی آن کار می کنیم به اشتراک می گذاریم، در چارچوب چهار اولویت ما برای سال 2022 خواهد بود:
- فعال کردن تجربیات کاربر لذت بخش: همه چیز را برای کاربران بصری کنید. چه عملکرد، معاملات، هویت یا انتقال.
- پیشرفت قابلیتهای وب: از نقش در حال تکامل وب از یک پلتفرم مصرف محتوا، به بستری برای طیف گستردهای از تجربیات، از جمله تجربیاتی که نیاز به سیستمعامل عمیق و ادغام در سطح سختافزار دارند، پشتیبانی کنید.
- ساده سازی توسعه وب: تصمیم گیری را آسان تر کنید و بهره وری توسعه دهندگان را بهبود بخشید.
- بهبود حریم خصوصی وب: به انتظارات کاربران وب برای محافظت بهتر از حریم خصوصی داده ها در مواجهه با پیچیدگی روزافزون توسعه دهندگان در ردیابی و هدف گذاری خدمت کنید.
در اخبار: Interop 2022
همانطور که نقشههای راه خود را برنامهریزی میکنیم، به بازخورد توسعهدهندگان نگاه میکنیم تا از جمله موارد دیگر، نکات و نیازهای اصلی توسعهدهندگان وب را درک کنیم. یک موضوع کلیدی که به طور مکرر نشان داده می شود سازگاری مرورگر است که باعث می شود تجربه در مرورگرها یکسان عمل کند. در طول سال گذشته، ما با اکوسیستم کار کرده ایم تا به این موضوع به عنوان بخشی از اولویت خود برای "ساده سازی توسعه وب" بپردازیم.
سال گذشته، مایکروسافت، کروم و بازیکنان اکوسیستم Compat 2021 را معرفی کردند که منجر شد تمام موتورهای مرورگر محبوب (Chromium، Gecko و Webkit) به امتیاز 90+٪ در پنج حوزه اصلی تمرکز مشخص شده برای سال دست پیدا کنند. از جمله موارد دیگر، Compat 2021 منجر به ایجاد پایه ای محکم برای ویژگی های قدرتمندی مانند CSS Grid ( 12% استفاده و رشد پیوسته ) و CSS Flexbox ( 77% استفاده ) شد.
و ماه گذشته، اپل، بوکوپ، گوگل، ایگالیا، مایکروسافت و موزیلا به عنوان حامیان گرد هم آمدند تا مشکلات برتر سازگاری مرورگرها را که توسط توسعه دهندگان وب شناسایی شده بود حل کنند و بر روی یک معیار مشترک توافق کنند. نتیجه Interop 2022 است، پروژه ای با هدف ایجاد همگنی بیشتر در پلتفرم. این معیار بر روی 15 حوزه اولویتی تمرکز دارد که توسط توسعه دهندگان به عنوان کلیدی برای بهبود بهره وری آنها شناسایی شده است.
Scoop Insider: کار با همتایان مرورگر ما
با توجه به فیلم Interop 2022، من با رابرت نایمن و فیلیپ یاگنشتد که در این گفتگوها شرکت داشتند، نشستم تا داستان داخلی را به دست بیاورم. در اینجا برش سردبیر از نحوه جمع آوری آن است.
منشأ این ابتکار چیست؟
رابرت: همه چیز از سال 2019 شروع شد، زمانی که ما بررسی MDN DNA 2019 را انجام دادیم. مشکلات سازگاری به وضوح به عنوان مشکل اصلی توسعه دهندگانی که برای وب ایجاد می کنند برجسته شد، و ما جزئیات بسیار بیشتری را در گزارش سازگاری مرورگر MDN 2020 پیگیری کردیم. این به ما اطلاعات کافی و داده های عملی داد تا تلاش Compat 2021 را شروع کنیم، که به نوبه خود منجر به ادامه آن کار و همچنین گسترش این دامنه با Interop 2022 شد.
فیلیپ: همچنین میخواهم به تستهای پلتفرم وب و وضعیت CSS 2021 اشاره کنم. ما همکاری قوی با سایر فروشندگان مرورگر برای آزمایش با استفاده از WPT داشته ایم که به سال ها قبل برمی گردد، و ما واقعاً می خواستیم به آن متمایل شویم. آزمایشهای مربوط به این ویژگیها عمدتاً قبلاً نوشته شده بودند، بنابراین ما فقط باید آزمایشها را مرور میکردیم و برخی پوششهای گمشده را اضافه میکردیم. گوگل روی wpt.fyi سرمایه گذاری زیادی کرده است، اما ما همچنین باید از موزیلا برای موفقیت WPT که امروز است تشکر کنیم. موزیلا البته در بررسیهای DNA MDN نیز نقش مهمی داشت. فراتر از آن ها، وضعیت CSS 2021 نیز وجود دارد. به منظور گردآوری تلاش هایی مانند Interop 2022، ما نیاز به ورودی تازه ای در مورد نیازهای توسعه دهندگان وب داریم، بنابراین ما با نگهدارنده نظرسنجی Sacha کار کردیم تا سؤالات جدیدی در مورد مسائل سازگاری مرورگر ارائه کنیم. این واقعا به ما در فرآیند برنامه ریزی Interop 2022 کمک کرد.
آیا یادگیری یا بازخوردی از Compat 2021 دارید؟
رابرت: اندازهگیری و داشتن امتیازات و بینش در مورد نحوه عملکرد هر موتور مرورگر واقعاً مفید بود، بنابراین میتوانیم پیشرفت را دنبال کنیم و مطمئن شویم که در مورد موضوعاتی که نامشخص بودند یا باید اولویتبندی شوند بحث و بررسی میکنیم. ما همچنین به سرعت متوجه شدیم که "اینتراپ" نام بهتری برای ابتکار عمل است. اصطلاحات سازگاری و قابلیت همکاری معمولاً توسط فروشندگان مرورگر متمایز می شوند، جایی که compat به سازگاری سایت اشاره دارد و interop به دو یا چند مرورگر اشاره دارد که رفتار یکسانی دارند. در آن اصطلاح، این تلاش در مورد قابلیت همکاری است و بنابراین پروژه با آن نامگذاری همسو شده است.
چشم انداز ما در اینجا چیست؟
رابرت: برای باز نگه داشتن وب، تنوع موتورهای مرورگر و رندر بسیار مهم است. متأسفانه، این در حال حاضر برای توسعه دهندگان ما که باید با سطوح مختلف پشتیبانی از ویژگی ها در هر موتور هماهنگ باشند، قیمت بالایی دارد. چشمانداز ما این است که توسعهدهندگان پلتفرم وب را مناسبترین گزینه و جذابترین انتخاب برای نیازهای خود بدانند و به جای صرف زمان زیاد برای حل مسائل قابلیت همکاری، بر ایجاد بهترین تجربیات ممکن تمرکز کنند. و بسیار واضح است که برای رسیدن به این هدف، ویژگیهایی که بیشترین درخواست را دارند باید در تمام موتورهای مرورگر اصلی قرار بگیرند تا واقعاً توسعهدهندگان را قادر به موفقیت در پلتفرم وب کنند.
وقتی مرورگرهایی با اهداف متفاوت (گاهی) در کنار هم قرار میگیرند، چگونه به طور جمعی کارها را به جلو پیش ببریم؟
فیلیپ: رویکرد ما این بوده است که به دنبال مناطق مورد علاقه مشترک باشیم، تا آن همکاریهای برد-برد را پیدا کنیم که در آن اهداف تقریباً در یک راستا قرار دارند. و با اولویتبندی تعداد محدودی از چیزها برای کار همزمان، تمرکز را به آن حوزهها میآوریم و سریعتر جلو میرویم و کیفیت بالاتری نسبت به زمانی که صرفاً بهصورت جداگانه کار میکردیم، دریافت میکنیم. این ایده است.
من فکر میکنم مهم است که بدانیم برای این رویکرد مبتنی بر اجماع محدودیتهایی وجود دارد، جایی که اهداف به اندازه کافی همسو نیستند، باید از راه دیگری به جلو حرکت کنیم. گاهی اوقات ارائه شواهد بیشتری از نیازهای توسعهدهنده وب یا کاربران میتواند کمک کند، اما در نهایت فروشندگان مرورگر میتوانند چیزهایی را ارسال کنند که توافق گستردهای ندارند. در بهترین حالت، ارزش این ویژگی توسط توسعهدهندگان وب نشان داده میشود که این ویژگی را امتحان میکنند، متوجه میشوند که این ویژگی نیازهای آنها را برطرف میکند، و از همه مرورگرها درخواست میکنند که ویژگی یکسانی داشته باشند.
با بازگشت به Interop 2022، آیا می بینیم که ویژگی های غیرطراحی یا چیدمانی در مرحله ای وارد خط لوله می شوند؟
فیلیپ: قطعا! Interop 2022 به ویژگیهای استایل و چیدمان محدود نشد، اما در نهایت به شدت به سمت CSS متمایل شد. تا حدی به این دلیل که State of CSS 2021 تازه بود، اما همچنین به این دلیل که توسعه دهندگان وب به ما گفته اند که اینجاست که بیشترین مشکل را با تفاوت بین مرورگرها دارند. حوزههای فوکوس چندگانه، مانند عناصر فرم و گفتگو، فراتر از CSS هستند، و ما همچنین تلاشهایی در زمینه ویرایش APIها و رویدادهای اشارهگر و ماوس داریم. امیدوارم که برای Interop 2023، داده های تازه تری در مورد نیازهای توسعه دهندگان در سرتاسر وب داشته باشیم و از این قبیل ویژگی ها در این تلاش استفاده کنیم.
تغییرات کلیدی آینده
یکی از اهداف این مجموعه این است که توسعه دهندگان را در مورد تغییرات کلیدی آینده آگاه کند. مواردی که برای بهبود تجربه کاربر و قابلیتهای پلتفرم مهم هستند.
جدول زمانی ذکر شده در زیر زمانی است که انتظار داریم این تغییرات رخ دهد. با این حال، ممکن است نسخه های انتشار برای ویژگی ها ممکن است تغییر کند.
کاهش عامل کاربر
هدر User-Agent - و رابطهای JS مرتبط با آن - نه تنها اطلاعات مفید مرورگر و دستگاه را منتقل میکند، بلکه میراثی از اصل و نسب و اطلاعات نادرست را نیز به همراه دارد. مشکل سازتر از عرضه تقریباً بی پایان اشکالات تجزیه رشته UA این است که به صورت غیرفعال برای همه درخواست های ناوبری و منابع فرعی به سرورها ارسال می شود. این تقریباً 10 بیت آنتروپی را نشان می دهد که سرورها می توانند از آن برای ایجاد شناسه های ردیابی پایدار در هنگام حرکت کاربران در وب استفاده کنند.
برنامه فعلی ما کاهش رشته UA موجود با ادامه ارسال نسخه اصلی مرورگر با آنتروپی پایین، نام پلتفرم و قابلیت حمل و نقل ، و منجمد کردن اطلاعات آنتروپی بالا است. برای موارد استفادهای که به اطلاعات بیشتری نسبت به هدر نیاز دارند، از Chrome 89 ، User-Agent Client Hints API را ارسال کردهایم.
ما یک آزمایش اولیه را به مدت 6 ماه برای آزمایش و بازخورد انجام دادیم و خوشحال بودیم که با وجود داشتن بیش از 200 شرکتکننده، بازخوردی در رابطه با شکستگی دریافت نکردیم.
- جدول زمانی: در Chrome 101، ما در حال حرکت به سمت چیزی هستیم که فاز 4 می نامیم: کاهش اطلاعات
MINOR.BUILD.PATCH
در رشته UA به0.0.0
. و ما همچنان به سایتها فرصت میدهیم تا برای مراحل 5 و بعد از آن آماده شوند. ما همچنین خطمشیهای سازمانی را برای انصراف از این تغییرات ایجاد کردهایم و تا Chrome 113 یک دوره آزمایشی منسوخ را اجرا خواهیم کرد تا به سایتها زمان بیشتری برای آماده شدن برای این تغییرات بدهیم . - تماس با اقدام: سایت خود را به نکات مشتری UA مهاجرت کنید یا در محاکمه استهلاک شرکت کنید .
فونت های محلی به API دسترسی پیدا می کنند
Chrome در حال راه اندازی API دسترسی به قلم محلی است. اگرچه سایت ها مدتهاست که قادر به استفاده از فونت های محلی هستند ، این API لیست فونت های محلی را ذکر می کند و به خود داده های قلم دسترسی می دهد. این قابلیت به کاربران امکان استفاده از تمام فونت های خود را با طراحی مبتنی بر وب و سایر برنامه ها می دهد.
فونت های محلی مدتهاست که به عنوان یک بردار اثر انگشت شناخته می شوند. اگرچه این API جدید توانایی استفاده از فونت ها را برای اثر انگشت افزایش نمی دهد ، Chrome نیاز دارد که یک کاربر قبل از استفاده از API جدید Font Access ، مجوز جدید "local-fonts"
برای یک سایت اعطا کند.
در آینده ، ما قصد داریم قبل از استفاده از هر API دیگری که دسترسی به فونت های محلی را فراهم می کند ، همان اجازه "فونت های محلی" اعطا شود.
- جدول زمانی: هدف قرار دادن Chrome 103 (ژوئن 22)
- فراخوانی به عمل: در مورد API و نحوه استفاده از آن برای شروع اجرای اطلاعات بیشتر بدانید .
کار کردن bfcache با Cache-control: no-store
ما فرصتی مهم برای بهبود چند بار حافظه نهان پشتی/رو به جلو می توانند ناوبری های فوری/رو به جلو را ارائه دهیم. این امر نیاز به تغییر در نحوه رفتار BFCache در صفحات ارائه شده با حافظه نهان: هدر HTTP بدون فروشگاه دارد . ما یک پیشنهاد عمومی داریم که برای جلوگیری از شگفتی های قابل توجه با نظارت بر سیگنال های مختلف (به عنوان مثال بیرون کشیدن صفحات از BFCache هر زمان که یک کوکی فقط HTTP تغییر کند) و حک کردن (به عنوان مثال خط مشی گروه برای مشتریان شرکت/EDU) برای زمینه های منحصر به فرد. این یک فرصت پیچیده اما هیجان انگیز است ، و ما عاشق بررسی و بازخورد اضافی هستیم!
- جدول زمانی: هدف قرار دادن Chrome 104 (ژوئیه 22) ، با فرض هیچ شگفتی عمده.
- فراخوانی به عمل: برای جزئیات بیشتر به این پیشنهاد مراجعه کنید ، از جمله نحوه امکان اجرای کار در حال پیشرفت و راه هایی برای به اشتراک گذاشتن بازخورد مانند سناریوهای واقعی که در آن رویکرد ما موانع جدیدی ایجاد می کند.
از طریق این سریال ، امیدوارم که با نزدیک تر کردن آنها به تیم و کارشان ، به جامعه توسعه دهنده خود حس تمرکز و ارتباط بدهیم. بنابراین با ما همراه باشید و برای به روزرسانی های بیشتر این فضا را تماشا کنید.
تا آن زمان ، توری مبارک.
نظر شما درباره نسخه اول Chrome Dev Insider چیست؟ بازخورد خود را به اشتراک بگذارید .
،توسعه دهندگان غالباً به ما می گویند که ادامه کار با تغییرات در وب و درک اینکه چرا این تغییرات اتفاق می افتد دشوار است. امروز ، ما در حال شروع یک سری جدید به نام Chrome Dev Insider هستیم که در آن ما به اشتراک می گذاریم (1) چه چیزی جالب و خبره است ، (2) بینشی در مورد چگونگی تصمیم گیری در مورد یک موضوع کلیدی (برای مثال تغییر FLOC ) یا نزدیک شدن به کار خود با اکوسیستم (به عنوان مثال Interop 2022 ) و (3) هر چیز مهمی که شما باید بدانید (برای مثال تغییرات در رشته های کاربر ).
همانطور که ما آنچه را که روی آن کار می کنیم به اشتراک می گذاریم ، در زمینه چهار اولویت ما برای سال 2022 خواهد بود:
- فعال کردن تجربیات لذت بخش کاربر: چیزها را برای کاربران بصری کنید. چه عملکرد ، معاملات ، هویت یا انتقال باشد.
- پیشبرد قابلیت های وب: از نقش در حال تحول وب از بودن یک بستر مصرف محتوا ، به بستر طیف گسترده ای از تجربیات از جمله مواردی که نیاز به ادغام های عمیق سیستم عامل و سخت افزار دارند ، پشتیبانی کنید.
- ساده سازی توسعه وب: تصمیم گیری را آسان تر کرده و بهره وری توسعه دهنده را بهبود بخشید.
- بهبود حریم خصوصی وب: به انتظار کاربران وب برای حمایت از حریم خصوصی داده های بهتر در مواجهه با پیشرفت های در حال افزایش توسعه دهنده در ردیابی و هدف گذاری ، خدمت کنید.
در اخبار: Interop 2022
همانطور که نقشه راه های خود را برنامه ریزی می کنیم ، به بازخورد توسعه دهنده نگاه می کنیم تا نکات و نیازهای برتر درد توسعه دهندگان وب را از جمله موارد دیگر درک کنیم. یک موضوع کلیدی که بارها و بارها نشان می دهد سازگاری مرورگر است و باعث می شود یک تجربه یکسان در مرورگرها باشد. طی یک سال گذشته ، ما با اکوسیستم همکاری کرده ایم تا به عنوان بخشی از اولویت ما برای "ساده سازی توسعه وب" به این موضوع بپردازیم.
سال گذشته ، بازیکنان مایکروسافت ، کروم و اکوسیستم COMPAT 2021 را اعلام کردند که منجر به تمام موتورهای مرورگر محبوب (Chromium ، Gecko و WebKit) شد و در پنج منطقه تمرکز اصلی که برای سال مشخص شده اند ، به نمره 90+٪ رسیده اند. از جمله موارد دیگر ، COMPAT 2021 منجر به ایجاد یک پایه محکم برای ویژگی های قدرتمند مانند شبکه CSS ( 12 ٪ استفاده و به طور پیوسته در حال رشد ) و CSS Flexbox ( 77 ٪ استفاده ) شد.
و ماه گذشته ، اپل ، بوکوپ ، گوگل ، ایگالیا ، مایکروسافت و موزیلا به عنوان هواداران جمع شدند تا مسائل سازگاری برتر مرورگرها را که توسط توسعه دهندگان وب مشخص شده اند ، حل کنند و در مورد معیار مشترک توافق کنند. نتیجه آن Interop 2022 است ، پروژه ای با هدف آوردن همگن بیشتر به این سکو. این معیار در 15 حوزه اولویت دار که توسط توسعه دهندگان به عنوان کلید بهبود بهره وری آنها مشخص شده است ، متمرکز است.
Scoop Insider: کار با همسالان مرورگر ما
با توجه به Interop 2022 Top Mind ، من با رابرت نیان و فیلیپ ژگنستد که در این مکالمات شرکت کرده اند ، نشسته ام تا داستان درون خود را بدست آورم. در اینجا برش سردبیر از نحوه جمع شدن آن آورده شده است.
پیدایش این ابتکار چیست؟
رابرت: همه این موارد در سال 2019 آغاز شد ، هنگامی که ما بررسی MDN DNA 2019 را انجام دادیم. مسائل سازگاری به وضوح به عنوان اصلی ترین مشکل برای توسعه دهندگان برای ایجاد وب برجسته بود ، و ما در گزارش سازگاری مرورگر MDN 2020 جزئیات بسیار بیشتری را دنبال کردیم. این به ما اطلاعات کافی و داده های عملی را برای شروع تلاش سازمانی 2021 به ما داد ، که به نوبه خود منجر به ادامه کار و همچنین گسترش آن دامنه با Interop 2022 شد.
فیلیپ: من همچنین می خواهم به آزمونهای پلت فرم و وضعیت CSS 2021 اشاره کنم. ما با سایر فروشندگان مرورگر در آزمایش با استفاده از WPT که سالها به عقب برگشته ایم ، همکاری شدیدی داشته ایم و واقعاً می خواستیم به آن تکیه دهیم. آزمایشات این ویژگی ها بیشتر قبلاً نوشته شده بود ، بنابراین ما فقط نیاز به بررسی تست ها و اضافه کردن برخی از پوشش های مفقود شده داشتیم. Google سرمایه گذاری زیادی در WPT.FYI کرده است ، اما ما همچنین Mozilla را داریم که از WPT موفقیتی که امروز به دست می آورند ، تشکر می کنیم. البته موزیلا نیز در نظرسنجی های DNA MDN دست بزرگی داشت. فراتر از این ، وضعیت CSS 2021 نیز وجود دارد. برای اینکه تلاش کنیم مانند Interop 2022 ، ما به نیازهای تازه توسعه دهنده وب نیاز داریم ، بنابراین ما با نگهدارنده نظرسنجی Sacha کار کردیم تا برخی از سؤالات جدید در مورد مسائل سازگاری مرورگر را در بر بگیرد. این واقعاً به ما در روند برنامه ریزی Interop 2022 کمک کرد.
یادگیری یا بازخورد از سازگاری 2021؟
رابرت: اندازه گیری و داشتن نمرات و بینش در مورد نحوه انجام هر موتور مرورگر واقعاً مفید بود ، بنابراین می توانیم پیشرفت را دنبال کنیم و مطمئن شویم که در مورد موضوعاتی که نامشخص بودند یا نیاز به اولویت بندی داشتند ، بحث کنیم و رسیدگی کنیم. ما همچنین به سرعت فهمیدیم که "Interop" نام بهتری برای ابتکار عمل است. اصطلاحات سازگاری و قابلیت همکاری به طور معمول توسط فروشندگان مرورگر متمایز می شوند ، جایی که سازگار به سازگاری سایت است و Interop به دو یا چند مرورگر که یکسان رفتار می کنند اشاره دارد. در این اصطلاحات ، این تلاش در مورد قابلیت همکاری است و بنابراین این پروژه با آن نامگذاری هماهنگ شده است.
دیدگاه ما در اینجا چیست؟
رابرت: برای باز نگه داشتن وب ، مرورگر و تنوع موتور رندر بسیار مهم است. متأسفانه ، این در حال حاضر برای توسعه دهندگان ما که باید از سطح های مختلف پشتیبانی از ویژگی های موجود در هر موتور استفاده کنند ، قیمت بالایی دارند. چشم انداز ما این است که توسعه دهندگان پلت فرم وب را به عنوان مناسب ترین گزینه و جذاب ترین انتخاب برای نیازهای خود می دانند و می توانند به جای گذراندن زمان زیادی برای کار در مورد مسائل مربوط به قابلیت همکاری ، بر ساختن بهترین تجربیات ممکن تمرکز کنند. و کاملاً واضح است که برای رسیدن به آن هدف ، بیشترین ویژگی ها نیاز به فرود در تمام موتورهای مرورگر اصلی دارند تا واقعاً توسعه دهندگان را قادر به موفقیت در پلتفرم وب کنند.
چگونه می توانیم به طور جمعی مسائل را به جلو سوق دهیم وقتی مرورگرها با (بعضی اوقات) اهداف مختلف با هم جمع می شوند؟
فیلیپ: رویکرد ما این بوده است که به دنبال مناطقی با علاقه مشترک باشیم ، تا آن همکاری های برد-برد را پیدا کنیم که اهداف در حال حاضر تقریباً تراز شده اند. و با اولویت بندی تعداد محدودی از مواردی که باید در همان زمان کار کنند ، ما به آن مناطق تمرکز می کنیم و سریعتر حرکت می کنیم و اگر به طور جداگانه کار کنیم ، از کیفیت بالاتر استفاده می کنیم. این ایده است.
من فکر می کنم مهم است که تشخیص دهیم که محدودیت هایی برای این رویکرد مبتنی بر اجماع وجود دارد ، جایی که اهداف به اندازه کافی تراز نشده اند ، ما باید به روش دیگری به جلو حرکت کنیم. بعضی اوقات ارائه شواهد بیشتر در مورد توسعه دهنده وب یا نیازهای کاربر می تواند کمک کند ، اما در نهایت فروشندگان مرورگر می توانند چیزهایی را که توافق گسترده ای ندارند ارسال کنند. در بهترین حالت ، ارزش این ویژگی توسط توسعه دهندگان وب که این ویژگی را امتحان می کنند ، نشان می دهد که نیازهای آنها را حل می کند و در همه مرورگرها از همان ویژگی درخواست می کند.
با بازگشت به Interop 2022 ، آیا می بینیم ویژگی های غیر طراحی یا طرح بندی در برخی از نقاط وارد خط لوله می شوند؟
فیلیپ: مطلقاً! Interop 2022 محدود به ویژگی های یک ظاهر طراحی شده و چیدمان نبود ، اما در نهایت تکیه زیادی به سمت CSS کرد. تا حدودی به این دلیل که وضعیت CSS 2021 تازه بود ، بلکه به این دلیل است که توسعه دهندگان وب به ما گفته اند که در اینجا جایی است که آنها با اختلافات بین مرورگرها بیشترین مشکل را دارند. مناطق متمرکز چندگانه ، مانند فرم و عناصر گفتگو ، فراتر از CSS است ، و ما همچنین در مورد ویرایش API ها و نشانگر و ماوس تلاش های تحقیقاتی انجام می دهیم. من امیدوارم که برای Interop 2023 ، ما داده های تازه تری در مورد نیازهای توسعه دهنده در سراسر وب داشته باشیم و چنین ویژگی های بیشتری را در این تلاش درج کنیم.
تغییرات کلیدی آینده
یکی از اهداف این سریال این است که به توسعه دهندگان در مورد تغییرات کلیدی آینده پیش بروید. مواردی که برای بهبود تجربه کاربر و قابلیت های پلتفرم مهم هستند.
جدول زمانی ذکر شده در زیر زمانی است که انتظار داریم این تغییرات اتفاق بیفتد. با این حال ، ممکن است نسخه های انتشار برای ویژگی ها تغییر کنند.
کاهش عامل
هدر کاربر عامل و رابط های JS مرتبط با آن-نه تنها مرورگر و اطلاعات مربوط به دستگاه را انتقال می دهد ، بلکه میراثی از اصل و نسب و اطلاعات نادرست را نیز به همراه دارد. مشکل ساز تر از عرضه نزدیک بی پایان اشکالات تجزیه و تحلیل رشته UA ، این واقعیت است که منفعلانه برای کلیه درخواست های ناوبری و منابع فرعی به سرورها ارسال می شود. این تقریباً 10 بیت آنتروپی را نشان می دهد که سرورها می توانند برای ساخت شناسه های ردیابی پایدار به عنوان کاربران در وب حرکت کنند.
برنامه فعلی ما کاهش رشته UA موجود با ادامه حمل و نقل مرورگر کم آنتروپی ، نام پلتفرم و بسیج ، انجماد اطلاعات آنتروپی بالا است. برای مواردی که نیاز به اطلاعات اضافی نسبت به عنوان در هدر دارد ، ما از Chrome 89 به API مشتری API در حال حمل و نقل مشتری API هستیم.
ما به مدت 6 ماه برای آزمایش و بازخورد یک محاکمه مبدا انجام دادیم و خوشحال شدیم که علی رغم داشتن بیش از 200 شرکت کننده ، هیچ گونه بازخوردی در رابطه با شکستگی دریافت نکردیم.
- جدول زمانی: در Chrome 101 ، ما با آنچه که فاز 4 می نامیم به جلو حرکت می کنیم : کاهش اطلاعات
MINOR.BUILD.PATCH
در رشته UA به0.0.0
. و ما همچنان به سایت ها می خواهیم و زمان آماده سازی برای مراحل 5 و بعد از آن را می دهیم. ما همچنین سیاست های سازمانی را برای امتناع از این تغییرات ایجاد کرده ایم و تا زمانی که Chrome 113 به سایت ها فرصت بیشتری بدهد ، یک آزمایش استهلاک را انجام می دهیم. - تماس با اقدام: سایت خود را به نکات مشتری UA مهاجرت کنید یا در محاکمه استهلاک شرکت کنید .
فونت های محلی به API دسترسی پیدا می کنند
Chrome در حال راه اندازی API دسترسی به قلم محلی است. اگرچه سایت ها مدتهاست که قادر به استفاده از فونت های محلی هستند ، این API لیست فونت های محلی را ذکر می کند و به خود داده های قلم دسترسی می دهد. این قابلیت به کاربران امکان استفاده از تمام فونت های خود را با طراحی مبتنی بر وب و سایر برنامه ها می دهد.
فونت های محلی مدتهاست که به عنوان یک بردار اثر انگشت شناخته می شوند. اگرچه این API جدید توانایی استفاده از فونت ها را برای اثر انگشت افزایش نمی دهد ، Chrome نیاز دارد که یک کاربر قبل از استفاده از API جدید Font Access ، مجوز جدید "local-fonts"
برای یک سایت اعطا کند.
در آینده ، ما قصد داریم قبل از استفاده از هر API دیگری که دسترسی به فونت های محلی را فراهم می کند ، همان اجازه "فونت های محلی" اعطا شود.
- جدول زمانی: هدف قرار دادن Chrome 103 (ژوئن 22)
- فراخوانی به عمل: در مورد API و نحوه استفاده از آن برای شروع اجرای اطلاعات بیشتر بدانید .
کار کردن bfcache با Cache-control: no-store
ما فرصتی مهم برای بهبود چند بار حافظه نهان پشتی/رو به جلو می توانند ناوبری های فوری/رو به جلو را ارائه دهیم. این امر نیاز به تغییر در نحوه رفتار BFCache در صفحات ارائه شده با حافظه نهان: هدر HTTP بدون فروشگاه دارد . ما یک پیشنهاد عمومی داریم که برای جلوگیری از شگفتی های قابل توجه با نظارت بر سیگنال های مختلف (به عنوان مثال بیرون کشیدن صفحات از BFCache هر زمان که یک کوکی فقط HTTP تغییر کند) و حک کردن (به عنوان مثال خط مشی گروه برای مشتریان شرکت/EDU) برای زمینه های منحصر به فرد. این یک فرصت پیچیده اما هیجان انگیز است ، و ما عاشق بررسی و بازخورد اضافی هستیم!
- جدول زمانی: هدف قرار دادن Chrome 104 (ژوئیه 22) ، با فرض هیچ شگفتی عمده.
- فراخوانی به عمل: برای جزئیات بیشتر به این پیشنهاد مراجعه کنید ، از جمله نحوه امکان اجرای کار در حال پیشرفت و راه هایی برای به اشتراک گذاشتن بازخورد مانند سناریوهای واقعی که در آن رویکرد ما موانع جدیدی ایجاد می کند.
از طریق این سریال ، امیدوارم که با نزدیک تر کردن آنها به تیم و کارشان ، به جامعه توسعه دهنده خود حس تمرکز و ارتباط بدهیم. بنابراین با ما همراه باشید و برای به روزرسانی های بیشتر این فضا را تماشا کنید.
تا آن زمان ، توری مبارک.
نظر شما درباره نسخه اول Chrome Dev Insider چیست؟ بازخورد خود را به اشتراک بگذارید .