<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Architecture</title>
        <link>http://geekswithblogs.net/madhawa/category/6640.aspx</link>
        <description>Architecture</description>
        <language>en-US</language>
        <copyright>Madhawa Karunaratne</copyright>
        <managingEditor>madhawa@gmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <item>
            <title>Google Singleton Detector</title>
            <link>http://geekswithblogs.net/madhawa/archive/2007/07/26/114171.aspx</link>
            <description>&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;font face="Verdana" size="2"&gt;Google announced that they have opensourced the &lt;/font&gt;&lt;a href="http://code.google.com/p/google-singleton-detector/"&gt;&lt;font face="Verdana" color="#800080" size="2"&gt;Google Singleton Detector&lt;/font&gt;&lt;/a&gt;&lt;font face="Verdana" size="2"&gt;, or GSD. Simply GSD is a tool which analyzes Java byte code and detects the use of Singletons. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;font face="Verdana" size="2"&gt;As they say:&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;font face="Verdana" size="2"&gt;It's not quite as simple as that, however. First, GSD doesn't only detect singletons; it detects four different types of global state, including singletons, hingletons, mingletons and fingletons.Second, it outputs a graph with all these different types of static state highlighted, and shows all the classes that are directly dependent on them. The point of this tool is to allow you to see all of the uses of global state inside a project, as well as how they are all interrelated. Hopefully you'll be able to locate global state that is heavily depended on and remove it. &lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;Well... Now you might think what’s wrong with the good old singleton pattern which we always use freely in every project? &lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;Singleton pattern is the first pattern I learned and used. &lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;font face="Verdana" size="2"&gt;Actually there are some problems with singletons.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;font face="Verdana" size="2"&gt;Major problem is that it’s hard to write unit tests if you are using singleton classes. How that could be? Well... If your unit tests are really good those should be loosely coupled. That’s mean you should be able to execute your tests without any proper order and yet those tests should be passed. But if your class had used singleton class one method can alter a state of sth in the singleton class and that would effects in the other tests. That’s make your tests are tightly coupled with each other. So you should have to have an order in executing your tests or you should reset your singleton objects in each test.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;font face="Verdana" size="2"&gt;Ok folks, let’s dig into further on this problem and of cause will try to find some workarounds, in my next blog post.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;o:p&gt;&lt;font face="Verdana" size="2"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=114171"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=114171" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/madhawa/aggbug/114171.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Madhawa Karunaratne</dc:creator>
            <guid>http://geekswithblogs.net/madhawa/archive/2007/07/26/114171.aspx</guid>
            <pubDate>Thu, 26 Jul 2007 06:17:35 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/madhawa/comments/114171.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/madhawa/archive/2007/07/26/114171.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/madhawa/comments/commentRss/114171.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/madhawa/services/trackbacks/114171.aspx</trackback:ping>
        </item>
        <item>
            <title>Is .net answer for GWT more powerful? </title>
            <link>http://geekswithblogs.net/madhawa/archive/2007/07/17/113986.aspx</link>
            <description>&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;a target="_blank" href="http://www.visualwebgui.com"&gt;&lt;img alt="Visual WebGui" align="left" src="http://www.visualwebgui.com/Portals/_default/Skins/VWG_Skin/images/vwglogo.gif" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.visualwebgui.com/"&gt;&lt;font face="Verdana" color="#800080" size="2"&gt;Visual WebGui&lt;/font&gt;&lt;/a&gt;&lt;font face="Verdana" size="2"&gt; is the .net answer for &lt;/font&gt;&lt;a href="http://code.google.com/webtoolkit/"&gt;&lt;font face="Verdana" size="2"&gt;GWT (Google Web Toolkit).&lt;/font&gt;&lt;/a&gt;&lt;font face="Verdana" size="2"&gt; But it’s seems more powerful than GWT even though it’s not coming from Microsoft and yet it’s open source. Still I hadn’t got time to put my hands on deeply but you can feel it by just browsing their web site and checking the features and comparing those with GWT. &lt;br /&gt;
