در بيشتر سيستمهاي نرم افزاري کنوني دغدغه هاي مختلفي وجود دارد که بين بخشهاي مختلف برنامه مشترک هستند و بعضاً رابطههاي پيچيدهاي بين بخشهاي مختلف برنامه ايجاد ميکنند. دغدغههايي از قبيل امنيت، امکان ثبت وقايع و … بخش کوچکي از اين دغدغهها را تشکيل ميدهند. اگر براي پيادهسازي اينگونه دغدغهها از تکنيکهاي برنامهنويسي شيءگرا استفاده شود، يک سيستم پيچيده، غير قابل فهم و غير انعطاف پذير بهوجود ميآيد. روش جديد برنامهنويسي جنبهگرا (AOP) باعث ميشود که تقسيمبندي بخشهاي مختلف برنامه به نحوي ساده شود که برطرف کردن دغدغهها باعث پيچيدگي زيادي نشود. اين کار باعث راحتتر شدن طراحي، فهم، و نگهداري سيستم خواهد شد. علاوه بر اين، AOP باعث توليد محصولاتي با بهرهوري بالاتر، کيفيت بهتر، و امکان اضافه کردن قابليتهاي بيشتري ميشود.
اين مقاله مفاهيم برنامه نويسی جنبه گرا را بيان می کند.