
হ্যালো প্রোগ্রামার বন্ধুরা! কেমন আছেন সবাই? আশাকরি কোডিংয়ের ঝড়ঝাপটা ভালোই সামলাচ্ছেন। কোড লিখতে গিয়ে নিশ্চয়ই কখনো না কখনো “নামকরণ”-এর সমস্যায় পড়েছেন? 😅 বিশ্বাস করুন, এটা শুধু আপনার সমস্যা নয়! স্বয়ং Leon Bambrick ও বলেছিলেন:
“There are 2 hard problems in Computer Science: Cache Invalidation, Naming things, and Off-By-1 Errors.”
বুঝতেই পারছেন, Cache Invalidation আর Off-By-1 Error এর মত জটিল সমস্যার সাথে Naming জিনিসটাও সমান তালে পাল্লা দেয়! কোডিংয়ের ভাষায় সুন্দর ও বোধগম্য Name দেওয়াটা একটা আর্ট। আর এই আর্টকে আয়ত্ত করতে হলে Naming Convention সম্পর্কে ভালো ধারণা থাকা দরকার।
আজকে আমরা বহুল ব্যবহৃত Case Types গুলো নিয়ে আলোচনা করব। এই Convention গুলো শুধু আপনার কোডকে সুন্দর করে না, বরং Team Work এবং Maintenance এর কাজকেও অনেক সহজ করে দেয়। তাহলে চলুন, শুরু করা যাক! 🚀

আচ্ছা, প্রথমে একটু Basic আলোচনা করা যাক। আমরা যখন কোড লিখি, তখন Programming Language গুলো কিছু নির্দিষ্ট নিয়ম মেনে চলে। এর মধ্যে একটা হলো Space বা ফাঁকা জায়গা। Programming Language গুলো Space কে Reserved Character হিসেবে গণ্য করে। মানে আপনি যদি Variable বা Function এর Name এ Space ব্যবহার করেন, তাহলে Compiler confused হয়ে যাবে, Error দেখাবে! 😵
ধরুন, আপনি একটি Variable Declare করতে চান, যার Name একাধিক Word দিয়ে গঠিত। আপনি যদি এভাবে Space দিয়ে লেখেন:
number of donuts = 34
তাহলে Error আসা অবধারিত! কারণ Programming Language গুলো number, of, donuts - এই Word গুলোকে আলাদা Unit হিসেবে ধরবে। তারা ভাববে আপনি তিনটা আলাদা জিনিস Declare করতে চাচ্ছেন, কিন্তু তাদের মধ্যে কোনো সম্পর্ক নেই।
তাহলে উপায় কী? উপায় হলো Word গুলোকে জুড়ে দেওয়া, যাতে Compiler বুঝতে পারে যে এগুলো একটি Single Unit। আর এই জোড়া লাগানোর জন্যই দরকার পরে কিছু Naming Convention এর। এদেরকেই আমরা Snake Case, Kebab Case, Camel Case, Pascal Case ইত্যাদি নামে চিনি।
ব্যাপারটা অনেকটা এরকম: আপনি একটা Sentence লিখবেন, কিন্তু Space ব্যবহার করতে পারবেন না। তাহলে আপনি কী করবেন? নিশ্চয়ই Word গুলোর মাঝে অন্য কোনো Symbol ব্যবহার করবেন, অথবা Word গুলোর Case পরিবর্তন করে তাদের আলাদা করে দেখাবেন। Casings ও ঠিক একই কাজ করে!
সংক্ষেপে বলতে গেলে, Naming Convention ব্যবহারের কিছু গুরুত্বপূর্ণ কারণ হলো:
আশাকরি এতক্ষণে বুঝতে পেরেছেন, Naming Convention কোডিংয়ের জন্য কতটা জরুরি। তাহলে চলুন, এবার বিভিন্ন Case Types নিয়ে বিস্তারিত আলোচনা করা যাক। 🤓

