আমি সাধারণত এই সমস্যাটি নিয়ে বেশ কয়েকটি পদক্ষেপ নিয়ে চলেছি, যখন কীভাবে আরও এগিয়ে যাবেন তা কখন বুঝতে পারছেন না stop
প্রথমে আপনি যা করেছেন তা করুন। DRY নিয়ে কঠোর হন। যদি আপনি একটি বড় লোমশ গণ্ডগোলের সাথে শেষ না করেন তবে আপনি শেষ করেছেন। যদি, আপনার ক্ষেত্রে যেমন আপনার কোনও সদৃশ কোড না থাকে তবে প্রতিটি বুলিয়ান এর মান 20 টি বিভিন্ন জায়গায় পরীক্ষা করে থাকে, পরবর্তী পদক্ষেপে যান।
দ্বিতীয়ত, কোডগুলি ব্লকে বিভক্ত করুন। বুলিয়ানগুলি প্রত্যক্ষভাবে একবার সরাসরি প্রয়োগ করা হয় (ভাল, কখনও কখনও কখনও কখনও) ডান ব্লকটিতে সরাসরি মৃত্যুদন্ড কার্যকর করতে। দুটি বুলিয়ান সহ, আপনি চারটি ব্লক দিয়ে শেষ করেন। প্রতিটি ব্লক প্রায় অভিন্ন। DRY চলে গেছে। প্রতিটি ব্লককে পৃথক পদ্ধতিতে পরিণত করবেন না । এটি আরও মার্জিত হবে, তবে সমস্ত কোডকে একটি পদ্ধতিতে রাখার ফলে যে কেউ রক্ষণাবেক্ষণ করছেন তাদের এটি দেখার জন্য যে চারটি জায়গায় প্রতিটি পরিবর্তন করতে হবে তা সহজ, বা এমনকি সম্ভব করে তোলে। সুসংহত কোড এবং একটি লম্বা মনিটর সহ, পার্থক্য এবং ভুলগুলি প্রায় সুস্পষ্ট হবে। আপনার কাছে এখন রক্ষণাবেক্ষণযোগ্য কোড রয়েছে এবং এটি মূল জট বাঁধার চেয়ে দ্রুত চলে।
তৃতীয়ত, আপনার প্রতিটি ব্লক থেকে কোডের নকল লাইনগুলি ধরার চেষ্টা করুন এবং এগুলি সুন্দর, সাধারণ পদ্ধতিতে পরিণত করার চেষ্টা করুন। কখনও কখনও আপনি কিছু করতে পারবেন না। কখনও কখনও আপনি বেশি কিছু করতে পারবেন না। তবে আপনি যা করেন তার প্রতিটি সামান্যই আপনাকে ডিআরওয়াইয়ের দিকে ফিরিয়ে নিয়ে যায় এবং কোডটি অনুসরণ করা কিছুটা সহজ এবং বজায় রাখতে নিরাপদ করে তোলে। আদর্শভাবে, আপনার আসল পদ্ধতিটি কোনও নকল কোড ছাড়াই শেষ হতে পারে। সেই মুহুর্তে, আপনি এটি বুলিয়ান প্যারামিটারগুলি ছাড়াই কয়েকটি পদ্ধতিতে বিভক্ত করতে চাইতে পারেন বা আপনি নাও করতে পারেন। কলিং কোডের সুবিধাই এখন প্রধান উদ্বেগ।
দ্বিতীয় ধাপের কারণে আমি ইতিমধ্যে এখানে ইতিমধ্যে বিশাল সংখ্যায় আমার উত্তর যুক্ত করেছি। আমি সদৃশ কোডটিকে ঘৃণা করি, তবে যদি সমস্যাটি সমাধানের এটি একমাত্র স্বচ্ছল উপায় হয় তবে এটি এমনভাবে করুন যাতে যে কেউ কী করছে তা এক নজরে জানতে পারবেন আপনি কী করছেন। একাধিক ব্লক এবং শুধুমাত্র একটি পদ্ধতি ব্যবহার করুন। নাম, ব্যবধান, প্রান্তিককরণ, ... সবকিছুতে ব্লকগুলিকে যথাসম্ভব অভিন্ন করুন। পার্থক্যগুলি তখন পাঠকের দিকে ঝাঁপিয়ে পড়ে। এটি DRY পদ্ধতিতে কীভাবে এটি পুনরায় লিখতে হবে তা স্পষ্ট করে দিতে পারে এবং যদি তা না হয় তবে এটি বজায় রাখা যুক্তিসঙ্গতভাবে সোজা হবে।
createTrajectory...
ফাংশন সমস্ত কল করে?