مزیت های استفاده از WPF به عنوان رابط کاربری

WPF یک زیر سیستم گرافیکی جدید برای توسعه رابط کاربری در ویندوز است که برای اولین بار به عنوان بخشی از دات نت فریم ورک 3.0 عرضه شد. WPF برای رندر کردن گرافیک صفحه به جای استفاده از سیستم GDI از DirectX استفاده می کند و به همین دلیل قادر به ایجاد گرافیک های پیچیده تری است. در این مطلب به برخی از مزیت های استفاده از WPF به عنوان رابط کاربری اشاره خواهیم کرد.

1) ظاهر زیبای رابط کاربری طراحی شده : تمام اجزای رابط کاربری در WPF با استفاده از Direct3D رندر می شوند و می توانند دارای گرافیک بسیار پیچیده ای باشند که از اجزای مختلفی تشکیل شده اند. با WPF می توانید عکس، صدا، ویدئو و متن های گرافیکی پیچیده را در رابط کاربری خود داشته باشید، بدون اینکه سرعت پاسخگویی UI به کاربر را تحت تاثیر قرار دهید. اجازه استفاده از فایل های مالتی مدیا در پنجره های ویندوز و قابلیت هایی مثل Styles و Templates به طراحان اجازه می دهد تا یک رابط کاربری گرافیکی زیبا و چشم نواز بسازند. نرم افزارهایی که رابط کاربری شان را با WPF توسعه داده اند، از ظاهر بسیار زیبایی برخوردار هستند. شما می توانید یک رابط کاربری طراحی شده توسط WPF را به راحتی از بقیه تشخیص دهید. مثال قابل درک یک رابط کاربری زیبا و انطاف پذیر که با WPF توسعه داده شده، Visual Studio 2010 و Expression blend هستند. در شکل زیر نمایی از برنامه Family Show را مشاهده می کنید که UI آن با WPF طراحی شده است.

Family Show

2) جداسازی رابط کاربری از منطق برنامه : تعریف اجزای رابط کاربری در WPF در یک فایل جداگانه و به زبان تعریفی XAML انجام می گیرد. کدهای C#یا VB شما که منطق برنامه را شکل می دهند در فایل جداگانه ای قرار می گیرند. WPF جداسازی شفافی میان رابط کاربری و دیگر اجزای برنامه ایجاد می کند. این قابلیت به شما اجازه می دهد تا به راحتی از الگوهای طراحی MVP یا MVVM برای طراحی نرم افزار خود استفاده کنید. این جداسازی کار توسعه و نگهداری نرم افزار را در دراز مدت بسیار آسان می کند.

3) قالبیت اجرا در مرورگر : اپلیکیشن های WPF علاوه بر اجرا به صورت stand alone قادر به اجرا درون یک مرورگر به صورت هاست شده، هستند. شما با استفاده از قابلیت XBAP می توانید اپلیکیشن WPF خود را در مرورگرهای IE و Firefox به همان صورت که در دسکتاپ اجرا می شود، اجرا کنید. در حقیقت مایکروسافت با ایجاد این قابلیت یک قدم به یکپارچه سازی توسعه ویندوز و وب نزدیک تر شده است. اپلیکیشن های XBAP همان قابلیت های یک اپلیکیشن تحت دسکتاپ WPF را به شما در قالب یک برنامه هاست شده در مرورگر ارائه می کنند.

4) استفاده از XAML برای تعریف اجزای UI : موفقیت یک زبان نشانه گذاری به نام HTML برای توسعه رابط کاربری وب، باعث شد تا مایکروسافت به فکر ایجاد یک زبان نشانه گذاری برای طراحی UI در ویندوز بیفتد. نتیجه این تلاش، زبان XAML است که هم اکنون در WPF و Silverlight مورد استفاده قرار می گیرد. XAML یک زبان تعریفی بر اساس XML است که منطق برنامه را از رابط کاربری جدا می کند و یادگیری آن آسان است. تعریف تمام اجزای رابط کاربری در WPF با زبان XAML انجام می گیرد. شما می توانید خصوصیات و رفتار هر یک از کنترل های ویژوال و غیر ویژوال رابط کاربری خود را به جای استفاده از برنامه نویسی روالی، با یک زبان declarative  انجام دهید. در آخر کدهای XAML می توانند به عنوان یک اسمبلی مدیریت شده کامپایل شوند.

