Hi Dulitha, We have had this debate over and over. What am trying to point out here is that we simply CANNOT have another way of writing jaggery apps. If we need improvements to Caramel please go ahead and contribute, don't create a new one that serves ur purpose. Caramel was there for sometime and APIM / UES / Store are build on that pattern. Front controller is sometimes good and sometime not so good, people will need multiple controller patterns at times. So please dont rely on just one pattern.
In a web app framework there are more things to think about, not just the controllers, most of the elements are well thought and included to caramel. So please take a moment and try to understand the framework and improve it as you need, but dont invent a new thing just for your cause. and please think about the consistency when developing apps/components you cannot and should not just use random technologies here and there. Regards, /Nuwan On Mon, Dec 2, 2013 at 11:48 AM, Dulitha Wijewantha <[email protected]>wrote: > Hi Nuwan, > My comments are inline. What I am proposing - is to build a fully > functional front-end controller rather than just another template renderer. > Let's have a discussion regarding this. I am also refactoring Absolute to > provide capability to override how the pattern matching is done. This > training is for anyone who is interested in these frameworks- mainly > because they are pragmatic. > > On Mon, Dec 2, 2013 at 6:18 PM, Nuwan Bandara <[email protected]> wrote: > >> Hi Chan, >> >> We need to review the new security stuff you did for Goose.js (the >> routing library) >> > > +1 for reviewing security of Goose.js. > > >> and also if we are doing any new jaggery application, we MUST follow >> caramel as that is the standard. >> > -1 for Caramel - below are my reasons > > - Caramel is not really a framework. It's a template engine that does > dynamic engine. It's an overkill for applications (that's not meant for > overriding) > - A front end controller is required for an application due > authentication, custom controller actions, monitoring etc. > - Caramel enforce carmel objects into the controller jags > > > If there are improvements lets do it to Caramel. >> > -1 reasons for not improving Caramel are - > > - Caramel is all together a different concept. It's not about a > front-end controller. It's about a dynamic template engine > - Caramel is kind of procedural where you have to evoke it from > controllers > - Caramel can be used in ways the developer wants. It's exactly > opposing the idea of a framework. A framework exert certain things over > developer. Caramel makes everyone write their own version of MVC (take > Store and Publisher for an example. > > > >> We should not use two libraries in the platform as it will be a >> maintenance nightmare. So am -1 on developing applications in Absolute. If >> Caramel is missing functionalities that you desire, please add them to >> Caramel. >> > I am suggesting to drop Caramel support and build a fully functional > front-end controller. Caramel was built for something else and it shouldn't > be continued because it's not really needed if you really look at it. Why - > I am explaining below - > > Why do you need a framework - You want to run the X logic on the Y request > and display the Z representation to the user. In the world of frameworks - > X is a controller, Y is the request, and Z is a display (view). Absolute > simply allows you to match a controller to a view based on the user's > request. The way you do it is up to you. You can use a conventional base > approach as a pattern matching algorithm or a configuration approach. The > underlying framework requirement is just mapping logic to request and > rendering representations. > > >> Regards, >> /Nuwan >> >> >> On Sun, Dec 1, 2013 at 11:45 PM, [email protected] <[email protected]>wrote: >> >>> more details >>> »<https://www.google.com/calendar/event?action=VIEW&eid=YzB1amZtODA4N2RqY2tmbmdmdm9tbzFobDQgdHJhaW5pbmctZ3JvdXBAd3NvMi5jb20&tok=MTYjZHVsaXRoYUB3c28yLmNvbWRmZWYzODBkMWQyNTdmODQ0ODFiYWZkYjIwMjUxMmRmNjJmYWZhMDI&ctz=Asia/Colombo&hl=en> >>> Goose.js and Absolute.js training >>> Goose is a javascript framework for quickly writing APIs. Absolute is a >>> front-end controller framework for jaggery for that can be used to build >>> MVC type applications. >>> >>> Goose.js - >>> https://github.com/dulichan/goose.js<https://www.google.com/url?q=https%3A%2F%2Fgithub.com%2Fdulichan%2Fgoose.js&ust=1385963104897000&usg=AFQjCNEM7cwSyUJriD-sAjpP1avqz1-csA> >>> Absolute.js - >>> https://github.com/dulichan/absolute.js<https://www.google.com/url?q=https%3A%2F%2Fgithub.com%2Fdulichan%2Fabsolute.js&ust=1385963104897000&usg=AFQjCNGDK9rHxfbYsx_fhEJrhLhUFRZAVQ> >>> *When* >>> Tue Dec 3, 2013 1pm – 2pm Colombo >>> *Where* >>> 3rd Floor Kernel Meeting room >>> (map<http://maps.google.lk/maps?q=3rd+Floor+Kernel+Meeting+room&hl=en> >>> ) >>> *Calendar* >>> [email protected] >>> *Who* >>> • >>> [email protected] - organizer >>> • >>> Shanmugarajah Sinnathamby >>> • >>> Kasun Dananjaya Delgolla >>> • >>> Gayan Gunawardana >>> • >>> Krishanthi Samarasinghe >>> • >>> Harshan Liyanage >>> • >>> Dilshan Edirisuriya >>> • >>> Niranjan Karunanandham >>> • >>> Dilan Jayakody >>> • >>> WSO2 Training Group >>> >>> Going? *Yes >>> <https://www.google.com/calendar/event?action=RESPOND&eid=YzB1amZtODA4N2RqY2tmbmdmdm9tbzFobDQgdHJhaW5pbmctZ3JvdXBAd3NvMi5jb20&rst=1&tok=MTYjZHVsaXRoYUB3c28yLmNvbWRmZWYzODBkMWQyNTdmODQ0ODFiYWZkYjIwMjUxMmRmNjJmYWZhMDI&ctz=Asia/Colombo&hl=en> >>> - Maybe >>> <https://www.google.com/calendar/event?action=RESPOND&eid=YzB1amZtODA4N2RqY2tmbmdmdm9tbzFobDQgdHJhaW5pbmctZ3JvdXBAd3NvMi5jb20&rst=3&tok=MTYjZHVsaXRoYUB3c28yLmNvbWRmZWYzODBkMWQyNTdmODQ0ODFiYWZkYjIwMjUxMmRmNjJmYWZhMDI&ctz=Asia/Colombo&hl=en> >>> - No >>> <https://www.google.com/calendar/event?action=RESPOND&eid=YzB1amZtODA4N2RqY2tmbmdmdm9tbzFobDQgdHJhaW5pbmctZ3JvdXBAd3NvMi5jb20&rst=2&tok=MTYjZHVsaXRoYUB3c28yLmNvbWRmZWYzODBkMWQyNTdmODQ0ODFiYWZkYjIwMjUxMmRmNjJmYWZhMDI&ctz=Asia/Colombo&hl=en>* >>> more options >>> »<https://www.google.com/calendar/event?action=VIEW&eid=YzB1amZtODA4N2RqY2tmbmdmdm9tbzFobDQgdHJhaW5pbmctZ3JvdXBAd3NvMi5jb20&tok=MTYjZHVsaXRoYUB3c28yLmNvbWRmZWYzODBkMWQyNTdmODQ0ODFiYWZkYjIwMjUxMmRmNjJmYWZhMDI&ctz=Asia/Colombo&hl=en> >>> >>> Invitation from Google Calendar <https://www.google.com/calendar/> >>> >>> You are receiving this courtesy email at the account >>> [email protected] because you are an attendee of this event. >>> >>> To stop receiving future notifications for this event, decline this >>> event. Alternatively you can sign up for a Google account at >>> https://www.google.com/calendar/ and control your notification settings >>> for your entire calendar. >>> >> >> >> >> -- >> >> >> >> *Thanks & Regards, Nuwan BandaraTechnical Lead; **WSO2 Inc. * >> *lean . enterprise . middleware | http://wso2.com <http://wso2.com> * >> >> *blog : http://nuwanbando.com <http://nuwanbando.com>; email: >> [email protected] <[email protected]>; phone: +1 812 606 7390 >> <%2B1%20812%20606%207390> * >> <http://www.nuwanbando.com/> >> > > > > -- > Chan (Dulitha Wijewantha) > Software Engineer - Mobile Development > WSO2Mobile > Lean.Enterprise.Mobileware > * ~Email [email protected] <[email protected]>* > * ~Mobile +94712112165 <%2B94712112165>* > > * ~Website dulithawijewantha.com <http://dulithawijewantha.com/> * > > * ~Blog blog.dulithawijewantha.com > <http://dulichan.github.io/chan/>* > * ~Twitter @dulitharw <https://twitter.com/dulitharw>* > -- *Thanks & Regards,Nuwan BandaraTechnical Lead; **WSO2 Inc. * *lean . enterprise . middleware | http://wso2.com <http://wso2.com> * *blog : http://nuwanbando.com <http://nuwanbando.com>; email: [email protected] <[email protected]>; phone: +1 812 606 7390 * <http://www.nuwanbando.com/>
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