কোডিংয়ের জগতে বিভিন্ন ধরনের Case Types প্রচলিত আছে। এদের মধ্যে সবচেয়ে জনপ্রিয় কয়েকটি হলো:
আমরা এখন এই Case Type গুলো নিয়ে বিস্তারিত আলোচনা করব, উদাহরণ দেবো, এবং দেখবো আপনার কোডের জন্য কোনটা সবচেয়ে ভালো।

Snake Case হলো সবচেয়ে জনপ্রিয় Case গুলোর মধ্যে অন্যতম। এই Case এ Word গুলোর মাঝে Underscore (_) ব্যবহার করা হয়। আর হ্যাঁ, Snake Case এর একটা গুরুত্বপূর্ণ নিয়ম হলো, প্রতিটি Letter হবে Lowercase!
Snake Case এর নামকরণটা বেশ মজার। সাপের শরীর যেমন এঁকেবেঁকে চলে, Snake Case এ Word গুলোও Underscore দিয়ে জুড়ে জুড়ে সেরকম একটা রূপ নেয়।
উদাহরণ দেওয়া যাক:
user_name = "John Doe" number_of_apples = 10 file_path = "/home/user/documents/report.pdf"
এখানে আমরা দেখছি, প্রতিটি Variable Name এ Word গুলো Underscore দিয়ে আলাদা করা হয়েছে এবং প্রতিটি Letter Lowercase এ লেখা হয়েছে।
Snake Case সাধারণত Variable Name, Function Name এবং File Name এর জন্য ব্যবহার করা হয়। বিশেষ করে Python Language এ Snake Case এর ব্যাপক প্রচলন রয়েছে। Python এর Code Style Guide, PEP 8 এ Snake Case ব্যবহারের উপর জোর দেওয়া হয়েছে।
Database এর Table এবং Column Name এর ক্ষেত্রেও Snake Case ব্যবহার করা হয়। অনেক Database System Snake Case কে Default Naming Convention হিসেবে ব্যবহার করে।
Snake Case এর কিছু সুবিধা হলো:
তবে Snake Case এর কিছু অসুবিধাও আছে:
আরেকটা কথা, Snake Case এর একটা Uppercase Version ও আছে, যাকে আমরা Screaming Snake Case বলি! 📢 এই Case এ প্রতিটি Letter Uppercase এ লেখা হয় এবং Word গুলোর মাঝে Underscore ব্যবহার করা হয়। Screaming Snake Case সাধারণত Constants Declare করার জন্য ব্যবহার করা হয়। Constants মানে হলো এমন Data Item, যার Value Program চলাকালীন পরিবর্তন করা যায় না।
উদাহরণ:
PI = 3.1416 MAX_SIZE = 1000

Kebab Case অনেকটা Snake Case এর মতোই। পার্থক্য শুধু একটাই - এখানে Underscore এর বদলে Dash (-) ব্যবহার করা হয়। আর নিয়ম সেই একই - সবকিছু Lowercase এ! Kebab Case এর নামকরণটা এসেছে Kebab থেকে। Kebabs যেমন Stick এ গেঁথে তৈরি করা হয়, তেমনি Kebab Case এ Word গুলো Dash দিয়ে গেঁথে দেওয়া হয়।
উদাহরণ:
user-name = "John Doe" number-of-apples = 10 file-path = "/home/user/documents/report.pdf"
Kebab Case ও বেশ Human-Readable। তবে এর ব্যবহার Snake Case এর চেয়ে তুলনামূলকভাবে কম। Kebab Case সাধারণত URL এ ব্যবহার করা হয়।
URL (Uniform Resource Locator) হলো Internet এ কোনো Web Page বা Resource খুঁজে বের করার জন্য Address। আপনি যখন Browser এ কোনো Web Site এর Address Type করেন, তখন সেটাই হলো URL। Kebab Case URL কে Clean এবং Readable রাখতে সাহায্য করে।
Kebab Case এর কিছু সুবিধা হলো:
তবে Kebab Case এর কিছু অসুবিধাও আছে:

