Knowledge

Aspect (computer programming)

Source 📝

25: 127: 394: 267:
them together (a process also called composition), one finally produces a whole out of the separate aspects. This approach is known as pure aspect programming, but hybrid approaches are more common. It is possible for functional concerns to crosscut non-functional or functional concerns (e.g., the
259:
Aspect-orientation is not limited to programming since it is useful to identify, analyse, trace and modularise concerns through requirements elicitation, specification, and design. Aspects can be multi-dimensional by allowing both functional and non-functional behaviour to crosscut any other
330: 263:
One view of aspect-oriented software development is that every major feature of the program, core concern (business logic), or cross-cutting concern (additional features), is an aspect, and by
268:
need for more features harms mobility). A uniform approach to representation and composition, similar to the pure approach in AOP, is termed multidimensional representation.
240:
code can crosscut many modules, yet the aspect of logging should be separate from the functional concerns of the module it cross-cuts. Isolating such aspects as logging and
323: 42: 439: 316: 137: 444: 195: 89: 167: 61: 296: 108: 174: 68: 241: 181: 152: 75: 46: 163: 57: 363: 339: 249: 35: 228:
linked to many other parts of the program, but is not related to the program's primary function. An aspect
233: 188: 82: 373: 229: 353: 253: 217: 144: 286: 292: 225: 245: 260:
concerns, instead of just mapping non-functional concerns to functional requirements.
433: 368: 264: 237: 16:
Feature linked to many parts of a program, unrelated to program's primary function
408: 126: 24: 378: 308: 393: 383: 418: 413: 312: 120: 18: 236:
that tries to encapsulate unrelated functions. For example,
148: 232:
the program's core concerns, therefore violating its
401: 346: 49:. Unsourced material may be challenged and removed. 324: 8: 153:introducing citations to additional sources 331: 317: 309: 109:Learn how and when to remove this message 143:Relevant discussion may be found on the 277: 7: 440:Aspect-oriented software development 47:adding citations to reliable sources 164:"Aspect" computer programming 58:"Aspect" computer programming 14: 392: 288:Aspect-Oriented Database Systems 136:relies largely or entirely on a 125: 23: 34:needs additional citations for 1: 445:Aspect-oriented programming 364:Aspect-oriented programming 340:Aspect-oriented programming 250:aspect-oriented programming 461: 390: 374:Cross-cutting concerns 248:is at the core of the 234:separation of concerns 285:Awais Rashid (2004). 218:computer programming 149:improve this article 43:improve this article 224:of a program is a 427: 426: 214: 213: 199: 119: 118: 111: 93: 452: 396: 333: 326: 319: 310: 303: 302: 282: 209: 206: 200: 198: 157: 129: 121: 114: 107: 103: 100: 94: 92: 51: 27: 19: 460: 459: 455: 454: 453: 451: 450: 449: 430: 429: 428: 423: 397: 388: 342: 337: 307: 306: 299: 284: 283: 279: 274: 210: 204: 201: 158: 156: 142: 130: 115: 104: 98: 95: 52: 50: 40: 28: 17: 12: 11: 5: 458: 456: 448: 447: 442: 432: 431: 425: 424: 422: 421: 416: 411: 405: 403: 399: 398: 391: 389: 387: 386: 381: 376: 371: 366: 361: 356: 350: 348: 344: 343: 338: 336: 335: 328: 321: 313: 305: 304: 297: 276: 275: 273: 270: 246:business logic 212: 211: 147:. Please help 133: 131: 124: 117: 116: 31: 29: 22: 15: 13: 10: 9: 6: 4: 3: 2: 457: 446: 443: 441: 438: 437: 435: 420: 417: 415: 412: 410: 407: 406: 404: 400: 395: 385: 382: 380: 377: 375: 372: 370: 369:Aspect weaver 367: 365: 362: 360: 357: 355: 352: 351: 349: 345: 341: 334: 329: 327: 322: 320: 315: 314: 311: 300: 298:3-540-00948-5 294: 290: 289: 281: 278: 271: 269: 266: 261: 257: 255: 251: 247: 243: 239: 235: 231: 227: 223: 219: 208: 197: 194: 190: 187: 183: 180: 176: 173: 169: 166: –  165: 161: 160:Find sources: 154: 150: 146: 140: 139: 138:single source 134:This article 132: 128: 123: 122: 113: 110: 102: 91: 88: 84: 81: 77: 74: 70: 67: 63: 60: –  59: 55: 54:Find sources: 48: 44: 38: 37: 32:This article 30: 26: 21: 20: 358: 291:. Springer. 287: 280: 262: 258: 221: 215: 202: 192: 185: 178: 171: 159: 135: 105: 96: 86: 79: 72: 65: 53: 41:Please help 36:verification 33: 419:AspectWerkz 242:persistence 434:Categories 379:Join point 272:References 175:newspapers 69:newspapers 409:AspectC++ 402:Languages 230:crosscuts 205:June 2008 145:talk page 99:June 2008 384:Pointcut 347:Concepts 254:paradigm 414:AspectJ 265:weaving 238:logging 226:feature 189:scholar 83:scholar 359:Aspect 354:Advice 295:  252:(AOP) 222:aspect 191:  184:  177:  170:  162:  85:  78:  71:  64:  56:  244:from 220:, an 196:JSTOR 182:books 90:JSTOR 76:books 293:ISBN 168:news 62:news 216:In 151:by 45:by 436:: 256:. 332:e 325:t 318:v 301:. 207:) 203:( 193:· 186:· 179:· 172:· 155:. 141:. 112:) 106:( 101:) 97:( 87:· 80:· 73:· 66:· 39:.

Index


verification
improve this article
adding citations to reliable sources
"Aspect" computer programming
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message

single source
talk page
improve this article
introducing citations to additional sources
"Aspect" computer programming
news
newspapers
books
scholar
JSTOR
computer programming
feature
crosscuts
separation of concerns
logging
persistence
business logic
aspect-oriented programming

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.