Программа с помощью которой пользователь взаимодействует www серверами

Аннотация: Стандарт CGI. Сценарии. Сценарные языки: классификация по быстродействию. Язык Python. Язык Ruby.

Технология ASP. Интерфейс ISAPI.

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

Плагин ( plug — in) — независимо компилируемый программный модуль , динамически подключаемый к основной программе, предназначенный для расширения или использования ее возможностей. Обычно выполняются в виде разделяемых библиотек.

Сценарий ( скрипт, script ) — программа , которая автоматизирует некоторую задачу, которую пользователь выполняет вручную, используя интерфейсы программы.

Стандарт CGI

Круг задач, решаемых Web-сервером, ограничен. В основном он сводится к поддержке НТТР-взаимодействия и доставке клиенту Web-документов. Любые «нестандартные» действия реализуются с помощью специальной программы, которая взаимодействует с веб-сервером и клиентом. Это взаимодействие подчиняется определенным правилам.

КАК ОНИ РАБОТАЮТ??? САЕДИНЕНИЕ FRONTEND И BACKEND ВМЕСТЕ

Основной набор таких правил — стандарт CGI (Common Gateway Interface — интерфейс общего шлюза), который определяет порядок запуска программы на компьютере-сервере, способы передачи программе параметров и доставки результатов ее выполнения клиенту. Программа , написанная по правилам CGI , называется CGI -сценарием ( script CGI ), хотя это не означает, что на сервере не может выполняться двоичный файл .

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

Выполнение любой программы (в том числе CGI -сценария) можно условно разделить на пять этапов.

  1. Запуск программы.
  2. Инициализация и чтение выходных данных.
  3. Обработка данных.
  4. Вывод результатов выполнения.
  5. Завершение программы.

Различия между CGI -сценарием и консольным приложением касаются первого, второго и четвертого этапов выполнения.

Каждый раз, когда веб-сервер получает запрос от клиента, он анализирует содержимое запроса и возвращает соответствующий ответ:

  • Если запрос содержит указание на файл, находящийся на жестком диске, то сервер возвращает в составе ответа этот файл ;
  • Если запрос содержит указание на программу и необходимые для нее аргументы, то сервер исполняет программу и результат ее работы возвращает клиенту.
  • каким образом информация о сервере и запросе клиента передается программе в форме аргументов и переменныхокружения ;
  • каким образом программа может передавать назад дополнительную информацию о результатах (например о типе данных) в форме заголовков ответа сервера.

В подавляющем большинстве случаев запуск CGI -сценария осуществляется щелчком на кнопке Submit , сформированной с помощью дескриптора , который находится на HTML -странице между и . Не зная назначения атрибутов action и method , невозможно понять, как происходит вызов программы и передача параметров .

Socket или как создать собственный сервер на Python в домашних условиях #1 | Базовый курс Python

Значением атрибута action дескриптора является URL файла, содержащего код CGI -сценария. Так, приведенное ниже выражение означает, что файл с кодом CGI -сценария находится на сервере www.myhp.edu в каталоге cgi-bin в файле script.рl .

Как веб- сервер различает, что надо сделать с файлом, на который указывает URL , — передать его содержимое клиенту или запустить файл на выполнение? Существует два способа распознавания файлов, содержащих тексты CGI -сценариев.

  • Первый способ заключается в том, что при установке веб-сервера один из каталогов специально выделяется для хранения сценариев. Обычно такой каталог получает имя cgi-bin (или Scripts для веб-сервера IIS). В этом случае, если клиент запрашивает файл из каталога cgi-bin , сервер воспринимает такой запрос как команду на запуск сценария. Файлы из других каталогов интерпретируются как HTML-документы.
  • Второй способ использует расширение файла. При настройке сервера указывается, что файлы с определенными расширениями содержат коды сценариев.

Идентификация по расширению используется относительно редко. Чаще всего все сценарии помещаются в cgi-bin , /Scripts или в другой каталог, специально выделенный для их хранения.