Not like GWT, in Visual WebGui you can use existing windows controls to create your UI.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;Major advantage of Visual WebGui over GWT is we can deploy Visual WebGui applications as web applications or desktop applications. That’s a huge step taken by Visual WebGui.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;And most importantly Visual WebGui is open source.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;font face="Verdana" size="2"&gt;And with world best IDE (Visual Studio 2005) you have the ultimate power of designing your graphical user interfaces. Just check these features out by visiting &lt;/font&gt;&lt;a href="http://www.visualwebgui.com/"&gt;&lt;font face="Verdana" color="#800080" size="2"&gt;Visual WebGui.&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;User-Friendly&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt; – Visual WebGui was designed to be the next VB6 for the web. Simple to program, simple to deploy. With a full WinForms API and design time support you can start developing complex AJAX applications in seconds with no web know-how.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;Secured&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt; – Visual WebGui was designed to provide for military grade secured AJAX applications by &lt;u&gt;eliminating client side service consumption and business logic processing&lt;/u&gt; using an empty client concept. The browser is used as a looking glass to the server that runs the application.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;Productive&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt; – With full WinForms API and design time support, Visual WebGui is almost as productive as R.A.D. platforms without limiting your options. Debug your application the same way you would debug any .NET application free of script debugging nightmares.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;Powerful&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt; – Visual WebGui was designed to support enterprise class applications with unlimited complexity supported by full object oriented programming. Using our unique AJAX transport, Visual WebGui applications consume 1% of bandwidth compared to any alternative AJAX framework.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;Feature-Rich&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt; – Visual WebGui contains most of WinForm's components including non trivial implementations of controls such as the PropertyGrid that provides a simple way to edit live objects. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;Supported&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt; - Visual WebGui is supported by its Core Team of developers and a dedicated international community. Through online forums and our &lt;/span&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;a href="mailto:support@visualwebgui.com"&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font face="Verdana" size="2"&gt;&lt;em&gt;support@visualwebgui.com&lt;/em&gt;&lt;/font&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt; mail box support is always close at hand (&lt;u&gt;commercial support will be available soon)&lt;/u&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;Easily Installed&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt; – Visual WebGui comes with a simple installation that will get you started on developing your AJAX application in no time. Visual WebGui's toolbox and templates are integrated into Visual Studio so they are always available. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;Localized&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt; – Visual WebGui includes full .NET and WinForms multi-language localization support which allows you to localize your application in the designer the same way you localize a WinForms application.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;Open Source&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt; – Visual WebGui SDK is provided free, as open-source software, and licensed under a standard LGPL agreement. It allows individuals to do whatever they wish with the application framework, both commercially and non-commercially.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;Cutting-Edge&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt; – Visual WebGui provides the developer with full object oriented .NET support allowing utilization of all the .NET capabilities including reflection, generics and more. This is enabled by a unique architecture that provides an alternative HTTP processing pipeline that does not include serializing JavaScript.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;Extensible&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt; – Visual WebGui is provided with many customization and extensibility features including custom control creation, theme creation and gateways.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;Interopable&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt; – As an extension to ASP.NET, Visual WebGui can also interact with standard ASP.NET pages hosting them within your Visual WebGui application or calling Visual WebGui dialogs and forms from your ASP.NET code.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;Visual WebGui's roadmap includes…&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;Mono deployment&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt; - Allowing your Visual WebGui application to run on non Microsoft servers (Visual WebGui for .NET 1.1 is already compatible with mono).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;Legacy to web&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt; – Migrating WinForms or VB6 applications to web with out rewriting your application.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 0pt; LINE-HEIGHT: normal"&gt;&lt;font size="2"&gt;&lt;font face="Verdana"&gt;&lt;em&gt;&lt;strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt;Dual mode deployment&lt;/span&gt;&lt;/strong&gt;&lt;span style="FONT-SIZE: 12pt; FONT-FAMILY: &amp;quot;Times New Roman&amp;quot;,&amp;quot;serif&amp;quot;; mso-fareast-font-family: 'Times New Roman'"&gt; – Deploy your Visual WebGui application as a desktop application or a web application enjoying the best of both worlds. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/em&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=113986"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=113986" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/madhawa/aggbug/113986.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Madhawa Karunaratne</dc:creator>
            <guid>http://geekswithblogs.net/madhawa/archive/2007/07/17/113986.aspx</guid>
            <pubDate>Tue, 17 Jul 2007 11:48:37 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/madhawa/comments/113986.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/madhawa/archive/2007/07/17/113986.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/madhawa/comments/commentRss/113986.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/madhawa/services/trackbacks/113986.aspx</trackback:ping>
        </item>
        <item>
            <title>Titan-IOC : A lightweight, flexible, general purpose inversion-of-control container for .NET applications</title>
            <link>http://geekswithblogs.net/madhawa/archive/2007/07/15/113945.aspx</link>
            <description>&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;font face="Verdana" size="2"&gt;Well guys... If you have read my previous blog post about &lt;/font&gt;&lt;a href="http://code.google.com/p/google-guice/"&gt;&lt;font face="Verdana" color="#800080" size="2"&gt;Guice&lt;/font&gt;&lt;/a&gt;&lt;font face="Verdana" size="2"&gt; and you are using only .net technologies you might got little bit worried of that why you can’t use such a nice framework. Don’t worry, there is a project going on at Google called &lt;/font&gt;&lt;a href="http://code.google.com/p/titan-ioc/"&gt;&lt;font face="Verdana" color="#800080" size="2"&gt;Titan&lt;/font&gt;&lt;/a&gt;&lt;font face="Verdana" size="2"&gt; that inspired by Guice. It’s still in the beta stage though. It’s a pre-release version and they don’t recommend it using in mission critical applications.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;em style="mso-bidi-font-style: normal"&gt;&lt;font face="Verdana"&gt;&lt;font size="2"&gt;Titan is a new take on inversion of control for .NET 2.0 applications, inspired largely by Bob Lee and Kevin Bourrillion's Guice. Ultra-lightweight, easy to use, fast, flexible, and powerful, Titan aims to make inversion of control accessible to all types of .NET projects, regardless of complexity.&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;em style="mso-bidi-font-style: normal"&gt;&lt;font face="Verdana"&gt;&lt;font size="2"&gt;Goals of Titan:&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;em style="mso-bidi-font-style: normal"&gt;&lt;font face="Verdana"&gt;&lt;font size="2"&gt;1. Ultra-lightweight. We aim to keep all baseline functionality in a single assembly with no non-standard dependencies, and keep that assembly's footprint around 100KB when compiled for release. (The current version weighs in at 96KB.) &lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;em style="mso-bidi-font-style: normal"&gt;&lt;font face="Verdana"&gt;&lt;font size="2"&gt;2. Easy to use. Too many of the existing IoC projects sacrifice usability for features that aren't often used. Each time a feature is added to Titan, its benefit is weighed against the complexity it adds. Our goal is to keep the 'barrier to entry' -- the baseline level of knowledge required to use Titan -- as low as possible. Titan has many advanced features, but understanding them is not required to use the toolkit. &lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;em style="mso-bidi-font-style: normal"&gt;&lt;font face="Verdana"&gt;&lt;font size="2"&gt;3. Fast. Instead of relying on reflection for invocation, Titan takes advantage of the lightweight code generation features in version 2.0 of the CLR. This results in a dramatic (8-50x) improvement in speed. &lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;em style="mso-bidi-font-style: normal"&gt;&lt;font face="Verdana"&gt;&lt;font size="2"&gt;4. Flexible and extensible. Titan is designed with customization and evolution in mind. Many facets of the system can be augmented or modified to fit the requirements of each project. &lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;em style="mso-bidi-font-style: normal"&gt;&lt;font face="Verdana"&gt;&lt;font size="2"&gt;5. Powerful. Titan includes many advanced features. For example, most existing IoC frameworks use key-based binding to select concrete components for injection. Titan introduces the concept of contextual binding, in which a different concrete implementation of a service may be injected depending on the context in which it is requested. &lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;em style="mso-bidi-font-style: normal"&gt;&lt;a href="http://code.google.com/p/titan-ioc/"&gt;&lt;font face="Verdana" color="#800080" size="2"&gt;http://code.google.com/p/titan-ioc/&lt;/font&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/em&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=113945"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=113945" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/madhawa/aggbug/113945.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Madhawa Karunaratne</dc:creator>
            <guid>http://geekswithblogs.net/madhawa/archive/2007/07/15/113945.aspx</guid>
            <pubDate>Mon, 16 Jul 2007 03:06:41 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/madhawa/comments/113945.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/madhawa/archive/2007/07/15/113945.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/madhawa/comments/commentRss/113945.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/madhawa/services/trackbacks/113945.aspx</trackback:ping>
        </item>
        <item>
            <title>Guice: Google way of implementing Dependency Injection aka Inversion of Control</title>
            <link>http://geekswithblogs.net/madhawa/archive/2007/07/14/113928.aspx</link>
            <description>&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;font face="Verdana" size="2"&gt;Doing some R&amp;amp;D works on &lt;/font&gt;&lt;a href="http://code.google.com/webtoolkit/"&gt;&lt;font face="Verdana" color="#800080" size="2"&gt;GWT&lt;/font&gt;&lt;/a&gt;&lt;font face="Verdana" size="2"&gt; a few weeks back, I really fascinated on the Google frameworks. Next Google framework I’m gonna puts my hands on is &lt;/font&gt;&lt;a href="http://code.google.com/p/google-guice/"&gt;&lt;font face="Verdana" color="#800080" size="2"&gt;Guice: Google way of implementing Dependency Injection&lt;/font&gt;&lt;/a&gt;&lt;font face="Verdana" size="2"&gt;.&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;That isn’t a company assignment but I think its worth to learn and try. Guice (pronounced "juice") is an ultra-lightweight, next-generation dependency injection container for Java 5 and later.&lt;br /&gt;
