কোনও সহকর্মী যদি আপনার কোড সম্পাদনা করে তবে আপনার কী করা উচিত?
কার্যকারিতা যুক্ত করার জন্য বা বাগগুলি ঠিক করার উদ্দেশ্য ব্যতীত, কীভাবে এটি দেখাচ্ছে তা পরিবর্তনের জন্য ...
কোনও সহকর্মী যদি আপনার কোড সম্পাদনা করে তবে আপনার কী করা উচিত?
কার্যকারিতা যুক্ত করার জন্য বা বাগগুলি ঠিক করার উদ্দেশ্য ব্যতীত, কীভাবে এটি দেখাচ্ছে তা পরিবর্তনের জন্য ...
উত্তর:
এটি সম্পর্কে তাদের সাথে কথা বলুন। "তারা আমাকে বিরক্ত করার জন্য এটি করছে না বা তাদের কিছুটা আবেগ-বাধ্যতামূলক ব্যাধি রয়েছে বলে তারা মনোভাব নিয়ে কথোপকথনে যান; তারা আমার কোডটি আরও উন্নত করার চেষ্টা করছেন।"
কারণ আপনি ভুল হতে পারে। এটি একটি সূক্ষ্ম বাগ সমাধান হতে পারে এবং আপনি এটি সন্ধান করেন নি।
বা, এটি এমন হতে পারে যে কোনও কোডিং মান রয়েছে যা আপনি জানেন না যে আপনি লঙ্ঘন করছেন, এবং তারা কেবল এটি সংশোধন করছে।
বা, এটি হতে পারে যে তারা আপনাকে বিরক্ত করার চেষ্টা করছে বা তাদের কিছুটা অবসেসিভ-বাধ্যতামূলক ব্যাধি রয়েছে। যদি এটি হয় তবে তাদের থামিয়ে দেওয়ার জন্য সুন্দরভাবে জিজ্ঞাসা করুন এবং যদি এটি কার্যকর না হয় তবে এটি আপনার বসের সাথে নিয়ে যান।
আপনি জিজ্ঞাসা না করা তবে আপনি কখনই জানতে পারবেন না।
আমার কোডটি আমাকে বিরক্ত করার জন্য এটি কীভাবে দেখায় আমি তার সাথে এতটা বিবাহিত নই। :) আমি পরিবর্তনগুলি থেকে শেখার চেষ্টা করি। আমার সহকর্মী কি পরিবর্তনশীল নামগুলি সামঞ্জস্য করেছিলেন? আরও দক্ষ লুপ লিখবেন? কোডটি আরও পাঠযোগ্য?
যদি আমি দেখতে না পেলাম যে পরিবর্তনগুলি ইতিমধ্যে যা ছিল সেখানে কীভাবে উন্নতি হয়েছে, তবে আমি সাধারণত সহকর্মীকে জিজ্ঞাসা করি যে তাদের পিছনে অনুপ্রেরণাটি কী ছিল changes এটি সম্ভব যে সুবিধাটি কেবল আমার কাছে সুস্পষ্ট নয়। এবং যদি আমি ঠিকই থাকি এবং সেগুলি ভুল হয়, তবে আমি কেন ব্যাখ্যা করেছি তা কেন আমি ব্যাখ্যা করতে পারি।
অন্য সমস্ত কিছু যদি ব্যর্থ হয় তবে চেক-ইনটি ফিরিয়ে দিন। ;)
সম্পাদনা করুন: প্রসাধনী পরিবর্তনগুলি করার ইচ্ছাটি যদি বাগটি প্রবর্তন করে তবে সমস্ত বেট বন্ধ রয়েছে।
IMO আপনি এবং আপনার দলের উচিত যাইহোক কোডিং মান ব্যবহার করা উচিত। যদি এটি হয়, তবে প্রশ্নগুলি হয়ে যায় 'আপনার মূল কোডটি কি মানের সাথে মানায়?' যদি 'হ্যাঁ' হয় তবে আপনার সহকর্মী এটি কার্যকরভাবে পরিবর্তন না করা পর্যন্ত আপনার কোডটিকে স্পর্শ করা উচিত নয়। যদি 'না' হয় তবে আমি ভয় করি যে আপনার সহকর্মীর কাছে আপনার কোডটি পরিষ্কার করার সমস্ত অধিকার রয়েছে। একটি প্রকল্পের নেতৃত্ব হিসাবে আমি নিজেকে সর্বদা এটি করতে দেখি।
আপনি যদি কোনও কোডিং স্ট্যান্ডার্ড ব্যবহার না করে থাকেন তবে 'ভাল কোড' গঠনের পুরো যুক্তিটি খুব বিষয়গত হয়ে ওঠে। সুতরাং আপনার কেন কোডিং স্ট্যান্ডার্ড ব্যবহার করা উচিত :)
একজন হিসাবে ঐ মানুষ (যারা মাঝে মাঝে অন্য মানুষ এর কোড পুনরায় ফরম্যাট), প্রধান কারণ আমি এটা করতে পাঠযোগ্যতা হয়। কিছু লোক কেবল তাদের ইনডেন্টেশন বা মেশানো ট্যাব এবং স্পেসগুলির সাথে অত্যন্ত চরম op
আমার যে জিনিসটি বদলে যাওয়ার অভ্যাস রয়েছে সেগুলি হ'ল দীর্ঘ রেখাগুলি হ্রাস করা যাতে আমি অনুভূমিক স্ক্রোলিং না করে পুরো জিনিসটি পড়তে পারি। আমি পৃথক স্টেটমেন্ট বা পুনরায় ফর্ম্যাট পদ্ধতি কল / ডিক্লারেশনগুলিতে জটিল স্টেটমেন্টগুলি ভেঙে ফেলব যদি প্রতিটি লাইনে সমস্ত আরামদায়কভাবে ফিট না হয় তবে প্রতি লাইনে একটি প্যারামিটারের তালিকা তৈরি করতে পুনরায় ফর্ম্যাট পদ্ধতি কল / ডিকোলেশন। আমি ইংরাজী ত্রুটিগুলি সমাধান করতে বা কেবল বিষয়গুলি আরও পরিষ্কার করার জন্য মন্তব্যগুলিও সম্পাদনা করব।
হ্যাঁ, আমি এটিকে একা রেখে যেতে পারতাম, তবে কোডটি পড়ার জন্য প্রয়োজনীয় মানসিক প্রচেষ্টাটি আমি হ্রাস করব।
এটি সম্পর্কে আপনার কি করা উচিত? প্রথমত, বিবেচনা করুন যে সম্ভবত এই ব্যক্তিটি আপনার কোডটি আরও ভাল করছে। এছাড়াও, আপনার কোডটি কীভাবে ফর্ম্যাট করা উচিত সে সম্পর্কে আপনার দলে কিছুটা sensক্যমত্য রয়েছে তাও নিশ্চিত করা উচিত। যদি প্রতিটি ব্যক্তির বিভিন্ন অভ্যাস থাকে তবে তা সবাইকে ধীর করে দেবে। যদি তারা আপনার কোডটি আরও ভাল করে না নিচ্ছে এবং তারা শস্যের বিপরীতে চলেছে, তবে আপনাকে এ সম্পর্কে তাদের মুখোমুখি হওয়া দরকার। যদি এটি কাজ না করে তবে আপনার অন্যদের জড়িত হতে পারে।
তারা কেন এটি করছে তা তাদের জিজ্ঞাসা করুন; একটি বৈধ ব্যাখ্যা আপনার হতাশাকে হ্রাস করতে পারে, তবে এটি আপনাকে কতটা বিরক্ত করে তা আপনার তাদের জানিয়ে দেওয়া উচিত। কে জানে, সম্ভবত তারা ভেবেছিল তারা আপনাকে একটি অনুগ্রহ করছে এবং তারা যখন তা শিখবে তখন আপনাকে বিরক্ত করবে। অথবা আপনি যে কারও সাথে সত্যিকারের চিকিত্সা অবস্থায় ভুগছেন তার সাথে আপনি আচরণ করছেন।
তাকে কি অনুমতি দেওয়া হচ্ছে? পরিবর্তনগুলি কি কোড উন্নত করে? যদি তাই হয় তবে আপনার অহংকার গ্রাস করুন। যদি আপনি মনে করেন কোডের মান আরও খারাপ হয়েছে, তবে সহকর্মীর সাথে এটি গ্রহণ করুন এবং তাদের কোডটি কেন কোনও স্পষ্ট সুবিধা ছাড়াই আপনার কোড পরিবর্তন করার প্রয়োজন অনুভব করলো তা জিজ্ঞাসা করুন। যদি তা সত্ত্বেও সম্পন্ন করা হয় বা কারণ ব্যক্তি ভুল করে মনে করে যে তারা আপনার চেয়ে ভাল, এবং আপনি তাদের সাথে এটি কাজ করতে না পারেন, তবে আপনার বসের সাথে এটি গ্রহণ করুন।
আইডিই'র মতো ভিজ্যুয়াল স্টুডিওতে একটি বিকল্প Format Document
রয়েছে যা ব্যবহারকারী আইডিইতে নির্ধারিত নিয়ম অনুসারে কোড ফর্ম্যাট করবে। এটি হতে পারে আপনার সহকর্মী এটি ব্যবহার করছে (হয় স্বয়ংক্রিয়ভাবে না জেনে, বা ইচ্ছাকৃতভাবে প্রয়োগের মাধ্যমে)। সম্ভবত তাদের আইডিই ট্যাবগুলির পরিবর্তে শূন্যস্থান বা তদ্বিপরীত ব্যবহার করে এবং এগুলি না জেনেও স্বয়ংক্রিয়ভাবে প্রয়োগ করা হচ্ছে? তবে এটি জানতে আপনার তাদের সাথে কথা বলা উচিত।
ঘটনাচক্রে, আমি প্রায়শই সহকর্মীদের কোডটি পুনরায় ফর্ম্যাট করব যদি এটি স্পষ্টতই কোনও ধরণের বিন্যাসের স্কিম অনুসরণ না করে (যেমন এটি পুরো জায়গা জুড়ে)। এটি তাদের বিজ্ঞপ্তি দেওয়ার একটি আশাবাদী সূক্ষ্ম উপায়। (তবে, এটি যদি পরিষ্কার হয় তবে আমি এটি পুনরায় ফর্ম্যাট করব না তবে আমার পছন্দ অনুসারে)।
যদি তিনি এটি পরিবর্তন করে থাকেন যাতে এটি আপনার দলের কোডিং মানগুলি পূরণ করে, আপনার পরের বারের মানগুলি অনুসরণ করা উচিত।
যদি তিনি এটিকে এমন পরিবর্তন করেন যে এটি আর আপনার দলের কোডিং মানকে অনুসরণ করে না, তবে তিনি কী ভুল করছেন তা তাকে জানিয়ে দিন এবং তাকে এটি আবার পরিবর্তন করতে বলুন।
... আপনার দলে কোড ফরমেটিং স্ট্যান্ডার্ডের সেট রয়েছে যা প্রত্যেকে ব্যবহার করে, তাই না?
আমি মাঝে মধ্যে অগোছালো সহকর্মীদের দ্বারা লিখিত কোডটি পুনরায় অর্ডার করি (বা মন্তব্যগুলিতে টাইপগুলি ফিক্স করে)। তারা জানে যে আমি কোড ফর্ম্যাটিং এবং অর্ডার সম্পর্কে আবেশী এবং তাই তারা খুব বেশি অভিযোগ না করে আমাকে তা করতে দেয়। কখনও কখনও তারা আমাকে একটি ফ্রি সোডা বা কুকিও দেয়।
অবশ্যই এটি মাঝেমধ্যে কাজ, কারণ এটি এসভিএন-তে "দোষ" কার্যকর করে broke
কিছু ধরণের কোড পর্যালোচনা করার এটিও একটি খুব প্রাথমিক উপায় (আমি সাধারণত আমার সহকর্মীদের দ্বারা সম্পাদিত বেশিরভাগ কোডটি আমি মডিউলগুলিতে কাজ করি যা আমি কাজ করি)।
কোড নিয়মাবলী হয় উত্তর। আপনার কাজ করা উচিত। যদি আপনি এটি না করেন, এখনই শুরু করুন (একটি ভাল সূচনা পয়েন্ট হ'ল গুগল স্টাইল গাইড )। যখন সেখানে লিখিত (বা কমপক্ষে সাধারণভাবে পরিচিত) বিধি থাকে তখন আপনার প্রশ্নের উত্তর তুচ্ছ।
আমার মনে হচ্ছে আপনি এমনটা করা আপত্তিজনক বলে ভাবছেন ...? উদাহরণস্বরূপ, আমি নিজেই এই কোডটি তাত্ক্ষণিকভাবে ঠিক করব
int myFunction( ) {
int i ;
return 0;
}
হতে
int myFunction() {
int i;
return 0;
}
সুতরাং ... আমার কর্মের কারণে আমাকে শাস্তি দেওয়া উচিত? বাস্তব জীবনে, আমার কাছে আসলে প্রচুর পরিমাণে এসভিএন লগ রয়েছে 'ফর্ম্যাটিং' read ;-)
স্টাইলকপ বা অনুরূপ ব্যবহার শুরু করুন এবং কোড শৈলীর বিধি প্রয়োগ করুন এবং এটি সমস্ত বিকাশকারীদের এটি ব্যবহার করার বাধ্যবাধকতা করুন। সমস্ত কোড ব্যতিক্রম ব্যতীত একই দেখবে। এবং আপনার প্রতিষ্ঠানের সর্বাধিক উপযুক্ত বিধিগুলি আলোচনা করার জন্য বুদ্ধিমানদের সাথে একত্রিত হন। যদিও ডিফল্ট বিধিগুলি ইতিমধ্যে। নেট ফ্রেমওয়ার্ক কোডের সাথে খুব মিল।
এটি করার সহজতম উপায়। আমি আমার আগের নিয়োগকর্তাদের একজনের কাছে নিজেকে অন্যের কোড সংশোধন করতে দেখেছি কারণ এই অন্য লোকটি অতিরিক্ত পরিমাণে খালি লাইনের সাথে কোড লিখছিল এবং কোনও প্রবর্তনের কোনও নিয়ম নেই। কোডটি একজন গড় বিকাশকারী দ্বারা আসলে অপঠনযোগ্য। স্টাইলকপ যদি আবার উপস্থিত থাকে তবে তা আমাদের অনেককেই খুশি করে তুলবে।
এটি এমন একটি ধারণা যা আমি ইন্টারনেটে রিফ্যাক্টরিং সম্পর্কে কথা বলে দেখেছি এবং ব্যাখ্যা করতে পারে যে কেন কেউ আপনার কোডটিকে আরও ভাল করে তুলবে কেন:
কেন?
রিফ্যাক্টরের দুটি প্রধান কারণ রয়েছে:
এর শীর্ষে তৈরি করার আগে কোড / নকশাটি উন্নত করার জন্য: প্রথম প্রয়াসে ভাল কোড নিয়ে আসা সত্যিই কঠিন। যে কোনও প্রাথমিক নকশা বাস্তবায়নের প্রথম প্রচেষ্টা আমাদের দেখায় যে আমরা কিছু যুক্তি ভুলভাবে ব্যাখ্যা করেছি বা ভুলে গেছি।
প্রয়োজনীয়তার পরিবর্তনগুলিকে মানিয়ে নিতে। সফ্টওয়্যার বিকাশে পরিবর্তন ঘটে; পরিবর্তনের জন্য প্রতিক্রিয়াশীল হওয়া ভাল কোড বেস থাকা ভাল better আমাদের উভয় পরিস্থিতিতে দুটি বিকল্প রয়েছে, কোডটি পাথ করুন বা এটিকে রিএ্যাক্টর করুন। কোডটি প্যাচিং আমাদের অভাবনীয় কোডে নিয়ে যাবে এবং আমাদের প্রযুক্তিগত debtণ বাড়িয়ে দেবে, এটি পুনরায় চুল্লী করা ভাল।
কখন?
যত তাড়াতাড়ি তত ভাল তত সহজ।
কোডটি প্রায় সম্পূর্ণ হওয়ার জন্য রিফ্যাক্টরের অপেক্ষা না করে সম্প্রতি রিফ্যাক্টর কোডের তুলনায় দ্রুত এবং কম ঝুঁকিপূর্ণ।
কি?
সমস্ত কোড এবং সমস্ত নকশা রিফ্যাক্টরিংয়ের প্রার্থী।
কোনও কিছুর রিফ্যাক্টর না করার জন্য একটি ব্যতিক্রম কোডের একটি কার্যকরী অংশ হতে পারে যা মানটি কম, তবে একটি সময়সীমার কাছাকাছি হওয়ার কারণে, আমরা পরিকল্পনার ঝুঁকির চেয়ে আমাদের প্রযুক্তিগত debtণ বজায় রাখতে পছন্দ করি।
আপনাকে কেবল তার সেরাটা করতে দেওয়া উচিত, যদি তা উভয়ের পক্ষে দুর্দান্ত হয় এবং ভবিষ্যতে আপনার সময় বাঁচায়!
চিয়ার্স