tag:blogger.com,1999:blog-26752431.post115785697624532602..comments2023-11-02T05:30:16.348-07:00Comments on survic's blog on Programming or Enterprise Computing: auto-webservice without “4-CRUD or 1-Execute” limitation and without strong typed collectionssurvichttp://www.blogger.com/profile/05621218802357307115noreply@blogger.comBlogger6125tag:blogger.com,1999:blog-26752431.post-1158893838321604222006-09-21T19:57:00.000-07:002006-09-21T19:57:00.000-07:00I also know Rocky will not remove undo. I just nee...I also know Rocky will not remove undo. I just need to find a way to cut it off cleanly -- just like cutting off the dataportal – Rocky will never remove it, and use an “emit” approach. <BR/><BR/>I believe undo is an over design. For database applications, windows build-in undo is more than enough. <BR/><BR/>Also, CSLA does not use AOP, although it is a gold mine for AOP to take advantage of. <BR/> <BR/>You can say that the way I teat CSLA (tearing it apart and using its parts), may support the idea that it is educational. However, I believe CSLA is more than that, because I “copy” it a lot. It is one of the best of a few real architectures with a few untypical (or typically not optimal) design decisions; fortunately, pieces based on those decisions can be avoided by tearing it apart.survichttps://www.blogger.com/profile/05621218802357307115noreply@blogger.comtag:blogger.com,1999:blog-26752431.post-1158625446811398732006-09-18T17:24:00.000-07:002006-09-18T17:24:00.000-07:00Undo feature is not going anywhere1. Rocky's first...Undo feature is not going anywhere<BR/>1. Rocky's first love as one could sense from his writings is Windows Form. It is an essential feature foe Windows Form based application.<BR/><BR/>2. As CSLA is intended to be educational framework, It demonstrates how custom attributes, reflection and AOP can used to build a strong and powerful framework.<BR/><BR/>So Survic, you have to learn to love this feature, not only live with it :)Vikashttps://www.blogger.com/profile/11330187546301885403noreply@blogger.comtag:blogger.com,1999:blog-26752431.post-1158274340083523392006-09-14T15:52:00.000-07:002006-09-14T15:52:00.000-07:00Inheritance:I agree with you, ("But then you will ...Inheritance:<BR/><BR/>I agree with you, ("But then you will have two frameworks. One is CLSA framework and one you implement using interfaces."). So, it is not a simple interface/inheritance dichotomy issue. It is a tougher issue: see my blog: <BR/>http://survic.blogspot.com/2006/09/can-we-use-aop-to-mix-in-databining.html#links<BR/><BR/><BR/>I believe that CSLA, with code generation, can be used in enterprise -- if you are determined so that you can re-train yourself (the team) to adapt to a object model that has “4 or 1” dataportal methods only (note that that strongly typed collections are not inherent with CSLA). <BR/><BR/>Objectively, it is not big deal. It has a nice name: command-based distributed computing. It was very popular on Java before J2EE and early J2EE.<BR/><BR/>As to me, I just remove the dataportal, and ignore the whole “4 or 1” and criteria/exists. <BR/><BR/>Once you do that, it is wonderful: freedom -- when you need remoting, then, just add a generated layer to it, as Vikas did. http://vikasnetdev.blogspot.com/2006/09/why-do-i-perfer-custom-collection-over.html<BR/><BR/><BR/>I would like to further simplify it, so that I can claim, honestly, that the base is indeed “a simple utility-like base”. I guess "undo" should be removed. Also, I would rather remove the differences between parent/child, readonly stuff (all switchable and all read-write).<BR/><BR/>Rule manager is good. The “classic switch based” is actually fine. The new one is better, a little.<BR/><BR/>As you can see, I value it highly -- I criticize it simply because it is part of my “core" -- when there is a problem, it really annoys me.survichttps://www.blogger.com/profile/05621218802357307115noreply@blogger.comtag:blogger.com,1999:blog-26752431.post-1158192051736170332006-09-13T17:00:00.000-07:002006-09-13T17:00:00.000-07:00I think that I understand your point. Are you talk...I think that I understand your point. Are you talking about framework condensing your communication between business layer and data layer into only five methods signatures?<BR/>That may work or may work very well for short to medium projects but can be very suffocating for large enterprise project. For enterprise project, I would not like framework to put this condition.<BR/>This brings me to another point about CLSA. What do you think about CLSA use of inheritance? Fact is you business object/collection has to inherit from Businessbase/BusinessListBase.<BR/>So your business object cannot inherit from any other class. I know the workarounds.<BR/>To be fair, CSLA does provide interfaces. But then you will have two frameworks. One is CLSA framework and one you implement using interfaces.<BR/><BR/>How do you maintain equilibrium between framework’s richness and programmer’s maneuverability and innovation? Rocky rightly demonstrated an educational rich framework which may work for short to medium projects. But I don’t know about enterprise projects. What do you think?<BR/><BR/>What do you think of new rule manager using delegate? Rule Manager has been an excellent feature of CSLA (Don’t know about the new one)<BR/><BR/>ChrisAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-26752431.post-1157951547344471142006-09-10T22:12:00.000-07:002006-09-10T22:12:00.000-07:00I agree that it is an "excellent educational frame...I agree that it is an "excellent educational framework". <BR/><BR/>You did not mention the "4-crud and 1-execute (and criteria/exist)" limitations or workarounds. I guess you feel it is OK, or, even believe they are "features" of "OO" ("objects are determined by behaviors" ...). <BR/><BR/>And, so many strong typed collections. I know both are tough issues. However, I do not believe they are features.survichttps://www.blogger.com/profile/05621218802357307115noreply@blogger.comtag:blogger.com,1999:blog-26752431.post-1157945783124949632006-09-10T20:36:00.000-07:002006-09-10T20:36:00.000-07:00Interesting blog.Why don’t some people like Datapo...Interesting blog.<BR/><BR/>Why don’t some people like Dataportal, even though I love it?<BR/><BR/>1. It is Complex<BR/><BR/>2. Not everyone believes in Mobile object philosophy<BR/><BR/>3. Not everyone buys that Business Logic and Data Logic should in one place and mobile object acting as Business object as well as Data object.. Too revolutionary for most of people that I have come across. When I discussed this concept first time with fellow architects, I got the looks that I was talking about some science fiction or I have gone crazy.<BR/><BR/>4. ‘Not built here’ Mindset<BR/><BR/>5. Not Web Service Friendly. DTO works better for Web Service. Data Portal Solution in Rocky’s word follow the letter not the spirit<BR/><BR/><BR/>Don’t get misguided by all this, it is still an excellent educational framework and one can use dozens of techniques from this framework in any situation. Thank God that it is not a silver bullet. Otherwise lot of us would be working at gas station.<BR/><BR/>Feel free to correct me. <BR/><BR/>Chris. :)Anonymousnoreply@blogger.com