Saturday, May 26, 2012

Roslyn – C#, VB Compilers as APIs


I started developing software in  C language for the first time in my life and then did use Java language especially in university times.  Java, I used to write in notepad earlier days and then compile and run the Program using the command line (“javac” for compile and “java” for run the compiled program code).

But Java also has IDEs like NetBeens, Eclipse, JBuilder and etc, but I quite used to write the Programs in Notepad and that made me so competent in Java those daysJ. After moving to Microsoft Technologies, life was so easy of using the Programming Languages and Visual Studio is been providing numerous support for the developers for past few years. And that’s a great thing and that will give lots of time think about Program logics instead wasting lots of time learning the Program languages.

Just think about, how Microsoft does this, these huge set of features in Visual Studio?

They have been investing lots of money for this and it’s matured a lot too. With Roslyn what Microsoft does is expose those implementations for outside developers as APIs and so then they can use themselves those features in their system implementations.

That’s a huge benefit, because we were struggling lot in making things so dynamic in some business scenarios and wanted generate, compile and run the code on the fly. Earlier we did this with Code Dom library which is also delivered by Microsoft, but this time it has more features than earlier. And the Project name is “Roslyn”. Enjoy it.
Roslyn Project White Paper
Roslyn Project Home
If you google on this subject, “Microsoft Roslyn Project”, you will find more resources.
Lakmal

Friday, May 25, 2012

GUIDs


Uniqueness, hmm, how we can achieve the uniqueness?, that something depends on the environment you work on. We can have various algorithms to achieve uniqueness in different environments, but if you think of achieving uniqueness in globally, it’s a bit complex story. But Eric Lippert explains the things in simple way…

GUID Part one
GUID part 2
GUID Part 3

Lakmal