Skip to content

Model Thinking

September 3, 2012

According to Programming Ruby, pages 15-16, here is how one should think about object-oriented programming:

When you write object-oriented programs, you’re normally looking to model concepts from the real world.  During this modeling process you’ll discover categories of things that need to be represented in code.  In a jukebox, the concept of a “song” could be such a category.  In Ruby, you’d define a class to represent each of these entities.  A class is a combination of state (for example, the name of the song) and methods that use that state (perhaps a method to play the song).

As I was browsing Coursera’s catalog, I saw an interesting course called Model Thinking.  This particular course is an interesting concept because it teaches us to think about the real world in terms of models so that one may think more intelligently and clearly about the world in which we live.  And, this course is not limited to one particular field of study.  The course teaches one to think about managing information for decision making and problem solving in any field of study.

When I saw this, I immediately thought of the quote listed above.  Object-oriented programming is modeling real world concepts in computer code.  It just makes sense to me that improving my thinking about models can only help to improve my ability to solve problems in code.  And, it should help me to write better, more logically organized code.

I think I’ve found my structure and focus for the next few weeks.  I’m going to continue working my way through the Programming Ruby book, I’m going to help my thinking about the real world by learning more about Model Thinking, and I’m going to get practical, hands-on experience writing code in a structured environment with the  Learn To Program: The Fundamentals course.

From what I can see, this looks like a winner all the way around.

Advertisements

From → Ruby

Leave a Comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: