باز کردن قابلیت های جدید برای وب

وب یک پلتفرم شگفت‌انگیز است که به کاربران سراسر جهان دسترسی پیدا می‌کند - اساساً در هر دستگاهی. استفاده از آن آسان است و به اشتراک گذاری آن آسان است. چیزی برای نصب نیست اما مهمتر از همه، این یک اکوسیستم باز است که هر کسی می تواند از آن استفاده کند یا بر روی آن بسازد.

برخی از برنامه ها هستند که امروزه ساخت و ارائه در وب باز امکان پذیر نیست. ما این را شکاف برنامه می نامیم. شکاف بین آنچه در وب امکان پذیر است و آنچه در بومی امکان پذیر است. ما می خواهیم این شکاف را ببندیم. ما معتقدیم که برنامه های وب باید هر کاری را که برنامه های بومی می توانند انجام دهند، انجام دهند.

چگونه این قابلیت های جدید را طراحی و اجرا خواهیم کرد؟

نمودار فرآیند قابلیت ها

ما این فرآیند را توسعه دادیم تا امکان طراحی و توسعه قابلیت‌های پلتفرم وب جدید را فراهم کنیم که نیازهای توسعه‌دهندگان را به سرعت، در فضای باز و مهم‌تر از همه در چارچوب فرآیند استانداردهای موجود برآورده می‌کند. تفاوتی با نحوه توسعه سایر ویژگی های پلتفرم وب ندارد، اما بر بازخورد توسعه دهندگان تأکید دارد.

بازخورد برنامه‌نویس برای کمک به ما برای اطمینان از ارسال ویژگی‌های مناسب حیاتی است، اما وقتی در اواخر فرآیند ارائه شود، تغییر مسیر ممکن است سخت باشد. به همین دلیل است که ما شروع به درخواست بازخورد زودتر می کنیم. هنگامی که بازخورد فنی و مورد استفاده در مراحل اولیه به دست می‌آید، تصحیح یا حتی توقف توسعه آسان‌تر می‌شود، بدون اینکه ویژگی‌های بد فکر شده یا بد پیاده‌سازی شده باشند. ویژگی‌هایی که در WICG توسعه می‌یابند کاملاً مشخص نیستند و نظرات شما می‌تواند تفاوت بزرگی در نحوه تکامل آنها ایجاد کند.

شایان ذکر است که بسیاری از ایده ها هرگز از مرحله آزمایشی توضیح دهنده یا مبدأ عبور نمی کنند. هدف این فرآیند ارسال ویژگی مناسب است. یعنی باید سریع یاد بگیریم و تکرار کنیم. عدم ارسال یک ویژگی به دلیل اینکه نیاز توسعه دهنده را برطرف نمی کند، مشکلی ندارد. برای فعال کردن این یادگیری، ما از فرآیند زیر استفاده کرده‌ایم (اگرچه اغلب به دلیل بازخورد، مراحل بعدی مرتب می‌شوند):

نیاز توسعه دهنده را شناسایی کنید

اولین قدم شناسایی و درک نیاز توسعه دهنده است. توسعه دهنده در تلاش است تا چه کاری انجام دهد؟ چه کسی از آن استفاده خواهد کرد؟ آنها امروز چگونه این کار را انجام می دهند؟ و چه مشکلات یا ناامیدی هایی با این قابلیت جدید برطرف می شود. به طور معمول، اینها به عنوان درخواست ویژگی از سوی توسعه دهندگان، اغلب از طریق اشکالات ثبت شده در bugs.chromium.org وارد می شوند.

توضیح دهنده ایجاد کنید

پس از شناسایی نیاز به یک قابلیت جدید، یک توضیح دهنده ایجاد کنید، که اساساً یک سند طراحی است که برای توضیح مشکل است، همراه با چند کد نمونه که نشان می دهد چگونه API ممکن است کار کند. توضیح دهنده یک سند طراحی زنده است که با تکامل قابلیت جدید، تکرارهای سنگینی را پشت سر خواهد گذاشت.

بازخورد دریافت کنید و در توضیح دهنده تکرار کنید

هنگامی که توضیح دهنده سطح معقولی از وضوح داشته باشد، وقت آن است که آن را عمومی کنید، بازخورد را درخواست کنید، و طرح را تکرار کنید. این فرصتی است برای تأیید قابلیت جدید که نیازهای توسعه دهندگان را برآورده می کند و به روشی که آنها انتظار دارند کار می کند. این همچنین فرصتی است برای جمع آوری حمایت عمومی و تأیید اینکه واقعاً به این قابلیت نیاز است.

طرح را به یک مشخصات منتقل کنید و تکرار کنید

هنگامی که توضیح دهنده در وضعیت خوبی قرار گرفت، کار طراحی به یک مشخصات رسمی تبدیل می شود و با توسعه دهندگان و سایر فروشندگان مرورگر برای تکرار و بهبود طرح کار می کند.

سپس، هنگامی که طراحی شروع به تثبیت کرد، ما معمولاً از یک آزمایش اولیه برای آزمایش پیاده‌سازی استفاده می‌کنیم. آزمایش‌های مبدأ به شما امکان می‌دهد ویژگی‌های جدید را با کاربران واقعی امتحان کنید و در مورد پیاده‌سازی آن بازخورد بدهید. این بازخورد دنیای واقعی به شکل‌دهی و اعتبار بخشیدن به طرح کمک می‌کند، و اطمینان حاصل می‌کند که قبل از تبدیل شدن به یک استاندارد، آن را درست انجام می‌دهیم.

ارسال کنید

در نهایت، هنگامی که آزمایش اولیه کامل شد، مشخصات نهایی شد، و سایر مراحل راه اندازی تکمیل شد، زمان ارسال آن به حالت پایدار فرا می رسد.

طراحی برای امنیت، حریم خصوصی و اعتماد کاربر

برخی از این ویژگی ها ممکن است در ابتدا ترسناک به نظر برسند، به خصوص با توجه به نحوه پیاده سازی آنها در بومی. اما وب ذاتا امن تر از بومی است، باز کردن یک صفحه وب نباید ترسناک باشد.

هرگز نباید به هیچ چیز به طور پیش فرض اجازه دسترسی داده شود، بلکه به مدل مجوزی تکیه کنید که کاربر را در کنترل کامل قرار می دهد و به راحتی قابل لغو است. زمان و نحوه استفاده از این APIها باید کاملاً واضح باشد. ما برخی از فرآیند فکری خود را در کنترل دسترسی به ویژگی‌های قدرتمند پلتفرم وب تشریح کرده‌ایم.