একটি সামঞ্জস্যপূর্ণ কোড শৈলীর আসল মান কী


47

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

আমি লক্ষ্য করেছি যে কিছু টিমের সদস্য অনন্য কোডিং নিদর্শনগুলি এমন একটি বিন্দুতে ব্যবহার করেন যা আমি একাই স্টাইল থেকে লেখক কে তা এলোমেলোভাবে এলোমেলোভাবে একটি ফাইল বাছাই করতে পারি।

উদাহরণ 1 (এক-অফ ইনলাইন ফাংশন)

React.createClass({
  render: function () {
    var someFunc = function () {
      ...
      return someValue;
    };
    return <div>{someFunc()}</div>
  }
});

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

উদাহরণ 2 (আনবাউন্ড ফাংশন)

function renderSomePart(props, state) {
    return (
      <div>
        <p>{props.myProp}</p>
        <p>{state.myState}</p>
      </div>
    );
}

React.createClass({
  render: function () {
    return <div>{renderSomePart(this.props, this.state)}</div>;
  }
});

আমরা সাধারণত এটি করে থাকি (রাষ্ট্র এবং প্রপসগুলি পাস করা এড়ানো হয়):

React.createClass({
  renderSomePart: function () {
    return (
      <div>
        <p>{this.props.myProp}</p>
        <p>{this.state.myState}</p>
      </div>
    );
  },
  render: function () {
    return <div>{this.renderSomePart()}</div>;
  }
});

এই কোডিং নিদর্শনগুলি প্রযুক্তিগতভাবে সঠিক হলেও এগুলি বাকী কোডবেসের সাথে বা ফেসবুকের (প্রতিক্রিয়াটির লেখক) টিউটোরিয়াল এবং উদাহরণগুলিতে যে স্টাইল এবং প্যাটার্নগুলির দ্বারা ইঙ্গিত করেছে সেগুলির সাথে সামঞ্জস্যপূর্ণ নয়।

সময়মতো বিতরণ করার জন্য আমাদের দ্রুত গতি বজায় রাখতে হবে এবং আমি অযথা দলের উপর বোঝা চাপাতে চাই না। একই সাথে আমাদের যুক্তিসঙ্গত মানের স্তরে থাকা দরকার।

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

প্রশ্ন:

গ্রাহক এবং এর রক্ষণাবেক্ষণ বিকাশকারীগণ একটি সামঞ্জস্যপূর্ণ কোড বেস বনাম বনামের মতো অনুমান হিসাবে মূল্যকে কী বলে? এই জাতীয় অসঙ্গতিগুলি থেকে যায় এবং সম্ভাব্যভাবে ছড়িয়ে যায়?


50
ধারাবাহিক অর্থোগ্রাফার মান কত? পাঠ্য রচনা এবং লেখার ক্ষেত্রে একটি স্থায়ী, অবিচ্ছিন্ন গতি। ধারাবাহিক কোড শৈলীর মান কত? কোড পড়া এবং লেখার ক্ষেত্রে একটি স্থায়ী, ধারাবাহিক গতি। আপনি আর কি চাইতে পারেন?
কিলিয়ান ফুট

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

1
জোলের সেই বিষয়ে কিছু ভাল ধারণা রয়েছে। সংক্ষেপে, একটি ভাল কোডিং মান বাগগুলি দেখতে সহজ করে তোলে। joelonsoftware.com/articles/Wrong.html

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

1
@ ইউনিলাভিকে আপনার মেটাতে জিজ্ঞাসা করা উচিত।
রাবারডাক

উত্তর:


48

কোড স্থানান্তর সুবিধা

Reactআপনার ক্ষেত্রে লাইব্রেরি দ্বারা সরবরাহিত নিদর্শনগুলির অর্থ হল যে আপনি সরবরাহ করেছেন সেই পণ্যটি সহজেই অন্যান্য বিকাশকারীরা প্রতিক্রিয়াটির সাথে পরিচিত যারা তাদের দ্বারা নেওয়া এবং বজায় রাখা হবে।

সম্ভাব্য পশ্চাদগম্য সামঞ্জস্য সমস্যা

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

টিমের নতুন সদস্যরা দ্রুত উত্পাদনশীল হওয়া শুরু করে

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

সম্ভাব্য অপ্রকাশিত ইস্যু

ভবিষ্যতে এমন সমস্যা থাকতে পারে যা আপনি এখনও আপনার পদ্ধতির সাথে আবিষ্কার করেন নি, যা লেখকের পদ্ধতির দ্বারা সমাধান করা হয়েছে।