Visual Studio StartPage XAML source

5) سازگاری با WinForms : در WPF می توانید از فرم های ویندوزی معمولی هم استفاده کنید و در واقع WPF سازگاری کاملی با WinForms و API ویندوز دارد. با استفاده از کلاس های ElementHost و WindowsFormsHost قادر به استفاده از اجزای WinForms در WPF خواهید بود. همچنین در پروژه های WinForms خود می توانید از اجزای WPF به خوبی استفاده کنید.

6) سرعت رندر بالا : WPF به جای استفاده از GDI+ برای رندر کردن رابط کاربری، به صورت مستقیم از DirectX استفاده می کند. در این حالت رندر کردن گرافیک های بکار رفته در رابط کاربری به جای اینکه بر عهده CPU باشد، بر عهده GPU خواهد بود. WPF با استفاده از شتاب دهنده سخت افزاری گرافیک ها و افکت های رابط کاربری را با سرعت بیشتری اجرا می کند.

7) Data Binding قوی و انعطاف پذیر : WPF به صورت توکار دارای قابلیت های Data Binding فوق العاده انعطاف پذیر و موثری است. شما در WPF تقریباً می توانید هر منبع داده ای را به مشخصه های مختلف کنترل های پنجره bind کنید. به طور مثال کوئری های LINQ یا مجموعه ای از کلاس های شامل داده می توانند به کنترل هایی مثل ListView و DataGrid بدون احتیاج به نوشتن کد اضافی Bind شوند. WPF از سه حالت Data binding پشتیبانی می کند: 1- One Way : کلاینت دسترسی فقط خواندنی به اطلاعات دارد و زمانی که سورس آپدیت می شود خودش را آپدیت می کند 2- TwoWay : تغییر کردن سورس باعث آپدیت شدن کلاینت و تغییر کردن اطلاعات کلاینت باعث آپدیت شدن سورس می شود. این روش برای فرم های Editable بسیار مناسب است 3- OneWayToSource : بر عکس روش OneWay است، زمانی که اطلاعات کلاینت توسط کاربر تغییر می کند، سورس را آپدیت می کند.

8 ) سرویس های مالتی مدیا : در پنجره های WPF شما می توانید از فایل های image, audio و video به راحتی استفاده کنید. WPF یک سیستم انیمیشن خوب به علاوه قابلیت رندر کردن دو بعدی و سه بعدی فراهم می کند. قابلیت های 3 بعدی در WPF زیر مجموعه ای از قابلیت های فراهم شده توسط Direct3D هستند که این باعث می شود شما توانایی طراحی رابط کاربری 3 بعدی را داشته باشید.

9) Templates & Styles : در WPF شما می توانید ظاهر یک عنصر را با استفاده از مشخصاتش تعریف کنید یا اینکه از Template و Style برای این کار استفاده کنید. Style مجموعه ای از مقادیر propertyهاست که می تواند بر روی یک عنصر اعمال شود. Style در WPF همان نقشی را که CSS در صفحات وب بازی می کند، بر عهده دارد. تمپلیت ها نیز مکانیزمی برای سفارشی کردن ظاهر کنترل های ویژوال رابط کاربری در WPF است که به همراه سیستم Style یک راه حل جامع و مناسب برای شکل دهی ظاهر UI به شما ارائه می کنند.

10) توانایی کار کردن برنامه نویسان و طراحان با همدیگر : WPF به صورتی پیاده سازی شده است که یک برنامه نویس بتواند بدون داشتن کد XAML یک پنجره برای آن برنامه نویسی کند. همانطور که اشاره شد، در WPF جداسازی شفافی از منطق برنامه و رابط کاربری وجود دارد که این امر باعث می شود تا ما بتوانیم طراحی رابط کاربری را به یک طراح بسپاریم و در همان حال منطق برنامه را بدون نیاز به داشتن UI پیاده سازی کنیم. طراحان می توانند با ابزاری مثل Expression blend پنجره های رابط کاربری را به خوبی طراحی کنند، و توسعه دهندگان به پیاده سازی منطق برنامه در ویژوال استادیو مشغول باشند.

