Оглавление
Программирование на основе прототипов
-
Основы программирования на основе прототипов
- Прототипы – это объекты, которые служат шаблонами для создания новых объектов.
- Прототипы могут быть изменены во время выполнения программы, что отличает их от статически типизированных языков.
-
Создание объектов
- В языках на основе прототипов объекты создаются путем клонирования существующих или создания новых объектов ex nihilo.
- В языках, основанных на классах, новые объекты создаются с помощью функции конструктора класса.
-
Клонирование и делегирование
- Клонирование позволяет создавать новые объекты с поведением существующих, в то время как делегирование обеспечивает автоматическое распространение изменений в клонированных объектах.
- В конкатенативном прототипировании изменения в прототипе не отражаются в клонированных объектах, что может быть как преимуществом, так и недостатком.
-
Критика и распространение
- Критика языков на основе прототипов связана с вопросами корректности, безопасности, предсказуемости, эффективности и знакомства разработчиков с ними.
- Несмотря на критику, языки на основе прототипов становятся все более популярными благодаря распространению JavaScript и его фреймворков.
-
Список языков
- В статье перечислены различные языки программирования, поддерживающие прототипы, включая ABCL, ActionScript, ECMAScript, Io, и другие.
Полный текст статьи: