আমার মনে আছে ভিবি 4 শিখতে এবং কোনও ফর্মের উপর একটি বোতাম টেনে নিয়ে যাওয়া, সেই বোতামটিতে ডাবল-ক্লিক করা এবং সেই ইভেন্টের হ্যান্ডলারে কোড টাইপ করা যা আমি সবেমাত্র যাদুকরভাবে আশীর্বাদ পেয়েছি। কিউবিএসআইসি থেকে এসে আমি "ভিবি" -র "ভি" দিয়ে শিহরিত হয়েছি, টুকরো টুকরো রুটির পর থেকে ভিজ্যুয়াল ডিজাইনার আক্ষরিক অর্থে সেরা জিনিস।
অবশ্যই আপনি সে সমস্ত প্রোগ্রামটি করতে পারেন তবে "ভি" এর যাদুটি আপনাকে এতটাই আবেদন করেছিল যে আপনি কেবল সেই বোতামটি টানতে সহায়তা করতে পারেন নি। আমরা সেই পথটি নিতে উত্সাহিত হয়েছিলাম।
কিন্তু তারপরে কয়েক বছর আগে আমি সি # এবং। নেট ফ্রেমওয়ার্ক সম্পর্কে শিখতে শুরু করেছিলাম এবং আমি জানতাম যে আমি জানতাম সবে উইন্ডোটি সরে গেছে তার দ্বারা মুগ্ধ হয়েছিল। ভিবি 6 তে প্রচুর যাদু চলছে যা সম্পূর্ণরূপে। নেট-এ উন্মোচিত হয়েছে: InitializeComponents
উদাহরণস্বরূপ কনস্ট্রাক্টর এবং পদ্ধতিটি নিন। পরবর্তীকালে আপনি সরঞ্জামবাক্স থেকে টানা সমস্ত নিয়ন্ত্রণ দাবী, আপনার নিবন্ধিত সমস্ত ইভেন্ট এবং ডিজাইনারটিতে আপনি যে বৈশিষ্ট্যগুলি সেট করেছেন সেগুলি খুঁজে পেতে পারেন।
এবং এটা ঠিক ... আমার ধারণা। এটি ঠিক, আমার মনে হচ্ছে আমি যা করছি তার "নিজের" নেই, এই কোডটি যা আমি কেবল ডিজাইনারের মাধ্যমে সংশোধন করতে পারি তা হ্যাককে আমার থেকে বিরক্ত করে। প্রতিবার যখন আপনি একটি বোতামটি একটি ফর্ম থেকে অন্য ফর্মটিতে "ঠিক আছে" অনুলিপি করেন (কখনও কখনও তার ভাইয়ের সাথে "বাতিল করুন"), আপনি আসলে কোডটির নকল করছেন, এবং এটি কি পাপ নয়? DRY, নিজেকে পুনরাবৃত্তি করবেন না, পোপ বলেছেন ।
ধর্ম এবং চিন্তার স্কুলগুলি একত্রে, সমস্ত উদ্দেশ্যমূলকতার জন্য, আমরা কি পরিবর্তে বেস ফর্মগুলি থেকে ফর্মগুলি নেওয়া উচিত, এবং "ওকে" বোতামটি (এবং তার সমস্ত বন্ধুরা) বেস ফর্মটিতে বাস করা উচিত নয়? এর মতো কিছু FormBase
যা থেকে প্রাপ্ত DialogFormBase
; সমস্ত ক্লাস বিনা সময়ে তৈরি হয়েছে ... কোড টাইপ করে। ক্লাসটি কীভাবে ইনস্ট্যান্ট করা হয় তার উপর নির্ভর করে বোতামগুলি তৈরি করা হয় (উদাহরণস্বরূপ কোনও কনস্ট্রাক্টর এনুম আর্গুমেন্ট কোন বোতামটি তৈরি করতে হবে তা নির্ধারণ করে), নিয়ন্ত্রণগুলি বিভক্ত প্যানেল এবং প্রবাহ বিন্যাস প্যানেলের একটি বিন্যাসের ভিতরে রাখা হয়, ফর্মের মধ্যে যেমন ইনজেক্ট করা হয়Content
যা মূল কন্টেন্ট প্যানেলে ফিট করে। মাস্টার পৃষ্ঠাগুলি এবং সামগ্রী স্থানধারীদের সাথে এটিএসপিএনএই কি করে না? যখন আমার একটি নতুন "মাস্টার পৃষ্ঠা" দরকার হবে আমি ফর্মটি এনেছি, তবে এই নতুন "মাস্টার পৃষ্ঠা "টি এখনও বেস ফর্ম শ্রেণি থেকে প্রাপ্ত তাই ভিজ্যুয়ালগুলি পুরো অ্যাপ্লিকেশন জুড়ে সামঞ্জস্যপূর্ণ।
আমার কাছে যে অনেক অন্য কিছু আমি কখনো WinForms মধ্যে ডিজাইনার সঙ্গে কাজ করেছি চেয়ে বেশি কোড পুনঃব্যবহারের, এবং এটা এমনকি হার্ড ছিল না, এবং কোড একটি 200 লাইন পদ্ধতি সঙ্গে বিশৃঙ্খল নয় আমার কোন নিয়ন্ত্রণ, আমি পারেন যে আমার পছন্দ মত মন্তব্যগুলি রাখুন, তারা কোনও ডিজাইনার দ্বারা ওভাররাইট করা হবে না। আমি অনুমান করি যে এটি কেবল নিদর্শন এবং আর্কিটেকচারের বিষয়, যা আমাকে এই লিঙ্কটিতে নিয়ে এসেছিল: উইন্ডোজ ফর্মগুলির জন্য সেরা নকশা যা সাধারণ কার্যকারিতা ভাগ করে নেবে , যেখানে আমি বুঝতে পেরেছিলাম যে আমি সেখানে উপস্থিত ছিলাম, উত্তরটি ছাড়া , আমি ঠিক ঠিক কী করছেন, তবে এটি ডিজাইনার বিবেচনার কারণে ফর্ম উত্তরাধিকারের বিরুদ্ধে পরামর্শ দিচ্ছে। এই অংশটি আমি পাই না ।কারণ কোড গঠন বিবেচনার, ফর্ম ও নিয়ন্ত্রণ উত্তরাধিকার সঙ্গে শুভেচ্ছা বিশেষত, যা আমি অন্যান্য এড়াতে চেয়ে কোনো কারণ দেখতে ভাল এটা ডিজাইনার ভঙ্গ ।
আমরা সকলেই কেবল অলস হতে পারি না, তবে আমি কোন অংশটি মিস করছি?