Skip to content

andrew--r/SJSJ

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Логотип SJSJ

Упрощённый JavaScript-жаргон (англ. Simplified JavaScript Jargon, сокр. SJSJ) — это курируемая сообществом попытка объяснить простыми словами множество сложных терминов, используемых в текущей экосистеме JavaScript. Идея заключается не в замене документации, а в создании своеобразного словаря, на который можно легко ссылаться.

Этот репозиторий — перевод оригинального словаря. Если вы хотите принять участие в переводе, не стесняйтесь сделать пулл-реквест. Спасибо!

Связанные проекты

Словарь

A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z · Паттерны проектирования

A

  • AJAX (ая́кс, от англ. Asynchronous Javascript and XML — «асинхронный JavaScript и XML»): технология для совершения асинхронных HTTP-запросов.
  • AMD (от англ. Asynchronous Module Definition — «асинхронное определение модуля»): стандарт, описывающий асинхронную загрузку JavaScript-библиотек или модулей.
  • AngularJS: фреймворк для разработки динамических веб-приложений.
  • Apache Cordova (formerly PhoneGap): a popular mobile application development framework originally created by Nitobi.
  • Arity: the number of arguments of a function.

B

  • Babel: инструментарий для трансформации JavaScript-кода, изначально был транспилером кода ECMAScript 2015 / ES6.
  • Backbone: фреймворк для разработки динамических веб-приложений.
  • Bluebird: полнофункциональная библиотека для работы с промисами с фокусом на современных возможностях и производительности.
  • Bower: менеджер пакетов для фронтенд-зависимостей.
  • Broccoli: быстрый и надёжный файлопровод (англ. asset pipeline).
  • Browserify: инструмент, делающий возможным использование в браузере функции require из Node.js.
  • Brunch: инструмент для производства готовых к деплою файлов из исходного кода проекта.

C

  • Canvas: HTML-элемент для создания двумерных и трёхмерных графических приложений.
  • Chai: assertion-библиотека, обычно используемая вместе с фреймворками для тестирования.
  • Closure (рус. замыкание): функция, вложенная в другие функции и имеющая доступ к переменным из внешних функций; при этом все её внутренние переменные скрыты для внешних функций.
  • CoffeeScript: метаязык, компилируемый в JavaScript.
  • CommonJS: a project with the goal of specifying an ecosystem for JavaScript outside the browser (for example, on the server or for native desktop applications).
  • CORS (от англ. Cross-origin resource sharing — «кроссдоменной обмен ресурсами»): технология, позволяющая предоставлять веб-странице доступ к ресурсам другого домена.
  • CouchDB: NoSQL база данных, использующая JavaScript как язык запросов и HTTP как API.
  • Currying (рус. каррирование, карринг): процесс преобразования функции с несколькими аргументами в цепочку функций с одним аргументом.

D

  • D3.js: библиотека для обработки и визуализации данных.
  • Design Patterns: a general reusable solution to a commonly occurring problem within a given context in software design.
  • DOM (от англ. Document Object Model — «объектная модель документа»): не зависящий от платформы и языка программирования интерфейс, который позволяет программам и скриптам динамически получать доступ к документу и обновлять его содержимое, структуру и стили.

E

  • ECMAScript: стандартизованная спецификация скриптового языка, используемая в JavaScript.
  • Ember: an application framework based on the model-view-controller pattern.
  • ESLint: анализатор JavaScript-кода.
  • Express: быстрый минималистичный фреймворк для разработки веб-приложений на Node.js.
  • Ext JS: a pure JavaScript application framework for building interactive cross platform web applications.

F

  • Falcor: a JavaScript library for efficient data fetching.
  • Flux: структура приложения с фокусом на улучшенном потоке данных.
  • Four: a framework to develop 3D content for the web.

G

  • Grunt: таск-менеджер, автоматизирующий рутинные и, возможно, сложные действия.
  • Gulp: таск-менеджер, автоматизирующий рутинные и, возможно, сложные действия.

H

  • Hapi: a Node.js framework for writing services and more.
  • Hoisting (рус. поднятие): поднятие JavaScript-интерпретатором объявлений функций и переменных в верх их области видимости.

I

  • IIFE (от англ. Immediately-Invoked Function Expression — «немедленно вызываемая функция»): функция, вызываемая сразу же после своего описания.
  • Isomorphic (рус. изоморфный): приложение, которое может выполняться как на сервере, так и на клиенте.

