প্রতিটি এসকিউএল বিবৃতি একটি ডিবিএ দ্বারা পর্যালোচনা করা উচিত - সাধারণ?


11

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

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


2
ঠিক আছে, আমরা কোডের মধ্যে এসকিউএল স্টেটমেন্ট রাখি না। তবে, সমস্ত কোড যথাযথ জ্ঞানী ব্যক্তিদের দ্বারা পর্যালোচনা করা উচিত।
ক্যাফগিকে

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

2
প্রশ্নটি হ'ল, যদি প্রতিটি ক্যোয়ারী ডিবিএ দ্বারা পাস করা হয় না, আপনি কীভাবে সংজ্ঞা দিবেন যে ডিবিএ দ্বারা পাস করা উচিত এবং কী করা উচিত নয়?
প্রোগ্রামার 16

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

2
তোমাকে এখনও কামড় দেওয়া হয়নি? কেন এই পদ্ধতিটি স্থানে রয়েছে সে সম্পর্কে জিজ্ঞাসা করুন ...

উত্তর:


15

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

সামগ্রিকভাবে আমরা সন্ধান করেছি:

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

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

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

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


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

যথাযথভাবে। এটি এমন কোড যা ইতিমধ্যে প্রসঙ্গে পর্যালোচনা করা হয়েছে । এটা জরুরি. বিচ্ছিন্নতার মধ্যে একটি জিজ্ঞাসা নির্দোষ মনে হতে পারে তবে এটি একটি লুপের মধ্যে রেখে দেয় এবং হঠাৎ এটি এত কম।
ইসভারা

1
এই ধরণের জিনিস স্বয়ংক্রিয় করার জন্য কি কোনও সরঞ্জাম আছে? আমি এমন একটি সরঞ্জামের কথা ভাবছি যা সমস্ত জমা হওয়া প্রশ্নের জন্য একটি এক্সিকিউশন পরিকল্পনা তৈরি করে এবং তারপরে পুরো টেবিল স্ক্যান বা কার্টেসিয়ান পণ্য সহ কোনও কিছু পতাকাঙ্কিত করে। আমি সন্দেহ করি এটি সমস্ত কিছু ধরে ফেলতে পারে তবে এটি সম্ভবত পর্যালোচনার সময়কে ত্বরান্বিত করবে এবং এটি কোনও স্ক্রিপ্টের মাধ্যমে বিকাশকারীরাও চালাতে পারেন বা কোড চেক-ইন সময় স্বয়ংক্রিয়ভাবে চালিত হলে আরও ভাল।
হতাশ

10

এটি সম্পূর্ণরূপে পরিবেশ, শিল্প এবং সংস্থার উপর নির্ভর করে।

কিছু উদাহরণ:

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

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

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

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


5

আমি এরকম পরিবেশে কখনও কাজ করি নি, আমি নিশ্চিত এটি ঘৃণা করব would এটিকে ঘিরে কিছু মেট্রিকের ট্র্যাক রাখা শুরু করার জন্য একটি চিন্তা মাথায় আসে ...

  • কোনও ডেভেল স্কুয়েলকে কোডের বাইরে টানতে এবং এটি একটি ডিবিএতে জমা দেওয়ার জন্য প্রস্তুত করতে কত সময় ব্যয় করে
  • স্কিএল পর্যালোচনা করতে ডিবিএ কত সময় নেয়?
  • কতবার পরিবর্তনগুলি ডিবিএ দ্বারা অনুরোধ করা হয়? কোয়েরির
    ধরণ ভেঙে ?

অল্প সময়ের জন্য এটির ট্র্যাক রাখা সম্ভবত দেখায় যে এটি কতটা টানা টানছে এটি কতটা কার্যকর us


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

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

4

ডাটাবেসের ক্ষেত্রে এটি আসে বেশিরভাগ বিকাশকারীই অজ্ঞান flat এমনকি তারা তাদের অজ্ঞতা সম্পর্কে অবগত নয়। আমি নিজেই একজন অজ্ঞ বিকাশকারী হয়ে থাকতাম।

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

পূর্ণ টেবিল স্ক্যান কী তা তারা জানে না। কার্সার খোলার পরিবর্তে একক সেট অপারেশনে কীভাবে ডেটা প্রক্রিয়া করা যায় তা তারা জানে না। কার্সারের চেয়েও খারাপ যে তারা ডেটা জিজ্ঞাসা করবে, তারপরে সারি-সারি প্রক্রিয়াটি এটি ডাটাবেসে ফিরে এবং পিছনে চলে যখন কোনও সাধারণ সরল-জেন আপডেট যথেষ্ট। HORRIBLE কর্মক্ষমতা ফলাফল।

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

