সংস্করণ নিয়ন্ত্রণ মন্তব্য - অতীত বা বর্তমান কাল [বন্ধ]


12

সংস্করণ নিয়ন্ত্রণের মন্তব্যের জন্য অন্যান্য ব্যবহারকারীরা / সুপারিশ করেন - অতীত বা বর্তমান কাল?

অর্থাত

  • এক্সকে y হতে পরিবর্তন করা হয়েছে।
  • অথবা
  • এক্সকে y হতে পরিবর্তন করা হচ্ছে

27
আপনি "সংস্করণ নিয়ন্ত্রণ মন্তব্য পরীক্ষা" বলতে চাচ্ছেন না? আমি কখনই আসল কোডে পরিবর্তনগুলি ডকুমেন্টিং যুক্ত করি না। এটি এলোমেলো করে দেয়।
জনএফএক্স

1
আমি সত্যিই বিভ্রান্ত - যদি @ জনএফএক্স সঠিক হয়, তবে এটি সম্পূর্ণ আলাদা প্রশ্ন। আমি ব্যক্তিগতভাবে দেখতে পাচ্ছি না কেন @ রবার্ট সোর্স কোডে মন্তব্য বোঝাতে পারেন নি।
আরমান্ড

এফওয়াইআই: আমার অর্থ চেক ইন ছিল, "চেকিং" নয়
জনএফএক্স

দুঃখিত - কেবল বিভ্রান্তিটি পরিষ্কার করার জন্য আমি উত্স কোডে সংস্করণ নিয়ন্ত্রণ মন্তব্যগুলি নয় বরং মন্তব্য করেছি। প্রশ্ন আপডেট করা হয়েছে।
রবার্ট ডব্লু

উত্তর:


19

মন্তব্যগুলি প্রসঙ্গে পাঠ করা উচিত, তাই:

বর্তমান

কোনও পদ্ধতির উপরে উত্সের মন্তব্যের জন্য, বা কিছু আচরণ হওয়ার আগে:

// 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
    ....
}

এনবি আমি মনে করি উপরের কোডের সমস্ত মন্তব্যই অতিরিক্ত অতিরিক্ত, তবে তারা অগত্যা একটি তুচ্ছ উদাহরণ হতে পারে না।
আরমান্ড

7
এখন প্রশ্নটি পরিবর্তিত হয়েছে, এই উত্তরটি সামান্য অফ-টপিক।
আরমান্ড

22

অতীত - যেহেতু ভবিষ্যতে যে কেউ এটি পড়বে সে অতীতের মতো ঘটে যাওয়া পরিবর্তনের কাজটিকে উল্লেখ করবে।

"পরিবর্তন" হিসাবে কোনও কিছুকে বোঝানো বলতে বোঝায় যে আপনি বর্তমানে পরিবর্তনটি প্রক্রিয়ায় রয়েছেন এবং কোডটি শেষ নাও হতে পারে।

দ্রষ্টব্য: ব্যক্তিগতভাবে, যখন আমি খুব তীব্র পরিবর্তন ঘটে তখনই আমি পরিবর্তনের মন্তব্যগুলিতে রাখি।


10

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

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

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


3
+1, যদিও আমি মনে করি সংস্করণ নিয়ন্ত্রণের মন্তব্যগুলিও অতীত কাল হওয়া উচিত। :-)
এরিক কিং

আলাদা চেঞ্জলগ ফাইল থাকা খুব খারাপ নয়; সেখানে প্রতিশ্রুতিবদ্ধ মন্তব্যগুলিকে পৃথক করা খুব বেশি ক্ষতি করবে না, তবে প্রতিটি ফাইলের মধ্যে এগুলি স্প্রে করা কেবল বেদনাদায়ক আওয়াজ।
ডোনাল ফেলো

কমিটমেন্ট মাইজেজগুলি যে কোনও উপায়ে যেতে পারে। আমি এটি দেখার প্রবণতা হলাম কারণ সেই সময়কার দায়বদ্ধতার কারণ হিসাবে এটি ছিল বর্তমান ক্রিয়া। দিন শেষে, এটি ইংরেজির এমন একটি অঞ্চল যা কেশ বিভক্ত না করা সম্ভবত ঠিক। এটি হবে "eats, কান্ড এবং পাতা" মত নয় en.wikipedia.org/wiki/Eats,_Shoots_%26_Leaves
Berin Loritsch

10

আমি অত্যাবশ্যক বর্তমান কালকে ব্যবহার করি, তাই এরকম কিছু:

