developer blog

451 degrees Fahrenheit

Объектно ориентированный Javascript с JS.Class

July 12th, 2008 by pilot |

JS_Class-Ruby-like-classes-for-JavaScriptСейчас можно встретить большое количество библиотек, которые предлагают реализацию ООП модели в Javascript.

Из множества библиотек JS.Class написанная Джеймсом Когланом (James Coglan) выделяется своей простотой реализации объектно ориентированной разработки на JavaScript, похожести в организации структуры классов на Ruby, небольшой, но достаточной документацией, и маленьким размером. Она использует ряд идиом, заимствованных из Ruby для моделирования классов, наследования и создания модулей.

Небольшой пример создания класса:

    var Animal = new JS.Class({
      initialize: function(name) {
        this.name = name;
      },
      speak: function(things) {
        return 'My name is ' + this.name + ' and I like ' + things;
      }
    });

Все классы начинаются с метода initialize(). Этот метод создает объект класса и принимает все параметры нужные для объекта:

  var pig = new Animal('Porky');
  pig.speak('mud')   // -> "My name is Porky and I like mud"

Писать классы на Javascript с JS.Class так же просто как и в PHP или RUBY, особенно в случае больших приложений с разветвленным функционалом написанном на javascript.

Скачать JS.Class 1.6.1

top of hotblogs.org.ua

Раздел javascript

8 Responses

  1. Loki Says:

    Нормуль сайт, и дизайник, и статейки!

  2. Виктор Стрельников Says:

    А что-нить еще напишите такое

  3. Ира Says:

    Что-то я не совсем понял в чём тут смысл?

  4. Катя Says:

    Отличная статья, мне кажется что вам нужно в какие нибудь спец журналы писать :)

  5. Скварцов Says:

    Однозначно в избранные “сочинения” :)

  6. Виктор Стрельников Says:

    Помоему здорово, а можно вашу аську, обсудить тему хотелось бы.

  7. pilot Says:

    Пишите на почту pilot[at]pesochin[dot]net, если “тема” будет интересна обязательно отвечу.

  8. Anton Says:

    Товарищ, это спамеры))

Leave a Comment

Please note: Comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.