Note that there are some explanatory texts on larger screens.

plurals
  1. POIs AspectF (a Fluent Aspect Framework) an AOP-like design that can be used without much concern?
    primarykey
    data
    text
    <p><a href="http://msmvps.com/blogs/omar/Default.aspx" rel="noreferrer">Omar Al Zabir</a> is looking for "a simpler way to do AOP style coding".</p> <p>He created a framework called <a href="http://code.google.com/p/aspectf/" rel="noreferrer">AspectF</a>, which is "a fluent and simple way to add Aspects to your code".</p> <p><strong>It is not true AOP</strong>, because it doesn't do any compile time or runtime weaving, but does it accomplish the same goals as AOP?</p> <p>Here's an example of AspectF usage:</p> <pre><code> public void InsertCustomerTheEasyWay(string firstName, string lastName, int age, Dictionary&lt;string, string&gt; attributes) { AspectF.Define .Log(Logger.Writer, "Inserting customer the easy way") .HowLong(Logger.Writer, "Starting customer insert", "Inserted customer in {1} seconds") .Retry() .Do(() =&gt; { CustomerData data = new CustomerData(); data.Insert(firstName, lastName, age, attributes); }); } </code></pre> <p>Here are some posts by the author that further clarify the aim of AspectF:</p> <ul> <li><a href="http://msmvps.com/blogs/omar/archive/2009/09/19/aspectf-fluent-way-to-put-aspects-into-your-code-for-separation-of-concern.aspx" rel="noreferrer">AspectF fluent way to put Aspects into your code for separation of concern</a> (Blog)</li> <li><a href="http://code.google.com/p/aspectf/" rel="noreferrer">AspectF</a> (google code)</li> <li><a href="http://www.codeproject.com/KB/tips/aspectf.aspx" rel="noreferrer">AspectF Fluent Way to Add Aspects for Cleaner Maintainable Code</a> (CodeProject)</li> </ul> <p>According to the author, I gather that AspectF is <strong>not designed so much as an AOP replacement</strong>, but a way to achieve "separation of concern and keep code nice and clean".</p> <p>Some thoughts/questions:</p> <ul> <li>Any thoughts on using this style of coding as project grows? </li> <li>Is it a scalable architecture?</li> <li><strike>performance concerns?</strike></li> <li>How does maintainability compare against a true AOP solution?</li> </ul>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload