تور لحظه آخری
امروز : یکشنبه ، 17 تیر 1403    احادیث و روایات:  امام صادق (ع): کسی که در پی برآوردن نیاز برادر مسلمان خود باشد، تا زمانی که در این راه است خ...
سرگرمی سبک زندگی سینما و تلویزیون فرهنگ و هنر پزشکی و سلامت اجتماع و خانواده تصویری دین و اندیشه ورزش اقتصادی سیاسی حوادث علم و فناوری سایتهای دانلود گوناگون شرکت ها

تبلیغات

تبلیغات متنی

اتاق فرار

خرید ووچر پرفکت مانی

تریدینگ ویو

کاشت ابرو

لمینت دندان

ونداد کولر

صرافی ارکی چنج

صرافی rkchange

دانلود سریال سووشون

دانلود فیلم

ناب مووی

رسانه حرف تو - مقایسه و اشتراک تجربه خرید

سرور اختصاصی ایران

تور دبی

دزدگیر منزل

تشریفات روناک

اجاره سند در شیراز

قیمت فنس

armanekasbokar

armanetejarat

صندوق تضمین

پیچ و مهره

طراحی کاتالوگ فوری

دانلود کتاب صوتی

تعمیرات مک بوک

Future Innovate Tech

آموزشگاه آرایشگری مردانه شفیع رسالت

پی جو مشاغل برتر شیراز

قیمت فرش

آموزش کیک پزی در تهران

لوله بازکنی تهران

میز جلو مبلی

هتل 5 ستاره شیراز

آراد برندینگ

رنگ استخری

سایبان ماشین

قالیشویی در تهران

مبل استیل

بهترین وکیل تهران

شرکت حسابداری

نظرسنجی انتخابات 1403

استعداد تحلیلی

کی شاپ

خرید دانه قهوه

دانلود رمان

وکیل کرج

آمپول بیوتین بپانتین

پرس برک

بهترین پکیج کنکور

خرید تیشرت مردانه

خرید نشادر

خرید یخچال خارجی

وکیل تبریز

اجاره سند

وام لوازم خانگی

نتایج انتخابات ریاست جمهوری

خرید ووچر پرفکت مانی

خرید سی پی ارزان

خرید ابزار دقیق

بهترین جراح بینی خانم

تاثیر رنگ لباس بر تعاملات انسانی

خرید ریبون

 






آمار وبسایت

 تعداد کل بازدیدها : 1805144231




هواشناسی

نرخ طلا سکه و  ارز

قیمت خودرو

فال حافظ

تعبیر خواب

فال انبیاء

متن قرآن



اضافه به علاقمنديها ارسال اين مطلب به دوستان آرشيو تمام مطالب
archive  refresh

ضرورت استخراج جنبه


واضح آرشیو وب فارسی:راسخون:
ضرورت استخراج جنبه
ضرورت استخراج جنبه امروزه توسعه‌دهندگان براي بيان طرحي کاملاً پيمانه‌اي و مدل کپسوله‌سازی مشکل دارند. در واقع تکنيک‌های برنامه‌نويسي شي‌گرا تمامي طراحي‌های مهم مورد نياز در پياده‌سازی برنامه‌ها را تامين نمي‌کنند. هم چنين بايد گفت که متدها نيز در بعضي از اوقات کارايي ندارند. به عنوان مثال، قصد داريد در برنامه‌نويسي شي‌گرا خطوطي از کد را در کلاس‌های متعددي تکرار نماييد. بنابراين هر کلاس نياز به يک متد خواهد داشت که اين کد را درون کلاس پياده‌سازی نمايد. با روش شی‌گرا قادر نخواهيد بود آن متد را در يک کلاس جداگانه پياده‌سازی کنيد. اين فرآيند بيان کننده‌ی نياز به استخراج جنبه‌ها است.در شي‌گرايي، نرم‌افزار را از بعد وظيفه‌مندي به اجزاي کوچکتري تقسيم کرده و به بعد غيروظيفه‌مند به اندازه‌ی بعد وظيفه‌مند بها داده نمي‌شود. وجود بعد غيروظيفه‌مند در درون بعد وظيفه‌مند سبب می‌گردد تا موارد مرتبط با بعد وظيفه‌مندي، در قالب کپسوله‌سازی مستقل پديدار نگردند. درعوض، اجزايي از نرم‌افزار که مسئول پوشش وظيفه‌مندي سيستم‌ها هستند پراکنده می‌شوند. مفاهيمي که به خواسته‌های غيروظيفه‌مند مربوط می‌شوند، محيط اشيا را تشکيل می‌دهند. در صورتي که نرم‌افزار را با شيوه‌ی شي‌گرايی به اجزاي کوچکتري تقسيم کنيد، مشکلات زير را در آن مشاهده خواهيد کرد:• درهم‌ريختگي کد برنامه: بدین‌معني که يک کلاس، دربرگيرنده‌ی چند مفهوم می‌باشد. مفاهيم مربوط به خود کلاس و مفاهيم مربوط به خواسته‌های غيروظيفه‌مندي که محيط کلاس را تشکيل می‌دهند. اين امر سبب پيچيدگي شده و نگهداري نرم‌افزار را مشکل می‌نمايد.• پراکندگي مفاهيم در کد برنامه: به دليل آنکه مفاهيم مربوط به خواسته‌های غيروظيفه‌مند در قالب واحدهاي کپسوله‌سازی مجزا ظاهر نمي‌شوند، از اين رو در کلاس‌های مختلف پراکنده می‌گردند. اين پراکندگي سبب کاهش تحمل‌پذيري کلاس در برابر تغييرات اين مفاهيم می‌شود. همچنين قابليت استفاده‌ی مجدد کلاس‌ها پايين می‌آيد.با توجه به مشکلات ياد شده، بهتر است تغييراتي در نرم‌افزارهايي که قابليت استفاده‌ی مجدد آنها بالا است اعمال گردد. بدينسان، قابليت پيکربندي اجزاي مختلف نرم‌افزار براي قرار گرفتن در محيط‌های مختلف مهيا می‌گردد. علاوه براين، قابليت استفاده‌ی مجدد به محيط اشيا و خواسته‌های غيروظيفه‌مندي نيز داده می‌شود.روش جنبه‌گرا با تقسيم‌بندي بخش‌های مختلف برنامه، پيچيدگي برنامه را کاهش می‌دهد. در واقع با کاهش پيچيدگي، طراحي، درک و هم چنين نگهداري سيستم نرم‌افزاري آسان‌تر خواهد شد. علاوه بر اين، برنامه‌نويسي جنبه‌گرا باعث توليد محصولاتي با بهره‌وري بالا، کيفيت بهتر و اضافه کردن قابليت‌های بيشتر می‌گردد.مشکل ديگر در برنامه‌های شی‌گرا، وجود دغدغه است. دغدغه هدفي مشخص، مفهوم يا يک حوزه‌ی کاري می‌باشد. يک سيستم نرم‌افزاري عادي داراي دغدغه‌های متعددي است. اين دغدغه‌ها از لايه‌ی مرکزي تا لايه‌های سيستمي یک برنامه‌ی نرم‌افزاری ادامه دارند. براي نمونه، دغدغه‌ی اصلي يک سيستم پردازش کارت اعتباري، پردازش پرداخت‌ها می‌باشد. اما دغدغه‌های سيستمي آن، ثبت وقايع، يکپارچه کردن تراکنش‌ها، شناسايي کاربر، امنيت، کارآيي و غيره هستند. بسياري از اين دغدغه‌ها به دغدغه‌های تداخلي معروف هستند که بر پياده‌سازی پيمانه‌های مختلف برنامه تاثير می‌گذارند. شيوه‌ی جنبه‌گرا مکانيزم‌هايي را در اختيار توسعه‌دهندگان قرار می‌دهد تا بتوانند کدهايي که بيانگر دغدغه‌های متداخل باشد را بنويسند.در صورت استفاده از شيوه‌های برنامه‌نويسي کنوني، دغدغه‌های تداخلي روي تعداد زيادي از پيمانه‌های برنامه پخش شده و اثر می‌گذارند. به همين دليل طراحي و درک سيستم مورد نظر سخت‌تر و هم چنين پياده‌سازی آن پيچيده‌تر خواهد شد. تغيير در چنين سيستمي دشوار است. برنامه‌نويسي جنبه‌گرا بهتر از روش‌های متداول قبلي، دغدغه‌ها را از پيمانه‌های سيستم جدا می‌کند. پس می‌توان از تداخل دغدغه‌ها جلوگيري نمود.می‌توان بطور خلاصه چنين نتيجه‌گيری نمود که هر جنبه، شاخص وظيفه‌اي خاص از وظايف يک سيستم است. به همين دليل جهت تشخيص وظايف، نياز به استخراج جنبه‌ها از متن برنامه‌های شي‌گرا می‌باشد. استخراج جنبه‌ها و تعيين حدود هر جنبه در داخل کد برنامه‌ها موجب افزايش خوانايي و قابليت توسعه برنامه می‌گردد. مقوله‌ی استفاده‌ی مجدد معمولاً در قالب عمليات مطرح است و نه کلاس‌ها. لذا، با استخراج و تعيين سرحد جنبه‌ها امکان استفاده‌ی مجدد از کد برنامه‌ها افزايش می‌يابد.منبع:G. Kiczales, J. Lamping, A. Mendhekar, C. Maeda, C. V. Lopes, J. M. Loingtier and J. Irwin, “Aspect-Oriented Programming”, proceedings of the European Conference on Object-Oriented Programming (ECOOP), Finland, 1997.E. Filman, T. Elrad, S. Clarke and M. Aksit, “Aspect-Oriented Software Development”, Addison Wesley Professional, 2004.J. D. Gradecki and N. Lesiecki, “Mastering AspectJ - Aspect-Oriented Programming in Java”, Wiley Publishing, 2003.N. Loughran and A. Rashid, “Mining Aspects”, Lancaster University, UK, 2002.منبع:www.articles.ir/س





این صفحه را در گوگل محبوب کنید

[ارسال شده از: راسخون]
[مشاهده در: www.rasekhoon.net]
[تعداد بازديد از اين مطلب: 342]

bt

اضافه شدن مطلب/حذف مطلب







-


گوناگون

پربازدیدترینها
طراحی وب>


صفحه اول | تمام مطالب | RSS | ارتباط با ما
1390© تمامی حقوق این سایت متعلق به سایت واضح می باشد.
این سایت در ستاد ساماندهی وزارت فرهنگ و ارشاد اسلامی ثبت شده است و پیرو قوانین جمهوری اسلامی ایران می باشد. لطفا در صورت برخورد با مطالب و صفحات خلاف قوانین در سایت آن را به ما اطلاع دهید
پایگاه خبری واضح کاری از شرکت طراحی سایت اینتن