আমি বাজে কোড লিখতে বাধ্য হই। আমি কীভাবে আমার মুখ বাঁচাতে পারি? [বন্ধ]


69

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

পণ্যটি আগে ওপেন সোর্স ছিল এবং আমি উদ্বিগ্ন যে এটি ভবিষ্যতে উন্মুক্ত উত্সে যেতে পারে। কেউ যদি (বিশেষত সম্ভাব্য চাকুরীজীবি) আমার চেঞ্জের কিছুটির পরে আমার নাম জানতে পারে তবে আমি লজ্জা পাব। আমার ভাল নামটি রক্ষা করতে আমি কী করতে পারি?

আমি এটি প্রাসঙ্গিক কিনা তা সম্পর্কে নিশ্চিত নই তবে আমি যুক্ত করব যে কোডটি খারাপ কিনা তা আমার মনিব বা আমার সহকর্মীরা কেউই স্বীকার করতে চান না, তবে আমি নিশ্চিত নই যে আমি তাদের জন্য দোষ দিতে পারি - তাদের অনেকের জন্য এটি তাদের প্রথম চাকরী.


21
আপনি কিভাবে খারাপ কোড লিখতে বাধ্য? আপনি কেন উঠে দাঁড়াতে পারবেন না, আপনার নামটি খারাপ কোডে রেখে থামিয়ে দিতে পারেন, এবং সমস্যা, সমাধান, সময়, প্রচেষ্টা এবং অর্থের ক্ষেত্রে ব্যয় এবং এখন আপনার উচ্চপরিস্থদের কাছে সমস্যা সমাধানের সুবিধা কী?
টমাসের মালিক

17
"দ্রুত এবং নোংরা হ্যাক উত্সাহিত"? উৎসাহব্যঞ্জক? যা খারাপ. আপনার অহংকার (এবং একটি নতুন কাজ সন্ধান করা) বা এই কাজটির সাথে লেগে থাকা। যা ঠিক তা নিয়ে দাঁড়ানো খারাপ নাও হতে পারে। তোমাকে কে থামাচ্ছে? সহিংসতার হুমকি? ব্ল্যাকমেল? ফৌজদারি মামলা? সিরিয়াসলি। ভাল কোড লিখতে আপনাকে কোন বাধা দেয়? দয়া করে হতে নির্দিষ্ট । এবং সৎ।
এস .লট

113
এটি যদি কোনও সান্ত্বনা থাকে তবে আপনি আজ যে ভাল কোড লিখছেন তা পাঁচ বছরের মধ্যে আপনার কাছে খারাপ লাগবে।
কিরালেসা

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

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

উত্তর:


132

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

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


2
+1 টি। এটির দ্রুত সমাধানের জন্য আপনার বিশ্বাসের সমস্ত কিছুর ত্যাগ করতে হবে না।
tmadmers

4
+1: সব কিছুর জন্য বা না - খুব সত্য।
উম্বার ফেরেল

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

40
+1 এর জন্যEvery time you touch the code, leave it better than it was before.
কিওয়ারকি

3
+1 টি। আপনার যদি প্রতিশ্রুতিবদ্ধ প্রচুর উন্নতি হয় তবে যে কেউ আসলে আপনার অবদানের দিকে তাকিয়ে থাকে সে ভাবেনা যে আপনি একজন কৃপিত প্রোগ্রামার। সম্ভাব্য নিয়োগকর্তারা যারা ধরে নিয়েছেন যে আপনি কৃপিত কারণ প্রকল্পটি কৃপণ এমন লোকেরা নয় যার পক্ষে আপনি কাজ করতে চান।
ম্যাথু

59

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

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

সুতরাং ... খারাপ কোড লিখুন, ... প্রচুর ... কোড যা সবেমাত্র কাজ করে এবং তারপরে ITEATE। প্রতিটি পুনরাবৃত্তি একটি সামান্য বিট আরও ভাল!

কেউই প্রথমবারের নিখুঁত সমাধানটি লিখেনি।

