История и хронология
Языки программирования
ПО
Развитие программных систем
Интернет и современная разработка
100

Кого принято считать первым программистом в истории вычислительной техники?


Аду Лавлейс.


100

Какой язык высокого уровня был создан в 1950-х годах прежде всего для научных и инженерных вычислений?


FORTRAN

100

Какой код непосредственно выполняется процессором?


Машинный код.


100

Как называется операционная система, разработка которой началась в Bell Labs в 1969 году и которая сильно повлияла на современные операционные системы?


UNIX.


100

Кто предложил World Wide Web во время работы в CERN?


Тим Бернерс-Ли.


200

Для какой вычислительной машины Ада Лавлейс описывала алгоритмы?

Для Аналитической машины Чарльза Бэббиджа.


200

Для какого типа задач первоначально разрабатывался COBOL?


Для бизнес-приложений и обработки коммерческих данных: финансов, зарплат, документов, учётных операций.


200

Какое основное преимущество Assembly имеет перед непосредственным написанием машинного кода?


Использование мнемонических команд и символических обозначений, которые удобнее читать и писать человеку.


200

Что изменило распространение персональных компьютеров для программирования?


Компьютеры и программирование стали доступны значительно более широкой аудитории, а программное обеспечение стало массовым продуктом.


200

В чём принципиальная разница между Интернетом и World Wide Web?


Интернет — глобальная сетевая инфраструктура, соединяющая устройства и сети. World Wide Web — один из сервисов, работающих поверх Интернета и использующий веб-страницы, URL, HTTP и связанные технологии.


300

Как в ранних электронных компьютерах до распространения современных языков могли задаваться или изменяться программы?


С помощью переключателей, кабелей, коммутационных панелей, а позднее — машинных инструкций и других физических/низкоуровневых способов ввода.

300

Какой язык тесно связан с развитием операционной системы UNIX?


C

300

Что такое язык программирования высокого уровня?


Язык, позволяющий описывать алгоритмы и программную логику с более высоким уровнем абстракции от конкретных машинных инструкций и аппаратуры.


300

Что означает сокращение GUI?


Graphical User Interface — графический пользовательский интерфейс.


300

Какие три основные технологии являются фундаментом клиентской части современного Web?


HTML, CSS и JavaScript.


400

Расположите в правильном историческом порядке:

  • World Wide Web
  • FORTRAN
  • язык C
  • машинный код
  • Python

Машинный код → FORTRAN → C → World Wide Web → Python.


400

Назовите основное назначение JavaScript в развитии World Wide Web.


Добавление программной логики и интерактивности веб-страницам.


400

Какую задачу выполняет компилятор?


Преобразует исходный код программы в другую форму, обычно в машинный код или промежуточное представление, которое затем может быть выполнено.


400

Как появление GUI повлияло на разработку программ?


Программы стали активно использовать окна, кнопки, меню, мышь и события пользователя, что способствовало развитию событийно-ориентированного программирования.


400

Назовите минимум три изменения в разработке ПО, связанные с распространением смартфонов.


  • появление массовой мобильной разработки;
  • работа с сенсорным интерфейсом;
  • GPS;
  • камера;
  • мобильные уведомления;
  • датчики устройства;
  • магазины приложений;
  • необходимость учитывать ограниченные ресурсы мобильного устройства.
500

Назовите три крупных изменения в программировании, произошедших между 1940-ми и 1990-ми годами.


  • переход от машинного кода к языкам высокого уровня;
  • развитие операционных систем;
  • появление персональных компьютеров;
  • распространение GUI;
  • развитие объектно-ориентированного программирования;
  • появление World Wide Web.
500

Почему появление новых языков программирования не приводит автоматически к исчезновению старых?


Разные языки имеют разные области применения, преимущества, экосистемы и требования к производительности, безопасности и уровню контроля над системой. Кроме того, существует большое количество уже написанного программного обеспечения.

500

Объясните понятие «уровень абстракции» на примере перехода:

Machine Code → Assembly → High-Level Language



На каждом следующем уровне программисту требуется меньше работать непосредственно с аппаратными деталями. Язык предоставляет более понятные конструкции, а преобразование в низкоуровневые инструкции выполняют специальные инструменты.

500

Почему рост размера программ привёл к необходимости новых методов организации кода и командной разработки?


Большие программы стало невозможно эффективно разрабатывать и поддерживать как небольшой набор независимых инструкций. Потребовались архитектура, модульность, повторное использование кода, распределение ответственности и инструменты совместной разработки.

500

Как облачные технологии изменили разработку и эксплуатацию программного обеспечения?


Компании получили возможность использовать вычислительные ресурсы, базы данных, хранилища и другие сервисы без необходимости самостоятельно покупать и обслуживать всю физическую инфраструктуру.

M
e
n
u