Вывод результатов выполнения CGI -сценария осуществляется чрезвычайно просто. Для того чтобы данные были переданы клиенту, достаточно вывести их в стандартный выходной поток . Однако, разрабатывая CGI — сценарий , не следует забывать о том, что он все же отличается от консольной программы и имеет следующие особенности.

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

НТТР/1.0 200 OK

Формирование информационных полей, входящих в состав заголовка, — задача сценария. Чтобы данные, переданные сценарием, были правильно интерпретированы клиентом, необходимо, чтобы в заголовке присутствовало как минимум поле Content-type . За заголовком должна следовать пустая строка. При отсутствии полей заголовка реакция браузера будет непредсказуемой. В подобных случаях браузер обычно пытается отобразить полученную информацию как текстовый файл .

Самый естественный формат для браузера — формат HTML . Результаты работы сценария обычно оформляются в виде веб-страницы, т.е. возвращаемые данные следует дополнить дескрипторами HTML . Таким образом, ответ CGI -сценария клиенту обычно выглядит так:

Content-type: text/html ответ сценария ……………………

Обратите внимание на пустую строку после выражения Content-type: text/html . Она обязательно должна присутствовать в ответе, в противном случае клиент воспримет все последующие данные как продолжение заголовка.

После компиляции программы необходимо скопировать исполняемый файл в каталог cgi-bin (или в другой каталог, предназначенный для размещения исполняемых файлов) из которого он может запускаться веб-сервером на выполнение по запросу клиента.

Читайте также:
Как перенести установленные программы с диска на диск

Для вызова данного сценария достаточно включить в веб-страницу следующий фрагмент HTML -кода:

Если сценарий вызывается из формы, ему передаются те данные, которые пользователь ввел с помощью интерактивных элементов, отображаемых на веб-странице — передача информации CGI -сценарию осуществляется в два этапа: сначала браузер передает данные веб-серверу, затем веб- сервер передает их сценарию.

В большинстве случаев кроме кнопки Submit форма содержит другие интерактивные элементы, каждый из которых имеет имя ( атрибут NAME ) и значение ( атрибут VALUE , либо последовательность символов, введенная пользователем). Из имен элементов и их значений формируется строка параметров, которая имеет следующий формат.

имя=значение . . . . Если в состав имени или значения входит символ » или » = «, то подобные символы кодируются последовательность знака процента » % «, за которым следуют две шестнадцатеричные цифры, определяющие код символа . Так, например, последовательностью » %21 » кодируется восклицательный знак » !». Как правило, при передаче параметров трехсимвольными последовательностями заменяются все знаки, кроме латинских букв, цифр и символа пробела (последний заменяется знаком » + «).

Таким образом, перед использованием строки параметров ее надо декодировать. Алгоритм декодирования чрезвычайно прост и включает в себя следующие действия:

  • Выделить из строки параметров пары имя = значение .
  • Выделить из каждой пары имя и значение.
  • В каждом имени и каждом значении заменить символы » + » пробелами.
  • Каждую последовательность из символа » % » и двух шестнадцатеричных и преобразовать в ASCII-символ.

Атрибут method дескриптора имеет либо значение » GET «, либо значение » POST «. Значения » GET » и » POST » определяют два различных метода передачи параметров сценарию:

  • Если атрибут method имеет значение » GET «, строка параметров передается вместе с URL вызываемого сценария. Разделителем между URL и строкой параметров является символ » ?».
  • Если атрибут method имеет значение » POST «, строка параметров передается в теле HTTP-запроса.

Рассмотрим, как должен вести себя CGI — сценарий , чтобы правильно обработать данные в зависимости от метода, использованного при передаче данных, строка параметров доставляется CGI -сценарию различными способами.

Если атрибут METHOD дескриптора имел значение » GET «, строка параметр передается серверу в качестве значения переменной окружения QUERY_STRING .

При использовании метода POST данные доставляются сценарию по-другому. Они передаются через стандартный поток ввода (STDIN). Чтобы сценарий смог определить, сколько символов следует читать из стандартного ввода, веб- сервер устанавливает значение переменной окружения CONTENT_LENGTH , равным длине строки параметров.

