TIL: There's a new paradigm called AOP (Aspect Oriented Programming) where you can treat things like function entry/return as events and write code in a separate place for such events
πŸ‘︎ 65
πŸ’¬︎
πŸ‘€︎ u/TheEasternSky
πŸ“…︎ Apr 15 2021
🚨︎ report
Aspect-Oriented Programming

Hi All,

Anybody know is there intention to introduce aspects into the language? Even with all really nice improvements in C++20, cross-cutting concerns are still issue in the codebases I saw recently. (Logging, etc..)

Thx

πŸ‘︎ 2
πŸ’¬︎
πŸ‘€︎ u/malacszor
πŸ“…︎ Jun 07 2021
🚨︎ report
Aspect Oriented Programming in Lisp languages

I'm reading a book Clean Code by Uncle Bob (it was on my shelf of a while) and he describes Aspect Oriented Programming. Wikipedia say that ELisp advice function is implementation of AOP.

Does any of you was experimenting with Aspect Oriented Programming in lisp language? Does it give any advantage?

πŸ‘︎ 9
πŸ’¬︎
πŸ‘€︎ u/jcubic
πŸ“…︎ Mar 21 2021
🚨︎ report
Practical Aspect Oriented Programming in JavaScript thecodebarbarian.com/prac…
πŸ‘︎ 6
πŸ’¬︎
πŸ‘€︎ u/code_barbarian
πŸ“…︎ Jan 21 2021
🚨︎ report
Explain Aspect Oriented Programming like i'm five

Couldn't wrap my head around it even after Googling it numerous times.

πŸ‘︎ 51
πŸ’¬︎
πŸ‘€︎ u/King5lay3r
πŸ“…︎ Jun 02 2020
🚨︎ report
exaop - a minimal library for aspect-oriented programming github.com/nobrick/exaop
πŸ‘︎ 15
πŸ’¬︎
πŸ‘€︎ u/nobrick
πŸ“…︎ Aug 05 2020
🚨︎ report
Practical Aspect Oriented Programming in JavaScript thecodebarbarian.com/prac…
πŸ‘︎ 5
πŸ’¬︎
πŸ‘€︎ u/code_barbarian
πŸ“…︎ Jan 06 2021
🚨︎ report
Aspect-Oriented Programming (AOP) by source-level weaving

Aspect-oriented programming is a very appealing concept for simplifying your codebase, creating clean code, improving modularity, structure of code and minimizing copy-paste errors.

Today, in most cases, weaving aspect's advices is implemented at the bytecode level, i.e. after compilation, a certain tool Β«weaveΒ» an additional byte code with the support of the required logic.

Our approach (as well as the approach of some other tools) is modifying the source code to implement aspect logic. With introduction of the .NET Compiler Platform (aka Roslyn), it is quite easy to achieve this goal, and the result gives certain advantages over the modification of the byte code itself.

You may think that aspect-oriented programming is not for you and does not particularly concern you, just a bunch of incomprehensible words, but in fact it is much easier than it seems, this is about the problems of real world product development and if you are a software developer, then you and your project can definitely get benefit from using it.

Especially in medium-large sized projects of a corporate level, where the requirements for the functionality of the products are formalized. For example, there may be a requirement β€” when setting the configuration flag, log all input parameters for all public methods. Or for all methods in a project to have a notification functionality that will send a message when a certain threshold of the execution time of a method is exceeded.

How would you do it without AOP? Either you ignore the rule and do it only for the most important parts of your program, or when writing new methods, you do copy-paste of similar code from neighboring methods, and you could imagine what copy-paste approach brings with it.

With AOP, it is very easy, you write an advice an apply it to the whole project's code and the job is done. When you need to update the logic, you will again update just the advice and it will be re-applied on the next transformation. Without AOP, some many updates throughout the project code, that most probably you will implement the changes only to the critical parts and leave everything else as is.

On the plus side is that your code will not look like a crater covered moon landscape, because it is sprinkled with such functionality, the same way as moon sprinkled with craters and when reading the code it looks like mixed with white noise.

It is my feeling that aspect-oriented programming in .Net ecosystem is significantly less popular in c

... keep reading on reddit ➑

πŸ‘︎ 3
πŸ’¬︎
πŸ‘€︎ u/eugenie32b
πŸ“…︎ Oct 01 2020
🚨︎ report
Exercises in Aspect-Oriented Programming Style blog.frankel.ch/exercises…
πŸ‘︎ 44
πŸ’¬︎
πŸ‘€︎ u/nfrankel
πŸ“…︎ Jul 28 2019
🚨︎ report
[Go] blends the best aspects of functional programming and object-oriented styles to provide greater flexibility with as little ceremony as possible. medium.com/quick-code/7-r…
πŸ‘︎ 16
πŸ’¬︎
πŸ‘€︎ u/cmov
πŸ“…︎ Mar 05 2019
🚨︎ report
Should I include Aspect Oriented Programming (AOP) in my language?

I had read about AOP at

