gordonbrander + oop   30

multiple inheritance - Mixins vs. Traits - Stack Overflow
...in Java. I think it's fair to say Classic supports trait-like behavior. Also, it might be worth creating a Classic flavor that inherits only methods.
java  oop 
24 days ago by gordonbrander
Double Fine chooses Moai | Blog
After raising 3.3 million heads of lettuce on Kickstarter, Doublefine chooses to build their game on an open-source Lua game engine.
The team at Double Fine kindly filmed a video covering the reasons behind their choice of Moai and showing some of the very earliest Double Fine Adventure development prototypes.

Shadowrun Returns (http://www.kickstarter.com/projects/1613260297/shadowrun-returns) has also chosen Moai.
game  development  lua  oop  video 
27 days ago by gordonbrander
Amber Smalltalk
Smalltalk that compiles to JavaScript.
opensource  javascript  smalltalk  development  web  oop 
5 weeks ago by gordonbrander
Rails controllers and OOP: Jon Leighton
Rails controllers violate the Single Responsibility Principle. Each “action” has a different responsibility and should be contained in a separate object.

This lesson also applies to other projects I've worked on (e.g. frameworks built on top of Backbone).
mvc  oop  development  web  rubyonrails  learn  tdd  test 
5 weeks ago by gordonbrander
Bootstrapping a lightweight Object System in Ruby
An object essentially wraps up method dispatch and state

A good observation. It's possible using functional closure to build your own object system (assuming your language supports hashes).
oop  functional  web  development  ruby  javascript  learn 
5 weeks ago by gordonbrander
Pharo Open Source Smalltalk
An open-source implementation of Smalltalk.
oop  opensource  smalltalk  development  web  learn 
5 weeks ago by gordonbrander
Reflective Facilities in Smalltalk-80
When a message is sent to a Smalltalk-80 object, the method dictionaries associated with that object's class and its superclasses are searched at runtime. If none of these classes implement a method for a given message, the Smalltalk virtual machine sends the object the message doesNotUnderstand:. The original message selector and message arguments are bundled together in a Message object and passed as the argument to doesNotUnderstand:. The default method for this message is stored in class Object. This method invokes the Smalltalk debugger, since sending an object a message it does not implement is usually a sign of programmer error. However, objects that override doesNotUnderstand: can intercept unimplemented message at runtime, and process them as they see fit.

So, actually, it sounds like SmallTalk 80 did bind message names to method names, much like JavaScript or any other OOP language. Earlier versions of the language did not. It sounds like Actor-based languages work essentially the way I expected SmallTalk would.
compsci  development  web  oop  smalltalk 
6 weeks ago by gordonbrander
Smalltalk - Wikipedia, the free encyclopedia
A Smalltalk object can do exactly three things:
Hold state (references to other objects).
Receive a message from itself or another object.
In the course of processing a message, send messages to itself or another object.

This smells like JavaScript evented models. Reinventing Smalltalk?
oop  development  pattern  mvc  from iphone
6 weeks ago by gordonbrander
Coding Horror: Are Design Patterns How Languages Evolve?
In the OO world you hear a good deal about "patterns". When I see patterns in my programs, I consider it a sign of trouble. The shape of a program should reflect only the problem it needs to solve. Any other regularity in the code is a sign, to me at least, that I'm using abstractions that aren't powerful enough-- often that I'm generating by hand the expansions of some macro that I need to write.
development  web  oop  design  lisp  from iphone
6 weeks ago by gordonbrander
[whatwg] Canvas v5 API additions
Canvas Path primitives have been added to the API. In other words, you can now construct `new Path()` objects and paint to them within a canvas context, giving us optional basic OOP/DOM drawing for canvas.
canvas  javascript  oop  animation 
8 weeks ago by gordonbrander
Expression problem - Wikipedia, the free encyclopedia
As quoted by Brendan Eich:
Denial that the expression problem exists is a common symptom of overzealous functional or object-oriented dogmatism.

http://twitter.com/pcwalton/status/176741289700769792
compsci  development  pattern  functional  oop  learn 
12 weeks ago by gordonbrander
GUI Architectures
A massive list of software architecture patterns, with detailed descriptions and diagrams.
architecture  oop  pattern  mvc  mvp  learn  development 
february 2012 by gordonbrander
Passive View
Unlike most MVC-style configurations, Passive View results in no dependencies between view and model.
mvp  oop  pattern  development  web  architecture 
february 2012 by gordonbrander
John Resig - Object.getPrototypeOf
Notes on the standard object method that replaces __proto__.
JavaScript  oop  development  web.  from iphone
january 2012 by gordonbrander
How does the JavaScript instanceof operator determine a match? - Quora
instanceof in JavaScript compares against the prototype chain for a given constructor function. Answer by @jashenkas.
JavaScript  oop  development  web  learn 
december 2011 by gordonbrander
Perfection kills » `instanceof` considered harmful (or how to write a robust `isArray`)
instanceof in JavaScript works by checking the prototype object chain of the given constructor function. Given this, arrays created in an iframe will not return true when checking instanceof Array, because their prototypes reference different objects.
javascript  oop  development  learn  web 
december 2011 by gordonbrander
Prototypal Inheritance - How To Node - NodeJS
A better explanation of prototypal inheritance than most.
javascript  oop  pattern 
december 2011 by gordonbrander
Custom types (classes) using object literals in JavaScript | NCZOnline
Discussion of Jeremy Ashenkas' proposed object-literal class definition syntax. Also a small snippet for creating something like this in JS.
javascript  oop  pattern 
november 2011 by gordonbrander
Doug Crockford: Classical Inheritance in JavaScript
Classical OOP design vs Prototypal design. Includes sugary approaches for emulating classical inheritance. Also some sytax sugar for "swiss" inheritance -- allowing you to cherry pick methods from multiple classes.
javascript  oop  philosophy  development 
february 2011 by gordonbrander
Doug Crockford: Prototypal Inheritance
An overview. Follow-up to http://www.crockford.com/javascript/inheritance.html. Simple object inheritance without a parent/super concept.
javascript  oop  prototype 
february 2011 by gordonbrander
John Resig - Simple JavaScript Inheritance
Implementing Classical (hierarchical) Inheritance in Javascript using a Class object with an Extend method.

I've used this page several times but have neglected to bookmark it. Done.
javascript  oop  opensource 
january 2011 by gordonbrander
How to fulfill your own feature request -or- Duck Punching with jQuery!
"If it looks like a duck, walks like a duck, but doesn't quack like a duck, punch it until it makes the noise you need". Modifying methods in jQuery on the fly to get back what you need.
javascript  jquery  oop 
january 2011 by gordonbrander
Delegation vs Inheritance in JavaScript
Delegation using the call() method in JS allows you to use methods of an object without inheriting from or instantiating that object. It's like "hey, I don't know what to do with this, but I know you do, so here it is".

Why: Inheritance can give you bloated objects where only a few methods and properties are really shared. The concept of implementing interfaces is more flexible (since it's not hierarchical).
javascript  design  oop  development  philosophy 
january 2011 by gordonbrander

Copy this bookmark:



description:


tags: