пятница, 17 мая 2013 г.

Изучение Backbone.js

Как фреймворк Backbone мал и интересен, и очень быстро развивается. Последняя тенденция в программировании javascript - переходить именно на него. Из того что backbone делает, он позволяет существенно структуризировать работу как с отдельными участками проекта, так и в общем целом. Backbone грамотно взаимодействует с JQuery, Backbone - MVC фреймворк в разработке на javascript.

Пример простого использования Backbone (файл 1.js):

// Главный класс view Backbone.
var ListView = Backbone.View.extend({
    el: $('body'), // к чему привязываем события.
    initialize: function(){
      _.bindAll(this, 'render'); // расшаривает доступ this для всех методов
       this.render(); // отрисовываем при инциализации
    },
    // отрисовка блока к которому привязываем события
    render: function(){
     $(this.el).append("<ul> <li>hello world</li> </ul>");
    }
  });
// создаем Backbone отображение
  var listView = new ListView();
})(jQuery);


Файл index.html:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>hello-backbonejs</title>
</head>
<body>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
<script src="http://ajax.cdnjs.com/ajax/libs/json2/20110223/json2.js"></script>
<script src="http://ajax.cdnjs.com/ajax/libs/underscore.js/1.1.6/underscore-min.js"></script>
<script src="http://ajax.cdnjs.com/ajax/libs/backbone.js/0.3.3/backbone-min.js"></script>
<script src="1.js"></script>
</body>
</html>
Ворохита библиотек которые отвечают за backbone (2 файла):

http://ajax.cdnjs.com/ajax/libs/underscore.js/1.1.6/underscore-min.js
http://ajax.cdnjs.com/ajax/libs/backbone.js/0.3.3/backbone-min.js

Hello World приложение на backbone, его можно было бы заменить простым JQuery:


$('body').append("<ul> <li>hello world</li> </ul>");

В чем различия и потребность использовать именно Backbone, а не JQuery на больших проектах, не что иное как правильная логика хорошо структурированная и удобно читаемая. При больших проектах скрипты JQuery превращаются в кашу, и решать это можно только разделением на отдельные файлы javascript. Поэтому удобнее использовать MVC паттерн при разработке. Backbone имеет в своей основе роуты, хорошо работает с HistoryAPI, также при серфинге по backbone ориентированному сайту страничка не перегружается, что отвечает современным стандартам юзерфрендли сайтов. Это ознакомительная статья, поэтому пару ссылок к изучению:


http://arturadib.com/hello-backbonejs/ - текущий пример взят иммено оттуда.
http://backbone.codeschool.com/levels/1
http://backbonejs.org/#examples

Комментариев нет:

Отправить комментарий