مزیت های استفاده از 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مشترک فراسان شويد

ویژوال استادیو 2010 بتا 2 آمد!

ویژوال استادیو 2010 و دات نت فریم ورک 4.0 پیشرفت زیادی کرده اند و قابلیت های بسیار بسیار زیادی به آن ها اضافه شده است به طوریکه در آینده ای نه چندان دور توسعه برنامه های تحت ویندوزو وب را تحت تاثیر قرار خواهند داد. توسعه برنامه های مبتنی بر ویندوز با WinForms جدید و همچنین  نسخه جدید WPF انجام خواهد شد. ASP.NET نسخه 4.0 نیز دارای بهبودها و ویژگی های جدیدی است که توسعه وب را لذت بخش تر و حرفه ای تر از قبل خواهد کرد. Silverlight جایگاه خود را کم کم در توسعه وب مستحکم می کند و آینده خوبی برایش پیش بینی می شود. توسعه راهکارهای Sharepoint و Office با ویژوال استادیو 2010 پیشرفت قابل توجهی داشته و به محاسبات ابری یا Cloud Computing در این نسخه توجه بیشتری شده است.

ویژوال استادیو 2010

ویژوال استادیو 2010 بتا 2 دارای بهبودهای بسیار خوبی در هسته IDE، ویرایشگر کد، زبان های برنامه نویسی، ابزارهای تست و طراحی برنامه است. نصب ویژوال استادیو 2010 راحت تر از قبل انجام می گیرد و می تواند در کنار ویژوال استادیو 2008 نصب شود و بدون هیچ مشکلی کار کند. شما می توانید ویژوال استادیو 2010 بتا 2 را روی کامپیوتری که در حال حاضر ویژوال استادیو 2008 دارد، نصب کنید، بدون اینکه مشکلی برایتان پیش بیاید.

ظاهر این نسخه کاملاً با استفاده از WPF ساخته شده و بسیار زیباست (+) لوگوی ویژوال استادیو در این نسخه تغییر یافته و مدرن تر شده، هر چند من شخصاً لوگوی قبلی ویژوال استادیو را بیشتر می پسندم.

وگوهای قدیمی و جدید ویژوال استادیو

Team Foundation Server در تمام نسخه های ویژوال استادیو 2010 وجود دارد. تیم های کوچک می توانند از TFS برای کنترل سورس، باگ ترکینگ و اتوماسیون Build پروژه هایشان در ویژوال استادیو 2010 استفاده نمایند. نسخه بیسیک TFS به راحتی بر روی کامپیوترهای سرور و کلاینت قابل نصب و استفاده است.

از نسخه بتای 1 ویژوال استادیو 2010، می توانستید با ابزارهای Windows Azure کار کنید اما حالا و با نسخه بتای 2 آسان تر می توانید توسعه برنامه های Windows Azure را شروع کنید. این یعنی تجربه لذت بخش استفاده از «محاسبات ابری» با دات نت و ویژوال استادیو!

در این نسخه نیز مانند نسخه 2008 می توانید نسخه فریم ورک خود را تغییر دهید. این امکان بسیار کاربردی ومفید است، به طور مثال شما می توانید از ویژوال استادیو 2010 برای توسعه برنامه های مبتنی بر دات نت فریم ورک 2.0 یا 3.5 استفاده کنید.

پیمایش کد در ویرایشگر کد با قابلیت های ویژوال استادیو 2010 بسیار آسان تر شده (+) و Intellisense در این نسخه دستخوش تغییرات و بهبود شده است. (+)

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

ویژوال استادیو 2010 بتا 2 را دانلود کنید

برای دریافت ویژوال استادیو 2010 به اینجا بروید. از 21 اکتبر (29م مهر) دریافت برای عموم آزاد است!البته مشترکان MSDN دو روز زودتر از بقیه می توانستند این نسخه را دریافت کنند.

منابع بیشتر برای آشنایی با دات نت فریم ورک 4.0

