কোড ডকুমেন্টেশন কোথায় রাখবেন?


13

কোড ডকুমেন্টেশন লিখতে আমি বর্তমানে দুটি সিস্টেম ব্যবহার করছি (আমি সি ++ ব্যবহার করছি):

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

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

আমার সহকর্মী এখন ডোজিনে সমস্ত কিছু রাখার পরামর্শ দিয়েছেন, কারণ এরপরে আমরা এতে সমস্ত কিছু দিয়ে একটি বড় সহায়তা ফাইল তৈরি করতে পারি (মাইক্রোসফ্টের এইচটিএমএল ওয়ার্কশপ বা কিউটি সহকারী ব্যবহার করে)। আমার উদ্বেগটি হ'ল ডক্সিজেন-স্টাইলের ডকুমেন্টেশন সম্পাদনা করা আরও শক্ত (উইকের তুলনায়), বিশেষত যখন আপনি টেবিল, চিত্র, ... যুক্ত করতে চান বা ... (বা এমন কোনও ডিক্সিউনের জন্য 'প্রাকদর্শন' সরঞ্জাম রয়েছে যা আপনাকে জেনারেট করার প্রয়োজন হয় না) ফলাফল দেখার আগে কোডটি?)

বড় ওপেন সোর্স (বা বদ্ধ উত্স) প্রকল্পগুলি তাদের কোড ডকুমেন্টেশন লিখতে কী ব্যবহার করে? তারা কি এটিকে ডক্সিজেন স্টাইল এবং উইকের মধ্যে ভাগ করে দেয়? না তারা অন্য সিস্টেম ব্যবহার করে?

ডকুমেন্টেশন প্রকাশের সবচেয়ে উপযুক্ত উপায় কী? ওয়েব সার্ভার / ব্রাউজারের মাধ্যমে, বা কোনও বড় (বেশ কয়েকটি 100MB) সহায়তা ফাইলের মাধ্যমে?

কোড ডকুমেন্টেশন লেখার সময় আপনি কোন পন্থা গ্রহণ করেন?


ওপেন সোর্স পাইথন প্রকল্পগুলি তাদের কোড ডকুমেন্টেশনগুলি রিডথডোকগুলিতে রাখে
ব্যবহারকারী16764

উত্তর:


9

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

অন্যদিকে, আপনাকে যদি ভাবতে হয় যে এই সুবিধাগুলি আপনার উইকের স্বাচ্ছন্দ্যের চেয়ে বেশি। সম্পাদনা / জেনারেট / রিফাইন সম্পাদনা / পুনরায় উত্পন্ন জেনারেলটি আপনার উইকির সাথে আরও দ্রুত হতে পারে। আমি অনুমান করি যে আপনি আপনার ওভারভিউ পৃষ্ঠাগুলিকে একটি পৃথক ডক্সিজেন সাবপ্রজেক্ট হিসাবে রাখার সাথে চক্রটি বেশ দ্রুত পেতে পারেন fast আপনি ডক্সিজেনের বাহ্যিক সংযোগ ক্ষমতাগুলি ব্যবহার করতে পারেন যা অবশ্যই "দ্রুত পূর্বরূপ" এর প্রতিস্থাপন নয়, তবে সেই দিকের দিকেই এক ধাপ। আমি এ পর্যন্ত নিজে থেকে এটি করিনি, তবে আমি অনুমান করি যে এটি আপনার ক্ষেত্রে কার্যকর হয় কিনা তা জানতে চাইলে আপনার নিজেরাই এটি চেষ্টা করে দেখতে হবে।

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


4

প্রথমে কোড ডকুমেন্টেশন ব্যবহার করুন। সম্ভব হলে উইকি এবং অন্যান্য পদ্ধতি যুক্ত করুন

আমি জানি, এটি বজায় রাখা কঠিন হতে চলেছে।

ব্যবহারিক উত্তর:

ব্যবহারিক দিক থেকে, বিকাশকারীরা প্রথম যে কাজটি করে, এটি কোডটি পরীক্ষা করে।

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

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

কখনও কখনও, প্রকল্প পরিচালক এবং অন্যান্য কর্তারা নথিপত্রের যত্ন নেন না, আবার কখনও কখনও অন্য বিকাশকারীরা তা করেন না।

এবং, আমি সবচেয়ে ভাল করতে পারি এটি কোডে কিছু মন্তব্য যুক্ত করা।

শুভকামনা


3