* এটি, যদি এটির সংক্ষিপ্ত বিবরণ হত।


1
+1 আমি এই উত্তরটির সাথে দৃ strongly়ভাবে একমত। আমি তোমাকে দু'বার উপস্থাপন করব
পাই

3
আমি রাজী. এটি "বিশ্লেষণ পক্ষাঘাতের" মাধ্যমে কাটার একটি দুর্দান্ত উপায়, যা আপনি সমস্যার "নিখুঁত" সমাধানটিতে পৌঁছানোর চেষ্টা করার সময় ধরে রাখতে পারেন। আমি স্ট্যাকওভারফ্লোতে অনুরূপ কিছু লিখেছি
কিরালেসা

4
+1 টি। আমি এটি ইতিমধ্যে প্রোগ্রামারগুলিতে পড়েছি (তবে উত্সটি জানি না): একটি নির্দিষ্ট সময়সীমার মধ্যে মৃৎশিল্প তৈরি করার জন্য দুটি গ্রুপকে দায়িত্ব দেওয়া হয়েছিল। এক সম্ভাব্য সেরা মানের একটি আইটেম তৈরি করতে এবং একটি যথাসম্ভব অনেকগুলি আইটেম তৈরি করতে। শেষ পর্যন্ত, পরবর্তী দলটি আরও ভাল মানের আইটেম সরবরাহ করেছিল, কারণ পুনরাবৃত্তি আয়ত্ত করার পথ tery একাকী ভাবনা আপনাকে আর কোথাও পাবে না। শেষ অবধি, আমরা সকলেই করণ শিখেছি এবং কিছু ভুল করার ভয় আমাদের হ'ল চেষ্টা করার ক্ষেত্রে সম্ভবত ব্যর্থ হয়েছে, তবে অবশ্যই আমাদের ভুল থেকে শিখছে।
back2dos

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

"সুতরাং ... খারাপ কোড লিখুন, ... এটি প্রচুর ... সবেমাত্র কাজ করে এমন কোড, এবং তারপরে ITERATE ATE প্রতিটি পুনরুক্তি একটি সামান্য কিছুটা ভাল!" আপনি যদি কখনই পুনরাবৃত্তি করতে না পারেন কারণ নতুন প্রকল্পগুলি পিলিং করে চলেছে ... এবং আপনি বুঝতে শুরু করেছেন যে আপনি আলফা হিসাবে যা বের করেন তা প্রজেক্টের মৃত্যুর আগ পর্যন্ত স্থির থাকে। প্রাথমিকভাবে শিট কোড এবং আপডেটের অভাবে ফলস্বরূপ কোনটি অবশ্যই ছড়িয়ে পড়ে। আমি মনে করি এটি এই ধরণের পরিস্থিতি যা অনেক জুনিয়র দেবকে ভেবে যেতে বাধ্য করে যে তারা "সুন্দর কোড" লেখার দরকার আছে ...
সেরি

40

কোড মন্তব্যগুলি এখানে আপনার বন্ধু।

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

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


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

ভাল, আপনি এমন কাউকে সম্পর্কে বলতে পারেন যার প্রতিক্রিয়া মন্তব্যগুলি "স্থির", "সম্পন্ন", "বাল্লাব্লাবলাহ" :)
gbjbaanb

+1 আমি এটি বেশ কয়েকবার করেছি এবং পিয়ার বিকাশকারীদের ক্ষেত্রে এটি ঠিক কাজ করে।
জ্যাসেক প্রুশিয়া

7
আমি যখনই সেগুলি জুড়ে চলেছি তখন আমি সাধারণত এই জাতীয় মন্তব্যগুলি মুছি। টোডো বা ফিউচার-এনভান্সমেন্ট হিসাবে চিহ্নিত একটি মন্তব্য থাকার জন্য প্রাপ্য হতে পারে তবে ক্ষমা প্রার্থনা কেবল আবর্জনা।
ক্রিস্টোফার জনসন

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

10