Camel Case এর নামটা শুনেই নিশ্চয়ই বুঝতে পারছেন, এখানে Word গুলোর Case পরিবর্তন করে উটের পিঠের মতো একটা আকৃতি তৈরি করা হয়! Camel Case এ প্রথম Word টা Lowercase দিয়ে শুরু হয়। এরপরের Word গুলোর প্রথম Letter Capitalize করা হয়।
Camel Case এর নামকরণটা বেশ মজার। উটের পিঠ যেমন উঁচুনিচু হয়, Camel Case এ Word গুলোর Case ও সেরকম উঁচুনিচু হয়।
উদাহরণ:
userName = "John Doe" numberOfApples = 10 filePath = "/home/user/documents/report.pdf"
এখানে userName এ প্রথম Word user Lowercase, তারপর Name এর N Capital। দেখতে অনেকটা উটের পিঠের মতো উঁচুনিচু লাগছে, তাই না? 😉
Java, JavaScript এবং TypeScript এ Variable Name, Function Name এবং Method Name এর জন্য Camel Case বহুল ব্যবহৃত। এই Language গুলোর Coding Style Guide এ Camel Case ব্যবহারের উপর জোর দেওয়া হয়েছে।
Camel Case এর কিছু সুবিধা হলো:
তবে Camel Case এর কিছু অসুবিধাও আছে:

Pascal Case অনেকটা Camel Case এর মতোই, কিন্তু এখানে একটা ছোট্ট পার্থক্য আছে। Pascal Case এ প্রথম Word এর প্রথম Letter ও Capital হয়! মানে প্রতিটি Word এর প্রথম Letter ই বড় হাতের হবে!
Pascal Case এর নামকরণ করা হয়েছে Blaise Pascal নামক একজন বিখ্যাত Mathematician এবং Philosopher এর নামানুসারে।
উদাহরণ:
UserName = "John Doe" NumberOfApples = 10 FilePath = "/home/user/documents/report.pdf"
Class Name দেওয়ার জন্য Pascal Case ব্যবহার করা হয়। Object-Oriented Programming এর ক্ষেত্রে Class এর Name Pascal Case এ দেওয়াই ভালো। এতে Code এর Structure বুঝতে সুবিধা হয়।
Pascal Case এর কিছু সুবিধা হলো:
তবে Pascal Case এর কিছু অসুবিধাও আছে:
এতক্ষণে নিশ্চয়ই Case Types গুলো নিয়ে আপনার মনে অনেক প্রশ্ন ঘুরপাক খাচ্ছে। কোনটা ব্যবহার করবেন, আর কোনটা করবেন না - সেটা নিয়ে Confused হওয়াটা স্বাভাবিক। সত্যি বলতে, এর কোনো Single Answer নেই। আপনার জন্য কোনটা Best, সেটা নির্ভর করে আপনার Situation এর উপর।
তবে কিছু General Guideline অনুসরণ করতে পারেন:
সবচেয়ে Important বিষয় হলো, আপনি যেটা ব্যবহার করেন না কেন, সেটা যেন Clean, Readable এবং Consistent হয়। আপনার কোড যেন অন্য প্রোগ্রামারদের কাছে বোধগম্য হয়।

আশাকরি, এই টিউনটি পড়ে Case Types গুলো সম্পর্কে আপনাদের ধারণা Clear হয়েছে। কোডিংয়ের দুনিয়ায় কোনটা কখন কাজে লাগবে, সেটাও বুঝতে পেরেছেন। Naming এর এই যুদ্ধে আপনিই বিজয়ী হবেন, যদি আপনি সঠিক অস্ত্র (মানে Naming Convention) ব্যবহার করতে পারেন।
আজই আপনার কোডে Naming Convention ব্যবহার করা শুরু করুন এবং আপনার কোডকে আরও সুন্দর, Readable এবং Maintainable করে তুলুন। Happy Coding! 💻🎉
আমি সোহানুর রহমান। সুপ্রিম টিউনার, টেকটিউনস, ঢাকা। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 12 বছর 2 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 675 টি টিউন ও 200 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 123 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।
কখনো কখনো প্রজাপতির ডানা ঝাপটানোর মত ঘটনা পুরো পৃথিবী বদলে দিতে পারে।