TOC

This article is currently in the process of being translated into Tamil (~99% done).

About WPF:

WPF vs. WinForms

முந்தைய பாடத்தில் WPF மற்றும் WinForms இடையேயான வித்தியாசம் சற்று கண்டோம். இரண்டுமே ஒரே தேவைக்காக பயன்படுத்தப் பட்டாலும் இரண்டிற்கும் நிறைய வித்தியாசங்கள் உள்ளன. நீங்கள் WinForms பயன்படுத்தியதில்லை, WPF தான் நீங்கள் முதலாவதாக கற்கும் GUI ஃப்ரேம் ஒர்க் எனில் இந்த பாடத்தை தவிர்க்கலாம். எனினும் ஆர்வமிருந்தால் இந்த பாடத்தை வாசிக்கலாம்.

WinForms மற்றும் WPF இடையேயான முக்கிய வித்தியாசம் என்னவெனில் WinForms ஆனது விண்டோஸ் கண்ட்ரோல்களின் மேலே உள்ள ஒரு சாதாரண லேயர் ஆகும்.WPF என்பது அடிப்படையிலிருந்து அமைக்கப்பட்டது. இது விண்டோஸ் கன்ட்ரோல்களை எப்பொழுதும் சார்ந்திருப்பதில்லை. இது சிறிய வித்தியாசமாய் தெரியலாம். ஆனால் Win32/WinAPI சார்ந்திருக்கும் ஃப்ரேம் ஒர்க்கை நீங்கள் பயன்படுத்தியிருந்தால் வித்தியாசத்தை உணரலாம்.

இதற்கு முக்கிய உதாரணமாக படம் ஒன்றையும் டெக்ஸ்டையும் கொண்ட பட்டனைக் கூறலாம். இது விண்டோஸ் கண்ட்ரோல் கிடையாது. ஆகவே WinForms இதை உங்களுக்கு வழங்குவதில்லை. பதிலாக இமேஜை ஆதரிக்கும் பட்டனை வரையவோ அல்லது 3வது நபர் கண்ட்ரோலை உபயோகிக்கவோ செய்யலாம். WPF -ல் ஒரு பட்டன் ஆனது எதை வேண்டுமானாலும் கொண்டிருக்கலாம். ஏனெனில் அதைப் பொறுத்த வரை பட்டன் ஆனது அது உள்ளடக்கத்துடன் கூடிய ஒரு பார்டர் ஆகும். அது வெவ்வேறு நிலைகளைக் கொண்டது. (e.g. untouched, hovered, pressed). WPF பட்டன் ஆனது அதன் மற்ற கண்ட்ரோல்களைப் போலவே அதனுள் வேறு கண்ட்ரோல்களைக் கொண்டிருக்கலாம். உங்களுக்கு இமேஜ் சற்றும் டெக்ஸ்ட் ஆகியவற்றுடன் பட்டன் தேவை எனில் ஒரு பட்டனின் உள்ளே இமேஜ் கண்ட்ரோலையும் டெக்ஸ்ட்பிளாக் கண்ட்ரோல்களையும் வைக்கலாம். WinForms கண்ட்ரோல்களைப் பொறுத்தவரை இது கிடையாது . எனவே தான் பட்டன் , இமேஜ் போன்ற சாதாரண செயற்படுத்துதலுக்காக கூட பெரிய சந்தை உள்ளது.

இதைப் பொறுத்தவரை பெரிய பின்னடைவு என்னவெனில் winforms கொண்டு நாம் எளிதாக நிறைவேற்றும் விசயங்களில் WPFல் கடின உழைப்பு கொண்டு நிறைவேற்ற வேண்டியிருக்கும். உதாரணத்திற்கு விண்பார்ம்ஸ் ListViewItem -ல் ஒற்றை வரிகளில் நாம் நிறைவேற்றுவனவற்றை WPF -ல் இமேஜ் கொண்டு டெம்ப்லேட் உருவாக்குவதன் போது இதை உணரலாம்.

இது ஒரு வித்தியாசம் மட்டுமன்றி WPF கொண்டு நாம் நிறைவேற்றும் வேலைகளில் நீங்கள் வித்தியாசத்தை உணரலாம். நண்மைக்கோ அல்லது தீமைக்கோ WPF ஆனது தனக்கென்று தனி வழிகளில் செயற்படுகின்றது.நீங்கள் இன்னும் விண்டோஸ் வழியை பின் பற்ற தேவை இல்லை எனினும் இதை செய்வதற்கு சற்று கூடுதல் வேலை தேவை.

பின் வருவனவை wpf மற்றும் வின்ஃபார்ம்ஸ் ஆகியவற்றின் நண்மைகளாகும்.. இது நாம் என்ன காணவிருக்கின்றோம் என்பது பற்றிய யோசனையை தரும்.

WPF நண்மைகள்

  • புதியது. எனவே தற்போதைய தரநிலைகளுக்கு ஒத்திசைவு செய்கின்றது
  • மைக்ரோசாஃப்ட் இதை அதன் புது புதிய பயன்பாடுகளுக்கு பயன்படுத்துகின்றது. உதாரணம்: விசுவல் ஸ்டுடியோ.
  • நிறைய வளைந்து கொடுக்கும் தன்மை கொண்டது.புதிதாக கண்ட்ரோல்களை வாங்காமலோ அல்ல்து எழுதாமலோ நிறைய வேலை செய்யலாம்.
  • 3வது நபர் கண்ட்ரோல்களை நாம் வாங்கும் தேவை ஏற்படும் போது டெவலப்பர்களின் பார்வை wpf -தான் இருக்கும். ஏனெனில் அது புதியது,
  • xaml ஆனது உங்கள் GUI ஆனதை உருவாக்கவோ அல்லது எடிட் செய்யவோ போது வேலையை இரண்டாக பிரிக்கின்றது. அதாவது டிசைனர் (XAML) மற்றும் நிரலாளர்.(C#, VB,NET , etc) n செய்ய வேண்டியவை என பிரிக்கின்றது.
  • மேலும் டேட்டா பைண்டிங்க் ஆனது டேட்டா மற்றும் லேஅவுட் இடையே பிரிவு ஏற்படுத்துகின்றது.
  • ஹார்டுவேர் முடுக்கத்தை பயன்படுத்தி GUI வரைவில் நன்கு செயல் புரிகின்றது.
  • இது வெப் மற்றும் விண்டோஸ் இரண்டுக்குமே இண்டர்ஃபேஸ் உருவாக்க பயன்படுகின்றது.(Silverlight/XBAP)

WinForms நண்மைகள்:

  • இது பழையது. ஆகையால் பலரால் முயற்ச்சி மற்றும் சோதனை செய்யப்பட்டது.
  • ஏற்கனவே நிறைய 3வது நபர் கண்ட்ரோல்கள் இலவசமாக கிடைக்கின்றன.
  • நிறைய விசுவல் ஸ்டுடியோ டிசைனர்கள் வின்ஃபார்ம்ஸ் கொண்டு தான் பணிபுரிகின்றார்கள். ஏனெனில் WPF -ல் நிறைய கூடுதல் வேலைகள் செய்ய வேண்டியிருக்கும்.