Курс: Продающий лендинг для вашего бизнеса Бесплатно
Создайте сайт с нуля за 40 минут и запустите продажи

Знакомство с фреймворками. Часть 2. Ruby, Java и JScript

Обсудить
Ruby, Java и JScript

В предыдущей части было рассказано о том, что такое фреймворки, зачем они нужны, и какие HTML/CSS, PHP и Python-фреймворки существуют. Из данной статьи вы узнаете о фреймворках, написанных на таких языках программирования, как Ruby, Java и JavaScript.

Ruby логотип

Ruby-фреймворки

Ruby on Rails (RoR) – этот фреймворк можно справедливо назвать одним из самых известных, удобных и красивых, по мнению разработчиков, фреймворков. Это прогрессивная и динамичная технология, которая позволяет создавать код, используя соглашения вместо конфигураций. RoR используется для написания модельно-ориентированных веб-приложений. Одна из главных особенностей этого фреймворка – возможность создания любого типа веб-приложения, будь то управление проектами, групповой чат, безопасное хранилище данных или просто блог. Данный фреймворк можно использовать практически на любой операционной системе, также он поддерживает множество СУБД.

Официальный сайт: http://rubyonrails.org/

Sinatra – бесплатно распространяемый фреймворк с открытым исходным кодом, который используется для создания веб-приложений. Идея этого программного каркаса – быстрое создание веб-приложения на Ruby без лишних усилий. Sinatra используется в качестве библиотеки для обработки HTTP на серверной стороне, это фреймворк для тех, кто придерживается минимализма при создании приложения. Главное преимущество этого фреймворка перед Ruby on Rails – стабильность, так как фреймворк практически не меняется, то есть разработчик полностью контролирует свой код. На фреймворке Sinatra основан фреймворк Padrino.

Официальный сайт: http://www.sinatrarb.com/

Merb – название фреймворка расшифровывается как «Mongrel (HTTP сервер) + Erb». Это программный каркас с базовой функциональностью, которую можно расширить при помощи других плагинов. Сравнивая Merb с Ruby on Rails, следует отметить, что у него более высокая гибкость и производительность. К сожалению, работа над этим фреймворком была прекращена несколько лет назад; самый последний релиз вы можете найти на GitHub.

Аккаунт на GitHub: https://github.com/merb/merb/wiki

Hanami – название этого фреймворка может быть неизвестно большинству пользователей, так как он долгое время, вплоть до января 2016 года, носил название Lotus. Это современный, быстрый, а главное, легковесный фреймворк, который использует на 60% меньше памяти, чем другие Ruby-фреймворки. Это безопасный и в то же время простой программный каркас, который позволяет буквально за минуты писать гибкий код, который в дальнейшем можно легко отредактировать.

Официальный сайт: http://hanamirb.org/

Java логотипJava-фреймворки

Spring – один из самых известных фреймворков для Java-платформы. Spring помогает решить множество задач, стоящих перед разработчиками, при этом он может использоваться при создании как небольших, так и крупных проектов. Иногда Spring также рассматривают как собрание разных фреймворков, которые можно использовать независимо друг от друга. У этого программного каркаса есть собственная платформа MVC для веб-приложений. Spring позволяет выполнять более глобальные задачи, чем многие другие фреймворки: при помощи него вы можете обеспечить свой проект лучшей масштабируемостью, возможностью более простого тестирования и упрощённой интеграцией с другими фреймворками.

Официальный сайт: https://spring.io/

Vaadin – это бесплатно распространяемый фреймворк, который подходит для создания насыщенных интернет-приложений (RIA - rich Internet application). Этот программный каркас выделяется тем, что позволяет использовать Java в качестве главного и единственного языка программирования при создании веб-контента. Многие сравнивают Vaadin с фреймворком Google Web Toolkit, так как они предоставляют схожие возможности, к тому же именно Google Web Toolkit фреймворк Vaadin использует для того, чтобы отображать компонентов клиентского интерфейса и взаимодействовать с сервером на стороне пользователя. Поэтому некоторые считают Vaadin надстройкой над Google Web Toolkit, решающей проблемы общения с сервером.

Официальный сайт: https://vaadin.com/home

Google Web Toolkit (GWT) – этот фреймворк позволяет вам писать свой проект полностью на языке Java, который затем будет переведен в JavaScript. При создании этого программного каркаса разработчики уделили особое внимание скорости работы веб-приложений, которые созданы при помощи GWT. Это достигается путем использования отдельно загружаемых модулей, на которые разделяется веб-приложение. Поэтому GWT отлично подходит для написания красивых динамических сайтов.

Официальный сайт: http://www.gwtproject.org/

JavaServer Faces (JSF) – данный фреймворк облегчает процесс написания клиентских интерфейсов для приложений на Java EE. Он основывается на использовании компонентов. Благодаря тому, что классы компонентов интерфейса пользователей содержат функциональный компонент, появляется возможность рендеринга на различных устройствах клиента. JSF дает возможность создавать свои компоненты, но можно воспользоваться и уже имеющимися. При желании также можно использовать MVC-подход.

Официальный сайт: https://javaserverfaces.java.net/

