Design Patterns

January 16, 2010 by Anant Anand Gupta · Leave a Comment 

What is a Design Pattern?

If you are here reading this post you might be looking a knowledge on Design Patterns and the first question which arries on anyone’s mind is “What is a Design Pattern?”. Lets answer this question in your own way.

You are person who know the syntax of a programming language and you are able to successfully convert any requirement into the code. One fine morning you reach office and your senior tells you about a new project requirement. You understood the requirement and have decided whats need to be done and what are the object of classes requied to achive this. But internally, whole the time from begining to the end of the development you alway know that there can be a better way to achive this, and of course you search for other solutions to. Whatever you decide to implament you will finish off the task, but was that the best solution for the requirement? When this question comes in to you mind, the answer can be only given in terms of Design Patterns.

A design Pattern is nothing but a conceptual way to represent a reusable solution for a typical sort of problem.

Here is a list of all known Design Patterns:

  1. Strategy Design Pattern
  2. Decorator Design Pattern
  3. Factory Design Pattern
  4. Observer Design Pattern
  5. Chain of Responsibility Design Pattern
  6. Singleton Design Pattern
  7. Flyweight Design Pattern
  8. Adapter Design Pattern
  9. Facade Design Pattern
  10. Template Design Pattern
  11. Builder Design Pattern
  12. Iterator Design Pattern
  13. Composite Design Pattern
  14. State Design Pattern
  15. Proxy Design Pattern
  16. Command Design Pattern
  17. Mediator Design Pattern
  18. Abstract Factory Design Pattern
  19. Prototype Design Pattern
  20. Bridge Design Pattern
  21. Interpreter Design Pattern
  22. Memento Design Pattern
  23. Visitor Design Pattern
  24. Circular Design Pattern
  25. Double Buffer Design Pattern
  26. Recycle Bin Design Pattern
  27. Model/View/Controller Design Pattern

I will updating the details of each kind of design patterns as soon as they are ready to be posted.

Visual Studio 2005 SP1: didn’t pass the digital signature policy error

June 11, 2009 by Anant Anand Gupta · Leave a Comment 

To solve this follow the work around:

Work Arround 1:

  1. Start Menu, click Run, type > control admintools and then click OK.
  2. Double-click Local Security Policy.
  3. Click Software Restriction Policies.
    Note: If no software restrictions are listed, right-click Software Restriction Policies, and then click Create New Policy.
  4. Under Object Type, double-click Enforcement.
  5. Click All users except Local Administrators, and then click OK.
  6. Restart the computer.

Install SP1 with no errors.

Work Arround 2:

There is a fix from Microsoft to resolve the issue. Please visit the following knowledge base article:

http://support.microsoft.com/kb/925336 or Download the Update for Windows Server 2003 (KB925336).

Note: Revert the settings after the installation is over.

Server.MapPath

May 28, 2009 by Anant Anand Gupta · Leave a Comment 

In general whenever we need to get physical location of the file in ASP.Net Application, we use Server.MapPath. This is the most commonly adopted method. If you want the file to be located with reference to the path of the current WebPage, then the implementation holds good, but, in case you have to always refer the file from the application root, this method gives you different results. Take the following scenario, where the application directory structure is as follows:

  • Root
    • Data
      • Data.XML
    • ClassA.cs (uses Server.MapPath(“\Data\Data.XML”))
    • ClassB.cs (uses ClassA to get the XML file contents)
    • SubDir
      • ClassC.cs (uses ClassA to get the XML file contents)

In the above scenario the ClassC will fail to retrive the contents in case of the WebApplication is hosted in a virtual directory. The application will work fine if it is a website. So the implementation will not show any errors when we run the application from the Visual Studio. to make it more generic we can replace the Server.MapPath with

System.Web.Hosting.HostingEnvironment.ApplicationPhysicalPath + @”Data\Data.XML”.

Great Indian Developer Summit 2009

April 24, 2009 by Anant Anand Gupta · Leave a Comment 

gids-logo

Four well packed days with Information and Technology that too latest in trend and which is going to change the future is called Great Indian Developer Summit 2009. Not only that, thousands of participants, 75+ presentations on technologies, 15+ Labs driven by experts from all over the globe and all this organized by media leader Saltmarch Media in a great environment of IISC, Bangalore.
day2

DAY 2:
Rich Internet Applications

This year also as the previous years it has came to prove that whatever new in a developer’s mind comes has been achieved and has not only given satisfaction to him but to the consumer too.

As a Developer & Designer, I pulled myself in the second day of the summit because this day the experts were gonna talk about RIA (Rich Internet Application), the future of web applications. On this particular day GIDS talked about following topics:

Web 2.0 & Social Applications
Enterprise 2.0
Mashups
Social Networking
Ajax In Action
Comet
Dynamic Scripting
Browsers & Rich UI
Rich Web Security
Rich Web Stories

There were five parallel sessions going on at a time, so I was not able to attend every session. But I was able to focus myself to the session of my interest. I am a developer on Microsoft platform and having a keen interest in new Microsoft Technologies, so picked up sessions targeted on Silverlight 3.

I have attended following sessions:

Unravelling the New in Microsoft Silverlight 3
Nahas Mohammed star1star1star1star1
Deep Dive – Microsoft Silverlight Pipelines
Praveen Srivatsa star1star1star1
Building Rich UI using ASP.Net AJAX, AXAJ Control Toolkit & jQuery
Harish Ranganathan star1star1star1star1
Reusable Components for Building Killer RIAs (on Adobe Flex)
Anirudh Sasikumar star1star1star1

You might be thinking that when I am talking about Microsoft Silverlight, what I was doing in the session for the Flex. The reason is very simple, when you have the chance to learn new technologies and side by side compare them with similar technologies, why shouldn’t? So before leaving for the day I grabbed this opportunity too. I have also rated the presenters along with their contents. All over here I would like to say that I had a nice Thursday. The biggest takeaway for me was numerous seed of growth opportunities, which is a result of combined efforts of huge exposure to technology and GIDS.

To conclude this post here I would like to encourage the readers to participate in this kind of events. These events not only give you a chance to explore the new and happening world around you, but also provide a good networking environment, which in terms help you grow in your career.

Virtualization In Software Development

February 12, 2009 by Anant Anand Gupta · Leave a Comment 

Virtualization’s big push to fame was arguably kick-started by VMware’s Workstation product, which allowed individual users to run a bunch of OSes, versions or instances (similar to multiple application windows) instead of having a one-at-a-time multi-boot environment. In many companies, virtualization arrived with developers first using the technology quietly to do testing and development, then introducing the virtualization tools to IT higher-ups.

While today, computer virtualization fuels many production environments, e.g., servers, desktop infrastructures, and as a provisioning tool, virtualization is also used by a still-growing number of software developers. For starters, they use virtualization tools to provide a range of target environments for development and testing (such as different operating systems, OS versions and browsers), and also to provision/re-provision configuration instances quickly and easily.

Here’s a look at how and why some of today’s developers are using virtualization and what their quibbles are with the technology as it stands.

Provisioning Multiple Test Environments

Mark Friedman, a senior software architect, works in Microsoft’s Developer Division, where upwards of 3,000 people create Visual Studio and the .NET Framework. Friedman himself works mainly on the performance tools that ship with Microsoft’s Visual Studio Team System. “About two-thirds of the people in my division are in development and testing — and most of these developers and testers are using system virtualization (via Microsoft’s Hyper-V technology) as one of their key productivity tools,” says Friedman, who is also a board director of The Computer Measurement Group.

Read more

Next Page »

Get Adobe Flash playerPlugin by wpburn.com wordpress themes