سؤالات ساده: برنامه های Universal Windows Platform (UWP) چیست؟

از زمانی که مایکروسافت ویندوز (Microsoft)10(Windows 10) را برای رایانه‌های شخصی، دستگاه‌های هیبریدی، تبلت‌ها و گوشی‌های هوشمند معرفی کرد، ما درباره مفهوم Windows Universal Apps یا همانطور که در زبان فناوری به آن‌ها می‌گویند: Universal Windows Platform ( UWP ) بسیار شنیده‌ایم. احتمالاً از خود پرسیده اید که آنها چه هستند و چرا مایکروسافت(Microsoft) این همه سر و صدا در مورد این برنامه ها ایجاد می کند. در ابتدا، ما همچنین کنجکاو شدیم که آنها چه هستند، چه هدفی را دنبال می کنند و چگونه کار می کنند. مدتی است که از چنین برنامه‌هایی استفاده نکرده‌ایم و چیزهای زیادی در مورد آنها وجود دارد که آنها را عالی می‌کند، هر دو از یک توسعه‌دهنده نرم‌افزار(software developer)دیدگاه و همچنین دیدگاه کاربر. در این مقاله ما کمی به موضوع برنامه های پلتفرم جهانی ویندوز(Universal Windows Platform apps) و چرایی اهمیت آنها خواهیم پرداخت. اگر کنجکاو هستید که در مورد آنها بیشتر بدانید، در ادامه مطلب بخوانید:

کمی پیش زمینه در مورد برنامه های موبایل برای ویندوز(Windows)

مایکروسافت(Microsoft) برای مدت طولانی تلاش کرده بود تا سهم(market share) خود را در بازار موبایل افزایش دهد اما تاکنون موفق نشده است. در حالی که آنها با عرضه ویندوز فون 7(Windows Phone 7) مورد توجه قرار گرفتند ، پلتفرم های دیگری مانند اندروید و iOS(Android and iOS) بسیار جلوتر از آنها بودند. دلیل اصلی این وضعیت و شکایت شماره یک(number one) کاربران همچنان عقب ماندن اکوسیستم موبایل مایکروسافت از نظر اپلیکیشن است.(Microsoft)

پلتفرم جهانی ویندوز، UWP، برنامه‌ها، ویندوز 10، فروشگاه، ویژگی‌ها

استور(Store) برای گوشی های هوشمند ویندوز(Windows Phone) فون نتوانست به اندازه گوگل پلی یا اپل استور(Google Play or Apple Store) برنامه های کاربردی را به کاربران خود ارائه دهد . Windows Phone 8 و به روز رسانی بعدی آن، Windows Phone 8.1 ، کار بهتری در جذب افراد به پلتفرم موبایل مایکروسافت(Microsoft) انجام داد، اما هنوز کافی نبود.

این لحظه ای بود که مایکروسافت(Microsoft) شروع به کار بر روی یک مفهوم جدید کرد: شروع به توسعه یک معماری برنامه کاربردی پلت فرم یکپارچه کرد که روی هر نوع دستگاهی که (platform application architecture)ویندوز(Windows) را اجرا می کند اجرا می شود . پیچیده به نظر می رسد، درست است؟

برنامه های پلتفرم جهانی ویندوز(Windows Platform apps) چیست؟

برنامه‌های جهانی(Universal apps) برای ویندوز(Windows) برنامه‌هایی هستند که برای کارکرد یکسان روی چندین دستگاه با فاکتورهای فرم متفاوت طراحی شده‌اند. به عبارت دیگر، آنها برنامه هایی هستند که در اندازه های مختلف صفحه نمایش یکسان کار می کنند. فرقی نمی‌کند از گوشی هوشمند ویندوز 10 (Windows 10) موبایل(Mobile smartphone) ، تبلت ویندوز 10 ، (Windows 10)رایانه رومیزی (desktop computer)ویندوز 10(Windows 10) یا حتی کنسول Xbox One(Xbox One) استفاده می‌کنید . این برنامه ها روی همه این نوع دستگاه ها اجرا می شوند و ویژگی های یکسانی را به کاربران خود ارائه می دهند.

پلتفرم جهانی ویندوز، UWP، برنامه‌ها، ویندوز 10، فروشگاه، ویژگی‌ها