&lt;br /&gt;
If you have ever tried out to achieve loose coupling to the ultimate extent you really should know about dependency injection. It’s not a buzz word anymore. People are using several of methods and frameworks to implement DI. Couple of years back when I was at my good old place (Logical Systems now known as Kandysoft) I did my first application design on my own. It was an e-commerce web site and I got instructions to develop the application framework as generic as possible. So we can re-use some of it functionalities in other applications. Our focus was on product catalog and shopping cart. Some applications product catalog and shopping cart is not separated but I thought it has to be developed as separated. So I did it and it was a very successful one. At that time I actually had heard about DI and use of it to achieve loose coupling. But only article I had read was &lt;/font&gt;&lt;a href="http://www.martinfowler.com/articles/injection.html"&gt;&lt;font face="Verdana" color="#800080" size="2"&gt;Martin fowlers&lt;/font&gt;&lt;/a&gt;&lt;font face="Verdana" size="2"&gt; one and I couldn’t understand it much of it at that time. And for the worse case I had limited time frame to complete and deliver the project as we always do. Anyway I gained what I wanted by &lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;using interfaces and now I know I have implemented dependency injection by hand even though I didn’t know&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;I was doing that.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;font face="Verdana" size="2"&gt;BTW now there are so many application frameworks that leverage use of DI and some related functionalities. I think spring is in the top. They are hitting both java and .net so it’s a great framework to developers like me who focused on both java and .net.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0in 0in 10pt"&gt;&lt;font face="Verdana" size="2"&gt;But if you are new to DI and doing java I think Guice is the best to put your hands on first. Like all Google frameworks it simple and easy to learn. I’ll shed some posts later on DI and Guice.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=113928"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=113928" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/madhawa/aggbug/113928.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Madhawa Karunaratne</dc:creator>
            <guid>http://geekswithblogs.net/madhawa/archive/2007/07/14/113928.aspx</guid>
            <pubDate>Sat, 14 Jul 2007 12:54:44 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/madhawa/comments/113928.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/madhawa/archive/2007/07/14/113928.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/madhawa/comments/commentRss/113928.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/madhawa/services/trackbacks/113928.aspx</trackback:ping>
        </item>
        <item>
            <title>Audio talk show in .net Rocks with Mark Pollack on Spring.Net </title>
            <link>http://geekswithblogs.net/madhawa/archive/2007/06/24/113423.aspx</link>
            <description>&lt;p&gt;&lt;font size="2" face="Verdana"&gt;There is a good audio talk show in &lt;/font&gt;&lt;font size="2"&gt;&lt;a href="http://www.dotnetrocks.com/" target="_blank"&gt;&lt;font face="Verdana"&gt;.net Rocks&lt;/font&gt;&lt;/a&gt;&lt;/font&gt;&lt;font size="2" face="Verdana"&gt; with Mark Pollack who founded Spring.Net. Particularly this show would be more useful if you are not aware of the potential of Spring.Net. &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size="2" face="Verdana"&gt;BTW &lt;/font&gt;&lt;font size="2"&gt;&lt;a href="http://www.springframework.net/" target="_blank"&gt;&lt;font face="Verdana"&gt;Spring.Net&lt;/font&gt;&lt;/a&gt;&lt;/font&gt;&lt;font size="2" face="Verdana"&gt; has announced the release of  Spring.NET 1.1 M1 (Milestone 1).  &lt;br /&gt;