এটি আপনাকে কীভাবে জোর করে তার উপর নির্ভর করে।

আমার অভিজ্ঞতায় দুটি সম্ভাবনা রয়েছে:

আপনি একটি কঠোর সময়সূচী, উত্তরাধিকার কোড ইত্যাদির দ্বারা বাধ্য হন feel

এই ক্ষেত্রে, অন্যান্য উত্তরগুলির বেশিরভাগই ইতিমধ্যে বলেছে, 'শীতলতার জন্য অনুকূলিতকরণ' এটি আপনার উপর নির্ভর করে। আপনার এমভিসিতে কোডবেসটি পুনরায় লেখার সময় নাও থাকতে পারে তবে প্রথম পদক্ষেপ হিসাবে উদাহরণস্বরূপ, আপনি নিজের এসকিউএলটিকে হাত দ্বারা আটকানো এবং পরিবর্তে একটি সুন্দর লিখতে execute_sql($query, $params)পারেন fetch_customer($filter_params), এটি বিমূর্তের মতো ভিত্তি স্থাপন করে ইত্যাদি। মনে রাখবেন, সেরা অনুশীলনগুলি চূড়ান্তভাবে সেখানে রয়েছে যে আপনার বস আগে পণ্য পেত so সুতরাং ভবিষ্যতে বনাম এখন কী পরিমাণ বিনিয়োগ করতে হবে তার মধ্যে কেবল বিরোধ রয়েছে।

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

আপনি নিজেকে অযোগ্য মনে করেন এমনভাবে এটি প্রয়োগ করার জন্য আপনাকে স্পষ্টভাবে আদেশ দেওয়া হয়েছে

মডেল থেকে দৃষ্টিভঙ্গি পৃথক করার চেষ্টা পর্যালোচনা থেকে বেঁচে না, কারণ 'এটি খুব জটিল, কেন আপনি কেবল সরল স্ক্যাল কোয়েরি করবেন না?'। আপনার execute_sqlক্যানড হয়ে যায় কারণ 'শৃঙ্খলা সহ একটি কোডার এর প্রয়োজন হয় না'।

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

উল্টো দিকটি হল, এই পরিস্থিতিতে আপনার নামটি যাইহোক প্রকাশিত হতে পারে না, কারণ দলের নেতৃত্ব সমস্ত সাফল্যের কৃতিত্ব নেন।


8

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

দীর্ঘ সময়ের জন্য, আপনার বসের সাথে কথা বলুন। এখানে 15 মিনিটের বিনিয়োগ কীভাবে সেখানে ঘন্টা বাঁচাতে পারে তা ব্যাখ্যা করুন। আপনার দৃ you়প্রত্যয়ী উদাহরণ রয়েছে তা নিশ্চিত করুন - "আমি যদি এটি করতাম এবং এখানে, ধরণের নয় তবে আমার আশা যে আমি পরের বছর এই অন্য কাজটি করতে সক্ষম হব", বরং "দেখুন, এখানে আমি এই জিনিসটি করেছি এবং কারণ এর মধ্যে, আমাকে সমস্যাটি আবিষ্কার করতে তিন ঘন্টা সময় লেগেছিল; যদি আমি এটি এবং সেভাবে এটি করতাম তবে বাগটি অবিলম্বে উপস্থিত হয়ে উঠত "। এখানে একটি সতর্কতা: মার্জিত এবং রক্ষণাবেক্ষণযোগ্য কোডটি আরও ভাল এবং আরও দক্ষ বোধ করে, কখনও কখনও তা হয় না। এমন পরিস্থিতি রয়েছে যেখানে একটি opিবি দ্রুত গতির পুরোপুরি ন্যায়সঙ্গত: কখনও কখনও আপনি একক-ব্যবহার কোড লিখছেন, কখনও কখনও আপনি জাঙ্কের একটি পুরানো টুকরো টিকিয়ে রাখছেন, আসল জিনিসটির অপেক্ষায়; কখনও কখনও, একটি সঠিক সমাধানের সুবিধা হ'ল '