I found out that AOP also solves the Expression Problem to some extent, but I'm curious about should I include that feature in my programming language?

For some comparison:

  • In Java, AOP can be achieved using framework like Spring, however that is hellish, because you need to edit some XML config to make it work.
  • In Python, AOP can be achieved using runtime reflection (where you can modify the syntax tree), however there are no type safety at all, so you will be getting a lot of runtime errors until you get it right
  • In AspectFun, AOP can be achieved using built-in keywords, the syntax is quite nice TBH

So, can anyone pinpoint the advantage and disadvantage of having AOP built into a language?

πŸ‘︎ 22
πŸ’¬︎
πŸ‘€︎ u/hou32hou
πŸ“…︎ Oct 02 2018
🚨︎ report
JD Porterfield: Aspect-Oriented Programming in Android medium.com/@jdvp/aspect-o…
πŸ‘︎ 21
πŸ’¬︎
πŸ‘€︎ u/Zhuinden
πŸ“…︎ Jul 06 2018
🚨︎ report
The superior approach to: Aspect Oriented Programming
πŸ‘︎ 18
πŸ’¬︎
πŸ‘€︎ u/Goheeca
πŸ“…︎ Apr 03 2019
🚨︎ report
Aspect Oriented Programming (AOP) in .NET Core and C# using AutoFac and DynamicProxy nearsoft.com/blog/aspect-…
πŸ‘︎ 23
πŸ’¬︎
πŸ‘€︎ u/carlosomar2
πŸ“…︎ Feb 12 2018
🚨︎ report
Unit Testing and Aspect Oriented Programming

It seems like Unit Testing is a natural aspect, like logging and error handling.

Has anyone identified good patterns for treating unit tests as aspects of code?

πŸ‘︎ 2
πŸ’¬︎
πŸ‘€︎ u/james_mclellan
πŸ“…︎ Dec 31 2018
🚨︎ report
@scispike/aspectify: exclusively decorator-driven aspect-oriented programming for Node.js

If you like AOP a la AspectJ, please kick the tires on our new library https://www.npmjs.com/package/@scispike/aspectify for exclusively decorator-driven AOP.

We'd like to get your feedback!

πŸ‘︎ 4
πŸ’¬︎
πŸ‘€︎ u/matthewadams12
πŸ“…︎ Apr 02 2019
🚨︎ report
Flutter Aspect Oriented Programming by Alibaba github.com/alibaba-flutte…
πŸ‘︎ 3
πŸ’¬︎
πŸ‘€︎ u/Sol_Ido
πŸ“…︎ May 22 2019
🚨︎ report
Ask Reddit: Whatever Happened to Aspect Oriented Programming?
πŸ‘︎ 52
πŸ’¬︎
πŸ‘€︎ u/dons
πŸ“…︎ Aug 20 2008
🚨︎ report
Exercises in Aspect-Oriented Programming Style blog.frankel.ch/exercises…
πŸ‘︎ 2
πŸ’¬︎
πŸ‘€︎ u/nfrankel
πŸ“…︎ Jul 28 2019
🚨︎ report
The web ecosystem will merge the practical legibility from Functional Programming, the performance of Imperative, the organizational idea of Object Oriented and the practicality of Aspects. medium.com/@fagnerbrack/7…
πŸ‘︎ 18
πŸ’¬︎
πŸ‘€︎ u/axisofdenial
πŸ“…︎ Jun 28 2016
🚨︎ report
ES7 decorators library to build amazing projects using Aspect Oriented Programming github.com/k1r0s/kaop-ts/
πŸ‘︎ 9
πŸ’¬︎
πŸ‘€︎ u/k1r0s
πŸ“…︎ May 31 2017
🚨︎ report
Aspect Oriented Programming in C# with PostSharp

Hi guys,

came across PostSharp a couple nights ago and tried the free trial. Im completely blown away by all this. You can hook into methods and inject stuff (though MSIL manupilation it looks like) at runtime. You can intercept methods completely, access runtime parameter values, you can create MI-controller like structures, defer method execution to inner controller objects... All of this is amazing.

I have two small concerns. One being its quite pricey, but thats not really too big of an issue. The main one is maintainability. There seems to be a fair amount of compiler magic and hidden code, which i tend to dislike because its difficult to really predict the behavior of everything.

Any thoughts on this and PostSharp in general?