"X" কে "y" হিসাবে পরিবর্তন করুন

এটি গিট বিকাশকারীদের দ্বারা প্রস্তাবিত :

  • শরীরের উচিত একটি অর্থপূর্ণ প্রতিশ্রুতি বার্তা, যা:
    • অত্যাবশ্যক, বর্তমান কাল ব্যবহার করে: "পরিবর্তন", "পরিবর্তিত" বা "পরিবর্তন" নয়।

এটি প্রথমে কিছুটা অদ্ভুত বলে মনে হতে পারে তবে আপনি যদি কোনও প্যাচ হিসাবে কোনও প্রতিশ্রুতি মনে করেন যা কিছু করে তবে এটি আরও অর্থবোধ করে। (এটি গিটের মতো ডিভিসিএসে বিশেষত সত্য, যেখানে আপনি আপনার রেপোতে কাজ করে এমন অন্যান্য ব্যক্তির কাছ থেকে চেঞ্জসেটগুলি টানেন))


1
আমি সম্মত হই যে এটি প্রথমে অদ্ভুত বলে মনে হচ্ছে এবং এটিকে প্যাচ হিসাবে দেখা নিশ্চিতভাবেই যাওয়ার সঠিক উপায়। আমার করা একটি বার্তাটি আমার প্রতিশ্রুতি বার্তাটি পড়ার আগে আমার মাথায় "এই প্যাচটি হবে" আবৃত্তি করা। নিজেকে জিজ্ঞাসা করা থেকে "এটি এই প্যাচে আমি কী করলাম?" "স্থির থ্রেডিং বাগ) নিজেকে জিজ্ঞাসা করতে" এই প্যাচটি কী করবে? " (থ্রেডিং বাগটি ঠিক করুন)।
নিক নোলসন

5

এটা আসলে কিছু যায় আসে না; আমি মনে করি এটি ব্যক্তিগত স্টাইল এবং পছন্দ প্রায় প্রতিটি লেখার হিসাবে, কেবল নিজের সাথে এবং অন্যান্য মন্তব্যের সাথে সামঞ্জস্য থাকুন


2

কোড মন্তব্যগুলি পড়া স্বাভাবিক হওয়া উচিত।

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


1

আপনি যদি গিট ব্যবহার করছেন কনভেনশনটি বর্তমান কালকে ব্যবহার করা হয় কারণ গিট সরঞ্জামগুলির সাথে উত্পন্ন বার্তা (যেমন মার্জ) বর্তমান কাল ব্যবহার করে।


1

আপনার অতীত কাল ব্যবহার করা উচিত।

কারণ আপনি এই প্রশ্নের উত্তর দিচ্ছেন যে এই প্রতিশ্রুতিটি কী অর্জন করেছিল? আপনি কী করেছেন তা আপনার ভিসিএসকে বলার মতো চিন্তা করুন:

কমিসিটি 123
এবিসি করতে XYZ পরিবর্তিত হয়েছে

পাল্টা উদাহরণ দেওয়ার জন্য, ভবিষ্যতের কালকে ব্যবহার করে এমন শোনা যায় যে আপনি অন্য কাউকে এটি করতে বলছেন:

123
এবিসি করতে এক্সওয়াইজেড পরিবর্তন করুন

এবং এখনকার উত্তেজনাপূর্ণ শব্দগুলি ব্যবহার করে আপনি মনে করছেন এটির মধ্য দিয়ে আপনি:

123 কে
এবিসি করতে XYZ পরিবর্তন করার প্রতিশ্রুতিবদ্ধ


0

বর্তমান কালটি ব্যবহার করুন: "এক্স থেকে Y তে পরিবর্তন করুন" প্রায় যেন এটি একটি পরিষ্কার টোডো তালিকার আইটেম।

সাধারণভাবে, চিত্রনাট্যের মতোই, "হতে" এবং "হয়" এর মতো ক্রিয়াগুলি এড়িয়ে চলুন। উদাহরণস্বরূপ, এটি "তিনি হাঁটছেন না", তবে "তিনি হাঁটেন।"