farasun.wordpress.com

Subcribe to Farasun feedمشترک فراسان شويد

چگونه یک رابط کاربری مناسب و استاندارد طراحی کنیم؟

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

به علت طولانی بودن مطلب، این مقاله را می توانید در قالب PDF دانلود کنید +
برای داشتن یک طراحی خوب در زمینه رابط کاربری، ابتدا باید کاربران نرم افزار را شناسایی کنید، سن، سطح سواد، نیازها و کارهایی که می خواهند با نرم افزار انجام بدهند را در نظر بگیرید. به طور مثال وقتی می خواهید نرم افزاری برای گروه سنی کودکان تولید کنید باید طراحی را با توجه با سن کاربران انجام دهید. پس از مشخص کردن کاربران و مشخصات آنان، سناریوهای هر کاربر را که در بخش تحلیل ایجاد شده اند را مورد بررسی قرار دهید و Use caseهای هر کاربر را در نظر بگیرید تا مجموعه ای از اشیاء و اعمال مربوط به آن ها مشخص شوند. این اجزاء معمولاً مبنایی برای ایجاد صفحات (منظور از صفحه، هر جزئی از رابط کاربری است که یکسری اجزای مربوط به هم را در کنار هم قرار می دهد، نه فقط صفحات وب) رابط کاربری می شوند که شامل طراحی گرافیکی، آیکون ها، متن ها، توضیحات صفحه و منوها می باشد.

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

  • استفاده از عنوان های با معنی برای اجزای صفحه : برای اجزای رابط کاربری خود عنوان های مناسبی انتخاب کنید تا کاربر منظورتان را با یک نگاه بفهمد. برای منو ها و دکمه ها عنوان های با معنی بگذارید که کاری که انجام می دهند را در یک یا دو کلمه توصیف کند. عنوان های بی معنی و طولانی برای کاربران ناخوشایند هستند.
  • استفاده از آیکون های مناسب و با معنی : هرجایی که قرار است از آیکون استفاده کنید، به جز زیبایی ظاهر آن، به اندازه آن در واحد پیکسل و با معنی بودن آن هم توجه کنید. آیکون ها باید نماد مشخصی از تابعی باشند که قرار است آن را صدا بزنند. هرجا که می توانید به جای منوها از شکلک ها استفاده کنید، چون کاربران ارتباط بهتری با شکلک ها برقرار می کنند تا منوهای تو در تو.
  • جزئیات تکنیکی از دید کاربر پنهان باشد : شما نباید کاربر را درگیر مسائل تکنیکی کنید، حتی اگر این مسایل از نظر شما مسایل راحت و پیش پا افتاده ای باشند. به طور مثال شما نباید کاربر را مجبور کنید که یک کلید خاص را در رجیستری ویندوز انتخاب کند!
  • در هر صفحه پیش فرض هایی داشته باشید : در هر صفحه باید چند عمل پیش فرض برای کاربر تعریف کنید. اگر در حال گرفتن اطلاعات از کاربر هستید، باید دکمه پیش فرضی برای کاربر قرار دهید که با کلیک روی آن تمام اطلاعات آن فرم پاک یا به اصطلاح Reset شود. یا به طور مثال دکمه های تایید یا OK در خیلی از فرم ها به عنوان پیش فرض آن فرم قرار داده می شوند تا کاربر با زدن دکمه Enter قادر به اجرای تابع مورد نظر باشد.
  • کاهش بار فکری کاربر : هر چه کاربر بیشتر مجبور باشد بخاطر بسپارد، ارتباط او با نرم افزار دارای خطای بیشتری خواهد بود. یک رابط کاربری مناسب به حافظه کاربر متکی نیست. هر زمانی که لازم شد، نرم افزار باید اطلاعات مورد نیاز را ذخیره کند و به هنگام نیاز آن اطلاعات را به کاربر یادآوری کند.
  • تعریف کلیدهای میانبر : سعی کنید کلیدهای میانبر مناسبی برای توابع پرکاربرد موجود در نرم افزار ایجاد کنید. این کلیدهای میانبر باید با اعمالی که قرار است انجام دهند به گونه ای مرتبط شوند که بخاطر سپردن آن ها توسط کاربران آسان باشد. برای مثال کلید Ctrl به علاوه حرف اول عنوان تابع مورد نظر. اگر برای کاری کلید میانبر استانداردی وجود دارد (مثل Ctrl+C برای کپی)، همان را استفاده کنید، چون عوض کردن این گونه کلیدها باعث سردرگمی کاربران می شود.
  • رابط کاربری را بر اساس دنیای واقعی مدل کنید : به طور مثال برای ثبت فاکتور در یک سیستم فروش، سعی کنید صفحات شبیه به فاکتورهای واقعی طراحی شوند. این کار باعث می شود که کاربر احساس راحتی با نرم افزار شما کند.
  • اطلاعات را به تدریج نمایش دهید : اگر قرار است اطلاعات گوناگون و حجیمی را به کاربر نمایش دهید، ابتدا آن را در بالاترین سطح مجردسازی به کاربران نمایش دهید. جزئیات بیشتر باید به علاقه کاربر و با دستور او ارائه شوند.
  • فراهم نمون ارتباط قابل انعطاف : چون کاربران مختلف علایق گوناگون و سطح آشنایی متفاوتی با کامپیوتر دارند وجود انتخاب نحوه ارتباط ضروری است. نرم افزار باید به کاربر امکان دهد که از ماوس، صفحه کلید، قلم دیجیتالی یا حتی دستورات صوتی برای اجرای کارهای مختلف بهره بگیرد.
  • کارهای طولانی باید وقفه پذیر باشند : کاربر باید بتواند اعمال در حال اجرای طولانی را متوقف کند. کاربر باید از زمان اجرای یک کار آگاهی داشته باشد تا بتواند بهتر در مورد اجرا یا عدم اجرای آن کار تصمیم بگیرد. مثال ساده این عمل را در کپی کردن فایل ها دیده اید، کاربر از زمان اجرای عمل باخبر است و هرگاه که تصمیم بگیرد می تواند آن را متوقف کند.
  • کارهای حساس باید برگشت پذیر باشند : ممکن است کاربر عملی را به اشتباه انجام دهد و نیاز داشته باشد آن عمل اشتباه را لغو کند. نرم افزار باید چنین امکانی را در کارهای حساس به کاربر ارائه کند. به طور مثال در ویرایشگرهای تصویر، اگر به اشتباه جایی از تصویر را خراب کنید، به راحتی با یک عمل Undo می توانید اشتباه خود را جبران کنید.
  • رابط کاربری باید یکنواخت باشد : علاوه بر رعایت استانداردهای معمول یک رابط کاربری، شما بایستی استانداری برای طراحی رابط خود تعریف کنید تا تمام صفحات رابط شما از یکنواختی مشخصی برخوردار باشند. رابط کاربری شما باید اطلاعات را به صورت یکنواخت نمایش دهد یا دریافت کند. این کار باعث می شود تا کاربر با صفحات جدیدی که برایش باز می شوند نا آشنا نباشد و با آن ها راحت کار کند.

