#020 - Exploring C# Linguistics #100DaysOfCode
Alrighty! I am officially smitten with programming. I decided to take a leap of faith to explore the world of C# using the learning track from #Treehouse.
The whole namespace is interesting. If my understanding is correct, a namespace is like a workspace, where you can collate and organise classes within a given namespace. Thanks to Treehouse, I have adopted the State > City > Street convention when analysing namespaces, classes and methods respectively.
Of course, I am still learning the basics of C#, so I am doing various console app development at the moment. I am keen to see how C# works with web applications.
Edit: I also read the other day that Microsoft is aiming for a more unified .NET platform (https://devblogs.microsoft.com/dotnet/introducing-net-5/). I believe .Net Core 3.0 is the current edition, but from Fall 2020 it will mark the new future of the .NET platform starting with .NET 5. I am particularly excited to see what Microsoft is cooking with new versions of C# and the .NET platform as a whole. Hopefully, it will make the .NET documentation more unified with newer versions. All I can say is that I'm thankful and excited to have started learning C#.
I am using Microsoft's Visual Studio Community 2019 edition to write my code, as I want to grapple with the modern development tools used in the real world. I also installed the Mono compiler, so I can test some basic calculations and syntax outside my main work environment.
I like the specificity of the C# syntax, which I suspect is similar to C++ (another language that I hope to explore very soon).
const pi = 3.14;
let firstName = "John";
let secondName = "Smith";
But in C#, you can specialise a data type for a given variable.
int theMeaningOfLife = 42;
string hitchhikerAuthor = "Douglas Adams";
I learned through Treehouse that most C# developers prefer to declare variables using the var keyword, as opposed to creating specific variable types like int, float and string, etc.
I am due to start another C# course and develop a Tower Defense game with Treehouse. Hopefully, I can grasp the advanced principals of Object-Orientated Programming (OOP) in the realm of C#. It would be good to understand the underlying core of C#, so I can start exploring fun programming projects which I know my portfolio will benefit immensely, once I create some interesting prototypes.