J

  • Jasmine: a testing framework for BDD (Behaviour-Driven Development).
  • jQuery: библиотека для работы с DOM и AJAX.
  • jQuery UI: официальная библиотека jQuery для создания пользовательских интерфейсов.
  • JSCS: a JavaScript code linter.
  • JSHint: a JavaScript code linter.
  • JSLint: a JavaScript code linter.
  • JSON (от англ. JavaScript Object Notation — «объектное представление Javascript»): легковесный формат обмена данными.
  • JSONP (англ. JSON Padding — «JSON с подкладкой»): to be completed.
  • JSON-LD (англ. JSON for Linked Data — «JSON для связанных данных»): to be completed.
  • JSX: расширение языка для использования XML-подобного синтаксиса в JavaScript.

K

  • Knockout: a library that helps developers creating user interfaces with a clean underlying data model.

L

  • LocalForage: a fast and simple storage library for JavaScript.
  • LoDash: библиотека, предоставляющая набор утилит для работы с объектами, массивами и функциями.

M

  • Memoize: an optimization used to speed up consecutive function calls by caching the result of calls with identical input.
  • Meteor: JavaScript веб-фреймворк позволяющий вести быструю прототипную веб-разработку.
  • Mocha (рус. мо́ка): расширяемый BDD/TDD фреймворк для тестирования
  • Modernizr: a browser feature detection library, useful to modify page styles when a feature is not available in the browser.
  • Moment.js: библиотека для работы с датами и временем в JavaScript.
  • MongoDB: документо-ориентированная база данных NoSQL, использующая JavaScript как язык запросов.
  • Mootools: a collection of JavaScript utilities designed for the intermediate to advanced JavaScript developer. It allows you to write powerful and flexible code with its elegant, well documented, and coherent APIs.
  • Metalsmith: простой модульный генератор статических сайтов.
  • MEAN: технологический стек (набор ПО), используемый преимущественно для разработки веб-сервисов. Название образовано от первых букв инструментов, которые в него входят (MongoDB, Express.js, Angular.js, Node.js).

N

  • Nightmare: a high-level browser automation library.
  • NightwatchJS: a framework for browser automated testing.
  • Node.js: кросcплатформенная среда выполнения на движке V8, предназначенная для разработки серверных приложений.
  • npm (от англ. node.js package manager — «менеджер пакетов Node.js»): инструмент для публикации и установки пакетов через npm-репозитории.
  • nvm (от англ. node.js version manager — «менеджер версий Node.js»): инструмент для запуска разных версий Node.js на одном и том же компьютере.

P

  • Partial Application: to be completed.
  • PhantomJS: a scripted, headless browser used for automating web page interaction.
  • Polymer: библиотека от Google для создания веб-компонентов.
  • Promise: специальный объект для работы с результатами выполнения асинхронного кода, получаемыми в неизвестный момент времени.
  • Prototype (ООП): to be completed.
  • Prototype.js: a JavaScript framework that aims to ease development of dynamic web applications. It offers a familiar class-style OO framework, extensive Ajax support, higher-order programming constructs, and easy DOM manipulation.

Q

  • QUnit: a powerful, easy-to-use JavaScript unit testing framework.
  • Q: библиотека для работы с промисами.

R

  • Ramda: a practical functional library for Javascript programmers.
  • React: библиотека для создания пользовательских интерфейсов, разработанная и используемая в Facebook.
  • Redux: a predictable state container for apps.
  • RxJS: a library for asynchronous programming using observable streams.
  • Require.js: a browser based module loader using AMD.

S

  • Sails: Node.js MVC-фреймворк для создания приложений, работающих в режиме реального времени.

T

  • Three.js: небольшая библиотека для создания и отображения анимированой 3D-графики в браузере.
  • TypeScript: надмножество языка JavaScript, добавляющее поддержку использования классов, статического назначения типов.

U

  • UMD (от англ. Universal Module Definition): паттерн универсального объявления модулей для JavaScript.
  • Underscore: библиотека, предоставляющая набор утилит для работы с объектами, массивами и функциями.
  • Universal (рус. универсальный): приложение, которое может выполняться как на сервере, так и на клиенте.

V

  • V8: движок JavaScript с открытым исходным кодом, разрабатываемый Google. Это тот движок, который работает в Chrome, но он также используется для других проектов вроде Node.js и MongoDB.
  • Vanilla: название для чистого JavaScript, без использования библиотек/фреймворков.
  • Virtual DOM (рус. виртуальная DOM): копия DOM, с которой разработчик производит необходимые ему манипуляции. Хранится в оперативной памяти, за счёт чего манипуляции производятся быстрее, чем при прямом обращении к DOM.
  • VueJS: библиотека для разработки интерфейсов, основанная на моделях данных.

