আমি ভাল নথিভুক্ত কোডের গুরুত্ব বুঝতে পারি। তবে আমি স্ব-ডকুমেন্টিং কোডের গুরুত্বও বুঝতে পারি । কোনও নির্দিষ্ট ক্রিয়াকলাপটি দৃশ্যতভাবে পড়া সহজতর, সফ্টওয়্যার রক্ষণাবেক্ষণের সময় আমরা তত দ্রুত এগিয়ে যেতে পারি।
এই বলে যে, আমি বড় ফাংশনগুলিকে অন্য ছোটগুলিতে আলাদা করতে চাই । তবে আমি এমন একটি বিন্দুতে যা করি যেখানে একটি শ্রেণীর পাঁচটি উপরে থাকতে পারে কেবল একটি পাবলিক পদ্ধতি পরিবেশন করতে। এখন পাঁচটি ব্যক্তিগত পদ্ধতি পাঁচটি জনসাধারণের দ্বারা গুণিত করুন এবং আপনি প্রায় পঁচিশটি লুকানো পদ্ধতি পান যা সম্ভবত সেই সর্বজনীন দ্বারা কেবল একবার ডাকা হবে।
অবশ্যই, এই সর্বজনীন পদ্ধতিগুলি পড়া এখন সহজ, তবে আমি সাহায্য করতে পারি না তবে মনে করি যে খুব বেশি ফাংশন থাকা খারাপ অভ্যাস।
[সম্পাদনা]
লোকেরা আমাকে জিজ্ঞাসা করছে যে কেন আমি মনে করি যে অনেক বেশি কাজ করা খারাপ অভ্যাস।
সহজ উত্তর: এটি একটি অন্ত্র অনুভূতি।
আমার বিশ্বাস, এক মুহুর্তের জন্য নয়, কয়েক ঘন্টা সফটওয়্যার ইঞ্জিনিয়ারিংয়ের অভিজ্ঞতার দ্বারা সমর্থিত। এটি কেবল একটি অনিশ্চয়তা যা আমাকে "লেখকের ব্লক" দিয়েছে, তবে একজন প্রোগ্রামারের জন্য।
অতীতে, আমি কেবল ব্যক্তিগত প্রকল্পগুলিই প্রোগ্রাম করে আসছি। এটি সম্প্রতি সম্প্রতি আমি টিম-ভিত্তিক প্রকল্পগুলিতে চলে এসেছি। এখন, আমি নিশ্চিত করতে চাই যে অন্যরা আমার কোডটি পড়তে এবং বুঝতে পারে।
আমি নিশ্চিত নই যে লেগ্যাবিলিটি কী উন্নতি করবে। একদিকে, আমি একটি বৃহত ফাংশনকে অন্যান্য ছোট ছোটগুলিতে বোধগম্য নাম দিয়ে আলাদা করার কথা ভাবছিলাম। তবে আমার আরেকটি দিক ছিল যে এটি কেবল অতিরিক্ত কাজ।
সুতরাং, আমি সঠিক পথ বেছে নেওয়ার জন্য নিজেকে আলোকিত করার জন্য এটি বলছি।
[সম্পাদনা]
নীচে, আমি কীভাবে আমার সমস্যার সমাধান করতে পারি তার দুটি সংস্করণ অন্তর্ভুক্ত করেছি। প্রথমটি কোডটির বড় অংশগুলি পৃথক না করে সমাধান করে । দ্বিতীয় করে পৃথক জিনিস।
প্রথম সংস্করণ:
public static int Main()
{
// Displays the menu.
Console.WriteLine("Pick your option");
Console.Writeline("[1] Input and display a polynomial");
Console.WriteLine("[2] Add two polynomials");
Console.WriteLine("[3] Subtract two polynomials");
Console.WriteLine("[4] Differentiate two polynomials");
Console.WriteLine("[0] Quit");
}
দ্বিতীয় সংস্করণ:
public static int Main()
{
DisplayMenu();
}
private static void DisplayMenu()
{
Console.WriteLine("Pick your option");
Console.Writeline("[1] Input and display a polynomial");
Console.WriteLine("[2] Add two polynomials");
Console.WriteLine("[3] Subtract two polynomials");
Console.WriteLine("[4] Differentiate two polynomials");
Console.WriteLine("[0] Quit");
}
উপরের উদাহরণগুলিতে, আধুনিকগুলি একটি ফাংশন কল করে যা কেবলমাত্র প্রোগ্রামের পুরো রানটাইম জুড়ে একবার ব্যবহার করা হবে।
দ্রষ্টব্য: উপরের কোডটি সাধারণীকরণ করা হয়েছে তবে এটি আমার সমস্যার মতো প্রকৃতির।
এখন, এখানে আমার প্রশ্ন: কোনটি? আমি কি প্রথমটিকে বেছে নেব, না দ্বিতীয়টি?