New features and improvements in the release are below.&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size="2" face="Verdana"&gt;    * NUnit Integration:  Aids in writing integration tests. Configuration of test cases via dependency injection and automatic transaction rollback&lt;br /&gt;
    * NHibernate 1.0/1.2 Integration:  Simplify use of NHibernate and participation in Spring's declarative management&lt;br /&gt;
    * ASP.NET AJAX Integration:  Export 'plain .NET objects' as web service, configure and apply aspects to them, and then expose inside client side Javascript.&lt;br /&gt;
    * Transaction and AOP XML namespaces to simplify configuration.&lt;br /&gt;
    * AOP support for methods with out/ref parameters.&lt;br /&gt;
    * Sample NHibernate application.&lt;br /&gt;
    * Numerous bug fixes and improvements.&lt;br /&gt;
&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=113423"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=113423" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/madhawa/aggbug/113423.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Madhawa Karunaratne</dc:creator>
            <guid>http://geekswithblogs.net/madhawa/archive/2007/06/24/113423.aspx</guid>
            <pubDate>Mon, 25 Jun 2007 03:14:49 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/madhawa/comments/113423.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/madhawa/archive/2007/06/24/113423.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/madhawa/comments/commentRss/113423.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/madhawa/services/trackbacks/113423.aspx</trackback:ping>
        </item>
    </channel>
</rss>