SOOJS: A Simple Object Pattern for JavaScript

SOOJS: A Simple Object Pattern for JavaScript

This entry is part 1 of 11 in the series SOOJS : OO JavaScript

Let’s face facts: Javascript is awesome. As a language it has so much power and so little barrier to entry that it almost begs to be the first language learned by newcomers. Javascript also has a wide variety of application and real depth in its…

Continue reading →

Frameworks, Libraries and Patterns — oh my

Frameworks, Libraries and Patterns — oh my

This entry is part 2 of 11 in the series SOOJS : OO JavaScript

Before getting any deeper into SOOJS I want to clear something up just a bit here. I will make it quick, but it needs to be said. SOOJS is a pattern. And that is intentional. jQuery, a terrifically popular JavaScript library is just that: a library. JavaScriptMVC…

Continue reading →

SOOJS has class

SOOJS has class

This entry is part 3 of 11 in the series SOOJS : OO JavaScript

At its heart, obviously, SOOJS is about bringing some kind of object-orientation to JavaScript. That’s not to say it makes JavaScript itself OO, nor that any of the common OO elements are specifically replicated. There is actually a lot of overhead in doing that sort…

Continue reading →

Core Concepts: Maintainability

Core Concepts: Maintainability

This entry is part 4 of 11 in the series SOOJS : OO JavaScript

By far, one of the most important factors of this whole pattern is that of readability and maintainability. We all cobble together code while we are solving the problem. The thing that never happens is the most important step: clean-up. We need to always consider…

Continue reading →

Core Concepts: File Separation

Core Concepts: File Separation

This entry is part 5 of 11 in the series SOOJS : OO JavaScript

As we just learned in the previous topic SOOJS embraces strong file separation. This is something that many projects forgo because of the deployment difficulties around multiple source files and JavaScript. I have been in that camp for a while. If you’ve ever managed a…

Continue reading →

Core Concepts: Simple JavaScript

Core Concepts: Simple JavaScript

This entry is part 6 of 11 in the series SOOJS : OO JavaScript

No Training Required As I mentioned previously I have built libraries and frameworks in the past. So designing SOOJS to be a pattern was an intentional process. My findings with libraries and frameworks are that you first have to educate people on how to use…

Continue reading →

Core Concepts: Public vs. Private

Core Concepts: Public vs. Private

This entry is part 7 of 11 in the series SOOJS : OO JavaScript

JavaScript doesn’t really deal in strictly public or private — not like common OO languages at least. Everything comes down to scope. What SOOJS is doing is only hanging things on the outside when they are needed. I will definitely call this public. But most…

Continue reading →

Our first SOOJS Object

Our first SOOJS Object

This entry is part 8 of 11 in the series SOOJS : OO JavaScript

We are finally there! You have learned enough about all the JavaScript concepts that make SOOJS what it is. It’s time to dive into the real pattern itself. This should be much easier now that you see why things are being done this way. Note:…

Continue reading →

The Delegate Pattern

The Delegate Pattern

This entry is part 9 of 11 in the series SOOJS : OO JavaScript

You’ve reached the final element of the base pattern here. We’ve seen files and objects, internals and publics, readability and no training. Now the final step is to make sure these objects can easily communicate with the world, and have a reasonable standard to also…

Continue reading →

Basic MVC

Basic MVC

This entry is part 10 of 11 in the series SOOJS : OO JavaScript

You now have everything you need to implement SOOJS into any of your current or future projects. The organization of when to separate elements is the only real decision that remains. MVC helps us here. I won’t go very deeply into this, but it’s simple…

Continue reading →

Page 1 of 2 1 2