এটি সমাধানের ডিফল্ট উপায় হ'ল সেটিংস ফাইলগুলি ব্যবহার করা। সেটিংস ফাইলগুলির সমস্যাটি হ'ল আপনাকে সমস্ত সেটিংস সংজ্ঞায়িত করতে হবে এবং কোডটি লিখতে হবে যা ডেটা অনুলিপি করে এবং নিজেকে পিছনে ফেলে দেয়। আপনার ট্র্যাক রাখতে অনেক সম্পত্তি থাকলে বেশ ক্লান্তিযুক্ত।
আমি এটির জন্য একটি খুব নমনীয় এবং খুব সহজে ব্যবহারযোগ্য লাইব্রেরি তৈরি করেছি, আপনি কেবল এটি বলুন কোন বস্তুর কোন বৈশিষ্ট্য ট্র্যাক করা উচিত এবং এটি বাকীটি করে। আপনি যদি চান তবে এটি থেকে ক্রেপও কনফিগার করতে পারেন।
গ্রন্থাগারটিকে জট (গিথুব) বলা হয় , এটি সম্পর্কে আমি লিখেছিলাম একটি পুরানো কোডপ্রজেক্ট নিবন্ধ is
উইন্ডোর আকার এবং অবস্থান সম্পর্কে নজর রাখতে আপনি কীভাবে এটি ব্যবহার করবেন তা এখানে:
public MainWindow()
{
InitializeComponent();
_stateTracker.Configure(this)
.IdentifyAs("MyMainWindow")
.AddProperties(nameof(Height), nameof(Width), nameof(Left), nameof(Top), nameof(WindowState))
.RegisterPersistTrigger(nameof(Closed))
.Apply();
}
জট বনাম সেটিংস ফাইলগুলি: জোটের সাথে যথেষ্ট কম কোড রয়েছে এবং এটি খুব কম ত্রুটিযুক্ত কারণ আপনার কেবলমাত্র প্রতিটি সম্পত্তি একবার উল্লেখ করা দরকার । সেটিংস ফাইলগুলির সাথে আপনার প্রতিটি সম্পত্তি 5 বার উল্লেখ করতে হবে : একবার আপনি যখন স্পষ্টভাবে সম্পত্তি এবং কোডটিতে অতিরিক্ত চারবার তৈরি করেন যা মানগুলি পিছনে পিছনে নকল করে।
স্টোরেজ, সিরিয়ালাইজেশন ইত্যাদি সম্পূর্ণরূপে কনফিগারযোগ্য। এছাড়াও, আইওসি ব্যবহার করার সময়, আপনি এমনকি এটি হুকও করতে পারেন যাতে এটি সমাধান করা সমস্ত অবজেক্টের জন্য স্বয়ংক্রিয়ভাবে ট্র্যাকিংয়ের প্রয়োগ হয় যাতে সম্পত্তি স্থির করার জন্য আপনার যা করার দরকার তা হ'ল এটিতে একটি [ট্র্যাকযোগ্য] অ্যাট্রিবিউট চাপতে হবে।
আমি এই সমস্ত লিখছি কারণ আমি মনে করি লাইব্রেরিটি শীর্ষ স্থান এবং আমি এটি সম্পর্কে মুখ খুলতে চাই।