<pedrocorreia.net ⁄>

<Classes Are Not Objects ⁄ >

clicks: 3726 3726 2010-09-13 2010-09-13 goto programacao myNews programacao  Bookmark This Bookmark This

I was reading a blog post by Derick Bailey last night and I got into the comments due to a few tweets that I saw (I'm on Twitter if you want to follow me). It was a lot of noise and ranting, but one topic that came up was that people working in languages such as C# and Java quite often mistake classes for objects. Working in a language like C# they can feel quite similar, since the distinction is merely that a class represents the abstraction of a set of objects, while an object is just an instance of a class. You can think of the class as the cookie cutter and the object is the cookie.

So what is the importance of this distinction? Well, in C# prior to 4 the distinction wasn't very important. You didn't really have a good way of interacting with a class in a way that the class definition didn't provide. In C# 4 the dynamic type was introduced along with a late binding mechanism that allows the object to respond to methods which don't exist on the class definition. So, are they really method calls at all? We aren't actually calling a method, right? This is exactly why many languages will talk about message passing rather than calling methods.

este é só um excerto do artigo, para aceder ao artigo completo, clique no link em baixo:
this is just a small excerpt from the article, to access the full article please click in the link below:


Subscribe News RSS  Subscribe News Updates by E-mail

myNews <myNews show="rand" cat="programacao" ⁄>

RouterJs: easy routing for your ajax Web applications new ...

RouterJs is a simple router for your ajax web apps. It's build upon History.js which means that Rout (...)

clicks: 19220 19220 2012-05-14 2012-05-14 goto url (new window) haithembelhaj.g... goto myNews programacao

Backbone computed properties new ...

This gist shows one way to implement read- and write-enabled computed properties on a Backbone Model (...)

clicks: 18774 18774 2012-05-13 2012-05-13 goto url (new window) https://gist.gi... goto myNews programacao

Android Query new ...

Android-Query (AQuery) is a light-weight library for doing asynchronous tasks and manipulating UI el (...)

clicks: 18622 18622 2012-05-12 2012-05-12 goto url (new window) code.google.com... goto myNews programacao

HTML5 jQuery Paint Plugin new ...

Websanova Paint is a HTML5 canvas based jQuery plugin. It allows you to free paint on a canvas area (...)

clicks: 30048 30048 2012-05-12 2012-05-12 goto url (new window) websanova.com/t... goto myNews programacao

Create Instagram Filters With PHP new ...

In this tutorial, I'll demonstrate how to create vintage (just like Instagram does) photos with PHP (...)

clicks: 18901 18901 2012-05-12 2012-05-12 goto url (new window) net.tutsplus.co... goto myNews programacao

Real-time Applications With Node.js and Socket.IO new ...

Hey everyone! Sorry about the long pause since the last blog post, life has been quite hectic for th (...)

clicks: 19183 19183 2012-05-11 2012-05-11 goto url (new window) codingcookies.c... goto myNews programacao

Sass vs. LESS vs. Stylus: Preprocessor Shootout new ...

CSS3 preprocessors are languages written for the sole purpose of adding cool, inventive features to (...)

clicks: 18637 18637 2012-05-11 2012-05-11 goto url (new window) net.tutsplus.co... goto myNews programacao

Gettings to know Backbone.ks new ...

In this series, we're going to learn how to build a fully functional contacts manager using Backbone (...)

clicks: 17768 17768 2012-05-10 2012-05-10 goto url (new window) net.tutsplus.co... goto myNews programacao