اگر توسعه‌دهنده نرم‌افزار(software developer) یک برنامه بخواهد، برنامه‌اش می‌تواند به طور بالقوه روی دستگاه اینترنت اشیاء (IoT (IoT))(Internet) که ویندوز 10(Things) را اجرا می‌کند(Windows 10) یا حتی در دستگاه واقعیت(reality device) افزوده آینده مایکروسافت(Microsoft) : هولولنز(Hololens) ، به همان شیوه اجرا شود. این یک ایده عالی است، اینطور نیست؟

برنامه‌های پلتفرم جهانی ویندوز ، (Universal Windows Platform apps)پایه کد(code base) یکسانی دارند ، با یک نکته: توسعه‌دهندگان نرم‌افزار باید بخش‌های کد متفاوتی را برای خانواده‌های دستگاه‌هایی که می‌خواهند برنامه‌هایشان روی آن‌ها کار کند، اضافه کنند. آنها سیستم عامل های مختلف را در کد خود هدف قرار نمی دهند، بلکه خانواده های مختلف دستگاه ها را هدف قرار می دهند. این یک چیز کوچک و یک جهش بزرگ از نظر کارایی است.

به عنوان مثال، اگر می خواهید یک برنامه RSS reader بنویسید که می خواهید هم برای تلفن های هوشمند ویندوز 10 (Windows 10) موبایل و هم برای رایانه های شخصی و تبلت های (Mobile)ویندوز 10(Windows 10) در دسترس باشد ، باید کد را فقط یک بار بنویسید. روی همه دستگاه ها یکسان کار خواهد کرد. اما باید رابط کاربری برنامه را طوری تنظیم کنید که با هر دو خانواده دستگاه مطابقت داشته باشد.

برنامه های پلتفرم جهانی ویندوز(Universal Windows Platform apps) : در کدام پلتفرم ها در دسترس هستند؟

برنامه‌های پلتفرم جهانی ویندوز برنامه‌هایی(Universal Windows Platform apps) هستند که برای دستگاه‌هایی که روی ویندوز 10(Windows 10) اجرا می‌شوند در دسترس هستند . توسعه دهندگان می توانند یک برنامه واحد با یک پایه کد(code base) بسازند که روی رایانه های شخصی ویندوز 10 (Windows 10)،(Windows 10) تبلت های ویندوز 10 و دستگاه های هیبریدی، تلفن های هوشمند ویندوز 10 (Windows 10)موبایل ، کنسول های (Mobile)ایکس باکس(Xbox One) وان ، دستگاه های اینترنت (Internet)اشیا(Things) که ویندوز 10(Windows 10) و حتی مایکروسافت هولولنز(Microsoft Hololens) را اجرا می کنند، کار می کند.

برنامه(Apps) ها با استفاده از فروشگاه (Store)ویندوز 10(Windows 10) توزیع می شوند که در همه دستگاه هایی که ویندوز 10 را اجرا می کنند، صرف نظر از اندازه و مشخصات سخت افزاری(size and hardware specifications) آنها در دسترس است . از آنجایی که یک فروشگاه(Store) و یک پایه کد(code base) وجود دارد ، برنامه‌ها را می‌توان به راحتی در همه خانواده‌های دستگاه‌ها توزیع و به‌روزرسانی کرد. اساساً هنگام کار با برنامه های جهانی ویندوز(Windows) ، هم برای توسعه دهندگان نرم افزار و هم برای کاربران سردرد کمتری وجود دارد .

برای کاربران همچنین این مزیت وجود دارد که یک برنامه جهانی ویندوز را(Windows app) یک بار، در یک دستگاه خاص خریداری می‌کنند و سپس می‌توانند از آن در همه دستگاه‌های ویندوز 10 خود استفاده کنند. برنامه‌ها(Apps) با حساب مایکروسافت(Microsoft account) آن‌ها مرتبط هستند ، نه با دستگاه‌هایشان و می‌توانند برنامه‌های خریداری‌شده را بر اساس نیازها و دستگاه‌هایشان آزادانه نصب و حذف نصب کنند.

چگونه متوجه می شوید که یک برنامه یک برنامه جهانی ویندوز(Windows app) است ؟

شناسایی برنامه های پلتفرم جهانی ویندوز(Universal Windows Platform apps) به این راحتی ها نیست. هنگامی که یک برنامه را از فروشگاه ویندوز(Windows Store) در یک دستگاه Windows 10 Mobile(Mobile device) بررسی می‌کنید ، به بخش‌های زیر از صفحه برنامه آن توجه کنید: تصاویر صفحه(Screenshots) ، رتبه‌بندی‌ها و بررسی‌ها(Ratings and reviews) و اطلاعات اضافی(Additional information) .

برنامه های جهانی(Universal) تمایل دارند هم برای دستگاه های تلفن همراه(Mobile) و هم برای رایانه شخصی(PC) اسکرین شات ارائه دهند .

پلتفرم جهانی ویندوز، UWP، برنامه‌ها، ویندوز 10، فروشگاه، ویژگی‌ها

در بخش رتبه‌بندی‌ها و نظرات(Ratings and reviews) ، نظرات مربوط به دستگاه‌های تلفن همراه و همچنین سایر دستگاه‌هایی را که برنامه در آن‌ها موجود است، پیدا خواهید کرد.

پلتفرم جهانی ویندوز، UWP، برنامه‌ها، ویندوز 10، فروشگاه، ویژگی‌ها

آخرین اما نه کم اهمیت ترین، بهترین اطلاعات در بخش اطلاعات اضافی(Additional information) یافت می شود . در آنجا لیستی از پردازنده های پشتیبانی شده را جستجو کنید. باید پردازنده‌های ARM (پردازنده‌های دستگاه‌های تلفن همراه، بیشتر گوشی‌های هوشمند) را در کنار پردازنده‌های x86 و x64 (پردازنده‌های رایانه‌های شخصی) مشاهده کنید.

پلتفرم جهانی ویندوز، UWP، برنامه‌ها، ویندوز 10، فروشگاه، ویژگی‌ها

اگر همین کار را روی رایانه شخصی یا لپ‌تاپ (PC or laptop)ویندوز 10(Windows 10) انجام دهید ، Windows Store اسکرین‌شات‌ها را هم برای «نسخه» موبایل(Mobile) و هم برای «نسخه» رایانه شخصی به اشتراک می‌گذارد. به خاطر داشته باشید که ما واقعاً در مورد نسخه های مختلف برنامه صحبت نمی کنیم، زیرا یک برنامه با یک پایه کد(code base) برای همه دستگاه ها وجود دارد.

همچنین، در بخش رتبه‌بندی‌ها و بررسی‌ها(Ratings and reviews) ، گزینه‌ای برای فیلتر کردن نظرات رایانه‌های شخصی از همه انواع دستگاه‌های دیگر خواهید دید.

پلتفرم جهانی ویندوز، UWP، برنامه‌ها، ویندوز 10، فروشگاه، ویژگی‌ها

آخرین اما نه کم اهمیت، بخش اطلاعات اضافی اطلاعاتی(Additional information) در مورد پردازنده هایی که توسط برنامه پشتیبانی می شوند ارائه می دهد.

پلتفرم جهانی ویندوز، UWP، برنامه‌ها، ویندوز 10، فروشگاه، ویژگی‌ها

چند نمونه از برنامه های جهانی برای ویندوز(Windows)

امروزه تعداد زیادی برنامه پلتفرم ویندوز جهانی(Universal Windows Platform apps) در فروشگاه (Store)ویندوز 10(Windows 10) موجود نیست . با این حال، نمونه‌هایی از برنامه‌های خوب وجود دارد که احتمالاً بدون اطلاع از این که برنامه‌های جهانی برای ویندوز(Windows) هستند، از آنها استفاده می‌کنید . در اینجا به برخی از آنها اشاره می کنیم:

  • برنامه های Microsoft Office(Microsoft Office apps) : Word ، Excel ، PowerPoint و OneNote(PowerPoint and OneNote) .

پلتفرم جهانی ویندوز، UWP، برنامه‌ها، ویندوز 10، فروشگاه، ویژگی‌ها

  • نتفلیکس(Netflix) - سرویس پخش ویدیوی محبوب بر اساس تقاضا(on-demand video) .

پلتفرم جهانی ویندوز، UWP، برنامه‌ها، ویندوز 10، فروشگاه، ویژگی‌ها

  • Teamviewer - یکی از محبوب ترین ابزارهای مدیریت دسکتاپ از راه دور .(remote desktop administration)

پلتفرم جهانی ویندوز، UWP، برنامه‌ها، ویندوز 10، فروشگاه، ویژگی‌ها

  • Pandora - سرویس (Pandora)پخش موسیقی(music streaming) محبوب و خودکار توصیه موسیقی(music recommendation service) که توسط پروژه ژنوم موسیقی(Music Genome Project) پشتیبانی می شود .

در کدام زبان های برنامه نویسی می توانید برنامه های Universal Windows Platform را(Universal Windows Platform apps) کدنویسی کنید ؟