Получив управление, сценарий в первую очередь должен выяснить, с помощью какого метода выполнялась передача параметров . Эта информация содержится в переменной окружения REQUEST_METHOD .

Таким образом, в простейшем случае, чтобы выполнить обработку строки параметров, достаточно знать назначение трех переменных окружения: REQUEST_METHOD , QUERY_STRING и CONTENT_LENGTH .

Пример сценария на языке Perl, который возвращает клиенту строку параметров, приведен ниже. Сценарий определяет, какой метод использовался для передачи данных, читает строку параметров и передает ее клиенту, предварительно дополнив HTML -дескрипторами.

$method = $ENV; if ($method eq «GET») < $pars = $ENV; > else < $length =$ENV; > read (STDIN, $pars, $ length); print «Content-type: text/htmlnn»; print «n»; print «METHOD = «, $method; print «String of parameters: n»; print $pars; print «n»;

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

REMOTE_ADDR IP-адрес узла, с которого поступил запрос
REMOTE_HOST Доменное имя узла, с которого поступил запрос
SERVER_PORT Номер порта, который использовался при обращении к серверу
SERVER_SOFTWARE Имя и версия сервера, посредством которого был запущен сценарий
SERVER_NAME Имя или адрес узла, на котором выполняется сервер
SERVER_PROTOCOL Название и версия протокола, с помощью которого был передан запрос
HTTP_USER_AGENT Клиентская программа, отправившая запрос серверу
HTTP_REFERER URL документа, отображаемого браузером при вызове сценария

Сценарии

К основным достоинствам разработки приложений на стороне веб-сервера в форме сценариев можно отнести следующие:

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

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

В плане быстродействия сценарные языки можно разделить на:

  • Языки динамического разбора (например, command.com). Интерпретатор считывает инструкции из файла программы минимально требующимися блоками, и исполняет эти блоки, не читая дальнейший код.
  • Предварительно компилируемые (например Perl). Вначале считывается вся программа, затем компилируется либо в машинный код, либо в один из внутренних форматов, после чего получившийся код исполняется.

В рассмотрим кратко наиболее известные языки разработки сценариев для веб- приложений.

Источник: intuit.ru

Клиент-серверное и межсервисное взаимодействие: разбираемся в REST, GraphQL, RPC и WebSocket

Привет всем! Меня зовут Андрей, и я разработчик. На своей практике я успел столкнуться с разными протоколами. И, конечно же, были холивары в команде — какой и почему выбрать. Адепты подхода REST спорят с GraphQL-щиками.

А поклонники gRPC тихо смеются над ними. Давайте все разложим по полочкам.

Читайте также:
1с розница как работать в этой программе

В зависимости от системы, ограничений и личных предпочтений команды понадобятся самые разные способы общения и передачи данных. REST, GraphQL, RPC и другие — сегодня разберемся во всем многообразии протоколов, где и зачем они используются.

Что такое протокол?

Простыми словами, это общепринятый способ / формат общения систем между собой. Протоколов довольно много — протоколы общения с устройствами (USB, Bluetooth), протоколы межпроцессного взаимодействия (IPC), протоколы взаимодействия с удаленными компьютерами (SSH, FTP), протоколы отправки и получения почты (SMTP, POP3). Мы будем говорить только о веб-протоколах — способах общения фронтенда (мобильный или веб-клиент) с бэкендом или сервисов между собой.

Большинство веб-протоколов работают поверх HTTP. Прежде чем говорить о других протоколах, расскажем, на основе чего они все строятся и работают:

Примечание: мы не будем разбирать модель TCP/IP, на которой работает сеть Интернета. Для рассмотрения протоколов передачи данных достаточно понимать, что HTTP работает поверх TCP/IP. Если вам стало интересно, то по ссылке можете углубиться в эту тему.

Введение: как работает протокол HTTP

В разработке основным протоколом передачи данных является HTTP. Он относится к прикладным протоколам и работает поверх других протоколов сетевого стека. HTTP — это простой текстовый протокол для передачи любого контента. Изначально разработан для передачи HTML-файлов (в те времена, когда HTML был языком разметки научной и технической документации в CERN).

