সমস্যার সংক্ষিপ্তসার:
দীর্ঘ গল্প সংক্ষেপে, আমি উত্তরাধিকার সূত্রে একটি কোড বেইস পেয়েছি এবং একটি উন্নয়ন দল আমাকে প্রতিস্থাপনের অনুমতি পাচ্ছে না এবং গড অবজেক্টস ব্যবহার করা একটি বড় সমস্যা। এগিয়ে যাওয়া, আমি আমাদের জিনিসগুলি পুনরায় ফ্যাক্টর করতে চাই তবে আমি সেই দলগুলির কাছ থেকে পুশ-ব্যাক পাচ্ছি যারা Godশ্বরের অবজেক্টের সাথে সবকিছু করতে চায় "কারণ এটি সহজ" এবং এর অর্থ আমাকে পুনরায় ফ্যাক্টর করার অনুমতি দেওয়া হবে না। আমি আমার বর্ষের বিকাশের অভিজ্ঞতার কথা উল্লেখ করে পিছিয়ে দিয়েছি, আমিই এই নতুন সাহেব যিনি এই বিষয়গুলি, ইত্যাদি জানার জন্য ভাড়া করা হয়েছিল এবং তৃতীয় পক্ষের অফশোর সংস্থাগুলির অ্যাকাউন্ট বিক্রয় বিক্রয় প্রতিনিধি ছিল, এবং এটি এখন নির্বাহী স্তরে এবং আমার সভা আগামীকাল এবং আমি সর্বোত্তম অনুশীলনের পক্ষে পরামর্শ দেওয়ার জন্য প্রচুর প্রযুক্তিগত গোলাবারুদ নিয়ে যেতে চাই কারণ আমি মনে করি এটি দীর্ঘমেয়াদে সস্তা হবে (এবং আমি ব্যক্তিগতভাবে মনে করি যে এটি তৃতীয় পক্ষই উদ্বিগ্ন) এই সংস্থাটির জন্য।
আমার সমস্যাটি একটি প্রযুক্তিগত স্তর থেকে, আমি এটির দীর্ঘমেয়াদী জানি তবে অতি স্বল্পমেয়াদী এবং 6 মাসের মেয়াদে আমার সমস্যা হচ্ছে এবং এর কিছু আমি জানি "জানি" তবে আমি এটি প্রমাণ এবং বাইরে উদ্ধৃত সংস্থান দিয়ে প্রমাণ করতে পারি না একজন ব্যক্তির (রবার্ট সি মার্টিন ওরফে আঙ্কেল বব) যেমন একজনকে আমার কাছে ডেটা থাকার কথা বলা হয়েছে এবং কেবলমাত্র একজন ব্যক্তির (রবার্ট সি মার্টিন) তর্ক করার পক্ষে যথেষ্ট নয় তেমনই আমাকে করতে বলা হচ্ছে ।
প্রশ্ন:
ক্ষেত্রের সুপরিচিত বিশেষজ্ঞরা সরাসরি (শিরোনাম, বছর প্রকাশিত, পৃষ্ঠা নম্বর, উদ্ধৃতি) উদ্ধৃত করতে পারেন এমন কিছু সংস্থানগুলি কী কী যা স্পষ্টতই "Godশ্বর" অবজেক্টস / ক্লাস / সিস্টেমগুলির ব্যবহার খারাপ (বা ভাল, যেহেতু আমরা দেখছি) সবচেয়ে প্রযুক্তিগতভাবে বৈধ সমাধানের জন্য)?
আমি ইতিমধ্যে গবেষণা করেছি:
- আমার এখানে বেশ কয়েকটি বই রয়েছে এবং আমি "গড অবজেক্ট" এবং "গড ক্লাস" শব্দের ব্যবহারের জন্য তাদের সূচিগুলি অনুসন্ধান করেছি। আমি দেখতে পেলাম যে অদ্ভুতভাবে এটি প্রায় কখনও ব্যবহৃত হয়নি এবং আমার কাছে জিওএফ বইয়ের অনুলিপিটি কখনও ব্যবহার করে না (কমপক্ষে আমার সামনে সূচক অনুসারে) তবে নীচের দুটি বইয়ে আমি এটি পেয়েছি তবে আমি আরও চাই আমি ব্যাবহার করতে পারি.
- আমি "গড অবজেক্ট" এর জন্য উইকিপিডিয়া পৃষ্ঠাটি পরীক্ষা করেছি এবং এটি বর্তমানে সামান্য রেফারেন্স লিংক সহ একটি স্টাব তাই আমি ব্যক্তিগতভাবে এটির সাথে একমত হয়েছি যদিও এটি ব্যক্তিগত পরিবেশকে বৈধ বলে মনে করা হয় না এমন পরিবেশে আমার এতটা ব্যবহার করতে পারে না। উদ্ধৃত বইটি খুব পুরানো হিসাবে বিবেচিত লোকেরাও যেগুলি আমি এই প্রযুক্তিগত বিষয়গুলি নিয়ে তর্ক করে যাচ্ছি তারা যে যুক্তি দিয়ে বলছে যে "এটি একবার খারাপ বলে মনে করা হত তবে কেউ তা প্রমাণ করতে পারেনি, এবং এখন আধুনিক সফ্টওয়্যার বলে" godশ্বর "অবজেক্টগুলি ব্যবহার করা ভাল"। আমি ব্যক্তিগতভাবে বিশ্বাস করি যে এই বিবৃতিটি ভুল, তবে আমি সত্য যাই হোক না কেন তা প্রমাণ করতে চাই।
- রবার্ট সি মার্টিনের "এগিল নীতি, প্যাটার্নস এবং সি # তে অনুশীলনগুলিতে" (আইএসবিএন: 0-13-185725-8, হার্ডকভার) যেখানে পৃষ্ঠা 266 তে লেখা আছে "প্রত্যেকে জানে যে godশ্বরের ক্লাসগুলি একটি খারাপ ধারণা। আমরা চাই না কোনও সিস্টেমের সমস্ত বুদ্ধিমত্তাকে একটি একক বস্তু বা একটি একক ক্রিয়ায় কেন্দ্রীভূত করা। ওওডির অন্যতম লক্ষ্য হ'ল বিভাজন এবং আচরণকে বহু শ্রেণিতে এবং বহু ফাংশনে ভাগ করা "" - এবং তারপরেও কখনও কখনও বলা যায় যে কোনওভাবে Godশ্বরের ক্লাসগুলি ব্যবহার করা ভাল (উদাহরণ হিসাবে মাইক্রো-কন্ট্রোলারদের উদ্ধৃতি দিয়ে)।
- রবার্ট সি মার্টিনের "ক্লিন কোড: অ্যান্ডিল অফ সফেল সফটওয়্যার ক্র্যাফটসম্যানশিপ" পৃষ্ঠাতে 136 (এবং কেবলমাত্র এই পৃষ্ঠাটি) "গড ক্লাস" সম্পর্কে আলোচনা করেছে এবং "শ্রেণিগুলি ছোট হওয়া উচিত" নিয়মের লঙ্ঘনের একটি প্রধান উদাহরণ হিসাবে এটিকে আহ্বান জানিয়েছে তিনি পৃষ্ঠায় 138 থেকে শুরু করে একক দায়িত্বের নীতিটি প্রচার করতে ব্যবহার করেন।
আমার যে সমস্যাটি রয়েছে তা হ'ল আমার সমস্ত তথ্যসূত্র এবং উদ্ধৃতি একই ব্যক্তির (রবার্ট সি মার্টিন) থেকে এসেছে এবং আমি একই ব্যক্তি / উত্স থেকে এসেছি। আমাকে বলা হচ্ছে যে তিনি কেবল একটি দৃষ্টিভঙ্গি, "গড ক্লাস" ব্যবহার না করার আমার ইচ্ছাটি অবৈধ এবং সফ্টওয়্যার শিল্পে একটি আদর্শ মানের অনুশীলন হিসাবে স্বীকৃত নয়। এটা কি সত্য? আমি কি আঙ্কেল ববকে শেখানোর চেষ্টা করে প্রযুক্তিগত দৃষ্টিকোণ থেকে কিছু ভুল করছি?
গড অবজেক্টস এবং অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং এবং ডিজাইন:
আপনি যখন ওওপি সম্পর্কে অধ্যয়ন করেন তখন এই বিষয়টিকে আমি যত বেশি মনে করি ততই আপনি এটি শিখেন এবং এটি কখনই স্পষ্টভাবে বলা হয় না; এটি ভাল ডিজাইনের সাথে জড়িত আমার চিন্তাভাবনা (আমাকে সংশোধন করতে নির্দ্বিধায় অনুগ্রহ করে দয়া করে, যেমনটি আমি শিখতে চাইছি), সমস্যাটি হ'ল আমি এটি "জানি" তবে সবাই তা করে না, তাই এই ক্ষেত্রে এটি একটি বৈধ যুক্তি হিসাবে বিবেচিত হয় না আমি কার্যকরভাবে এটিকে সর্বজনীন সত্য হিসাবে ডেকে বলছি যখন বাস্তবে বেশিরভাগ মানুষ পরিসংখ্যানগতভাবে এটি সম্পর্কে অজ্ঞ থাকেন যেহেতু পরিসংখ্যানগতভাবে বেশিরভাগ মানুষ প্রোগ্রামার না হয়।
উপসংহার:
উত্সাহ দেওয়ার জন্য সর্বোত্তম অতিরিক্ত ফলাফল পাওয়ার জন্য আমি কী অনুসন্ধান করব তা নিয়ে আমার ক্ষতি হচ্ছে, যেহেতু তারা প্রযুক্তিগত দাবি করছে এবং আমি সত্যটি জানতে চাই এবং সত্য প্রকৌশলী / বিজ্ঞানীর মতো উদ্ধৃতি দিয়ে তা প্রমাণ করতে সক্ষম হয়েছি, এমনকি যদি কোডগুলি ব্যবহার করার সাথে আমার ব্যক্তিগত অভিজ্ঞতার কারণে আমি objectsশ্বরের জিনিসগুলির বিরুদ্ধে পক্ষপাতদুষ্ট। কোনও সহায়তা বা উদ্ধৃতি গভীরভাবে প্রশংসা করা হবে।