Canigó (framework)
کینیگو جنرلٹیٹ ڈی کاتالونیا کے جاوا ای ای فریم ورک کے لیے منتخب کیا گیا نام ہے۔ مقصد اور فن تعمیر کینیگو کی تعریف "جنرلٹیٹ ڈی کاتالونیا کے کارپوریٹ سسٹمز اور محکموں کے لیے ویب ایپلی کیشنز کی ترقی اور ان پر عمل درآمد کے لیے مشترکہ تکنیکی فریم ورک" کے طور پر کی گئی ہے۔ یہ مختلف افعال کا احاطہ کرتا ہے: جاوا ای ای ایپلی کیشن بلڈنگ کے لیے ایک مشترکہ فن تعمیر۔ کام کی جگہ، دستاویزات، معاونت اور اس کے اجزاء کی دیکھ بھال فراہم کرتا ہے۔ جاوا ای ای میں موجود پیچیدگی کو آسان بناتا ہے، جو ایک حوالہ فریم ورک پیش کرتا ہے۔ پوری اوپن سورس کمیونٹی میں ڈی فیکٹو معیارات کو مدنظر رکھتے ہوئے حل پیش کرتا ہے۔ ایک کھلا حل پیش کرتا ہے جو کم لاگت کے ساتھ سافٹ ویئر کے کسی بھی ٹکڑے کو شامل کرنے اور اس کا تبادلہ کرنے کے امکان کو قابل بناتا ہے۔ جنرلیٹیٹ ڈی کاتالونیا کی کارپوریٹ خدمات کے ساتھ باہمی رابطہ کا حل پیش کرتا ہے۔ کینیگو کا فن تعمیر ماڈل ویو کنٹرولر پر مبنی ہے۔ ایک تجریدی عمل ہے جو درخواست کے منطق کو تین اہم اجزاء میں تقسیم کرنے کی اجازت دیتا ہے جو ٹیم کے مختلف کرداروں کے ذریعے تیار کیے جا سکتے ہیں۔ دراصل کینیگو کا فن تعمیر، ایک ایم وی سی ساختہ فریم ورک کے طور پر، 3 تہوں اور 4 کراس کاٹنے والے ماڈیولز میں تقسیم ہے: تہوں کی پیشکش پرت کاروباری منطق پرت ڈیٹا استقامت/انضمام تہے ماڈیولز فریم ورک کور سیکیورٹی ماڈیولز سپورٹ ماڈیول آپریشن ماڈیول کینیگو کا ایک ماڈیولر ڈھانچہ ڈویلپرز کو پروجیکٹ کی ضروریات کو پورا کرنے کے لیے صرف مطلوبہ ماڈیولز استعمال کرنے کا اختیار دیتا ہے۔ ان ماڈیولز کی تعریف انٹرفیس کے ذریعے کی جاتی ہے، جو انہیں منتخب کردہ نفاذ سے الگ کرتی ہے۔ کینیگو ایک سلسلہ وار وسائل، جے پی اے کے طور پر اے پی آئی کے انضمام، اور اوپن سورس پیکجوں (اسپرنگ، سویگر،.) پر مبنی ہے۔ یہ ان پیکجوں کے لیے توسیعات بھی پیش کرتا ہے، جس میں دوبارہ استعمال کے قابل اجزاء کی ایک وسیع فہرست شامل کی جاتی ہے۔ آرکیٹیکچرل کی سب سے اہم بنیاد میں سے ایک REST API کا استعمال کرتے ہوئے فرنٹ اینڈ اور بیک اینڈ کو ڈیکپلنگ کرنا ہے۔ یہ فن تعمیر آزاد ترقیاتی ٹیموں کو فرنٹ اینڈ اور بیک اینڈ پر کام کرنے کی اجازت دیتا ہے۔ فریم ورک ذیل میں بیان کردہ بلاکس پر مشتمل ہے: فریم ورک آرکیٹیکچر بیس اجزاء اسپرنگ جاوا پلیٹ فارم کے لیے لکھا گیا ایک اوپن سورس فریم ورک ہے۔ پہلا ورژن اکتوبر 2002 میں راڈ جانسن نے بنایا تھا اور آخری ریلیز ورژن 5.0.9 ہے، جو ستمبر 2018 کے پہلے ہفتے میں شائع ہوا تھا۔ کینیگو کو ویب ایپلی کیشنز کی ترتیب میں مدد کرنے کے لیے ڈیزائن کیا گیا ہے، اور مختلف ٹکڑوں میں سسٹم کی تعمیر کو آسان بنانے کے لیے بھی (آسانی سے متغیر اور ان کے درمیان نظر آنے والا)، سروس انضمام، سیکیورٹی سروسز، ڈیٹا بیس کنکشن، لین دین وغیرہ۔ اسپرنگ ایک مکمل ٹیسٹنگ سسٹم فراہم کرتا ہے، یہ ممکن ہے کہ یونٹری ٹیسٹ تیار کیے جائیں جو اپنے سیاق و سباق سے اشیاء کو بے جوڑ کر ٹیسٹ کے معاملات پر عمل درآمد کو آسان بنائے۔ اسپرنگ کے ذریعے بیرونی ڈیٹا تک رسائی ایک آسان کام ہے کیونکہ یہ فریم ورک خود وسائل کا انتظام کرتا ہے۔ اس میں سپورٹ اے پی آئی بھی ہیں اور یہ جاوا انڈسٹری ڈیٹا تک رسائی کی ٹیکنالوجیز کی اکثریت کو برداشت کرنے کے قابل ہے جیسے: جے ڈی بی سی، ہائبرنیٹ، جے پی اے، جے ڈی او یا آئی بیٹس۔ کینیگو کے فن تعمیر کی بنیادی بنیاد جاوا ویب ایپلی کیشنز میں ٹیکنالوجیز تیار کرنے کے بہترین طریقوں کا ایک مکمل طور پر مربوط گروپ ہے، جو ماڈیولر بھی ہے۔ یہ اصل اجزاء ہیں جو سسٹم کو تشکیل دیتے ہیں: سویگر ایک اوپن سورس سافٹ ویئر فریم ورک ہے جس کی حمایت ٹولز کے ایک بڑے ماحولیاتی نظام سے ہوتی ہے جو ڈویلپرز کو RESTful ویب سروسز کو ڈیزائن کرنے، بنانے، دستاویز کرنے اور استعمال کرنے میں مدد کرتا ہے۔ اگرچہ زیادہ تر صارفین سویگر کو سویگر UI ٹول کے ذریعے شناخت کرتے ہیں، لیکن سویگر ٹول سیٹ میں خودکار دستاویزات، کوڈ جنریشن، اور ٹیسٹ کیس جنریشن کے لیے سپورٹ شامل ہے۔ اسپرنگ 4 فریم ورک ایک مرکزی آبجیکٹ اور سروسز کنٹینر کے طور پر، جو ایکس ایم ایل فائلوں یا جاوا اینوٹیشن کے ذریعے مکمل طور پر تشکیل پذیر ہے۔ انحصار انجکشن غیر مداخلت کے نقطہ نظر کے ساتھ ایپلی کیشن کے کوڈ سے باہر اشیاء کی ترتیب کی اجازت دیتا ہے۔ یہ ترتیبات اور وسائل کی لوکلائزیشن کے لیے وقف ایپلی کیشن کے کوڈ کو کم کرتا ہے۔ یہ کلاسوں کے بجائے انٹرفیس کے خلاف پروگرامنگ جیسے بہترین طریقوں کو بھی آسان بناتا ہے، جس سے خدمات کو غیر جوڑنے اور دوسرے کے لیے دی گئی عمل درآمد میں تیزی سے تبدیلی کی اجازت ملتی ہے۔ یہ پہلو پر مبنی پروگرامنگ کے استعمال سے مخصوص اے پی آئی استعمال کیے بغیر لین دین کے انتظام کی بھی اجازت دیتا ہے۔ جے پی اے جاوا ریلیشنل ڈیٹا بیسز کا نقشہ بنانے کے لیے پوجوز پر مبنی تسلسل ماڈل فراہم کرتا ہے۔ اس کے علاوہ مونگو ڈی بی، جو کہ سب سے زیادہ مقبول غیر رشتہ دار ڈیٹا بیس ہے، کی حمایت کی جاتی ہے۔ سورس کوڈ میں ترمیم کیے بغیر ایپلی کیشن کے ایونٹ کی مداخلت کے لیے اے او پی (پہلو پر مبنی پروگرامنگ)۔ فریم ورک کور یہ ماڈیول فریم ورک کا بنیادی حصہ ہے، یہاں وہ جگہ ہے جہاں اہم خصوصیات واقع ہیں: ملٹی انوائرمنٹ کنفیگریشن: اسپرنگ 3 کے ذریعہ فراہم کردہ پراپرٹی پلیس ہولڈر پر مبنی۔ اس فرق کے ساتھ کہ یہ کسی بھی اضافی پھلیوں یا خصوصیات کی ترتیب کے بغیر ماحول پر منحصر خصوصیات کے وجود کی اجازت دیتا ہے۔ ملٹی لینگویج (آئی 18 این): اس کا مقصد متعدد زبانوں کی حمایت کو آسان بنا کر ایپلی کیشن ڈویلپمنٹ مرحلے میں مدد کرنا ہے۔ ٹریس سروس: لاگ 4 جے پر مبنی۔ یہ ٹریسنگ لیول، آؤٹ پٹ، کم از کم ٹریس لیول، آؤٹ پٹ فارمیٹ، سیاق و سباق کی معلومات کی تعریف کی اجازت دیتا ہے۔ استثنی کی خدمت: درخواست پر عمل درآمد کے دوران کسی بھی غلطی کے وجود کے بارے میں معلومات پیدا کرتی ہے۔ کینیگو ڈیفالٹ کی طرف سے مستثنیات کا ایک سلسلہ پیش کرتا ہے (بیس ایکسپشن، کور ایکسپشن،.)۔ اس میں "ٹرائی کیچ" کے ضرورت سے زیادہ استعمال سے بچنے کے لیے ایک مستثنی مداخلت کا طریقہ کار بھی ہے۔ سیکیورٹی ماڈیول یہ صارف کی اجازت اور تصدیق ایپلی کیشنز تک رسائی کے انتظام کا نظام ہے۔ سیکیورٹی ماڈیول: اسپرنگ سیکیورٹی 4. x پر مبنی۔ یہ ایپلی کیشنز کے صارفین کی اجازت اور تصدیق کا انتظام کرنے کے قابل ہے۔ سیکیورٹی بیک اینڈ: سیکیورٹی سروس جی آئی سی اے آر، ایس اے سی ای، ایل ڈی اے پی، ڈیٹا بیس اور ان میموری کے ساتھ مربوط ہے۔ پریزنٹیشن (UI) ماڈیول کینیگو 3.2.0 کے بعد سے، JSF کو پریزنٹیشن لیئر ٹیکنالوجی کے طور پر خارج کر دیا گیا ہے۔ پریزنٹیشن لیئر کی ذمہ داری فریم ورک سے باہر فرنٹ اینڈ ٹیکنالوجیز جیسے اینگولر یا ری ایکٹ پر مہارت رکھنے والی دوسری ٹیموں کو سونپی گئی ہے۔ انضمام ماڈیول اس کا مقصد جنرلیٹیٹ ڈی کاتالونیا کی طرف سے پیش کردہ مختلف خدمات تک آسان رسائی فراہم کرنا ہے۔ پی آئی سی اے: 'پلاٹافارما ڈی انٹیگراسیو آئی کول · لیبراسیو ایڈمنسٹریٹیوا' (پی آئی سی اے) تک رسائی کے لیے ایک انضمام جاوا انٹرفیس فراہم کرتا ہے۔ یہ ماڈیول ہم وقت اور غیر ہم وقت درخواستوں کو انجام دینے کے قابل ہے۔ جی ای سی اے ٹی: اس ماڈیول میں جیکیٹ کی ایس اے پی سروس کے ذریعہ پیش کردہ انوائس مینجمنٹ کے لیے افعال کا ایک مجموعہ ہے۔ پی ایس آئی ایس: یہ ایک ڈیجیٹل دستخطی اور ڈیجیٹل سرٹیفکیٹ سروس ہے جو کیٹسرٹ کی طرف سے پیش کی جاتی ہے۔ سارکیٹ: منصوبہ بند درخواستوں کے لیے ویب سروسز، ایف ٹی پی/ایس ایف ٹی پی کے ذریعے S@rcat کی طرف سے پیش کردہ خدمات کو انجام دینے کے طریقوں کا ایک سلسلہ ہے۔ ڈاکیومنٹم: کنزپشن ڈاکیومنٹم فنکشنلٹیز جیسے ڈاکیومنٹ فائلنگ اور ریٹریونگ کو فعال کرتا ہے، یہ فولڈرز اور میٹا ڈیٹا کا انتظام کرنے کے قابل بھی ہے۔ این ٹی: پی آئی سی اے کے لیے ایک فعال کنیکٹر ہے جو جنرلیٹیٹ ڈی کاتالونیا کی ٹیلی میٹیکل اطلاعات کے استعمال کو آسان بناتا ہے۔ اینٹی وائرس: جنرلیٹیٹ ڈی کاتالونیا کے سی ٹی ٹی آئی (انفارمیشن ٹیکنالوجیز اینڈ ٹیلی کمیونیکیشن سینٹر) فائل اسکیننگ سسٹم کا انضمام ہے۔ ایس اے پی: جنرلیٹیٹ ڈی کاتالونیا کے ایس اے پی بیک اینڈ تک رسائی حاصل کرنے کے لیے یہ ایک آسان انٹرفیس ہے۔ ویب سروسز: کینیگو 3 میں مقامی ویب سروسز ماڈیول نہیں ہے۔ جاوا کے ساتھ ویب سروسز کو برآمد کرنے، شائع کرنے اور استعمال کرنے کے بارے میں ایک مکمل دستاویزی گائیڈ موجود ہے۔ کینیگو 3 اسپرنگ ڈبلیو ایس، جیکسب اور او ایکس ایم کے استعمال کی حوصلہ افزائی کرتا ہے۔ قطاریں: کینیگو 3 میں قطار کے انتظام کا ماڈیول نہیں ہے۔ قطار سے پیغامات بنانے اور استعمال کرنے کے بارے میں ایک گائیڈ ہے۔ اسپرنگ جے ایم ایس کے استعمال کی سفارش کی جاتی ہے۔ استقامت ماڈیول یہ ماڈیول ایپلیکیشن اور ڈیٹا بیس مینجمنٹ سسٹمز کے درمیان ڈیٹا استقامت اور بازیافت کے ساتھ ایپلیکیشن کو قابل بناتا ہے۔ جے پی اے: جاوا پرسسٹینس اے پی آئی او آر ایم (آبجیکٹ-ریلیشنل میپنگ) کے ٹولز کو متحد کرتا ہے۔ کینیگو 3 میں ڈیفالٹ جے پی اے کا نفاذ ہائبرنیٹ ہے۔ اسپرنگ ڈیٹا جے پی اے جے پی اے پر مبنی ذخائر کو آسانی سے نافذ کرنا آسان بناتا ہے۔ یہ اسپرنگ سے چلنے والی ایپلی کیشنز کی تعمیر کو آسان بناتا ہے جو ڈیٹا تک رسائی کی ٹیکنالوجیز کا استعمال کرتی ہیں۔ MongoDB: اسپرنگ ڈیٹا MongoDB کی بدولت MongoDB دستاویز ڈیٹا بیس کے ساتھ آسانی سے انضمام۔ سپورٹ ماڈیول یہ ماڈیول فریم ورک میں کچھ اضافی خصوصیات فراہم کرتا ہے۔ فائل کی منتقلی: سرور کو ایچ ٹی ایم ایل کی شکل میں منسلک فائلیں وصول کرنے کے قابل بناتا ہے۔ میل نوٹیفکیشن: سرور کو متعدد پتے پر ای میل بھیجنے کے قابل بناتا ہے۔ یہ سادہ متن اور ایچ ٹی ایم ایل پیغام کے مواد کی شکل کو سنبھالتا ہے۔ یہ متعدد فائلوں کو بھی منسلک کر سکتا ہے۔ ٹاسک پلانر: اسپرنگ اور کوارٹز پر مبنی۔ پہلے سے طے شدہ ٹائم شیڈول کے اصولوں کی بنیاد پر موخر کاموں کو انجام دینے کا اختیار فعال کریں۔ او ایل ای: یہ ایم ایس ایکسل اور ورڈ او ایل ای دستاویز کے فارمیٹس میں ہیرا پھیری کر سکتا ہے۔ یہ دستاویزات بنانے، پڑھنے اور ترمیم کرنے کے امکان کو قابل بناتا ہے۔ یہ پی او آئی لائبریری پر مبنی ہے۔ ضم کرنا: ورڈ ایم ایل فارمیٹ میں دستاویز کا فیوژن۔ ٹیگ شدہ دستاویز سے شروع کرتے ہوئے، ان متغیرات کا تبادلہ لغت میں بیان کردہ اقدار کے ایک گروپ کے ذریعے کیا جاتا ہے۔ ایس ایف ٹی پی: محفوظ پروٹوکول کے ذریعے سرور جہاں ایپلیکیشن تعینات ہے اور دوسرے سرورز کے درمیان فائل ٹرانسمیشن کو فعال کرتا ہے۔ یہ جے ایس سی ایچ اور کامنز-وی ایف ایس لائبریریوں پر مبنی ہے۔ آپریشنز ماڈیول یہ ماڈیول عمل درآمد اور آلات کا ڈیٹا تیار کرنے کے لیے ایپلی کیشنز میں ایک خصوصیت شامل کرتا ہے۔ یہ ڈیٹا نگرانی کے ٹولز کے ذریعے کان کنی اور کارروائی کے لیے تیار ہے۔ انسٹرومینٹیشن: ایپلی کیشن کو انسٹرومینٹیشن ڈیٹا تیار کرنے کی صلاحیت کے ساتھ فعال کرتا ہے (سوالات کی گنتی، غلطیوں کی گنتی،)، یہ ڈیٹا ایپلی کیشن کے نفاذ سے آتا ہے۔ نگرانی: انسٹرومینٹیشن ماڈیول سے تیار کردہ ڈیٹا تک رسائی حاصل کرنے کے لیے ایپلیکیشن کو اسکرین دکھانے کے قابل بناتا ہے۔ لاگنگ: ایپلیکیشن کو لاگ ایپینڈرس (ایکٹیویٹ، ڈی ایکٹیویٹ، لاگ لیول تبدیل کرنا) کا انتظام کرنے اور ویب ساکٹ کے ساتھ ریئل ٹائم پر لاگ دیکھنے کے قابل بناتا ہے۔ بیرونی روابط پورٹل ڈی کینیگو گورنمنٹ آف کاتالونیا جاوا تفصیلات جاوا انٹرپرائز پلیٹ فارم کی درخواست کرتی ہیں