من قبلاً در این وبلاگ در مطالبی به بررسی دات نت فریم ورک 4.0 پرداخته بودم. می توانید برای آشنایی بیشتر با این نسخه آن ها را مطالعه کنید. در آینده به بررسی کامل ویژوال استادیو 2010 نیز خواهیم پرداخت که جزوی از همین سری پست ها خواهد بود.

در آخر می توانید برای کسب اطلاعات بیشتر وبلاگ ScottGu را بخوانید که ایشون یک سری پست در مورد ویژگی های جدید این نسخه نوشته اند و در آینده هم خواهند نوشت.خواندن وبلاگ Scott Hanselman نیز توصیه می شود.

برای اطلاع از به روز رسانی این وبلاگ، مشترک فید فراسان شوید! چطور مشترک شویم!

[Code to look] یکشنبه 20 اردیبهشت 88

من اعتقاد دارم که یکی از بهترین راه های یادگیری قابلیت های زبان های برنامه نویسی و فناوری های جدید برنامه نویسی، نگاه کردن به سورس کدهای آماده ای است که برای منظورهای مختلف نوشته شده اند. سایت هایی مثل گالری کد MSDN و سایت CodeProject شامل کدهای نمونه بسیار خوبی در مورد زبان های سی شارپ و ویژوال بیسیک و فناوری های جدید پلت فرم دات نت هستند. از این پس هر 10 روز یکبار در این وبلاگ شاهد پست هایی با عنوان «[Code to look]» خواهید بود که شامل لینک به تعدادی کد نمونه جالب و آموزشی از وب سایت های فوق خواهند بود. سعی میکنم نظم 10 روز یکبار این پست ها را حتماً رعایت کنم.

Employee Info Starter Kit

این پروژه قابلیت مدیریت اطلاعات کارمندان یک شرکت کوچک را دارد و به شما نشان می دهد که چگونه یک برنامه تجاری کوچک بنویسید. با نگاه کردن به کدهای این پروژه نکات زیادی از ASP.NET و SQL Server یا خواهید گرفت.

دریافت کنید

Asynchronous Sockets

این کد با استفاده از کتابخانه Nito.Async امکان فرستادن و دریافت پیغام، با استفاده از پروتکل TCP/IP دارد. این کد نمونه، نحوه ایجاد یک برنامه کلاینت/سرور که قادر به ارتباط با یکدیگر توسط برنامه نویسی سوکت هستند، را به شما نشان می دهد.

دریافت کنید

C# Samples for Visual Studio 2008

کدهای نمونه سی شارپ 2008 که شامل نمونه کدهایی است که امکانات جدید سی شارپ 2008 را به شما یاد می دهند.

دریافت کنید

Visual Basic 2008 Samples

کدهای نمونه ویژوال بیسیک 2008 که شما را با امکانات جدید این زبان محبوب با استفاده از مثال های متعدد، آشنا می کند.

دریافت کنید

Chess Board

بازی شطرنج ساده ای که با استفاده از سی شارپ 2005 نوشته شده و حتماً مطالب زیادی برای یاد دادن به شما دارد!

دریافت کنید

Glass Button using GDI+

نحوه ایجاد یک دکمه زیبا که به Glass Button معروف است را به شما در سی شارپ 2005 آموزش می دهد.

دریافت کنید

Show Your Data on Google Map using C# and JavaScript

همانطور که از عنوانش مشخص است به شما یاد می دهد که چگونه اطلاعات برنامه خودتان را روی سرویس نقشه گوگل توسط سی شارپ و جاوا اسکریپت نشان دهید.

دریافت کنید

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

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

ویژگی های جدید ویژوال استادیو 2008 از زبان یک دختر 5 ساله!!

میدونم الان برای ذکر ویژگی های ویژوال استادیو و دات نت فرم ورک 3.5 کمی دیر شده است اما پیشنهاد میکنم حتماً این ویدئو را ببینید. در این ویدئوی جالب یک دختر شیرین زبان 5 ساله به نام Adah ویژگی های جدید ویژوال استادیو 2008 را برای شما به شکلی جالب توضیح می دهد!

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

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

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