কিছু অন্যান্য সিস্টেম ব্যবহার করে - উদাহরণস্বরূপ পাইথনের স্পিনিক্সটি দেখুন , তাদের একটি সমস্ত-ইন-ওয়ান ডক সিস্টেম রয়েছে যা সমস্ত কিছু তৈরি করে (এটি সি / সি ++ এর জন্যও কাজ করে)

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


ASCIIDOC উল্লেখ করার জন্য ধন্যবাদ। এটি একবার দেখুন।
প্যাট্রিক

2

ডক্সিজেন আপনাকে পিডিএফ, এইচটিএমএল, উইকি পৃষ্ঠাগুলি, আপনি যা ভাবতে পারেন তার প্রায় সবকিছু তৈরি করতে দেয়।

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


2

সংস্করণ ১.৮.০ ডোজিজেন মার্কডাউনকে সমর্থন করে , যা স্থির পৃষ্ঠাগুলি লেখার অভিজ্ঞতাকে উইকি সিস্টেমের মতোই সুবিধাজনক করে তুলতে পারে।


1

নির্ধারিত শ্রোতা

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

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

রক্ষণাবেক্ষণ

এই ডকুমেন্টেশনের উত্সটি কোথায় রাখবেন তা আপনার শ্রোতার উপর নির্ভর করবে এবং আপনার শ্রোতার জন্য কে লিখছেন।

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

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

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

ডকুমেন্টেশন সংহত

কিছু ডকুমেন্টেশন তৈরি করার জন্য সংহতকরণের প্রয়োজন হতে পারে তবে নোট করুন যে কেবলমাত্র ব্যবহারকারীই প্রয়োজনীয় সমস্ত ডকুমেন্টেশন অ্যাক্সেসের জন্য একটি একক জায়গা প্রত্যাশা করে।

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

বিকাশকারী উত্স থেকে দৃশ্যমান সমস্ত কিছু পছন্দ করে তবে বেশ কয়েকটি উচ্চ স্তরের নকশা নথি এবং কোডের বাহ্যিক বিশদ প্রোটোকল স্পেসিফিকেশন ডকুমেন্ট পেয়ে বেশ খুশি হয় তবে অগ্রাধিকার হিসাবে একই চেকআউটের মধ্যে within

আপনার ক্ষেত্রে

সত্যি কথা বলতে কি, আপনার উইকের ডকুমেন্টেশন সম্ভবত আপনার কোড-বেসে ডকুমেন্টেশনগুলির মতো নয়। এটি খুব একীভূত করতে বুদ্ধিমান হতে পারে না।

অন্যদিকে দুটি সংহত করার কয়েকটি সহজ উপায়ে সাশ্রয়ী হতে পারে।

  • উত্স ডকুমেন্টেশন সরঞ্জামগুলি (ডোজিজেনের মতো) এইচটিএমএল তৈরি করতে পারে এবং একটি উইকি একটি ওয়েব-সার্ভারে বাস করে। উইকির পাশাপাশি বিল্ট সংস্করণটি পরিবেশন করা এবং দুটি সংযোগের সাথে সংযোগ স্থাপন করা এটি একটি সহজ সংহত বিন্দু হবে।
  • কিছু উইকি পণ্য আপনাকে একটি ফাইল থেকে সরাসরি উইকি চালানোর অনুমতি দেয় যা আপনি কোড-বেসে চেক ইন করতে পারেন। কোডটিতে যুক্ত করে ডকুমেন্টেশন রাখার সময় এটি একটি সহজ ওয়াইসাইগ টুলিং দেয়।
  • পিডিএফের মতো অন্যান্য ফর্ম্যাটগুলিকেও সমন্বিত করা যেতে পারে তবে আপনি যে নির্দিষ্ট সরঞ্জামটি ব্যবহার করতে চান তা নেমে আসবে। আপনার উইকিকে মার্কডাউন ফাইলগুলিতে স্ক্র্যাপ করা এবং ডোজিনের (বা অন্যান্য সরঞ্জাম) মাধ্যমে তা খাওয়ানো বুদ্ধিমান হতে পারে। এটি উইকি এবং উত্স পৃথকভাবে পিডিএফ করার এবং পিডিএফ মার্জিং সরঞ্জামটি ব্যবহার করার অর্থ হতে পারে।

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


0

আপনি যদি এএসসিআইআই ব্যবহার করে থাকেন তবে আপনার সোর্স কোডের উচ্চতর অংশে আপনার ডকুমেন্টেশন ডেটা লুকিয়ে রাখতে হবে! তারপরে কেবলমাত্র সর্বাধিক চতুর (পড়া: যোগ্য) ব্যবহারকারীদের আপনার ডক্স ব্যবহারের সুযোগ রয়েছে।


0

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

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