
Chapter 1
8
The idea behind SharpDevelop
Yet another IDE? You might well ask this. Our answer is: Why not? Some time ago, Microsoft proposed
a new software architecture called 'Windows Next Generation Services', which then became .NET. It
looked like a good idea from the start. So once we got wind of this new architecture, we were curious
and wanted to see what could actually be done with this platform as soon as we could get hold of one of
the early betas. These betas only contained command-line tools, so doing our own proper development
tool seemed like a good idea. Mike decided try doing just that. After a modest start, implementing
something akin to Notepad, things took off.
With Free/Open Source implementations of the Microsoft .NET architecture on which SharpDevelop
runs and on which we developed it happening as this book is written, there will some day be one IDE
for multiple platforms – OS and hardware-wise. The Eclipse project is aimed towards this goal too, but
the approach taken is different as it is based on Java integrating other languages into the IDE. We aim
to use .NET and its free implementations as a platform for integrating development, including
non-.NET platforms such as Java or the GNU Compiler Collection. If you have a programming
language you want to use and a compiler/interpreter for it, you can 'plug it in' and develop using
SharpDevelop!
Chapter 2 has a discussion of the history of SharpDevelop in terms of design decisions. If you are
interested in seeing a full evolutionary tree of the SharpDevelop IDE please refer either to the Change
Log (Help | About and then click on the ChangeLog tab) or online at
http://www.icsharpcode.net/OpenSource/SD/Changes.asp.
SharpDevelop Software Requirements
As a developer, you are strongly advised to run SharpDevelop either on Microsoft Windows 2000 or
Microsoft Windows XP. Other Windows platforms such as Microsoft Windows NT4 or Microsoft
Windows 9x are not recommended, as the .NET Runtime offers only limited support. For example, if
you intend to develop ASP.NET applications and use Windows NT4, you need the Windows NT
Option Pack. Developing ASP.NET applications on Windows 9x is not possible, as the .NET Runtime
and/or other Windows components do not offer full support.
Since SharpDevelop relies on the Microsoft .NET Runtime you have to install the free downloadable
.NET package. Therefore, either the redistributable .NET Runtime or the .NET Framework Software
Development Kit must be installed prior running the SharpDevelop IDE. As the .NET Framework SDK
installation has several benefits compared to the redistributable package, (for example, it has
comprehensive documentation for developers) the .NET Framework SDK installation is recommended.
You might now ask what the hardware requirements are. SharpDevelop will run on slower PCs, but if
you want to use resource-consuming features such as Code Completion and hate lags, you should be
equipped with a modern CPU, enough RAM (more than 128 MB), and for best viewing experience, a
resolution of 1024x768 pixels is recommended.
Now, it's time to present the features of the SharpDevelop IDE. The next section of this chapter
provides you with a brief tour to get you acquainted with the most important features of the IDE.