gmail-web

حتماً عوامل موثر دیگری هم در ایجاد رابط کاربری مناسب و استاندارد وجود دارند که در این مطلب به آن ها اشاره نشد. موضوع مهمی که حتماً باید در نظر بگیرید، پلت فرمی است که قرار است نرم افزار شما روی آن کار کند. به طور مثال اگر نرم افزار شما تحت وب است طراحی شما شرایط متفاوتی با یک نرم افزار تحت دسکتاپ دارد. هر چند که مسایل بالا هم در نرم افزارهای تحت وب قابل پیاده سازی است و هم در نرم افزارهای تحت دسکتاپ. همچنین طراحی رابط کاربری در سیستم عامل های مختلف نیز تفاوت های زیادی با هم دارند. در این مطلب ما به صورت Abstract و جدا از پلت فرم به مسئله طراحی رابط کاربری نگاه کردیم.
مثال هایی از رابط کاربری استاندارد در نرم افزارهای امروز را می توان Gmail در وب، Office 2007 در ویندوز و فایرفاکس در لینوکس عنوان کرد.

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

مطالب مرتبط :

می توانید برای مطلع شدن از مطالب جدید فراسان، مشترک فید آن شوید!

بیایید با هم WPF یاد بگیریم!

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

ظاهر فرم های وب با استفاده از کدهای HTML و CSS ایجاد می شوند و مرورگر وب وظیفه رندر کردن این صفحات وب را بر عهده می گیرد. در فرم های ویندوز ظاهر فرم با استفاده از کامپوننت ها و کنترل های نرم افزاری شکل می گیرد و کتابخانه های GDI و فایل USER32.dll در زیر سیستم گرافیکی ویندوز وظیفه رندر کردن ویندوز فرم ها را بر عهده دارند. رابط کاربری را از دو نظر می توان مورد بررسی قرار داد، از نظر زیبایی و غنی (Rich) بودن. فرم های وب به علت باز بودن دست شما در استفاده از فایل های مالتی مدیا معمولاً زیبایی بیشتری نسبت به فرم های ویندوز دارند. صفحات وب می توانند از فایل های عکس و ویدئو به راحتی استفاده کنند و با استفاده از کدهای CSS ظاهری زیبا داشته باشند. در فرم های ویندوز این زیبایی به راحتی وب بدست نمی آید، اما به جای آن کنترل های غنی بسیار زیادی که برای فرم های ویندوز وجود دارد در وب کمتر یافت می شود. غنی یا Rich بودن یک کنترل به این معنی است که آن کنترل به خوبی به رفتارهای کاربر و رویدادهایی که برایش اتفاق می افتد پاسخ می دهد. البته با آمدن تکنولوژی AJAX فرم های وب تا حدودی در این زمینه بهبود یافته اند.