অন্য সব কিছু যদি ব্যর্থ হয় তবে অন্য কোনও কাজ সন্ধান করুন।


3

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

এখনও ভাল ইঞ্জিনিয়ারড কোড বজায় রাখার আকাঙ্ক্ষা থাকা সত্ত্বেও আপনার দেব শপটি প্রথম কঠোর সময়সীমা ছিল না।


4
-1: মার্কিন যুক্তরাষ্ট্রে, যদি আপনার বস "দ্রুত ক্রপী কোড লিখুন" বলে এবং আপনি এটি করতে অস্বীকার করেন তবে তারা আপনাকে বহিষ্কার করতে পারে। আইনী কিছু করার জন্য সরাসরি নির্দেশ অমান্য করা স্বেচ্ছাসেবী সমাপ্তির ভিত্তি। সুতরাং এটি আপনাকে "জোরপূর্বক" নাও করতে পারে, তবে আপনার বসের বক্তব্য যা করছেন তার বিকল্পগুলি আরও খারাপ হতে পারে।
বব মারফি

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

1
আপনি যে আদর্শ উর্ধ্বতন পরিসংখ্যানের জন্য বাস্তবে কাজ করেন না তা দুর্দান্ত, তবে যে ব্যক্তি আপনার বেতন যাচাই বাছাই করে তারাই আপনাকে খুশি করতে হয়। আপনি যখন সত্যিই কাজের বাইরে থাকেন তখন বিল সংগ্রহকারীরা সমস্ত সময় কল করে really
বব মারফি

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

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

3

যে কোনও সংস্থাকে বিস্তৃত নথিপত্র এবং ইউনিট পরীক্ষার সাথে উজ্জ্বল কোড লেখার এবং যুক্তিসঙ্গত বাজেট এবং সময়ের ব্যবস্থায় পণ্য বাজারে পাওয়ার মধ্যে একটি ভারসাম্য খুঁজে নেওয়া দরকার।

বিশ্বের সেরা কোড এটি প্রকাশের আগেই অচল হয়ে যায় কিনা তা বিবেচনা করে না।

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

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

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

বেশিরভাগ কোডের পরে বেশিরভাগ কোডে নির্দিষ্ট পরিস্থিতিতে হ্যাক থাকবে যা সাধারণ কাঠামোতে রিফ্যাক্টর করার জন্য খুব ব্যয়বহুল ছিল।


2

আমি যুক্ত করতে চাই যে আপনি এখন যেমন করছেন ঠিক তেমন চালিয়ে যাওয়া উচিত নয়, কিছুই বলছেন না এবং হ্যাকিং এবং হ্যাক করছেন।

আপনার উঠে দাঁড়াতে হবে এবং কংক্রিট কোডটি দেখানো দরকার এবং এটি সম্পর্কে কী সফল হয় তা তাদের জানান। আপনার দাবির ব্যাক আপ নিতে নির্দিষ্ট হন এবং কোড মেট্রিক ব্যবহার করুন। কোড খারাপ বলে দাবি করা ছাড়া আর কিছুই বিব্রতকর নয় যখন বাস্তবে তা নয়, আপনি ঠিক বুঝতে পারেন নি যে কী করা হচ্ছে।

আমি নিশ্চিত যে পিএইচপি কোড বিশ্লেষণের জন্য বিনামূল্যে অনেকগুলি সরঞ্জাম উপলব্ধ রয়েছে http://en.wikedia.org/wiki/Code_analysis

এছাড়াও, অবশ্যই এই http://en.wikedia.org/wiki/Code_smell

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

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

HTH


0

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

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

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

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

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

একটি শেষ কথা, একটি সম্পূর্ণ পুনর্লিখন কখনও কখনও একমাত্র সমাধান তবে এটির ব্যয়টিকে পরিচালনার ক্ষেত্রে ন্যায়সঙ্গত করা সাধারণত খুব শক্ত।


0

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

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