Connascence
کوناسینس () ایک سافٹ ویئر کوالٹی میٹرک ہے جسے میلر پیج جونز نے ایجاد کیا ہے تاکہ آبجیکٹ پر مبنی ڈیزائن میں انحصار کے تعلقات کی وجہ سے پیدا ہونے والی پیچیدگی کے بارے میں استدلال کی اجازت دی جا سکے جیسا کہ جوڑے نے ساختی ڈیزائن کے لیے کیا تھا۔ سافٹ ویئر انجینئرنگ میں، دو اجزاء مربوط ہوتے ہیں اگر نظام کی مجموعی درستگی کو برقرار رکھنے کے لیے ایک میں تبدیلی کے لیے دوسرے میں ترمیم کرنے کی ضرورت ہوگی۔ انحصار کے تعلقات کی درجہ بندی کی اجازت دینے کے علاوہ، مطابقت مختلف قسم کے انحصار کا موازنہ کرنے کے لیے ایک نظام بھی فراہم کرتی ہے۔ ممکنہ ڈیزائنوں کے درمیان اس طرح کے موازنہ اکثر سافٹ ویئر کے معیار کو بہتر بنانے کے طریقوں کی طرف اشارہ کر سکتے ہیں۔ طاقت ہم آہنگی کی ایک شکل کو مضبوط سمجھا جاتا ہے اگر اس میں ہم آہنگی والے عناصر میں معاوضہ تبدیلیوں کی ضرورت ہونے کا زیادہ امکان ہو۔ ہم آہنگی کی شکل جتنی مضبوط ہوتی ہے، تعلقات کے عناصر کو تبدیل کرنا اتنا ہی مشکل اور مہنگا ہوتا ہے۔ ڈگری مطابقت کی قبولیت کا تعلق اس کے واقع ہونے کی ڈگری سے ہے۔ عداوت محدود حد تک قابل قبول ہو سکتا ہے لیکن بڑی حد تک ناقابل قبول ہو سکتا ہے۔ مثال کے طور پر، ایک فنکشن یا طریقہ جو دو دلائل لیتا ہے عام طور پر قابل قبول سمجھا جاتا ہے۔ تاہم، افعال یا طریقوں کے لیے عام طور پر دس دلائل لینا ناقابل قبول ہے۔ اعلی درجے کی حساسیت والے عناصر کو کم درجے والے عناصر کے مقابلے میں تبدیلی کی زیادہ مشکل اور لاگت آتی ہے۔ مطابقت کا تجزیہ کرتے وقت لوکلٹی اہمیت رکھتی ہے۔ اگر اس میں شامل عناصر کا گہرا تعلق ہو تو ہم آہنگی کی مضبوط شکلیں قابل قبول ہیں۔ مثال کے طور پر، بہت سی زبانیں فنکشنز یا طریقوں کو کال کرتے وقت پوزیشنل دلائل کا استعمال کرتی ہیں۔ کال کرنے والے اور کالی کی قربت کی وجہ سے پوزیشن کا یہ احساس قابل قبول ہے۔ فریقین کے نسبتا غیر متعلقہ ہونے کی وجہ سے کسی ویب سروس کو پوزیشن کے لحاظ سے دلائل دینا ناقابل قبول ہے۔ اتنی ہی طاقت اور مہارت کی ڈگری میں زیادہ مشکل اور تبدیلی کی لاگت ہوگی، اس میں شامل عناصر اتنے ہی دور ہوں گے۔ اقسام یہ کچھ اقسام کی مطابقت کی فہرست ہے جو تقریبا کمزور سے مضبوط شکلوں میں ترتیب دی گئی ہے۔ جامد کوناسسینس کو "جامد" کہا جاتا ہے اگر انہیں کوڈ کی بصری جانچ کر کے پایا جا سکے۔ نام کا اتفاق (سی او این) نام کا اتفاق اس وقت ہوتا ہے جب متعدد اجزاء کو کسی وجود کے نام پر متفق ہونا ضروری ہوتا ہے۔ طریقہ کار کے نام اس قسم کی مطابقت کی ایک مثال ہیں: اگر کسی طریقہ کار کا نام بدل جاتا ہے، تو نیا نام استعمال کرنے کے لیے اس طریقہ کار کے کال کرنے والوں کو تبدیل کرنا ضروری ہے۔ کوناسینس آف ٹائپ (سی او ٹی) کوناسینس آف ٹائپ وہ ہوتا ہے جب متعدد اجزاء کو کسی ہستی کی قسم پر متفق ہونا ضروری ہوتا ہے۔ مستحکم طور پر ٹائپ کی گئی زبانوں میں، طریقہ کار کے دلائل کی قسم مطابقت کی اس شکل کی ایک مثال ہے۔ اگر کوئی طریقہ اپنی دلیل کی قسم کو انٹیجر سے سٹرنگ میں تبدیل کرتا ہے، تو اس طریقہ کے کال کرنے والوں کو پہلے سے مختلف دلیل پاس کرنے کے لیے تبدیل کیا جانا چاہیے۔ معنی کا اتفاق (سی او ایم) یا کنونشن کا اتفاق (سی او سی) معنی کا اتفاق تب ہوتا ہے جب متعدد اجزاء کو مخصوص اقدار کے معنی پر متفق ہونا ضروری ہوتا ہے۔ انٹیجرز 0 اور 1 کو بالترتیب غلط اور سچ کی نمائندگی کرنے کے لیے واپس کرنا، مطابقت کی اس شکل کی ایک مثال ہے۔ پوزیشن کا اتفاق (سی او پی) پوزیشن کا اتفاق اس وقت ہوتا ہے جب متعدد اجزاء کو اقدار کی ترتیب پر متفق ہونا ضروری ہوتا ہے۔ میتھڈ کالز میں پوزیشنل پیرامیٹرز اس قسم کی مطابقت کی ایک مثال ہیں۔ کال کرنے والے اور کیلی دونوں کو پہلے، دوسرے، وغیرہ کے الفاظ پر متفق ہونا چاہیے۔ پیرامیٹرز۔ الگورتھم کا اتفاق (سی او اے) الگورتھم کا اتفاق اس وقت ہوتا ہے جب متعدد اجزاء کو کسی خاص الگورتھم پر متفق ہونا ضروری ہوتا ہے۔ پیغام کی تصدیق کے کوڈ اس قسم کی مطابقت کی ایک مثال ہیں۔ تبادلے کے دونوں اطراف کو بالکل ایک ہی ہیشنگ الگورتھم کو نافذ کرنا چاہیے ورنہ تصدیق ناکام ہو جائے گی۔ متحرک کوناسینس کو "متحرک" کہا جاتا ہے اگر انہیں صرف رن ٹائم پر دریافت کیا جا سکے۔ کارکردگی کا ارتکاز (سی او ای) کارکردگی کا ارتکاز تب ہوتا ہے جب متعدد اجزاء کی کارکردگی کا حکم اہم ہوتا ہے۔ کوناسینس آف ٹائمنگ (سی او ٹی) کوناسینس آف ٹائمنگ وہ ہوتا ہے جب متعدد اجزاء پر عمل درآمد کا وقت اہم ہوتا ہے۔ اقدار کی ہم آہنگی (سی او وی) اقدار کی ہم آہنگی وہ ہوتی ہے جب کئی اقدار کو ایک ساتھ تبدیل ہونا پڑتا ہے۔ شناخت کی ہم آہنگی (سی او آئی) شناخت کی ہم آہنگی تب ہوتی ہے جب متعدد اجزاء کو ایک ہی وجود کا حوالہ دینا ہوتا ہے۔ ہم آہنگی کو کم کرنے سے ہم آہنگی کو کم کرنے سے سافٹ ویئر سسٹم میں تبدیلی کی لاگت میں کمی آئے گی۔ ہم آہنگی کو کم کرنے کا ایک طریقہ یہ ہے کہ ہم آہنگی کی مضبوط شکلوں کو کمزور شکلوں میں تبدیل کریں۔ مثال کے طور پر، ایک طریقہ جو کئی دلائل لیتا ہے اسے نامزد پیرامیٹرز استعمال کرنے کے لیے تبدیل کیا جا سکتا ہے۔ اس سے سی او پی سے سی او این میں تبدیلی آئے گی۔ ڈگری کو کم کرنا اور شامل عناصر کی بڑھتی ہوئی لوکیٹی ملنساری کو کم کرنے کے دوسرے طریقے تشکیل دیتی ہے۔ حوالہ جات گرینڈ یونیفائیڈ تھیوری آف سافٹ ویئر ڈیزائن، جم ویرچ میلر پیج جونز، انکوپیسولیشن اور کونسینس کے ذریعے تکنیکوں کا موازنہ، اے سی ایم کے مواصلات، جلد 35، شمارہ 9 ہر پروگرامر کو آبجیکٹ اورینٹڈ ڈیزائن، میلر پیج جونز، ڈورسیٹ ہاؤس پبلشنگ، یو ایم ایل میں آبجیکٹ اورینٹڈ ڈیزائن کی بنیادی باتیں، میلر پیج جونز، ایڈیسن ویسلے پب کمپنی ؛ مینوئل ریویرو ؛ اگست 9، 2018 ؛ کونسینس: جاوا سافٹ ویئر فن تعمیر میں آبجیکٹ اورینٹڈ ڈیزائن پر ایک نظر