Как правило, в вебе мы используем надстройки поверх протокола. HTTP работает поверх TCP — один из транспортных протоколов, который определяет, как данные будут передаваться от компьютера к компьютеру. В случае с TCP «отправитель» будет ожидать ответа, что «получатель» принял пакет, прежде чем отправить следующий. Если «отправитель» не дождался подтверждения — отправит пакет еще раз.

Для передачи данных используются HTTP-пакеты. Сам пакет в HTTP представляет собой текстовое сообщение со следующей структурой:

  • HTTP-метод — это глагол, который определяет, какую операцию мы хотим выполнить (GET, POST, PUT и т.д.);
  • Путь — URL до необходимого нам ресурса;
  • Версия протокола — чаще всего указывается HTTP/1.1;
  • Заголовки — дополнительные параметры запроса, которые нужны серверу;
  • Тело запроса — данные, которые мы хотим передать.

Например, выполним POST-запрос на создание пользователя Вася, который не является администратором в системе. Причем укажем, что данные передаются в формате JSON, а ответ мы ожидаем на русском языке.

POST /users HTTP/1.1 Content-Type: application/json Accept-Language: ru

Эти термины пригодятся, когда мы будем говорить о других протоколах. Без контекста HTTP непонятно, что такое пути, заголовки, тело и статусы ответов. Часть протоколов использует все, а часть нет.

Начнем мы с одного из старейших подходов в вебе — REST, который использует все возможности HTTP. Потом пройдемся по GraphQL, которому предрекали судьбу полностью вытеснить REST. Далее посмотрим на семейство RPC-протоколов. И WebSocket — альтернативный подход во взаимодействии с бэкендом, ориентированный на постоянную связь клиента и сервера.

REST

REST — Representational state transfer — архитектурный подход, который описывает набор правил, как организовать общение систем. У данного подхода есть ряд требований — отсутствие состояния, единообразие интерфейсов. В простом понимании это URI, который описывает, что за ресурс мы запрашиваем: список элементов или один элемент. Кроме того, используются HTTP-глаголы или HTTP-методы — какие действия мы произведем с ресурсом.

Методов достаточно много. Как правило, мы имеем дело с:

  • POST /users для создания нового пользователя;
  • GET /users для получения списка пользователей;
  • GET /users/1 для получения одного пользователя с
  • PUT или PATCH /users/1 для изменения пользователя;
  • DELETE /users/1 для удаления.

В ответе от сервера мы получаем запрошенный ресурс / сообщение об ошибке и трехзначный код ответа. Код ответа показывает, что произошло с запросом пользователя и что, в случае ошибки, пошло не по плану. Например:

  • 200 – запрос выполнен успешно;
  • 401 – необходимо авторизоваться;
  • 404 – ресурс не найден;
  • 505 – сервер временно недоступен.

С приходом JSON, как основного формата общения, требования к системам начали расти. Росли и требования к REST. Так появилась спецификация HATEOAS — дополнение требований. Теперь вместе с возвращаемым ресурсом мы можем получить информацию о том, какой набор действий предоставлен пользователю с этими ресурсами. Так, если мы делаем запрос GET /users , то получим список пользователей и:

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

Но и эта система получила дальнейшее развитие в лице JSON:API. Подход в свое время получил приз зрительских симпатий в категории «Название, которое максимально неудобно гуглить». Изначально этот формат использовался во фреймворке Ember для общения с бэкендом. Потом был опубликован отдельной спецификацией:

  • в JSON:API была добавлена группировка GET-параметров по смыслу. Вместо page_size и page_number предлагалось использовать page[size] и page[number] или page[offset] ;
  • предлагался единый формат ответа:
    ;
  • добавлен единый формат самих ресурсов:
    ;
  • поддержка зависимых ресурсов, что помогало получать несколько связанных ресурсов в одном запросе, а не частями. Пользователя можно получить вместе с его постами, а посты — с комментариями.

Так REST развился до современного состояния. Решения на основе HATEOAS или JSON:API используются не везде и не всегда. Пока что REST-подход остается наиболее распространенным в современном вебе. Хотя в один момент даже начали говорить о его скорой смерти.