আপনার গড় বিকাশকারীদের জ্ঞানটি "গড়" সিআরইউডি অ্যাপ্লিকেশনগুলিতে যথেষ্ট হবে যেখানে কোনও ব্যবহারকারী কেবল রেকর্ড সম্পাদনা করে। রুবি-অন-ক্র্যাক বুদ্বুদ থেকে বের হয়ে আসল বিশ্বে একবার বের হয়ে গেলে তা যথেষ্ট হবে না।


আপনি কি আরও পবিত্র কিছু বলতে চান?
সেভেনসিয়াট

2
কার্পি, কার্পির মতো অন্য কারওর জবাব সম্পর্কে অকার্যকর, বিদ্রূপাত্মক মন্তব্য করার চেয়ে কমপক্ষে (গুলি) নিজের অভিজ্ঞতা থেকে অঙ্কিত প্রতিক্রিয়ার জন্য সময় নিয়েছিলেন।
ড্রয়

2

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


2

আমি এমন পরিবেশে কাজ করি নি, করবও না।

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

আমি যদি সাধারণ SELECTপ্রশ্নের জন্য যথেষ্ট সক্ষম না হই তবে আমাকে বরখাস্ত করা উচিত।


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

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

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

@ টেলাস্টিন - "গড় বিকাশকারী নয়" আমি কিনি না; আমি এখনও বলি খারাপ বিকাশকারীদের ভাড়া রাখবেন না। তবে হ্যাঁ, ডিবিএর যদি কলটি পেতে হয় তবে আমি আরও কিছুটা সহানুভূতি জানাই।
নাথান লং

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

2

আমি এটি বেশ কয়েকটি জায়গায় দেখেছি। এটি তাত্ত্বিকভাবে দুর্দান্ত তবে এটি কার্যকর বলে খুব কমই দেখেছি। কারণটা এখানে. প্রথমত, আপনার যদি ডিবিএ (বা অন্যান্য ব্যক্তি) এর একটি দল থাকে তবে আমি সাধারণত দেখতে পেয়েছি যে এই দলের ন্যূনতম দক্ষ বা কমপক্ষে পছন্দ করা ব্যক্তি পর্যালোচনা কাজের ফলস্বরূপ। আপনি কেন বলছেন? এটি কারণ, অন্য কেউ এটি করতে চায় না এবং অন্য প্রত্যেকে অন্যান্য কাজগুলি করতে ব্যস্ত যা সম্ভবত আরও জরুরি। কোনও ডিবিএকে চারপাশে বসতে দেখে এবং বলেছে, "মানুষ সবকিছু নিখুঁতভাবে চলছে; আমি কেবল বসে বসে নেটটি চালাতে পারি I আমি আশা করি আমার কিছু করার ছিল" " আমাকে হয়, কমপক্ষে ভাল না। তারা সবার চেয়ে ব্যস্ত বা ব্যস্ত are এর অর্থ হ'ল যে ব্যক্তি সর্বনিম্ন সক্ষম তিনি সম্ভবত পর্যালোচনা করছেন এবং আপনি ঠিক এটিই করতে চান না। আপনি যে কোডটি পর্যালোচনা করতে চান তা হ'ল সত্যই হার্ড কোড যা লোকেরা এটিকে একরকম কালো যাদু হিসাবে দেখে এবং তা পাস করে দেয়। জুনিয়র ডিবিএ বা কেবল সরল খারাপগুলি, কীভাবে সত্যিকারের হার্ড ক্যোয়ারী কাজ করে তার সূক্ষ্মতাগুলি ধরতে সক্ষম হবে না। কদাচিৎ কখনও কখনও কেউ কি বলেন, "ম্যান আমি প্রাইমারি কী ব্যবহার করে কোনও টেবিলের বাইরে একটি সারি নির্বাচন করার কথা ভাবিনি! ধন্যবাদ ডিবিএ আপনি জীবদ্দশায় আছেন।" সুতরাং এই পরিস্থিতিতে, সত্যিই আপনি যা করছেন তা খুব কম মূল্যের জন্য অনেক কাজ তৈরি করছে is প্রাথমিক কী ব্যবহার করে কোনও টেবিলের বাইরে একটি সারি নির্বাচন করার কথা ভাবেন না! ধন্যবাদ ডিবিএ আপনি একটি জীবন রক্ষাকারী। "সুতরাং এই পরিস্থিতিতে, সত্যিই আপনি যা করছেন তা স্বল্প মূল্যের জন্য প্রচুর কাজ তৈরি করছে। প্রাথমিক কী ব্যবহার করে কোনও টেবিলের বাইরে একটি সারি নির্বাচন করার কথা ভাবেন না! ধন্যবাদ ডিবিএ আপনি একটি জীবন রক্ষাকারী। "সুতরাং এই পরিস্থিতিতে, সত্যিই আপনি যা করছেন তা স্বল্প মূল্যের জন্য প্রচুর কাজ তৈরি করছে।

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

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


2

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

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


0

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

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

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


0

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

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