Обратите внимание, что первая половина книги основана, в основном, на абстрактных примерах, тогда как вторая половина - на конкретных примерах. Книга делиться на две части - Prototype и script.aculo.us: в первой описывается богатый набор API, в то время как во второй части - использование этого API с пользовательским интерфейсом (UI).
В первой части книги описываются способы, которыми Prototype может улучшить, создаваемый вами код. Во второй части описываются способы применения этих возможностей в собственных веб-приложениях.
Происхождение Prototype покрыто тайной, подобной Стоунхенджу, свиткам Мертвого моря (the Dead Sea scrolls), и самой Вселенной. Возможно это преувеличение.
Версия 1.0 Prototype была выпущена в марте 2005 года. Описание библиотеки в файле README было следующим:
"Prototype - библиотека JavaScript, служащая облегчить создание динамических веб-приложений. Его разработка основана на управлении в среде Ruby on Rails, но может использоваться в любой другой среде."
Хотя Prototype значительно развился за последние три года, это резюме все еще отлично подходит к нему.
Первая версия Prototype была очень маленькой. Она содержала несколько методов для удобства, благодаря которым Prototype стал известным, но большинство его строк кода (примерно 335) были спроектированы, чтобы упростить взаимодействие форм и технологии Ajax.
С тех пор, область ее применения расширилась, но философия не изменилась. Не существует ни манифеста, ни формулировки задачи, есть только горстка правил, ведущих этот проект:
Правило наименьшей неожиданности (The principle of least surprise): Популяризированный Якихиро Мацумото (Yukihiro Matsumoto), создателем Ruby, он заявляет, что язык, фреймворк или библиотека должны всегда делать "ожидаемые" вещи; они должна вести себя способом, который ожидает пользователь. Prototype отвечает этому правилу, поскольку является интуитивно понятным и простым в изучении.
10