Play – этот фреймворк был написан сразу на двух языках, Scala и Java. Он использует шаблон MVC. В первую очередь этот программный каркас используется для повышения производительности, так как в нем реализованы некоторые интересные идеи, в частности компилируемость. Благодаря строгой статической типизации кода в шаблон не могут быть переданы параметры неправильного типа или URL без контроллера.

Официальный сайт: https://www.playframework.com/

JavaScript логотипJavaScript-фреймворки

AngularJS – основное предназначение данного фреймворка состоит в разработке одностраничных приложений. На данный момент это один из самых востребованных и популярных фреймворков в мире. Из его преимуществ следует выделить декларативный стиль кода, который позволяет сделать код более легковесным, а также облегчает его восприятие. Используя AngularJS, вы можете использовать уже готовые модули, создавать приложения из зависимых или автономных модулей, а также использовать директивы, которые позволяют уделить особое внимание логике и повысить читаемость кода.

Официальный сайт: https://angularjs.org/

Ember.js – основополагающим принципом этого фреймворка являются маршруты, каждому из которых соответствует своя модель. Именно в моделях содержится информация о текущем состоянии приложения. Этот фреймворк обладает рядом собственных преимуществ: отсутствие необходимости писать вспомогательный код, наличие хорошего обработчика путей и модуля для работы с данными. А приложения, реализованные с помощью Ember.js, отличаются актуальностью и быстродействием.

Официальный сайт: http://emberjs.com/

jQuery – это не фреймворк, а библиотека, но использование jQuery так широко распространено, что этот инструмент также необходимо добавить в данную статью. jQuery была представлена общественности 10 лет назад, в 2006 году. В центре внимания данной библиотеки – взаимодействие HTML и JavaScript. Она поможет вам решить проблемы кроссбраузерности и использования Ajax. Это быстрый инструмент с высокой производительностью, который имеет большое количество плагинов. При помощи jQuery вы можете решить практически любую задачу.

Официальный сайт: http://jquery.com/

Backbone.js – как и в случае с jQuery, это не фреймворк, а библиотека, однако на базе этой библиотеки можно строить свои собственные фреймворки (или использовать уже существующие: Marionette, Thorax, Vertebrae и другие). Backbone.js – это понятная документация, несложный код, малый вес и практичность. Эту библиотеку легко освоить и затем использовать в своей работе.

Официальный сайт: http://backbonejs.org/

Polymer – эту библиотеку тоже часто путают с фреймворком. Некоторые называют Polymer самым прозрачным инструментом для создания приложения, потому что эта библиотека полностью разделяет функции HTML, CSS и JS. Polymer использует стандартные веб-компоненты, которые стали еще более доступными для современных браузеров. Несмотря на то, что одни считают эту библиотеку недоработанной, другие успешно применяют Polymer при создании своих приложений.

Официальный сайт: https://www.polymer-project.org/1.0/

Фреймворк и библиотека: в чем разница?

После разговора о фреймворках и библиотеках JavaScript необходимо внести ясность в значения этих двух понятий, которые зачастую путают. О том, что такое фреймворк, уже было рассказано ранее, поэтому я перейду к понятию библиотеки. Библиотека – это сборник различных классов и функций определённого языка программирования. Обычно библиотека содержит набор подпрограмм с близкими функциональными свойствами, в отличие от фреймворка, который обладает широким спектром возможностей. То есть, по сути, библиотека – это программный модуль или набор утилит, а фреймворк включает в себя библиотеки и другие инструменты. Если рассматривать эти два понятия с точки зрения построения кода, то библиотека предлагает вам готовое решение, которое вы можете использовать по своему усмотрению; модуль будет внутри вашего кода и никак не будет ограничивать его. С фреймворком ситуация другая: он является каркасом, основой вашего кода, и все, что вы напишете, будет находиться внутри этого каркаса. С точки зрения архитектуры фреймворк уже навязывает вам определённую структуру, которой вы должны следовать; библиотека лишь дает вам готовые решения, которые вы используете при разработке своего приложения.

Заключение

Бегло прочитав статью, непросто сразу разобраться в большом количестве фреймворков. Если у вас стоит вопрос, какой же фреймворк выбрать, ознакомьтесь с каждым из них, чтобы понять, какой будет наиболее удобен и прост в работе именно для вас. У каждого фреймворка есть свои преимущества и свои недостатки, но все они служат одной цели – сделать разработку более быстрым и приятным процессом. Для данной статьи были отобраны только самые популярные фреймворки, упоминание которых часто встречается на просторах Интернета. В действительности же существует множество других программных каркасов, а при желании вы можете даже создать свой собственный. Также рекомендую ознакомиться со статьей в Википедии, где в таблицах сравниваются различные фреймворки.

Комментарии

С помощью соцсетей
У меня нет аккаунта Зарегистрироваться
Нажимая кнопку «Зарегистрироваться», я даю согласие на обработку своих персональных данных, указанных в форме регистрации.
С помощью соцсетей
У меня уже есть аккаунт Войти
Нажимая кнопку «Зарегистрироваться», я даю согласие на обработку своих персональных данных, указанных в форме регистрации.
Инструкции по восстановлению пароля высланы на Ваш адрес электронной почты.
Пожалуйста, укажите email вашего аккаунта
Ваш баланс 10 ТК
1 ТК = 1 ₽
О том, как заработать и потратить Таймкарму, читайте в этой статье
Чтобы потратить Таймкарму, зарегистрируйтесь на нашем сайте