На чем пишете?
Иногда от клиентов поступает такой вопрос: «На чем пишете?». С одной стороны, хороший разработчик должен ухмыльнувшись ответить, что пишет на чем угодно; с другой — вопрос вполне закономерный, ведь если разработчик действительно имеет опыт, то он уже выбрал связки технологий, которые будет применять на том или ином проекте. И профессионал сможет оценить уровень исполнителей по их инструментарию. Разумеется, речь идет об уникальном сервисе или программном продукте, задачи которого не вписываются в рамки функционала «коробочных» систем управления.
Тем не менее, говорить о связках технологий лучше на примерах задач, которые клиент может поставить перед нами. Разберем некоторые из них.
Высоконагруженный веб-сервис потокового аудио
Например, клиент приходит с задачей: нужно разработать сайт, на котором много-много людей будет слушать потоковое аудио, да еще и у каждого — свой поток.
Помимо настроек на самом сервере, работа по созданию сервиса будет включать в себя следующие этапы:
Административные модули. Для этого используем:- JSF
- PrimeFaces
- Seam 3 (с недавних пор DeltaSpike)
- JPA (Hibernate)
- SpringMVC
- ThymeLeaf
- Less
- CoffeeScript
- AngularJS
- Bootstrap 3
- JPlayer
- IceCast
- LiquidSoap
Сервис ведения бизнес-процессов организации
SAAS для какого-нибудь вида деятельности и, в частности, API для различных систем. Подобные сервисы подразумевают наличие мобильных приложений-клиентов, должны масштабироваться и развиваться без переделки каких-либо частей комплекса. Для такого проекта мы будем использовать следующий инструментарий:
- JavaEE (6/7)
- RESTEasy
- JSF
- PrimeFaces
- Seam 3 (с недавних пор DeltaSpike)
- JPA (Hibernate)
- Less
- CoffeeScript
- AngularJS
- Bootstrap 3
- HTML5 + Canvas
- NodeJS
- Express
- MongoDB
- Jade
- CoffeeScript
- AngularJS
- Bootstrap 3
Тестирование
Для тестирования серверной части используем JUnit и Spting Test, для клиентской — встроенные средства тестирования AngularJS, QUnit.
***
Если же говорить об упомянутых системах управления контентом, то для сайтов с нетривиальным набором функций мы используем мегапопулярный «1С-Битрикс» и Host-CMS. Две эти системы позволяют развернуть на своих платформах гибкие в настройке и мощные интернет-магазины, легкие в управлении корпоративные сайты и лендинги.
Дизайн и верстка
Грамотно поставленный процесс разработки был бы не полным, если бы проектирование и дизайн велись по-старинке. Сейчас уже трудно представить, как мы жили без сервиса Project Parfait и динамического языка стилей Less. Время на верстку дизайна сократилось вдвое и с каждым новым проектом продолжает сокращаться, освобождая время на оптимизацию, разработку новых проектов и экономя деньги наших клиентов. Обсуждение инструментов самого проектирования и дизайна — уже тема других постов, и мы эти темы обязательно еще поднимем.