Simon Willison’s Weblog

Subscribe
Atom feed for object-oriented-programming

18 posts tagged “object-oriented-programming”

2025

Thoughts on Go vs. Rust vs. Zig (via) Thoughtful commentary on Go, Rust, and Zig by Sinclair Target. I haven't seen a single comparison that covers all three before and I learned a lot from reading this.

One thing that I hadn't noticed before is that none of these three languages implement class-based OOP.

# 5th December 2025, 4:28 am / go, object-oriented-programming, programming-languages, rust, zig

2017

Object models (via) Extremely comprehensive and readable discussion of the object models of Python, JavaScript, Lua and Perl 5. I learned something new about every one of those languages.

# 29th November 2017, 2:59 pm / javascript, lua, object-oriented-programming, perl, python

2013

Will a professional programmer lose anything if he doesn’t learn object oriented programming?

Yes. OOP is a very important programming concept—a professional programmer who is not familiar with it will be unable to understand vast swathes of high quality existing code and will have a great deal of trouble passing interviews or contributing effectively at great companies.

[... 95 words]

2009

The History of Python: Adding Support for User-defined Classes. Guido designed the run-time representation first, and tried to design the syntax to include as few new parsing concepts as possible. The origins of explicit self are also explained.

# 18th February 2009, 11 pm / css-classes, guido-van-rossum, object-oriented-programming, python

2008

Transitioning from Java Classes to JavaScript Prototypes. Peter Michaux shows how JavaScript’s prototypal inheritance can run rings around traditional Java-style classes once you figure out how to take advantage of it.

# 10th February 2008, 3:10 pm / inheritance, java, javascript, object-oriented-programming, pete-michaux, prototypalinheritance

2007

The Web Application Scale of Stupidity goes from OGF (One Giant Function) to OOP (Object Oriented Programming), like this: OGF ——– sanity ——— OOP

Cal Henderson, paraphrased

# 2nd November 2007, 6:23 am / cal-henderson, ogf, onegiantfunction, object-oriented-programming, peter-van-dijck, php, programming

Erlang fits all the characteristics of an OO system, even though sequential Erlang is a functional language, not an OO language

Ralph Johnson

# 8th August 2007, 7:47 pm / erlang, java, object-oriented-programming, programming

2004

Catching up with Harry

I’m not sure how I missed this, but Harry Fueck’s new book The PHP Anthology was published by SitePoint back in December, as a hefty 2 volume epic. Harry is the guru behind PHP Patterns and really knows his stuff. While the book is at first glance a cookbook for solving web related problems, Harry also uses it as a platform for teaching sensible development practises:

[... 237 words]

2003

OOP over the top. Using XML for data-driven programming

# 11th December 2003, 2:50 am / object-oriented-programming

How not to use OOP

Via Hans Nowak, Understanding Object Oriented Programming, or how to turn 19 lines of easily maintained code in to an OO monstrosity spanning 7 class files. This is not the way to make code more maintainable. For comparison, here’s how I would implement a solution to the same problem in Python, assuming the availability of an equivalent function to Java’s System.getProperty("os.name") (os.name is similar but inappropriate for this example):

[... 153 words]

“Is Evil..” titles are evil

Too excellent articles on Object Oriented Design: Why extends is evil and Why getter and setter methods are evil. Ignore the inflammatory titles: the subheading of the second article, “Make your code more maintainable by avoiding accessors”, is a much better indication of their content. I picked up some great tips on proper use of OOP from reading them. In particular, the section on CRC cards made something click which hadn’t clicked when I looked at them earlier this year for my ill fated University software project.

PHP5 and Questioning OOP

An Interview with Sterling Hughes on PHP5 from the PHP-Con site:

[... 353 words]

PHP5 info from Sterling Hughes

Sterling Hughes has posted the slides he will be using for his presentation on PHP 5 next week. They provide a great deal of insight in to the new additions to look forward to in PHP 5, including a few I hadn’t heard about before.

[... 209 words]

Perl made less ugly

It seems Perl OOP doesn’t have to be that ugly after all. Tony Bowden disects the code from the recent Evolt article and shows how it can be made much neater using Perl’s Class::Accessor module. Much nicer—I should have guessed that there would be More Than One Way To Do It.

2002

Voostind interview

Virtual Interview: Vince Oostindie (via techno weenie). Vincent is the author of the excellent Eclipse Library for PHP and a regular on the SitePoint forums, where he frequently educates people in programming PHP using OOP methods. The interview is well worth a read if you are interested in either of these topics.

OOP and XP

There’s an interesting rambling thread on SitePoint at the moment which started off talking about coding standards but has moved on now to discussing OOP and eXtreme Programming. In it, I try to explain inheritance and the difference between -> and :: while Vincent Oostindië explains the principle of refactoring from eXtreme Programming.