wpf_logo

Windows Presentation Foundation یا به اختصار WPF زیر سیستم گرافیکی جدید ویندوز است که روشی واحد برای طراحی رابط کاربری غنی و زیبا که می تواند از فایل های مالتی مدیا و افکت های دو بعدی و سه بعدی نیز استفاده کند، به توسعه دهندگان دات نت ارائه می کند. این سیستم جدید روشی فوق العاده قابل انعطاف تر از روشی که در Win32 و فرم های ویندوزی استفاده می شود به شما ارائه می کند. شما با استفاده از زبان XAML که در سیلورلایت هم مورد استفاده قرار می گیرد، رابط کاربری خود را می سازید. زبان XAML بر اساس فرمت XML به شما اجازه ساختن کنترل های WPF را می دهد و استفاده از آن به راحتی HTML خواهد بود.WPF کاملاً رابط کاربری نرم افزار شما را از منطق آن جدا خواهد کرد.

برای ایجاد فرم های WPF باید ویژوال استادیو 2008 را باز کنید و از قمست New / Project گزینه WPF Application را برگزینید. همانطور که در شکل زیر مشاهده می کنید، همانند فرم های ویندوزی، WPF نیز پنجره ای را در اختیار شما قرار می دهد تا کنترل های خودتان را روی آن قرار دهید. این کنترل های را می توان به صورت دستی با کدهای XAML ایجاد کرد و یا از Toolbox ویژوال استادیو روی پنچره قرار داد. با استفاده از این کنترل ها می توانید زیبایی خیره کننده ای به برنامه هایتان ببخشید.

مثالی از WPF

مثالی از WPF

یادگیری تکنولوژی های جدید همیشه برای بسیاری از افراد جالب و هیجان انگیز است و برای برخی هم سخت و دشوار. یادگیری WPF کار مشکلی نیست، فقط باید کمی روی آن وقت بگذارید و تمرین کنید. مقالات آموزشی بسیار زیادی در مورد یادگیری WPF در وب سایت های مختلف پیدا خواهید کرد. حتی می توانید کتاب های زیادی هم در مورد WPF به زبان انگلیسی روی اینترنت پیدا کنید. توجه داشته باشید که مایکروسافت تاکید بسیار زیادی بر روی WPF دارد و رابط کاربری سیستم عامل ویندوز 7 و دیگر نرم افزارهای خود را با استفاده از همین WPF توسعه می دهد. در واقع توصیه مایکروسافت به همه تولید کنندگان نرم افزار، استفاده از WPF در ایجاد رابط کاربری نرم افزارهای نسل آینده است. به احتمال بسیار زیاد هدف بلند مدت مایکروسافت از توسعه WPF حذف فرم های ویندوز و وب در آینده خواهد بود، پس از همین حالا شروع به یادگیری WPF و زبان XAML کنید.

