(kitteh codez: ./;;;;;;;;;;;;;;;;;;;;)
Time to start C# familiarisation, this long weekend is the weekend to start. My guide is the book: â€œPro C# 2008 and the .Net 3.5 Platformâ€ written by Andrew Troelson
Having last been semi-professional in Java about 10 years ago, there are many similarities. But lots of new platform learnings. Unix shell, paths and commands are difficult things to dump.
Just ensuring I understand the fundamentals before I jump into the deep end of the BCL and other .Net goodness
So, some new things:
- using the Visual Studio Command Prompt to pre-setup paths
- @*.rsp files for input to csc.exe (to replace command lines)
- Console.* and Environment.* for command-line/console style apps; along with return values
- Escape characters vs. @â€sssâ€ verbatim strings
- Narrowing/Widening datatypes at compile time (short/ints)
- out, ref, params (leave params as last argument)
- operator overloading (sans generics), arrays, simple objects, enums’
- structs on the stack, vs referenced types on heap
- Nullable types (using ? at the end of the type declaration, ?? as default override if value is null)
- Objects, default constructors
- constructor chaining using this. keyword
- Encapsulation using properties (auto getters and setters, or Accessors and Mutators)
- partials (one class across multiple *.cs files)
- class diagrams; same 3 base things of OO programming (encapsulation, inheritance and polymorphism)
- base class construction
- nested classes
- virtual, override in polymorphism; as keyword + null test in polymorphism
- SEH. Structured exception handling
- The heap, generations as a method of marking objects as â€œmore likely to stick aroundâ€ in System.GC
- Finalize. Finalize when unmanaged (ie: Pinvoke) objects
- Dispose. call Dispose on an object that implements IDisposable (if x is IDisposableâ€¦)
New feature of Visual Studio 2008, LOLCAT edition. CATROSPECSHUN OV UR CLASSEZ
Install Windows Server 2008, SQLServer2005 into Virtual PC 2007
- My previous application development platform experience is LAMP, so this Windows Server 2008 stuff is going to be fun!
- Installation to a fresh VirtualPC took less than 15 minutes.
- Only 6 updates required post install of Windows Server 2008 Enterprise
- Added Application Server, Web Server (IIS), File Services as installed applications
- FTP added because I understand that stuff
- Installed VirtualPC extensions
- Reconfigurated networking for home network
- Installing SQLServer2005 (as most external hosters are using this revision)
- Too many questions for a mere mortal. Its like recompiling MySQL!
- Going for a base level SQLServer as possible
- Apply SP update to SQLServer2005
- Launch SQLServer Management Studio
- All Seems Well
- Time to Backup the VM
Next sub-project: Windows Mobile 6 Professional SDK
- Some of the Imagine Cup finalists use the Windows Mobile 6 SDK, so grabbing that and evaluating their entries
- Installed; have to wait for the .zip files so I can correctly unzip with directories. Oops
- (on hold)
- (restarted at 8:00pm)
- OK, submissions reviewed, including in-the Mobile emulator (w00tage!). Karo has my data 🙂
ASP.NET/Database. Exactly how easy is it? Can I do it without RTFM?
- Move VM over to separate machine
- Launched OK!
- Hmm, adding a user, setting up non-Windows authentication (ie: no ActiveDirectory) requires checking on super-special(tm) checkbox. Done and running. Can create a table, add columns and records.
- I declare a successful day
As my Microsoft job subtlety changes at the beginning of July, it is self-development time!
Next year involves more cycles devoted to development â€˜themesâ€™. A change that I am
Following sage twitter advice from Christy Dena, the diary is locked and loaded. Every Monday and Friday are hard allocated to self-development.
Self-development relies on self-control.
To aid the tempation of twitter, email, rss feeds, weewar, TV, cats and general outside interruptions: I am a stickler for not misappropriating this 40% time. Secondly, there will be a blog/wiki post that will detail the daily activities. 40% time full transparency.
The general themes:
- Windows Server 2008 as Web Development/Web Host backend
- SQLServer 2005/8 as datastore
- DLR; IronPython and IronRuby