Словарь программиста
Те слова, которые часто спрашивают на собеседованиях..
Так то ими ты можешь пользоваться, просто не знать, как это называется..
Функция
Фрагмент программного кода (подпрограмма), к которому можно обратиться из другого места программы. Функция может принимать параметры и должна возвращать некоторое значение, возможно void.
Метод
Это функция или процедура, принадлежащая какому-то классу или объекту.
Процедуры
Те же функции, которые ничего не возвращают (void).
Полиморфизм
Способность функции обрабатывать данные разных типов.
Пример: можешь передать функции как число, как строку, так массив и она всё это нормально обработает..
Инкапсуляция (в js замыкания)
Размещение в одном компоненте данных и методов, которые с ними работают.
Для других компонентов ограничение доступа к ненужным функциям/методам.
Типы языков программирования:
Императивные (C, C++, Java)
Это описание того, как ты делаешь что-то.
Пример: Официант, возьми в руку листок и ручку, запиши на листке ручкой слово "бургер", повернись к кухне, иди до кухни, пока не будешь на расстоянии от неё на вытянутую руку, возьми там бургер, развернись в мою сторону, иди вперёд пока не будешь на расстоянии вытянутой руки от меня, отдай мне бургер..
Декларативные (SQL, HTML)
Описание того, что ты делаешь.
Пример: Официант, принеси мне бургер.
Смешанные (могут быть таковыми) JavaScript, C#, Python.
Динамическое программирование
способ решения сложных задач путём разбиения их на более простые подзадачи.
Часто многие из этих подзадач одинаковы. Подход динамического программирования состоит в том, чтобы решить каждую подзадачу только один раз, сократив тем самым количество вычислений. Это особенно полезно в случаях, когда число повторяющихся подзадач экспоненциально велико.