জাভাস্ক্রিপ্টে লাইন সংখ্যা কমানোর চেষ্টা করা অনেক সময় আপনার কোড এবং মানসিকতার জন্য একটি প্যারাডক্স তৈরি করতে পারে। এই নিবন্ধে, আমরা এই প্যারাডক্সের বিভিন্ন দিক তুলে ধরব এবং দেখাবো কেন কম কোড লেখা সবসময় উপকারী হয় না।
যখন একজন ডেভেলপার লাইন সংখ্যা কমাতে চেষ্টা করেন, তখন তিনি সাধারণত বুলেট পয়েন্টে গিয়ে পৌঁছান। উদাহরণস্বরূপ, কিছু ডেভেলপার চেষ্টা করেন একক লাইনে বিভিন্ন কার্যকলাপ সম্পন্ন করতে, যা কোডের গঠনকে অগোছালো করে তোলে। এটি ব্যবহারকারীর অভিজ্ঞতার জন্য ক্ষতিকর হতে পারে, কারণ কোডের বার্তা তলিয়ে যায়।
মাঝে মাঝে কিছু ডেভেলপার বিভিন্ন রূপের সাহায্যে চেষ্টা করেন তাদের কোডের সহজাত পরিষ্কারতা বজায় রাখতে। কিন্তু, আমেরিকার দেশে করা একটি গবেষণায় দেখা গেছে যে ৩৩ শতাংশ ডেভেলপার মন্তব্য করেছেন, কম লাইন কোড লিখলে সমস্যা আরও বাড়তে পারে। কেন? সোজা উত্তর: পাঠযোগ্যতা হ্রাস পায়।
কিন্তু পাঠযোগ্যতা কি আদৌ এত গুরুত্বপূর্ণ? যদি নিজের কাজটি সম্পন্ন হয়, তবে কি সমস্যা? আসলে, পাঠযোগ্যতা বেশ গুরুত্বপূর্ণ। এক সমীক্ষায় দেখা যায়, ৭০ শতাংশ ডেভেলপার প্রথমে কোডের পাঠযোগ্যতা পারেন না এবং তারপর সমস্যার মুখোমুখি হন।
চিত্রকল্প করুন একজন তরুণ ডেভেলপার, সায়েসের কথা। সায়েস ছোটো কোড লেখায় গর্বিত ছিল এবং প্রতিটি প্রোজেক্টে 100% কার্যকারিতা রাখতে চেয়েছিল। কিন্তু, যখন তার কোড রিভিউ হতে শুরু করল, তখন তিনি বুঝতে পারলেন যে তার কম লাইন লেখা কোড সম্পর্কিত মন্তব্যগুলো বেশি এবং সমস্যা যেন বাড়তেই থাকল।
নতুন কৌশল এবং প্রযুক্তির আগমন যেমন অ্যারো ফাংশন এবং প্রেসারসহ বিভিন্ন ফিচারের কারণে, লাইন সংখ্যা কমানোর চাপ বেড়ে গেছে। কিন্তু এটা কি তৈরির সরলতা? কীভাবে ঐ সকল নতুন প্রযুক্তি বাস্তবায়নের মাধ্যমে স্থানীয় তথ্য সংরক্ষণ করে রাখতে পারে?
এখনকার বাজারে একটি প্রবণতা দেখা যাচ্ছে যেখানে মন্তব্যগুলি কোডের মূল অংশ থেকে ধীরে ধীরে মুছে ফেলা হচ্ছে। এই কারণে নতুন ডেভেলপাররা কোডে পরিবর্তন করতে হিমশিম খাচ্ছেন। এর অন্যতম কারণ হলো, সংক্ষিপ্ত কোডের চাহিদা।
অনেক সময় থার্ড-পার্টি লাইব্রেরি যেমন জেকুয়েরি ব্যবহার করা হয় সব কিছু একটি লাইনে লেখা যায় এমন কৌশলে একত্র করার জন্য। তবে, এই ব্যবস্থায় আপনার পণ্য চূড়ান্ত হবে কি না, তা নিশ্চিত করা যায় না। ভুলে গেলে চলবে না, এই লাইব্রেরি অতিরিক্ত জটিলতা সৃষ্টি করে, যা শেষপর্যন্ত আপনার কোডকে আরও বিপর্যস্ত করে তুলতে পারে।
ডেভেলপমেন্ট সফটওয়্যারের জটিলতার জন্য কোনভাবেই রক্ষা পাওয়া যায় না। তাই, মাস্টার্স ডাক্তার হিসেবে ডেভেলপারদের উচিত তাদের কোডে কঠোরতা বজায় রাখা। স্টার্টআপ সংস্থা ফেইসবুক বুঝতে পারছে যে, তাদের কোডের নমনীয়তা ও কার্যকারিতা অত্যন্ত গুরুত্বপূর্ণ।
কি হয়েছিল? ফেইসবুকের উদ্ভাবনী পদ্ধতি আরেকটি মুখ্য নিদর্শন হয়ে উঠেছে তারা নতুন ডেভেলপারদের জন্য শক্তিশালী কোডের গুরুত্ব তুলে ধরছে। আদর্শভাবে মনে রাখবেন, কোডের পাঠযোগ্যতা ও কার্যকারিতা সমান গুরুত্বের দাবিদার।
আধুনিক কোডিং স্টাইলগুলি যে শুধুমাত্র উৎপাদণশীলতার দিকে নজর দেয় তা নয়, এটা নিশ্চয়তা দেয় যে কোডটি গতিশীল। একই সাথে একই ধরনের কোড লিখতে থাকলে কোডের অপঞ্যাবিশেষ এনে দেয়। মাইক্রোসফটের গোপন গবেষণা দেখিয়েছে যে, অ্যালগোরিদমের ক্ল্যারিটি ও স্ট্রাকচারের আওতায় আসা খুব গুরুত্বপূর্ণ।
যখন কোডের মাধ্যমে অগ্রসর হওয়ার চেষ্টা করা হয়, পাঠযোগ্যতার অভাব হলে সময়, শ্রম এবং কোডের কার্যকারিতা হারাতে হয়। যেমন গল্প বলেছিলাম, সায়েস ছিল যেন এক পাঁঠা। কিন্তু জাভাস্ক্রিপ্ট প্যারাডক্স বুঝে নিয়ে সে তার কোডের বৈশিষ্ট্য উন্নয়ন করতে শুরু করেছিল।
জেনে রাখা ভালো, জনপ্রিয় হওয়ার জন্য ডেভেলপারকে কখনো কখনো কেস স্টাডি করতে হতে পারে। অন্তত তাত্ত্বিক বা যথেষ্ট গবেষণার মাধ্যমে তিনি নিশ্চয়তা দিতে পারেন তার কোড কতটা দক্ষ।
এখন আমি সকল ডেভেলপারদের জন্য একটি দিকনির্দেশনা দিতে চাই। এলগরিদমস সম্পূর্ণ আপনাকে প্রথমে আপনার কোডের উদ্দেশ্য সঠিকভাবে বুঝতে হবে। কারণ উদ্দেশ্যই মূল কথা, যেটি ভিত্তি স্থাপন করবে তার দক্ষতা।
অর্থাৎ, প্রতিটি ডেভেলপারের উচিত প্রথম কোডের কাঠামো নির্ধারণ করা। তারপর প্রয়োজন হলে শুধুমাত্র অতিরিক্ত লাইনে ড্রাফট তৈরি করা। অধ্যায় শেষ হলে পর্যালোচনা করা উচিত। এক্ষেত্রে উন্নত পাঠযোগ্যতা অর্জন হতে পারে।
রাশিয়ান রুবিক কিউবের মতোই এটি কঠিন। বহু অর্জনক্ষেত্র একত্রে আসছে। আপনার কোড সঠিকভাবে পর্যালোচনা করুন, কেননা এতে আপনি শুধু নিজেকে নয়, সহকর্মীকেও সহায়তা করছেন। পূর্বে বলা হয়েছিল: ‘একজন মানুষের সমস্যাগুলি মূল্যায়ন করতে চাইলে, তাকে তার কোডে দেখতে হবে!’
এখনতো মনে হচ্ছে, আমি একদম অন্ধকারে যাচ্ছি। কিন্তু জাভাস্ক্রিপ্টে ১০০ লাইন কোড লেখার চেয়ে ১০টি কৌশলে কাজ নিয়ে যেতে পারাটা অনেক বেশি ভাল। কিন্তু কিছু বিষয় হাস্যকর হয়ে যায় যখন ২ লাইনে সবকিছু ভারসাম্য আসে। তাই যেন একজন চিকিত্সকের লক্ষ্য হল রোগীর মুখের অভিব্যক্তি বোঝা, তেমন আপনার লক্ষ্য রাখতে হবে কোডের সহজাত তাৎপর্য বুঝতে।
পরিশেষে বলতে চাই, যদিও কোডিংয়ের উদ্দেশ্যে সংখ্যা হ্রাস একটি জটিল বিষয়, আমাদের লক্ষ্য অবশ্যই কোডের সঠিকতা ও পাঠযোগ্যতা বজায় রাখা। একটি নিরাপদ এবং কার্যকরী অ্যাপ তৈরির জন্য আমাদের এটি মাথায় রাখতে হবে।