شاید این مطالب هم برای شما خواندنی باشند :

پ.ن 1: اگر وقت اجازه بدهد، حتماً مطالب آموزشی در مورد WPF، XAML و سیلورلایت در این وبلاگ بیشتر مشاهده خواهید کرد.

پ.ن 2: Datefa را به CodePlex منتقل کردم، می توانید آخرین نسخه 2.4 پایدار به همراه سورس کد آن را از این سایت دریافت کنید.

پ.ن 3: مطلب آقای افشار محبی در مورد مفایسه WPF و WinForms برای مطالعه پیشنهاد میکنم.

پ.ن 4: وبلاگ Hyper Web مطالب تحلیلی با کیفیتی در مورد فناوری های روز می نویسد، خواندن این وبلاگ هم پیشنهاد می شود.

سیلورلایت 3.0 ارائه شد

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

18 مارس در MIX09 مایکروسافت نسخه ی بتای سیلورلایت 3.0 را معرفی کرد. در این کنفرانس که در لاس وگاس برگزار شد، علاوه بر نسخه جدید سیلورلایت، IIS 7، ASP.NET MVC Framework، IE 8، Blend 3، Visual Studio 2010 نیز مورد بررسی قرار گرفتند.  در این نوشته قصد داریم به معرفی ویژگی های جدید سیلورلایت نسخه 3.0 بتا بپردازیم.

اجرا خارج از مرورگر Out of Browser

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

بهبود های گرافیکی

سیستم گرافیکی سیلورلایت بهبودهای زیادی در این نسخه پیدا کرده است. پشتیبانی از افکت های قابل برنامه ریزی، perspective 3D، ایجاد فایل های Bitmap با استفاده از API های جدید سیلورلایت از این جمله اند. این بهبودهای گرافیکی، توسعه دهندگان را قادر میسازد تا مانور بیشتری روی تصاویر بدهند و افکت های تصویری مطلوب خود را تولید کنند.

کنترل های جدید

چندین کنترل جدید به SDK سیلورلایت اضافه شده اند و برخی از کنترل های موجود بهبود یافته اند. در این نسخه کنترل های جدید برای اعتبار سنجی داده های ورودی و هندل کردن خطاهای رابط کاربری معرفی شده اند. این کنترل ها به هنگام وارد کردن داده ها توسط کاربر به اعتبار سنجی آن و احتمالاً نشان دادن پیغام خطا می پردازند. برخی از کنترل های موجود در Silverlight Control Toolkit از جمله WrapPanel, DockPanel, ViewBox, AutoCompleteBox,Label در SDK نسخه 3.0 سیلورلایت ارائه شده اند. کنترل جدید SaveFileDialog هم به کاربران اجازه ذخیره فایل ها را روی هارد دیسک کامپیوترشان می دهد.

کنترل های پیشرفته تر مثل DataForm که امکان کار با داده ها (اضافه کردن، حذف و ویرایش) و حرکت میان آن ها را به شما می دهد. DataPager که امکان مرور صفحه به صفحه داده ها را به کاربر نهایی می دهد و Navigation Framework که برای حرکت میان صفحات یک اپلیکیشن سیلورلایت کاربرد دارد.

قابلیت های چند رسانه ای

چیزی که از قبل معلوم بود، پشتیبانی سیلورلایت 3.0 از فرمت های H264 و ACC است. پشتیبانی از RAW و امکان ایجاد Codecهای سفارشی توسط توسعه دهندگان از دیگر قابلیت های اضافه شده به سیستم مالتی مدیای سیلورلایت است.

بهبود کیفیت رندر متون Text Rendering

استفاده از افکت های انیمیشنی در متن ها و ایجاد متونی واضح تر برای کاربر در این نسخه از سیلورلایت بیشتر به چشم می آیند. با استفاده از API جاوا اسکریپت موجود در این نسخه، اپلیکیشن های سیلورلایت می توانند از فونت های محلی روی سیستم کاربر نیز علاوه بر فونت های روی سرور، استفاده کنند، که این باعث کاهش زمان بارگذاری اپلیکیشن می شود. در نسخه نهایی سیلورلایت قرار است از فناوری ClearType هم برای افزایش کیفیت متون استفاده شود.

