আমার পদ্ধতি বা পরিবর্তনশীল নামগুলি কি খুব দীর্ঘ? [বন্ধ]


15

সুতরাং আমি বর্তমানে কোডিংয়ের মাঝখানে ছিলাম, দুর্ভাগ্যক্রমে আমার জন্য, আমি "দ্য জোনে" এ ছিলাম তখন আমি নিজেকে ভেবেছিলাম, আমার পদ্ধতি / পরিবর্তনশীল নামগুলি কি দীর্ঘ হবে?

আমি জোন ছাড়ি পিওপি !

আমি এখানে এসে জিজ্ঞাসা করতে এসেছি, আমার পদ্ধতি / পরিবর্তনশীল নামগুলি কি খুব দীর্ঘ? তুমি বিচারক হউ! বোনাস যে কেউ লিখছে যে আমি কী লিখছি তা নির্ধারণ করে, যদিও আমি নিশ্চিত যে একজন গুরু তাড়াতাড়ি খুঁজে বের করবেন!

যাইহোক, এখানে আমার কিছু পদ্ধতি এবং পরিবর্তনশীল নাম রয়েছে।

পদ্ধতি: অনুসন্ধানব্লকডলিস্টফোর্ডব্লকডস্কোয়ারস (), কর্সারসওয়ারয়ারেক্সটেক্সটওএস্টলাইস্টঅনে ব্লকডস্কয়ার (), অনুসন্ধানব্লকডলিস্টফোর্ডব্লকড স্পয়ারস ()

চলক: isNextToBlockedSquares;

আমার ধারণা এখানে কেবলমাত্র একটি পরিবর্তনশীল যা খুব দীর্ঘ বলে মনে হয়েছিল।


উত্তর:


31

আপনার নামগুলি দৈর্ঘ্যের দিক থেকে আমার কাছে ঠিক আছে। তবে, যেভাবে তাদের নাম দেওয়া হয়েছে তা থেকে বোঝা যায় যে সম্ভবত কিছু নতুন ক্লাসের ক্রম রয়েছে?

উদাহরণস্বরূপ, পরিবর্তে searchBlockedListForBlockedSquares()আপনি থাকতে পারে blockedList.getBlockedSquares()। একইভাবে, isCurrentSquareNextToAtLeastOneBlockedSquare()হয়ে যায় currentSquare.isAdjacentToABlockedSquare()


সংলগ্ন শব্দটি আমি খুঁজছিলাম! ধন্যবাদ =)
ব্রায়ান হ্যারিংটন

@ ব্রায়ান: আপনাকে স্বাগতম :)
অ্যাডাম শিখুন

11

আমি বর্ণনামূলক পরিবর্তনশীল নামগুলিতে বিশ্বাস করি এমনকি যদি এর অর্থ দীর্ঘ পরিবর্তনশীল নাম হয়। এবং ইন্টেলিজেন্স আরও জনপ্রিয় হওয়ার সাথে সাথে আমি বিশ্বাস করি না এটি উত্পাদনশীলতার দিক থেকে বেশি প্রভাবিত করে।

আমি সংক্ষিপ্ত বিবরণগুলি ঘৃণা করি কারণ তারা ধারাবাহিকভাবে ব্যবহার করা প্রায় অসম্ভব। এছাড়াও, তারা দ্ব্যর্থক হতে পারে এবং এগুলি পড়তে আরও জটিল করে তোলে। এমনকি তারা যখন কোনও মানের অংশ হয়, আমি তাদের পছন্দ করি না। এছাড়াও, এটি যখন নেমে আসে, তারা আপনাকে অনেক সংক্ষিপ্ত বিবরণ না দিলে এগুলি অনেকগুলি অক্ষর সরিয়ে দেয় না। এবং সংক্ষিপ্ত বিবরণ পাঠযোগ্যতা বধ করে।

দীর্ঘ নামগুলির নামটি সবচেয়ে বড় সমস্যাটি পরিচয় করিয়ে দেয় যদিও কোডের দীর্ঘ লাইনগুলি কীভাবে পরিণত হতে পারে। দীর্ঘ নাম সহ একটি ফাংশন কল করা এবং এটি দুটি বা তিনটি দীর্ঘ ভেরিয়েবলের নামটি পাস করার পরে কোডের একটি দীর্ঘ লাইনের জন্য তৈরি করা যায়। সে কারণে আমি নিজের নামগুলি যতটা সম্ভব সংক্ষিপ্ত করে আবার রাখার চেষ্টা করি, এর পরিবর্তে আমি বর্ণনামূলক নামগুলি রাখি এমনকি যদি এটি লাইন মোড়ানো বা স্ক্রোলিং মানে।

যদিও আপনার উদাহরণের নামগুলি দেখছি, এই বিষয়টি যে ব্লকডস্কোয়ারের সাথে শেষ হয়েছে তা আমাকে ভাবতে বাধ্য করে যে নামের অংশটি অপ্রয়োজনীয় হতে পারে। আসলে, এর অর্থ এটিও হতে পারে যে এই আইটেমগুলি তাদের নিজস্ব শ্রেণিতে আবদ্ধ করা যেতে পারে, সম্ভবত এটির নাম ব্লকডস্কয়ারস। এই পরিবর্তনটি নামগুলি বেশ খানিকটা খাটো করে তোলে।


5

পরিবর্তনশীল নামটি হ'ল ভুল দৈর্ঘ্য হয় যখন এটি স্পষ্টভাবে এর উদ্দেশ্যটি বর্ণনা করে না। এটি খুব ছোট বা খুব দীর্ঘ হওয়ার ক্ষেত্রে প্রযোজ্য।

সংক্ষিপ্ত এবং ক্ষুদ্র ভেরিয়েবলের নাম অস্পষ্ট হতে পারে বা ভ্যারিয়েবলের সাথে আরও খারাপের কোনও সম্পর্ক নেই। ব্যাসিক ব্যাসিকের দিনগুলিতে, আমরা দোভাষী দ্বারা দুটি চরিত্রের নাম সীমাবদ্ধ ছিল। একটি বিশাল প্রোগ্রামে অর্থবহ নামগুলি নিয়ে আসা খুব কঠিন ছিল। একক বর্ণের পরিবর্তনশীল নামগুলি প্রায়শই লুপ এবং কাউন্টারগুলির জন্য ব্যবহৃত হয় তবে আমি মনে করি এগুলি অন্যথায় এড়ানো উচিত। for (i = 0; i < 10; i++) {...}ব্যবহার করে iএবং এটি বেশ সাধারণ। jএকটি গৌণ পরিবর্তনশীল নাম।

দীর্ঘ ভেরিয়েবলের নামগুলি দীর্ঘ হয় যখন এগুলি দীর্ঘ-বায়ুযুক্ত হয় বা খালি শব্দগুলিতে পূর্ণ হয়, এগুলি প্রয়োজনের চেয়ে দীর্ঘতর করে তোলে। যদি আমার কাছে একই জাতীয় নামযুক্ত ভেরিয়েবলগুলির একগুচ্ছ থাকে তবে আমি প্রচলিত সাধারণ অংশগুলি মুছে ফেলার চেষ্টা করব এবং নামগুলির স্বতন্ত্ররূপে সনাক্তকরণের অংশগুলি রাখব।

আমি রুবিতে এটি করা থাকলে আমি " isCurrentSquareNextToAtLeastOneBlockedSquare" নামকরণ করেছিলাম namedcurrentSquareNextToBlockedSquare?

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.