برنامه های Universal Platform Windows را(Universal Windows Platform apps) می توان با استفاده از هر یک از رایج ترین زبان های برنامه نویسی توسعه داد:

  • سی شارپ یا ویژوال بیسیک با XAML
  • جاوا اسکریپت با HTML
  • C++ با DirectX و/یا XAML

شایان ذکر است که مایکروسافت(Microsoft) همچنین برای هر زبان برنامه نویسی(programming language) قالب هایی ارائه می دهد که می توانید از آنها برای کدنویسی برنامه های جهانی در Microsoft Visual Studio 2015 استفاده کنید.

مزایا و معایب برنامه های جهانی ویندوز(Windows apps)

در حال حاضر، شما ایده ای در مورد اینکه برنامه های جهانی ویندوز(Windows apps) چیست ، چگونه کار می کنند و پلتفرم هایی که در آن در دسترس هستند، دارید. احتمالاً شما نیز ایده ای از مزایای آنها دارید، اما بیایید آنها را برشماریم تا تصویر واضح تری به دست آوریم:

  • برنامه های پلتفرم جهانی ویندوز را(Universal Windows Platform apps) می توان در هر دستگاهی که ویندوز 10(Windows 10) را اجرا می کند استفاده کرد. این شامل رایانه های رومیزی ویندوز 10(Windows 10) ، لپ تاپ ها، تبلت ها و هیبریدی ها، تلفن های هوشمند ویندوز 10 (Windows 10) موبایل ، کنسول های (Mobile)ایکس باکس(Xbox One) وان، دستگاه های اینترنت اشیا(IoT) با ویندوز 10(Windows 10) و حتی در مایکروسافت هولولنز(Microsoft HoloLens) می شود.
  • توسعه‌دهندگان می‌توانند برنامه‌هایی بنویسند که روی چندین خانواده از دستگاه‌ها با فاکتورهای فرم متفاوت کار می‌کنند.
  • برنامه‌های پلتفرم جهانی ویندوز با استفاده از (Universal Windows Platform apps)فروشگاه(Store) ویندوز ، که در همه دستگاه‌های ویندوز 10(Windows 10) یکسان است، توزیع و به‌روزرسانی می‌شوند .
  • برنامه‌های پلتفرم جهانی ویندوز(Universal Windows Platform apps) را می‌توان در برخی از پرکاربردترین زبان‌های برنامه‌نویسی، مانند C# یا Visual Basic با XAML ، جاوا اسکریپت(JavaScript) با HTML ، C++ با DirectX and/or XAML ایجاد کرد.

همچنین برخی از معایب برنامه های پلتفرم جهانی ویندوز وجود(Universal Windows Platform apps) دارد :

  • برنامه های پلتفرم جهانی ویندوز(Universal Windows Platform apps) به دستگاه های دارای ویندوز 10(Windows 10) محدود می شوند . آنها هرگز روی اندروید و iOS(Android and iOS) کار نخواهند کرد . همچنین، روی نسخه‌های قدیمی‌تر ویندوز(Windows) کار نمی‌کنند .
  • برنامه های پلتفرم جهانی ویندوز(Universal Windows Platform apps) یک ایده عالی هستند که نیاز به کشش بسیار بیشتری با توسعه دهندگان نرم افزار دارد. اگر آنها شروع به نوشتن بسیاری از برنامه های جهانی عالی نکنند، این مفهوم هیچ سودی برای کاربران یا مایکروسافت(Microsoft) نخواهد داشت.

نتیجه

اکنون می دانید که برنامه های پلتفرم جهانی ویندوز(Universal Windows Platform apps) چیست و هدف آنها چیست. همانطور که آموخته اید، آنها ایده خوبی هستند که می توانند نحوه برخورد ما با برنامه ها، نحوه انتقال آنها از دستگاهی به دستگاه، نحوه خرید آنها و غیره را تغییر دهند. آنها همچنین می توانند به تلاش های موبایل مایکروسافت کمک کنند. (Microsoft)با این حال، اگر توسعه‌دهندگان نرم‌افزار از این مفهوم استقبال نکنند و برنامه‌های جهانی برای ویندوز ننویسند(Windows) ، این فقط یک ایده عالی خواهد بود که به جایی نرسید. فقط زمان می تواند بگوید! تا آن زمان، در نظر دادن و به اشتراک گذاشتن(comment and share) نظر خود در مورد این مفهوم درنگ نکنید . آیا این خوب است؟ آیا آن را به عنوان آینده ای می بینید؟ با استفاده از فرم زیر به ما اطلاع دهید.



About the author

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



Related posts