বলা হচ্ছে, উদ্ভাবন সবসময়ই ঝুঁকিপূর্ণ, যদি আপনি দৃ strongly়ভাবে অনুভব করেন যে আপনার দৃষ্টিভঙ্গি আরও ভাল এবং এটি আপনার দলের পক্ষে কাজ করে তবে এর জন্য যান!


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

2
+1 "rather than teaching new patterns"- কার্যনির্বাহী প্রশিক্ষণ হ'ল নতুন ভাড়াগুলির সাথে খুব বড় সময়ের ডুব। সর্বদা
পিগব্যাকব্যাকিং

1
@ অ্যালেক্সাস: পিছনের সামঞ্জস্যতা সম্পর্কে, প্রতিক্রিয়া এখনও 1.0 সংস্করণে নেই। বর্তমান সংস্করণ, ০.০৩, কিছু বেশ কঠোর উপায়ে সামঞ্জস্যতা ভঙ্গ করেছে, যদিও এই ব্যর্থতাগুলি ঘটবে কিনা তা নির্ভর করে রিঅ্যাক্ট উপাদানগুলিকে কল করার জন্য কোন পদ্ধতিটি ব্যবহার করা হয় তার উপর নির্ভর করে। কীভাবে প্রতিক্রিয়া জানাতে হয় তার জন্য খুব সামঞ্জস্যপূর্ণ নিয়ম থাকা প্রতিক্রিয়া আপগ্রেডগুলিকে ব্রেকিং কোড থেকে আটকাতে পারে না, তবে ধারাবাহিক কোড ফিক্সিং সহজ, দ্রুত এবং আরও নির্ভরযোগ্য। পশ্চাদপটে সামঞ্জস্যতা সম্পর্কিত বিষয়ে আপনার উদ্বেগগুলি প্রতিক্রিয়াটির ক্ষেত্রে অবশ্যই ন্যায়সঙ্গত। উদাহরণস্বরূপ, স্ট্যাকওভারফ্লো
ব্রায়ান

53

অসঙ্গতি আপনাকে থামিয়ে দেয় এবং ভাবায় কেন , কোনটি এবং কোথায় :

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

    দলের প্রত্যেকটি বিকাশকারীকে গুণ করুন যাতে সেই কোডটি স্পর্শ / পড়তে হবে।

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

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


6
দুর্দান্ত, কল্পিত অন্তর্দৃষ্টি। কিছু বিকাশকারী কেন এটিকে 'পেতে' বলে মনে হয় এবং অন্যরা এর বিরুদ্ধে লড়াই করে?
ডগওয়েদার

2
সন্দেহজনক কারণ এখন একটি ধারাবাহিক শৈলীর প্রস্তাব দেওয়া হচ্ছে তারা পূর্বের প্রকল্পগুলিতে যা কাজ করেছে তার সাথে গভীরভাবে বেমানান। বিশেষত তাদের জন্য বিভিন্ন পরিবেশে যথেষ্ট পরিমাণে অভিজ্ঞতা রয়েছে।
কিকস্টার্ট

4

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

সময়মতো বিতরণ করার জন্য আমাদের দ্রুত গতি বজায় রাখতে হবে এবং আমি অযথা দলের উপর বোঝা চাপাতে চাই না।

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

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


2

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

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

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

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

আপনি যা খুঁজছেন তা আপনার নিজের দলের খুশির মাধ্যম।


2

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

আমি এই ধারণাটি পেয়েছি যে গভীরভাবে, আপনি ইতিমধ্যে এই প্রশ্নের উত্তরটি জানেন এবং আপনি যদি এটির জন্য না হন তবে আপনি এটির মুখোমুখিও হবেন না:

সময়মতো বিতরণ করার জন্য আমাদের দ্রুত গতি বজায় রাখতে হবে এবং আমি অযথা দলের উপর বোঝা চাপাতে চাই না।

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

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

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


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

2

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

নাবালিক জিনিসগুলিতে খুব বেশি ফোকাস করার ফলে আরও গুরুত্বপূর্ণ বিষয়গুলিতে মনোযোগ হারাতে ঝুঁকি থাকে, কীভাবে সামগ্রিকভাবে সবচেয়ে কার্যকর পদ্ধতিতে কাজটি সমাধান করা যায়।

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

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

গ্রাহকদের সম্পর্কে

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


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

0

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

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