The Visual Studio Express
I am adding this more for a reference, Microsoft has done a wonderful job in releasing the Express products. From version 2005 when they first appeared to now with the release of 2012, they have added and continually tweaked the inclusion list of what is available within the Express editions. So I will provide a list of the express products, a link to download them and also provide additional links for products that can be used with that version of the product.
A point of soreness I have with the express editions is the lack of source control support. 2012 now includes it, and also includes a free edition of Team Foundation Server (up to 5 users), which has also be reduced in functionality from the full version.
|Visual Web Developer ^|
|Game Studio Express|
|Team Foundation Server|
Confused yet. There is a lot to take in, especially if you are wanting to develop for Windows Phone and Windows 8. 2 versions, for the moment. But that said, and despite the fact that the earlier versions are split into separate products I will try and explain a little more about what you can or can’t do with these express editions.
|If you purchase the Professional edition or higher, these will include the full set of tools that is covered by the express editions. The exception is current Visual Studio 2012 and Windows Phone.|
With each new version of the of the products they increased what was available. I will not go through each one, since there is a significant difference not only between the express editions and professional but also within the express editions on a version.
With the 2005 express editions, there were a couple of significant differences. The main one was to do with the difference between Web Developer and the language versions. The Web Developer could never create class libraries. This wasn’t a huge deal since you could create them in the language version of the product. This was fixed in the 2008 express editions.
Macros, these have not been a part of the express editions for sometime. And from my understanding of it, will remain to be a key difference between the express editions over the full product. This also goes for add-ins, though in 2012 I believe there is an exception for this, and I need to confirm this, but Team Foundation Server Express can be integrated into the Visual Studio 2012 Express editions. As to other source control applications are supported, or the full version of TFS I do not know. I will provide an update.
The note on Source Control. All previous version from 2012 could not use integrated source control, this was possibly due to the restriction on add-ins and extensibility as the source control integration is such a tool. You could still use a source control application but you needed to use it externally.
I would say one simple reason, they are free. When you are learning how to program the tasks is daunting enough without the need to worry about the cost of the development environment, not to mention, that if you learn and find that it isn’t for you, which is possible, then you have dropped a wad of cash just to try.
The later versions are better, not needing to install different versions if you want C#, C++ and VB, but Microsoft have been improving each version of the express edition with each release.
XNA Game Studio
You might see that XNA Game Studio hasn’t been listed here, and since I am using it at home, I possibly should have. But the subsequent versions haven’t been labelled express. Then neither has F#, but F# is a language, XNA is an additional set of libraries and templates.
|XNA Game Studio Express||Original release|
|XNA Game Studio 2.0||2005|
|XNA Game Studio 3.0||2008|
|XNA Game Studio 3.1||2008|
|XNA Game Studio 4.0||2010|
Currently there is no word on the release of XNA Game Studio 5.0 (if there is one) and its use in Visual Studio 2012. Thankfully there is a way of developing XNA applications using Visual Studio 2012. But some of the official words are, since XNA is not supported as part of the WinRT (therefore Windows App store applications) are not supported. XNA, as mentioned before will still work with Windows 8 Desktop (as this operates like Windows 7).
Since XNA originally was a way for users to create games on Windows and then the Xbox 360 a lot of XNA is reliant upon DirectX 9. There is nothing to stop Microsoft from releasing a DirectX 11 version of it, but at the moment, as Xbox 360 uses a model of DirectX 9 this will not happen soon.
Games can be made using C# and DirectX with the Windows 8 express edition but this is the method I believe they are heading towards at this stage.
Windows Phone 8
I am unable to say too much about Windows Phone 8, what is coming, available in any express edition like Windows Phone 7. But you can sign up for early access to the beta program. You will need to have a development Id for the current Windows Phone Store and I believe also some details regarding an application that exists. But the details for this are available on the Microsoft Connect site, sign in with your Live Id and I believe most of it will be ready to go the rest is up to you.
The reason for a lot of this I believe is, Microsoft has kept the details regarding Windows Phone 8 largely secret. At TechEd 2012 there were people who knew, but they were no divulging anything at this time and the Beta program also has some non-disclosure agreements within, so be warned.
This was in some ways a massive boon to the student or hobby developer, using a near full implementation of SQL Server as a database platform. What is there not to like? Well I am unable to think about too many reasons why I would not go SQL Server any other RDBMS, but there might be reasons not to use the version of SQL Server.
Personally, if I know I need a database and it is going to be a small single user database, then I will use Microsoft Access. This might cause a groan from the crowd, but I will justify it. Microsoft Access has come a long way from the humble beginnings of Version 2. My first programming job was to convert a constantly corrupting MS Access 2.0 database to SQL Server 6.5. No easy feat, but in the end I got there. But I did qualify my statement by saying a single user and it is small, then Access is better, I will even go as far as say a few users as well. Beyond that, SQL Express is better by far, and it is more to do with the way data is handled internally of the DBMS, Access is a file, calls are read on disk passed back. SQL though is similar, there is an engine that controls the data access, it is using execution plans to speed up data access, caching of regularly used data and so on.
All of these additions though include an overhead, a decent overhead too. To gain the performance benefit of SQL it needs memory and if you aren’t careful it can use a lot of it. If SQL isn’t using it, it will give it back, but it is confusing when looking at how much memory the system is using.
The restrictions are largely to do with hardware, amount of memory, database size, number of users connecting. Just bare this in mind when building applications using SQL Server express, large databases use more memory, or require more memory to function efficiently and there might be a degradation of performance if the upper limits of the hardware specifications is reached.
|2005||2008||2008 R2 and higher|
|DB Size (excludes logs)||4GB||4GB||10GB|
|CPU||Single CPU||Single CPU||Single CPU|
DB Size is per database not database server. This doesn’t include the log file in the size.
A single physical CPU is the only option but this excludes multi-core CPUs. The express editions enables this use of multi-core CPUs, but there can only be 1 physical CPU.
The RAM restriction is only to the amount of RAM SQL Server will use and not that of the machine.
So, baring these restrictions in mind then go for it.
F# has been released officially with Visual Studio 2010, but also with Visual Studio 2012. There is no specific Express edition but I have provided the links that will enable the use of F# within a Shell product, which is in essence Visual Studio Express editions provide.
Microsoft has been incredibly generous to developers now days. Development tools back in yore was using notepad and getting a compiler and linker somewhere. The use of the IDEs now days makes this easier than before, not to mention, these express editions, I don’t think anyone can or should complain about what is missing when there is the best IDE in the development world, period. A compiler for languages thus far, a few exceptions, which enables one to write, Windows, Web, Games, Data and all manner of applications, yes there are restrictions, but since the .NET framework offers the full functionality there is often ways around this.
If you have never learnt programming before, then now is the best time to jump in, VB is a great starter as it has always been, C# is a great step up and certainly now C# and VB are closer than ever. C++ gives you a fully compliant C++ compiler, install the DirectX SDK and there is nothing stopping you creating a AAA game, other than money. With these editions, you only need to use them for what you can do. When you feel you need more, then upgrade, but if they serve your purpose then is there a need.
Well I have put as much information as I could for the moment, I am sure if I tried I could keep going. I was able to find the links to the 2005 and 2008 editions, while they are still available. I am sorry if you go here and find that the links do not work. Contact me and I can update them.
Why would I put up the 2005 and 2008 editions, compatibility. Though the predominate OS is Windows XP, and Visual Studio 2010 can run on XP but you need a decent machine with a decent amount of RAM to run VS2010 nicely. So, the 2008 and 2005 versions are a good place to start on older hardware.
But since I have give all of these express editions and since I am writing a site dedicated to games and development I would be remiss if I left out some links so you can create that next great AAA title.
|This version is for use in Visual Studio 2008 and 2010. It talks about it is not supported. This is possibly due to certain components that need the IDE. If this is an issue, you can download the previous release of the SDK from here.|
|This is the latest version of the Windows SDK, it supports the latest supported versions of Windows (so anything lower than Windows XP SP3 is excluded). This is a web installer of the product as this is a very large download. There is also an ISO available here.|
Both of the versions of the DirectX SDK support DirectX 11 as was released in Windows 7. The latest version includes some improvements and as well as some new features for DirectX 11 and improvements for the HLSL (High Level Shader Language).
So I hope this helps, if you need more information drop me a message or contact me directly. Will be happy to help.
- * Visual Studio 2012 Express is called Express for Windows Desktop which includes C#, C++ and VB.
- ^ Visual Web Developer for 2012 is called Express for Web.
- ** Visual Studio 2010 Express does not include Visual Studio 2010 Express for Windows Phone.
- $ Visual Studio 2012 current doesn’t support Windows Phone, Windows Phone 7 and 7.1 development needs to be done on Visual Studio 2010.
- & Visual F# is in the list for completeness as it comes as a separate download, from all information I have read, it can be installed into a Visual Studio 2008 shell and 2010 shell, which will then enable the use of the F# language within the IDE. There is a 2012 shell.
- # Visual J# is not longer an available product as part of the Visual Studio suite. It is available as part of Visual Studio 2005, include Visual J# 2005 Express, and will be supported until sometime in 2015. See Visual J# on MSDN for more information.