بایند کردن عنصر به عنصر Element-to-Element Binding

این قابلیت به عناصر موجود روی رابط کاربری اجازه بایند شدن به مشخصات (Properties) یکدیگر را می دهد. مثلاً بدون کد نویسی می توانید مقدار یک Slider را به پراپرتی Text یک TextBox نسبت دهید. با این کار هر گاه مقدار Slider توسط کاربر تغییر کند، مقدار Text مربوط به TextBox به صورت خودکار آپدیت می شود.

Network Monitoring API

با استفاده از این API خواهید توانست اتصال به اینترنت را در یک اپلیکیشن سیلورلایت چک کنید. برخی مواقع لازم است که بدانید کاربر با اینترنت ارتباط دارد یا از آن Disconnect شده است.

Binary XML

برای ارتباط با سرویس های WCF، علاوه بر فرمت معمولی مبتنی بر متن XML، می توانید از فرمت فشرده Binary XML در سیلورلایت 3 استفاده کنید.

سرویس های .NET RIA

به همراه سیلورلایت 3 بتا، مایکروسافت فریم ورک .NET RIA Services را منتشر کرده است. این ابزار سعی می کند تا معماری n-tier را ساده تر کند و دو فناوری Silverligt و ASP.NET را به هم نزدیک تر نماید. .NET RIA Services الگویی برای نوشتن منطق برنامه در لایه میانی اپلیکیشن به شما ارائه می کند و دستیابی به داده ها را کنترل می کند. وظیفه هایی مثل اعتبار سنجی داده ها، تشخیص هویت و ارتباط میان سیلورلایت در کلاینت و ASP.NET در لایه میانی را بر عهده دارد.

واضح است که در این مطلب کوتاه نمی توان به بررسی تمام ویژگی های جدید سیلورلایت 3.0 پرداخت. مایکروسافت تمام تلاش خود را می کند تا آینده دنیای نرم افزار را در دست بگیرد و استانداردهای نرم افزارهای آینده را از همین حالا تعیین کند. مایکروسافت قدم های اولیه را خیلی وقت است به درستی برداشته است و در این راه با وجود رقبای بزرگی مثل گوگل، IBM و ادوبی تا به حال موفق بوده است. باید منتظر ماند و دید آیا تلاش مایکروسافت منجر به ظهور انقلابی در دنیای برنامه نویسی و نرم افزار خواهد شد یا خیر.

در مطالب بعدی در مورد ابزارهای عرضه شده برای توسعه اپلیکیشن های سیلورلایت 3.0 و در کل فناوری سیلورلایت بیشتر خواهید خواند. برای اینکه این مطالب را از دست ندهید، مشترک فراسان شوید.

شاید این مطالب هم برای شما خواندنی باشند :

اگر تمايل به دنبال کردن مطالب اين وبلاگ داريد، مي توانيد مشترک فيد فراسان شويد.

چطور مشترک شويم؟

ابتدا رابط کاربری را بسازید!

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

معمولاً ما برنامه نویسان یاد گرفته ایم که هر پروژه ای را با نوشتن کدهای پایه شروع کنیم. در واحد های دانشگاهی هم کد نوشتن را به ما یاد می دهند، اما طراحی یک رابط کاربری استاندارد و مناسب را به ما یاد نمی دهند. شاید برای خیلی از برنامه نویس ها طراحی یک رابط کاربری مناسب از کد نویسی هم سخت تر باشد. ایده «ابتدا رابط کاربری را بسازید» می تواند به عنوان یک متد توسعه در پروژه های کوچک مورد استفاده قرار گیرد. این روش در برخی مواقع به صورت چشمگیری زمان و هزینه شما را کاهش و کارایی شما را افزایش می دهد.

users

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

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

در هر حال اگر به صورت انفرادی برنامه می نویسید و پروژه های کوچکی دارید، بهتر است برای یکبار هم که شده ابتدا از رابط کاربری شروع کنید و این روش را به کار ببرید.

بیشتر بدانید :

شاید این مطالب هم برای شما خواندنی باشند :

اگر تمایل به دنبال کردن مطالب این وبلاگ دارید، می توانید مشترک فید فراسان شوید.

چطور مشترک شویم؟