সংস্করণ নিয়ন্ত্রণের মন্তব্যের জন্য অন্যান্য ব্যবহারকারীরা / সুপারিশ করেন - অতীত বা বর্তমান কাল?
অর্থাত
- এক্সকে y হতে পরিবর্তন করা হয়েছে।
- অথবা
- এক্সকে y হতে পরিবর্তন করা হচ্ছে ।
সংস্করণ নিয়ন্ত্রণের মন্তব্যের জন্য অন্যান্য ব্যবহারকারীরা / সুপারিশ করেন - অতীত বা বর্তমান কাল?
অর্থাত
উত্তর:
মন্তব্যগুলি প্রসঙ্গে পাঠ করা উচিত, তাই:
কোনও পদ্ধতির উপরে উত্সের মন্তব্যের জন্য, বা কিছু আচরণ হওয়ার আগে:
// This function does X
function doX() { ... }
কিছু আচরণের পরে উত্স মন্তব্য জন্য
function doX() {
widget.doY()
// did Y to widget to prepare it for Z
...
}
এবং প্রতিশ্রুতিবদ্ধ বার্তা জন্য
এক্স এক্স পরিবর্তন হয়েছে
মিশ্র উদাহরণ:
// This function does X
function doX() {
widget.doY()
// did Y to widget to prepare it for Z
....
}
অতীত - যেহেতু ভবিষ্যতে যে কেউ এটি পড়বে সে অতীতের মতো ঘটে যাওয়া পরিবর্তনের কাজটিকে উল্লেখ করবে।
"পরিবর্তন" হিসাবে কোনও কিছুকে বোঝানো বলতে বোঝায় যে আপনি বর্তমানে পরিবর্তনটি প্রক্রিয়ায় রয়েছেন এবং কোডটি শেষ নাও হতে পারে।
দ্রষ্টব্য: ব্যক্তিগতভাবে, যখন আমি খুব তীব্র পরিবর্তন ঘটে তখনই আমি পরিবর্তনের মন্তব্যগুলিতে রাখি।
মন্তব্যগুলি স্থিতিশীল জিনিস, তাই তাদের প্রোগ্রামের অবস্থা যেমন হয় তেমনটি উপস্থাপন করা উচিত , যা তা হতে চলেছে তা নয়। আপনার নির্দিষ্ট প্রশ্নের উত্তর দিতে, অতীত কাল ব্যবহার করা আরও উপযুক্ত হবে ।
যাইহোক, এই ধরণের মন্তব্যটি আপনার সংস্করণ নিয়ন্ত্রণ সিস্টেমের জন্য আরও উপযুক্ত। ম্যানুয়াল মন্তব্যের চেয়ে সংস্করণ নিয়ন্ত্রণ ট্র্যাকিং পরিবর্তন করার একটি আরও ভাল কাজ করে। সংস্করণ নিয়ন্ত্রণ ব্যবস্থা সহ, বর্তমান সময়ে নথিভুক্ত করা আরও উপযুক্ত কারণ এই মন্তব্যগুলি পরিবর্তনের প্রতিশ্রুতি দেওয়ার মুহুর্তে প্রয়োগ হয়। তবে, হয় কাজ করবে।
আমি অত্যন্ত সুপারিশ করব যে আপনার কোডের একমাত্র মন্তব্যগুলি কোডটি নিজেই বুঝতে হবে - উদ্দেশ্য, ব্যবসায়িক যুক্তি এবং ব্যতিক্রমী ক্ষেত্রে। আপনার সংস্করণ নিয়ন্ত্রণ সিস্টেমে পরিবর্তন সেট ডকুমেন্টেশন ছেড়ে দিন। আপনি যদি ভিসিএস ব্যবহার না করে থাকেন তবে এখনই শুরু করুন। এখানে বেশ কয়েকটি উচ্চ মানের ভিসিএস রয়েছে যা বিনামূল্যে (সাবভার্সন, মার্কিউরিয়াল, গিট ইত্যাদি)।
আমি অত্যাবশ্যক বর্তমান কালকে ব্যবহার করি, তাই এরকম কিছু:
"X" কে "y" হিসাবে পরিবর্তন করুন
এটি গিট বিকাশকারীদের দ্বারা প্রস্তাবিত :
- শরীরের উচিত একটি অর্থপূর্ণ প্রতিশ্রুতি বার্তা, যা:
- অত্যাবশ্যক, বর্তমান কাল ব্যবহার করে: "পরিবর্তন", "পরিবর্তিত" বা "পরিবর্তন" নয়।
এটি প্রথমে কিছুটা অদ্ভুত বলে মনে হতে পারে তবে আপনি যদি কোনও প্যাচ হিসাবে কোনও প্রতিশ্রুতি মনে করেন যা কিছু করে তবে এটি আরও অর্থবোধ করে। (এটি গিটের মতো ডিভিসিএসে বিশেষত সত্য, যেখানে আপনি আপনার রেপোতে কাজ করে এমন অন্যান্য ব্যক্তির কাছ থেকে চেঞ্জসেটগুলি টানেন))
কোড মন্তব্যগুলি পড়া স্বাভাবিক হওয়া উচিত।
যদি আপনি নিজেকে এই কোডটি " এক্স কোড করছে " বলে মনে হয় পড়াটি পড়ে থাকে তবে আপনার মন্তব্যটি উপস্থিত কালকে লিখতে হবে কারণ সম্ভবত কোডটি পড়ার সময় কেউ কীভাবে সেইভাবে ভাবছেন। যদি অপরের ওপর আপনি একটি নির্দিষ্ট বিন্দু আছেন চিন্তা ছিল "এই কোড করেনি ক্রস" তারপর, এটা অতীত কাল হওয়া উচিত। শেষ পর্যন্ত এটি ব্যক্তিগত পছন্দের দিকে নেমে আসে যদি না কোনও কারণে আপনি কীভাবে আপনার কোডটি মন্তব্য করতে পারেন (যেমন কোনও দল প্রকল্প বা কোনও শ্রেণির জন্য) ইত্যাদি guidelines
আপনি যদি গিট ব্যবহার করছেন কনভেনশনটি বর্তমান কালকে ব্যবহার করা হয় কারণ গিট সরঞ্জামগুলির সাথে উত্পন্ন বার্তা (যেমন মার্জ) বর্তমান কাল ব্যবহার করে।
আপনার অতীত কাল ব্যবহার করা উচিত।
কারণ আপনি এই প্রশ্নের উত্তর দিচ্ছেন যে এই প্রতিশ্রুতিটি কী অর্জন করেছিল? আপনি কী করেছেন তা আপনার ভিসিএসকে বলার মতো চিন্তা করুন:
কমিসিটি 123
এবিসি করতে XYZ পরিবর্তিত হয়েছে
পাল্টা উদাহরণ দেওয়ার জন্য, ভবিষ্যতের কালকে ব্যবহার করে এমন শোনা যায় যে আপনি অন্য কাউকে এটি করতে বলছেন:
123
এবিসি করতে এক্সওয়াইজেড পরিবর্তন করুন
এবং এখনকার উত্তেজনাপূর্ণ শব্দগুলি ব্যবহার করে আপনি মনে করছেন এটির মধ্য দিয়ে আপনি:
123 কে
এবিসি করতে XYZ পরিবর্তন করার প্রতিশ্রুতিবদ্ধ
বর্তমান কালটি ব্যবহার করুন: "এক্স থেকে Y তে পরিবর্তন করুন" প্রায় যেন এটি একটি পরিষ্কার টোডো তালিকার আইটেম।
সাধারণভাবে, চিত্রনাট্যের মতোই, "হতে" এবং "হয়" এর মতো ক্রিয়াগুলি এড়িয়ে চলুন। উদাহরণস্বরূপ, এটি "তিনি হাঁটছেন না", তবে "তিনি হাঁটেন।"
তবে এই বিশেষ উদাহরণে - যদি আপনি কোড মন্তব্য সম্পর্কে কথা বলছেন, এবং চেক-ইন মন্তব্যগুলি না করেন - আমি বিশ্বাস করি "এক্স থেকে Y তে পরিবর্তন করুন" একটি ভয়ানক মন্তব্য। এটি কোনও নতুন তথ্য যুক্ত করে না, এবং কোডটি পরিবর্তন করতে থাকলে এটি ভুলও হতে পারে। আপনি যদি কোনও পদ্ধতিতে (বা কোনও শ্রেণিতে) কোডটি বের করেন এবং তারপরে সেই পদ্ধতিটি নথিভুক্ত করেন তবে এটি আরও ভাল। যদি এটি যথেষ্ট পরিষ্কার হয় তবে কেবলমাত্র একটি ভাল পদ্ধতির নামই যথেষ্ট।
যার বিষয়ে ডকুমেন্টিং পদ্ধতির জন্য, আপনি ভবিষ্যতের কালকে ব্যবহার করতে পারেন, উদাহরণস্বরূপ: "প্রদত্ত সংখ্যাটি যদি negative abs
ণাত্মক হয় তবে সংখ্যার মাত্রা ফিরিয়ে দেবে।"
মন্তব্যগুলি (বা হওয়া উচিত) লিখিত যে কোনও কিছুর মত প্রকাশের মতো এবং এগুলি কেবল প্রাকৃতিক ভাষায় একই নিয়মগুলি অনুসরণ করা উচিত (পরিস্থিতি বা শৈল্পিকতার সাথে সম্পর্কিত সংক্ষিপ্তসারগুলি এবং সংক্ষিপ্ত বিবরণগুলি গ্রহণ করা।
বর্তমান কাল সম্পর্কে মন্তব্য ( .এই "এটি পরিবর্তিত হয়" বা "এটি পরিবর্তিত হচ্ছে" ) ইঙ্গিত দেয় যে ডকুমেন্টেড অ্যালগরিদম দ্বারা পরিচালিত হওয়া ডেটার টুকরোটি কোনওভাবে প্রভাবিত হচ্ছে। এটি হ'ল, কোডটি কী করছে বা ডেটা ম্যানিপুলেটেড হচ্ছে যা ঘটছে তা এটি নির্দেশ করে।
অতীত কালীন মন্তব্যগুলিতে মন্তব্যটি যেখানে অবস্থান করে তার আগে ঘটে যাওয়া কোনও কিছুর দৃ an়তা, পূর্বশর্ত বা উত্তর-শর্তকে নির্দেশ করা উচিত। উদাহরণ স্বরূপ:
কোডের এই ব্লকে প্রবেশ করার আগে ইনপুটটি ইতিমধ্যে বৈধ হয়ে গেছে
অথবা
এই কোডটি কার্যকর করার পরে ডেটা ফাইল করার জন্য লিখিত হয়েছে
অতীত কালের মন্তব্যগুলিও ব্যাখ্যা করতে পারে যে কেন কিছু করা হচ্ছে ( এই ফাংশনটি X এবং Y লিগ্যাসি ডাটাবেসের কোনও সমস্যা মোকাবেলায় করতে পারে does )
কোডটিতে নিজেকে অতীতে পরিবর্তনের ইঙ্গিত দেওয়ার জন্য মন্তব্যগুলি (।। X ওয়াইতে পরিবর্তন করা হয়েছিল ) কোডে থাকা উচিত নয়। পরিবর্তে উত্স কোড সংগ্রহস্থলগুলিতে সংশোধন মন্তব্য হিসাবে তাদের উপস্থিত থাকা উচিত।
ভবিষ্যতে মন্তব্যগুলিতে এমন একটি অবস্থার নির্দেশ করা উচিত যা পূরণ করা বা সম্বোধন করা দরকার তবে এক্স বা ওয়াই কারণে এখনই করা হচ্ছে না। উদাহরণ স্বরূপ:
আমরা যখন শেষ পর্যন্ত ডিবি স্থানান্তরিত করি তখন আমাদের এই যুক্তিটি পরিবর্তন করতে হবে
অথবা
টোডো: এ্যাসপ, ইনপুটটির বৈধতা পুনর্বিবেচনা - এটি এক্স বা ওয়াই ধরণের ইনপুটটির জন্য ব্যর্থ হতে পারে, এখনই কার্যকর করা যায় না এমন বিশাল পরিবর্তনের প্রয়োজন হতে পারে।
পরে টোডো ধরণের মন্তব্যের জন্য, ডকুমেন্টেশনের কিছু অন্য রূপ উপস্থিত থাকতে হবে যাতে নিশ্চিত হয়ে যায় যে এই জাতীয় পরিবর্তনগুলি ঘটেছিল। আপনি যে সর্বশেষ জিনিসটি চান তা হ'ল সময় এবং স্থানের নষ্ট হওয়া: পি
এটিকে নুনের দানার সাথে নিন তবে সাধারণত আমি নিজের মতামতগুলি করি যখন আমি সাধারণত নিয়ম অনুসরণ করি।
মন্তব্য করা মানুষের সাথে যোগাযোগের বিষয়ে, সুতরাং ধারাবাহিকতা গুরুত্বপূর্ণ হলেও নীতিগুলি যখন ভাল যোগাযোগের পথে আসে তখন নীতিগুলিতে ডুবে যাওয়া গুরুত্বপূর্ণ নয় । এটি বলেছিল, আমি নিম্নলিখিত ছদ্ম-মান ব্যবহার করি:
পছন্দসই আচরণের বর্ণনা দেওয়ার মতামতগুলি একটি বর্তমান-অত্যাবশ্যক বাক্যটির রূপ নেয়।
// Calculate the width of the curve at x height.
কোডিংয়ে সাধারণ থিমগুলি বর্ণনা করার জন্য অল-ক্যাপ কীওয়ার্ডগুলির একটি সেট ব্যবহার করুন (এবং এটি সন্ধান করা সহজ করে তুলুন):
// NOTE: <This code was written this way for a reason.>
// TODO: <This code is incomplete. Finish it.>
// HACK: <This code was written this way for a reason that you won't like.>
// FIXME: <This code has a known flaw. Fix it.>