W

  • WebGL (от англ. Web Graphics Library — «графическая библиотека для Web»): JavaScript API для отрисовки интерактивной 3D и 2D графики, работающий в современных браузерах.
  • Webpack: менеджер зависимостей с дружественным и быстрым окружением для разработки, упрощающий множество распространённых задач.

X

  • XML (от англ. eXtensible Markup Language — «расширяемый язык разметки»): to be completed.
  • XMLHttpRequest: API, который предоставляет возможность обмениваться данными между клиентом и сервером.

Y

  • Yeoman: инструмент для автоматизации генерации шаблонных частей проекта.

Z

  • Zepto: легковесный клон jQuery, не содержащий дополнительного кода для обеспечения браузерной совместимости.

### Паттерны проектирования

  • [Adapter Pattern](/glossary/ADAPTER_PATTERN.md "Паттерн "Адаптер""): to be completed.
  • [Builder Pattern](/glossary/BUILDER_PATTERN.md "Паттерн "Строитель""): to be completed.
  • [Command Pattern](/glossary/COMMAND_PATTERN.md "Паттерн "Команда""): to be completed.
  • [Composite Pattern](/glossary/COMPOSITE_PATTERN.md "Паттерн "Компоновщик""): to be completed.
  • [Constructor Pattern](/glossary/CONSTRUCTOR_PATTERN.md "Паттерн "Конструктор""): to be completed.
  • [Decorator Pattern](/glossary/DECORATOR_PATTERN.md "Паттерн "Декоратор""): to be completed.
  • [Facade Pattern](/glossary/FACADE_PATTERN.md "Паттерн "Фасад""): a software design pattern commonly used with object-oriented programming. The name is by analogy to an architectural facade.
  • [Factory Pattern](/glossary/FACTORY_PATTERN.md "Паттерн "Фабрика""): a creational pattern that uses factory methods to deal with the problem of creating objects without having to specify the exact class of the object that will be created.
  • [Flyweight Pattern](/glossary/FLYWEIGHT_PATTERN.md "Паттерн "Приспособленец""): to be completed.
  • [Iterator Pattern](/glossary/ITERATOR_PATTERN.md "Паттерн "Итератор""): to be completed.
  • [Lazy Initialization Pattern](/glossary/LAZY_INITIALIZATION_PATTERN.md "Паттерн "Ленивая инициализация""): to be completed.
  • [Mediator Pattern](/glossary/MEDIATOR_PATTERN.md "Паттерн "Медиатор", он же "Приспособленец""): an object that encapsulates how a set of objects interact.
  • [Mixin Pattern](/glossary/MIXIN_PATTERN.md "Паттерн "Примесь""): to be completed.
  • [Module Pattern](/glossary/MODULE_PATTERN.md "Паттерн "Модуль""): a design pattern used to implement the concept of software modules, defined by modular programming, in a programming language with incomplete direct support for the concept.
  • [Observer Pattern](/glossary/OBSERVER_PATTERN.md "Паттерн "Наблюдатель""): a software design pattern in which an object, called the subject, maintains a list of its dependents, called observers, and notifies them automatically of any state changes, usually by calling one of their methods.
  • [Prototype Pattern](/glossary/PROTOTYPE_PATTERN.md "Паттерн "Прототип""): a creational design pattern in software development. It is used when the type of objects to create is determined by a prototypical instance, which is cloned to produce new objects.
  • [Proxy Pattern](/glossary/PROXY_PATTERN.md "Паттерн "Прокси""): to be completed.
  • [Revealing Module Pattern](/glossary/REVEALING_MODULE_PATTERN.md "Паттерн "Открытый модуль""): a design pattern conceptually based on the Module Pattern. The only difference is that the revealing module pattern was engineered as a way to ensure that all methods and variables are kept private until they are explicitly exposed.
  • [Revealing Prototype Pattern](/glossary/REVEALING_PROTOTYPE_PATTERN.md "Паттерн "Открытый прототип""): to be completed.
  • [Singleton Pattern](/glossary/SINGLETON_PATTERN.md "Паттерн "Синглтон", он же "Одиночка""): a design pattern that restricts the instantiation of a class to one object.

## Экспорт терминов в JSON

Этот репозиторий содержит небольшой Node.js-скрипт, экспортирующий все термины в JSON. Для использования скрипта клонируйте репозиторий и выполните следующие команды:

npm install
npm run export -- data.json

About

Упрощённый JavaScript-жаргон

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%