GraphQL

В 2015 году Facebook опубликовал свой новый язык общения фронтенда с бэкендом. Уже к 2019 году некоторые веб-разработчики начали говорить, что GraphQL вытеснит REST.

Читайте также:
Какая программа на Айфоне для скачивания музыки бесплатная

GraphQL больше язык запросов, чем протокол. Но его стоит рассматривать как протокол. Так как с его помощью предлагается общаться с бэкендом.

В отличие от REST, у нас есть единая точка доступа к приложению — /graphql . На нее мы отправляем все наши запросы. Язык позволяет писать запросы к ресурсам в виде графа зависимостей, где зависимостью может быть поле или связанная сущность:

тесты. Всемирная паутина Телеконференция Локальная сеть

Единственный в мире Музей Смайликов

Самая яркая достопримечательность Крыма

Скачать 0.9 Mb.

    1. Первым заместителем главы государства
    2. Министерством обороны
    3. Главой государства
    4. Министерством образования
    5. Странами-союзниками
      1. 12 апреля 2007 года
      2. 31 декабря 2001 года
      3. 5 мая 2011 года
      4. 10 ноября 2004 года
      5. 6 сентября 2012 года

      Какой вид имеет кнопка Сортировка в тестовом процессоре MS Word?

      1. Какую функцию выполняет кнока панели инструментов Рецензирование?
      1. Открытие области задач «Справочные материалы» для поиска по справочным материалам и перевода
      2. Подсчет числа слов, знаков, абзацев и строк в документе
      3. Подбор синонимов для выделенного слова
      4. Проверка орфографии и грамматики в тексте документа
      5. Отслеживание всех изменений, внесенных в документ, включая вставки, удаления и изменения форматирования
      1. Какую функцию выполняет кнока панели инструментов Разметка страницы?
      1. Выбор размера бумаги для текущего раздела
      2. Подсчет числа слов, знаков, абзацев и строк в документе
      3. Пометка области листа для печати
      4. Проверка орфографии и грамматики в тексте документа
      5. Выбор книжной или альбомной ориентации страниц
        1. Можно, если задать номера листов при создании книги в диалоговом окне Рабочие листы
        2. Нельзя, Excel позволяет только с одним листом
        3. Верны ответы пунктов а) и г)
        4. Можно, если активизировать листы с помощью клавиш Ctrl или Shift
        5. Можно, если в начале работы с Excel удалить лишние листы и использовать пункт меню Окно — Расположить
        1. С помощью заголовка столбца
        2. С помощью меню Правка – Выделить — Столбец
        3. С помощью пункта контекстного меню Выделить — Столбец
        4. Верны ответы пунктов б) и в)
        5. Все ответы неверны
        1. С помощью функциональной кнопки F3
        2. Установить курсор в ячейку и редактировать ее содержимое
        3. С помощью функциональной кнопки F2
        4. C помощью контекстного меню Исправить
        5. C помощью строки состояния
        1. Текст, число, формула
        2. Текст, число
        3. Текст, формула, дата
        4. Текст, формула
        5. Формула, дата, число
        1. Адрес ячейки, который меняется при перемещении формул
        2. Адрес ячейки, который не меняется при перемещении формул
        3. Адрес ячейки, который присваивается пользователем
        4. Адрес ячейки, обозначенный буквами русского алфавита
        5. Адрес ячейки, обозначенный буквами русского и латинского алфавитов вперемешку
        1. Определяет текущее число и время ( дд.мм.гг чч: мин: сек)
        2. Определяет текущее время (чч;мин;сек)
        3. Определяет текущее число (дд;мм;гг)
        4. Определяет текущее состояние оперативной памяти (00)
        5. Определяет текущий день недели (дд)
        1. Адрес ячейки не меняется
        2. Адрес ячейки полностью меняется
        3. Меняется только номер строки
        4. Меняется только заголовок столбца
        5. Копирование формулы с таким адресом в другие ячейки невозможна
        1. С помощью пункта меню Правка – Выделить все
        2. С помощью прямоугольника расположенного в верхнем левом углу листа
        3. С помощью комбинации клавиш CTRL+SHIFT
        4. С помощью меню Вставка — Лист- в диалоговом окне указать выделяемый лист
        5. Все ответы не верны
          1. # ДЕЛ/0
          2. #ИмЯ
          3. #ЗНАЧ
          4. ####
          5. ###0
          1. Для того, чтобы при копировании формулы = В4*G1 на В5:В15 значение ячейки G1 не изменялось, ссылка на ячейку должна быть:
          1. Относительной
          2. Внешней
          3. Смешанной
          4. Абсолютной
          5. Обычной
          1. Какая из нижеуказанных записей является формулой:
          1. ? F2+C$3*F7
          2. =F2+C3.F7
          3. F2+$C$3*F7
          4. =F2+$C$3*F7
          5. =F:2+$C$3*F:7

          Вид

          1. Выбор макета слайда в программе Power Point осуществляется с помощью команд
          1. Дизайн – Параметры страницы
          2. Формат – Цветовая схема слайда
          3. Вставка – Дублировать слайд
          4. Правка – Специальная вставка
          5. Рецензирование – Разметка слайда
          1. Цвет шрифта
          2. Тип линии
          3. Тип штриха
          4. Цвет линий
          5. Цвет заливки линии
          1. Конструктор и шаблоны в программе Power Point предназначены для

          Облегчения операций по оформлению слайдов

          1. Главная / Цвет заливки
          2. Главная / Тень
          3. Формат / Эффекты фигур
          4. Формат / Контур текста
          5. Формат / Текстовые эффекты

          Что такое Power Point ?

          1. Прикладная программа Microsoft Office, предназначенная для создания презентаций
          2. Прикладная программа для обработки кодовых таблиц
          3. Устройство компьютера, управляющее его ресурсами в процессе обработки данных в табличной форме
          4. Системная программа, управляющая ресурсами компьютера
          5. Такой программы нет
          1. Power Point нужен для создания
          1. Таблиц с целью повышения эффективности вычисления формульных выражений
          2. Текстовых документов, содержащих графические объекты
          3. Internet – страниц с целью обеспечения широкого доступа к имеющейся информации
          4. Презентаций с целью повышения эффективности восприятия и запоминания информации
          5. Изображений и графиков

          Что такое презентация PowerPoint?

            1. Демонстрационный набор слайдов, подготовленных на компьютере
            2. Прикладная программа для обработки электронных таблиц
            3. Устройство компьютера, управляющее демонстрацией слайдов
            4. Текстовой документ, содержащий набор рисунков, фотографий, диаграмм
            5. Демонстрационный набор страниц
            1. Какую функцию выполняет кнопка панели инструментов Вставка в программе PowerPoint?
              1. Вставка рисунка любой программы, не свернутой в кнопку панели задач
              2. Создание или изменение презентации на основе набора рисунков
              3. Вставка в документ клипа, включая рисунки, звуки, фильмы и фотографии для иллюстрации определенного понятия
              4. Вставка рисунка из файла
              5. Вставка графического объекта SmartArt для визуального представления информации
              1. Составная часть презентации, содержащая различные объекты, называется
              1. Слайд
              2. Лист
              3. Кадр
              4. Рисунок
              5. Фрейм
                1. Рецензирование
                2. Формат
                3. Главная
                4. Вставка
                5. Ссылки
                1. Фигурные стрелки
                2. Линии
                3. Звёзды и ленты
                4. Выноски
                5. Нет правильного ответа
                1. Совокупность слайдов, собранных в одном файле, образуют…
                1. Показ
                2. Презентацию
                3. Кадры
                4. Рисунки
                5. Музыку
                1. При вводе новой информации в базу данных Access они вставляются:
                1. В конец таблицы
                2. В середину таблицы
                3. На начало таблицы
                4. На позицию табличного курсора
                5. Все ответы не верны

                Источник: topuch.com

                Рейтинг
                ( Пока оценок нет )
                Загрузка ...
                EFT-Soft.ru