তবে এই বিশেষ উদাহরণে - যদি আপনি কোড মন্তব্য সম্পর্কে কথা বলছেন, এবং চেক-ইন মন্তব্যগুলি না করেন - আমি বিশ্বাস করি "এক্স থেকে Y তে পরিবর্তন করুন" একটি ভয়ানক মন্তব্য। এটি কোনও নতুন তথ্য যুক্ত করে না, এবং কোডটি পরিবর্তন করতে থাকলে এটি ভুলও হতে পারে। আপনি যদি কোনও পদ্ধতিতে (বা কোনও শ্রেণিতে) কোডটি বের করেন এবং তারপরে সেই পদ্ধতিটি নথিভুক্ত করেন তবে এটি আরও ভাল। যদি এটি যথেষ্ট পরিষ্কার হয় তবে কেবলমাত্র একটি ভাল পদ্ধতির নামই যথেষ্ট।

যার বিষয়ে ডকুমেন্টিং পদ্ধতির জন্য, আপনি ভবিষ্যতের কালকে ব্যবহার করতে পারেন, উদাহরণস্বরূপ: "প্রদত্ত সংখ্যাটি যদি negative absণাত্মক হয় তবে সংখ্যার মাত্রা ফিরিয়ে দেবে।"


0

মন্তব্যগুলি (বা হওয়া উচিত) লিখিত যে কোনও কিছুর মত প্রকাশের মতো এবং এগুলি কেবল প্রাকৃতিক ভাষায় একই নিয়মগুলি অনুসরণ করা উচিত (পরিস্থিতি বা শৈল্পিকতার সাথে সম্পর্কিত সংক্ষিপ্তসারগুলি এবং সংক্ষিপ্ত বিবরণগুলি গ্রহণ করা।

বর্তমান কাল সম্পর্কে মন্তব্য ( .এই "এটি পরিবর্তিত হয়" বা "এটি পরিবর্তিত হচ্ছে" ) ইঙ্গিত দেয় যে ডকুমেন্টেড অ্যালগরিদম দ্বারা পরিচালিত হওয়া ডেটার টুকরোটি কোনওভাবে প্রভাবিত হচ্ছে। এটি হ'ল, কোডটি কী করছে বা ডেটা ম্যানিপুলেটেড হচ্ছে যা ঘটছে তা এটি নির্দেশ করে।

অতীত কালীন মন্তব্যগুলিতে মন্তব্যটি যেখানে অবস্থান করে তার আগে ঘটে যাওয়া কোনও কিছুর দৃ an়তা, পূর্বশর্ত বা উত্তর-শর্তকে নির্দেশ করা উচিত। উদাহরণ স্বরূপ:

কোডের এই ব্লকে প্রবেশ করার আগে ইনপুটটি ইতিমধ্যে বৈধ হয়ে গেছে

অথবা

এই কোডটি কার্যকর করার পরে ডেটা ফাইল করার জন্য লিখিত হয়েছে

অতীত কালের মন্তব্যগুলিও ব্যাখ্যা করতে পারে যে কেন কিছু করা হচ্ছে ( এই ফাংশনটি X এবং Y লিগ্যাসি ডাটাবেসের কোনও সমস্যা মোকাবেলায় করতে পারে does )

কোডটিতে নিজেকে অতীতে পরিবর্তনের ইঙ্গিত দেওয়ার জন্য মন্তব্যগুলি (।। X ওয়াইতে পরিবর্তন করা হয়েছিল ) কোডে থাকা উচিত নয়। পরিবর্তে উত্স কোড সংগ্রহস্থলগুলিতে সংশোধন মন্তব্য হিসাবে তাদের উপস্থিত থাকা উচিত।

ভবিষ্যতে মন্তব্যগুলিতে এমন একটি অবস্থার নির্দেশ করা উচিত যা পূরণ করা বা সম্বোধন করা দরকার তবে এক্স বা ওয়াই কারণে এখনই করা হচ্ছে না। উদাহরণ স্বরূপ:

আমরা যখন শেষ পর্যন্ত ডিবি স্থানান্তরিত করি তখন আমাদের এই যুক্তিটি পরিবর্তন করতে হবে

অথবা

টোডো: এ্যাসপ, ইনপুটটির বৈধতা পুনর্বিবেচনা - এটি এক্স বা ওয়াই ধরণের ইনপুটটির জন্য ব্যর্থ হতে পারে, এখনই কার্যকর করা যায় না এমন বিশাল পরিবর্তনের প্রয়োজন হতে পারে।

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

এটিকে নুনের দানার সাথে নিন তবে সাধারণত আমি নিজের মতামতগুলি করি যখন আমি সাধারণত নিয়ম অনুসরণ করি।


0

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

  • পছন্দসই আচরণের বর্ণনা দেওয়ার মতামতগুলি একটি বর্তমান-অত্যাবশ্যক বাক্যটির রূপ নেয়।

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