Tuesday, December 3, 2019

WPF என்பது என்ன?



wpf எனப்படும் Windows Presentation Foundation ஆனது மைக்ரோ சாஃப்ட் நிறுவனத்தின் இப்போதைய அணுகு முறையாகும்.
GUI ஃப்ரேம்ஒர்க் எனப்படுவது என்ன? GUI என்பதின் முழு விரிவாக்கம் Graphical User Interface ஆகும். கம்ப்யூட்டரில் நாம் பணிபுரிவதற்கான இடை முகப்பை(Interface) விண்டோஸ் ஆனது GUI மூலம் நமக்கு வழங்குகின்றது. மற்றொரு உதாரணம் பிரவுசர் ஆனது நீங்கள் இந்த டாக்குமெண்டை பார்க்க உங்களுக்கு இடை முகப்பை (Graphical User interface) உங்களுக்கு வழங்குகின்றது.
லேபிள், டெக்ஸ்ட் பாக்ஸ் போன்ற GUI எலிமெண்ட்ஸ் கொண்ட பயன்பாடுகள் உருவாக்குவதற்கு GUI ஃப்ரேம் ஒர்க் நம்மை அனுமதிக்கின்றது. GUI ஃப்ரேம் ஒர்க் இல்லையேல் நாம் ஒவ்வொரு எலிமெண்டையும் வரையும் நிலை ஏற்படும். இது கடினமான வேலை என்பதால் GUI ஃப்ரேம் ஒர்க் ஆனது நமக்கு பயன்படுகின்றது. அதே போல் நிரலாளரும் பயன்பாடுகள் உருவாக்குவதில் கவனம் செலுத்தலாம்.
GUI ஃப்ரேம் ஒர்க்கானது நிறைய இருந்தாலும் டாட்நெட்டை பொறுத்த வரை Winforms மற்றும் WPF ஆகியவை பயன்பாட்டில் உள்ளது. WPF என்பது புதியதாகும். எனினும் Winforms என்பதும் பயன்பாட்டில் தான் மைக்ரோசாஃப்ட் வைத்திருக்கின்றது. இனிவரும் பாடத்தில் இவை இரண்டிற்கான வித்தியாசத்தை நாம் அறியலாம். இவை இரண்டும் ஒரே காரணத்திற்காகத் தான் பயன்படுகின்றது.அதாவது GUI அப்ளிகேசன்களை உருவாக்குவதற்கு.
அடுத்த பாடத்தில் Winforms மற்றும் 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 -ல் நிறைய கூடுதல் வேலைகள் செய்ய வேண்டியிருக்கும்.
நன்றி
முத்து கார்த்திகேயன்,மதுரை.

ads Udanz

No comments:

Post a Comment