πŸ‘︎ 8
πŸ’¬︎
πŸ‘€︎ u/CCRed95
πŸ“…︎ Apr 25 2016
🚨︎ report
Every time you use CSS, you're doing Aspect-Oriented Programming plpatterns.com/post/48206…
πŸ‘︎ 25
πŸ’¬︎
πŸ‘€︎ u/jonnytran
πŸ“…︎ Mar 30 2010
🚨︎ report
why there is no JSR(specification) for Aspect-oriented programming like jpa, servlet.....? (if there is no...)
πŸ‘︎ 7
πŸ’¬︎
πŸ‘€︎ u/anouarattn
πŸ“…︎ Dec 24 2014
🚨︎ report
Aspect Oriented Programming (AOP) in C# with SOLID dotnetcurry.com/patterns-…
πŸ‘︎ 12
πŸ’¬︎
πŸ‘€︎ u/javinpaul
πŸ“…︎ Oct 05 2016
🚨︎ report
Aspect-Oriented Programming with Autofac foreverframe.pl/aspect-or…
πŸ‘︎ 19
πŸ’¬︎
πŸ‘€︎ u/andrzejkrzywda
πŸ“…︎ Aug 03 2016
🚨︎ report
Aspect Oriented Programming (AOP) in .NET Core and C# using AutoFac and DynamicProxy nearsoft.com/blog/aspect-…
πŸ‘︎ 2
πŸ’¬︎
πŸ‘€︎ u/carlosomar2
πŸ“…︎ Feb 21 2018
🚨︎ report
Aspect Oriented Programming example with Angular github.com/k1r0s/angular2…
πŸ‘︎ 4
πŸ’¬︎
πŸ‘€︎ u/k1r0s
πŸ“…︎ Aug 05 2017
🚨︎ report
A Lightweight Approach to Aspect-Oriented Programming in Python cs.tut.fi/~ask/aspects/as…
πŸ‘︎ 17
πŸ’¬︎
πŸ‘€︎ u/gst
πŸ“…︎ Apr 21 2008
🚨︎ report
Aspect-Oriented Programming in Coffeescript with a side order of Combinator Birds github.com/raganwald/homo…
πŸ‘︎ 4
πŸ’¬︎
πŸ‘€︎ u/homoiconic
πŸ“…︎ Nov 08 2011
🚨︎ report
Aspect Oriented Programming example in Angular2 github.com/k1r0s/angular2…
πŸ‘︎ 2
πŸ’¬︎
πŸ‘€︎ u/k1r0s
πŸ“…︎ Aug 05 2017
🚨︎ report
Introduction to Spring proxy-based aspect oriented programming marcin-chwedczuk.github.i…
πŸ‘︎ 6
πŸ’¬︎
πŸ‘€︎ u/chwedczukm
πŸ“…︎ Dec 08 2016
🚨︎ report
aspectlib, an aspect-oriented programming, monkey-patch and decorators library github.com/ionelmc/python…
πŸ‘︎ 5
πŸ’¬︎
πŸ‘€︎ u/ionelmc
πŸ“…︎ Mar 11 2014
🚨︎ report
Aspect Oriented Programming in JavaScript modernjavascript.blogspot…
πŸ‘︎ 10
πŸ’¬︎
πŸ‘€︎ u/rhysbrettbowen
πŸ“…︎ Jun 11 2013
🚨︎ report
Aspect-Oriented Programming. To be or not to be. Survey.

What do you think about the usage of AOP (http://en.wikipedia.org/wiki/Aspect-oriented_programming) in PHP? I'm collecting use-cases, real life examples and negative experience with this paradigm.

To give your some ideas about AOP I put here some great examples of AOP usage: mocking framework (https://github.com/Codeception/AspectMock), Design-by-Contract programming (https://github.com/lisachenko/php-deal), autowiring (https://gist.github.com/lisachenko/6345683). This list is not full and can be extended with new solutions and possibilities. Java world actively uses this paradigm for logging, caching and transaction control because it's smart and developer-friendly. BTW, your Jira tracker is powered by AOP too )

If you are interested in this question, you can also subscribe to the github issue: https://github.com/lisachenko/go-aop-php/issues/154

Please, share your thoughts or questions to make this technique more transparent for PHP developers or just RT this tweet https://twitter.com/lisachenko/status/486477985974071297. If you have a wish to help me with documentation about AOP in English - you are welcome )

πŸ‘︎ 8
πŸ’¬︎
πŸ‘€︎ u/lisachenko
πŸ“…︎ Jul 10 2014
🚨︎ report
Aspect Oriented Programming in LISP

I'm reading a book Clean Code by Uncle Bob (it was on my shelf of a while) and he describes Aspect Oriented Programming. Wikipedia say that ELisp advice function is implementation of AOP.

Does anyone of you have experience with AOP in any other LISP language? Does it give any advantage? Are there any Scheme/Racket/CommonLisp libraries for Aspect Oriented Programming?

πŸ‘︎ 6
πŸ’¬︎
πŸ‘€︎ u/jcubic
πŸ“…︎ Mar 21 2021
🚨︎ report
Using Aspect Oriented Programming in Android

I created a really basic project to demonstrate how Aspect Oriented Programming can be used in an Android project.

If you're interested in trying out AOP then it's a pretty simple base project to get started with.

πŸ‘︎ 4
πŸ’¬︎
πŸ‘€︎ u/ess_tee_you
πŸ“…︎ Feb 19 2016
🚨︎ report

Please note that this site uses cookies to personalise content and adverts, to provide social media features, and to analyse web traffic. Click here for more information.