نمایش نتایج 1 تا 3 از 3

نام تاپیک: 3 قابلیت مهم تکنولوژی WPF

  1. #1
    کاربر دائمی
    تاریخ عضویت
    آبان 1389
    محل زندگی
    ایران
    پست
    182

    Post 3 قابلیت مهم تکنولوژی WPF

    با اینکه آینده زمل قابل پیش بینی نیست ولی افراد زیادی هستن که از این تکنولوژی تو برنامه هاشون استفاده میکنن و شاید این موجب بشه تا مایکروسافت مجبور به توسعه اش بکنه. تازگیا خبرهایی هم از ادامه پشتیبانی مایکروسافت از زمل با اومدن ویندوز 10 به گوش میرسه (که دعا می کنیم این خبرا راست باشه).
    خب تو این پست قراره بریم سراغ چند تا از قابلیت های زمل تا تردید اونایی که می خوان بیان سمتش کمی رفع بشه. پس با هم همراه بشیم.

    انعطاف پذیری
    به جرات میتونم بگم انعطاف پذیرتر از این جایی نمی تونین پیدا کنین. لامصب مثل خمیر نونوایی ـه ، به هر شکلی که بخوای می تونی درش بیاری. مثلاً می خوای کنترل نوار وضعیت (Progress Bar) رو که ظاهری راست داره رو به شکل دایره دربیاری (مثل نوار های وضعیت حلقه ای که تو IOS یا وینفون یا اندروید هستن). درواقع زمل بهتون این اجازه رو میده که به ساختار داخلی کنترل دسترسی داشته باشین و تغییرات مدنظر رو توش اعمال کنین.
    بازم یه مثال بزنم ایندفعه از ساختار درختی کنترل Button:
    اول از همه کنترلی از نوع ControlTemplate وجود داره که این در واقع پایه هر کنترلیه و بعد از اون نوعی بنام ButtonChrome هست که داخل کنترل قبلی قرار میگیره و در نهایت متن Buttton میمونه که اونم از نوع ContentPresenter ـه و اینم داخل کنترل قبلی جای میگیره.

    اتصال (Binding)
    انعطاف پذیری که بالا گفتم یه گوشش برمیگرده به اتصالات. معادل این قابلیت تو سی شارپ میتونه مقدار دهی متغیرها باشه، با این تفاوت که این مقدار دهی تو سی شارپ تو بعضی اوقات ممکنه طوری باشه که پردازنده هم درگیر بشه و در نهایت هنگ کردن برنامه رو در پی داره ولی زمل فکر همه جاش رو کرده. اتصالات طوری تو زمل برنامه ریزی شده که تاثیری رو برنامه نداشته باشه و بدون هیچ مکثی برنامه به کار خودش ادامه بده و همچنین تو این قابلیت دستتون بازه و می تونید بطور مثال از اکثر خاصیت های کنترل ها واسه اتصالات استفاده کنید.
    مثال: فرض کنید یه دیتابیس و یه لیست باکس دارین و اتصال فیلد های دیتابیس رو از طریق Binding به کنترل لیست انجام دادین. اگه بصورت دستی دیتابیس رو از منیجرش آپدیت کنین لیست هم بصورت خودکار اقدام به آپدیت خودش میکنه. بدون اینکه از کارای Binding خبری داشته باشیم خودش تو پشت پرده به آسونی هر چه تمام عملیات مربوطش رو انجام میده. اگه کمی به شبکه بندی آشنا باشین متوجه میشین که کار Binding تقریباً شبیه شبکه Circle ـه. به این طریق که وا می ایسته پشت در دیتابیس و هر موقع دیتابیس در رو باز میکنه و فیلد جدید رو بهش میده میبره و میده به کنترل هدف و بهش میگه خودت رو بروزرسانی کن :)

    بهینه سازی
    اگه بخواین تو بخش بهینه بودن WPf رو با WinForm مقایسه کنین باید بگم اصلاً قابل مقایسه با هم نیستن. تو WPf همه چی دست توسعه دهندست و در صورت آشنایی به تکنیک های بهینه سازی میشه برنامه رو از لحاظ حافظه مصرفی، پردازشی و گرافیکی بهینه کرد. مثال:
    بعضی از کنترل ها توی ساختار داخلیشون اجزایی دارن که زیاد مورد استفاده کاربر قرار نمی گیره در واقع یه جزء اضافی محسوب میشه که تو این حالت توسعه دهنده میتونه اونرو حذف کنه.
    میدونم حالا با خودتون میگین با حذف یه جزء کوچیک اتفاق خاصی رخ نمیده. درسته. ولی این ویژگی تو پروژه های بزرگ خیلی به درد می خوره (قطره قطره جمع گردد وانگهی دریا شود)
    خودتون هم میتونین امتحانش کنین :)

  2. #2
    کاربر دائمی
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    پونک
    سن
    42
    پست
    490

    نقل قول: 3 قابلیت مهم تکنولوژی WPF

    DependencyProperty و RoutedEvents هم باید به موارد بالا اضافه کرد. این نوع خاصیت چند تا ویژگی خیلی کاربردی داره که مهمترینش Automatic Property Changed Notification هست. همین طور مسیری که ایونتها تو LogicalTree طی میکنن خیلی میتونه کاربردی باشه.

    با استفاده از قابلیت های فوق العاده WPF کارهایی میشه کرد که با سایر تکنولوژیها تقریبا غیر ممکن هستن. از شر کامپوننت های تجاری هم راحت میشی. همین هم آدمو تنبل میکنه. اگه WPF توسعه پیدا نکنه من دیگه کلا سی شارپ رو میزارم کنار و میرم سراغ Qt.

  3. #3

    نقل قول: 3 قابلیت مهم تکنولوژی WPF

    نقل قول نوشته شده توسط elec60 مشاهده تاپیک
    DependencyProperty و RoutedEvents هم باید به موارد بالا اضافه کرد. این نوع خاصیت چند تا ویژگی خیلی کاربردی داره که مهمترینش Automatic Property Changed Notification هست. همین طور مسیری که ایونتها تو LogicalTree طی میکنن خیلی میتونه کاربردی باشه.

    با استفاده از قابلیت های فوق العاده WPF کارهایی میشه کرد که با سایر تکنولوژیها تقریبا غیر ممکن هستن. از شر کامپوننت های تجاری هم راحت میشی. همین هم آدمو تنبل میکنه. اگه WPF توسعه پیدا نکنه من دیگه کلا سی شارپ رو میزارم کنار و میرم سراغ Qt.
    سلام. wpf اینقدر قابلیت داره که اصلا وقت نمی شه همش رو حتی کلی به توضیح کشید

تاپیک های مشابه

  1. سوال: رنگ زمینه تکنولوژی WPF رو چه طور عوض کنیم؟
    نوشته شده توسط mohammadriano در بخش WPF
    پاسخ: 5
    آخرین پست: دوشنبه 20 شهریور 1391, 11:37 صبح
  2. آموزش: نمایش یک تصویر از هارد دیسک در تکنولوژی WPF
    نوشته شده توسط amir22448 در بخش WPF
    پاسخ: 1
    آخرین پست: جمعه 30 تیر 1391, 18:47 عصر
  3. بحث در مورد تغییر تکنولوژی پروژه به WPF
    نوشته شده توسط davoodrm666_666 در بخش WPF
    پاسخ: 7
    آخرین پست: سه شنبه 11 آبان 1389, 18:51 عصر
  4. قابلیت های WPF جز در ظاهر
    نوشته شده توسط saed2006 در بخش WPF
    پاسخ: 4
    آخرین پست: پنج شنبه 02 اردیبهشت 1389, 13:52 عصر
  5. ایجاد تب پیج با wpf با قابلیت بسته شدن
    نوشته شده توسط amir-haghighi در بخش WPF
    پاسخ: 2
    آخرین پست: دوشنبه 14 بهمن 1387, 22:38 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •