R1D17 Nose Dive into OOP in C#
I worked through module two of the Object Oriented Progrmaming in C# course on edX.
- C# supports the notion of anonmous classes which seems to make it very simple to create new read-only objects on the fly without having to create the class first.
- Visual Studio has handy #region and #endregion functionality that allows you to make collapsable regions in your code. If you have a file with many lines of code in it, using regions is a great way to keep things organized and also make things easier to look at in the UI.
- C# does not support multiple inheritance.
It is not immediately clear to me, but I suspect that this is only true in the context of a namespace. It seems that C# allows you to “magically” use all members of a namespace without having to import them explicitly.
Abstract classes and abstract methods. You can create “sealed” classes which cannot be inherited. Interfaces are classes without implementation. I feel like a good analogy for this would be header files in C, C++ or Objective-C. An interface is really what an API refers to in a traditional sense (not like REST API). It is a “programming contract” that guarantees users of the implemented class that the functionality of that class will implement everything that is defined in the interface.
In the lab portion of the course we refactored our “school simulator” to have Students and Teachers inherit from a base class of Person.
Tomorrow I hope to wrap up the last module of the course which has to do with memory management and then move on to the last course of the series that deals with data structures and algorithms in C#.
Thank you for reading! Share your thoughts with me on mastodon or via email.
Check out some more stuff to read down below.
Most popular posts this month
- Daggerversary
- Setting up ANTLR4 on Windows
- SQLite DB Migrations with PRAGMA user_version
- My Custom Miniflux CSS Theme
- Installing Nextcloud on a FreeBSD VPS
Recent Favorite Blog Posts
This is a collection of the last 8 posts that I bookmarked.
- "Let's pick the right product for you". from jwz
- Automattic is doing open source dirty from David Heinemeier Hansson
- Setting Up Mastodon Author Tags from Robb Knight • Posts • Atom Feed
- Getting my next SWE role from Emmanuel Blogs
- Methods of Mandarin from Isaak.net
- 12 Months of Mandarin from Isaak.net
- Villages Without Cars from Straphanger
- Some Go web dev notes from Julia Evans
Articles from blogs I follow around the net
TCP Server in Zig - Part 4 - Multithreading
We finished Part 1 with a simple single-threaded server, which we could describe as: Create our socket Bind it to an address Put it in "server" mode (i.e. call listen on it) Accept a connection Application logic involving reading/writing to t…
via openmymind.net October 11, 2024Nebraska Woman Files Suit Against All Homosexuals
A Nebraska woman identifying herself as the "ambassador" for plaintiffs "God and His Son, Jesus Christ," is suing all homosexuals on Earth for breaking "religious and moral laws". In the suit, entered into the docket as Driskell v. …
via jwz October 10, 2024Pluralistic: Cars bricked by bankrupt EV company will stay bricked (10 Oct 2024)
Today's links Cars bricked by bankrupt EV company will stay bricked: "Software-based car" is a warning, not a slogan. Hey look at this: Delights to delectate. This day in history: 2009, 2014, 2019, 2023 Upcoming appearances: Where to find me. …
via Pluralistic: Daily links from Cory Doctorow October 10, 2024Generated by openring