Файл: Средства разработки клиентских приложений.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 26.06.2023

Просмотров: 103

Скачиваний: 6

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

ВВЕДЕНИЕ

Тема моей курсовой работы «Программные средства создания клиентских программ» обусловлена тем, что при работе с ПК, мобильными телефонами, смартфонами и планшетами всё чаще приходится обращаться к клиентским программам. В этой курсовой работе я объясню, что использование клиентских программ позволяет упростить работу с техникой, а так же избежать множества рутинных операций. В данной курсовой работе рассматриваются лишь некоторые наиболее популярные программные средства создания клиентских программ, а так же их пакетные ресурсы для реализации определенных компонентов клиентской системы.

Цели курсовой работы - показать типовое разнообразие клиентских программ, последовательность их реализации, рассмотреть программные средства создания клиентских приложений; их назначение и возможности; показать роль Internet/Intranet сети и средства создания клиентской части для их реализации.

Этапы (задачи) решения: сравнение преобразований сети клиент-сервер; задачи, которые решает клиентская часть на современном этапе реализации; требования к созданию интерфейса клиентского приложения, разнообразие программных средств и языков программирования; программные пакеты; отличие Internet от Intranet; взаимодействие в сети; роль клиентской части и способы её создания.

В первой главе. п. 1.1. Рассматривается модель взаимодействия в сети клиент-сервер, преобразования и изменения произошедшие в принципе работы этой сети.. п. 1.2. Этапы создания клиентских программ.

Во второй главе п. 2.1. Кратко о том, что такое Rad и Сase .п. 2.2. Средства разработки клиентских приложений.

В третей главе. Рассматриваются средства разработки, эксплуатации и сопровождения Internet/Intranet приложений.

Для написания этой курсовой работы была использована разнообразная литература, такая как печатные издания а так же интернет публикации. Литература с официальных научных сайтов, таких, как Citforum, Ciberleninka. Официальный сайт издательства «Вильямс», научный журнал «Вестник» Воронежского государственного университета. Официальный сайт Microsoft. Вся информация, которая была использована для написания данной курсовой работы, взята из официальных источников и является достоверной.

ГЛАВА I Типовые задачи клиентских программ

В настоящее время основной технологией, используемой при создании информационных систем, является технология "клиент-сервер".


Вычислительная модель «клиент-сервер» исходно связанна с парадигмой открытых систем, которая появилась в 90-х годах и быстро эволюционировала. Сам термин «клиент-сервер» исходно применялся к архитектуре программного обеспечения, которое описывало распределение процесса выполнения по принципу взаимодействия двух программных процессов, один из которых в этом процессе назывался «клиентом».[1] При этом предполагалось, что один серверный процесс может обслужить множество клиентских процессов. [2]Но теперь, в отличии от периода main-фреймов, когда «клиент» и «сервер» использовались единым блоком, в сети компьютеры обладает собственными ресурсами, что позволяет распределить между ними нагрузку.

"Клиент-сервер" ⎯ это модель взаимодействия компьютеров в сети. Как правило, компьютеры не являются равноправными. Каждый из них имеет свое, отличное от других, назначение, играет определенную роль. Компьютер, управляющий тем или иным ресурсом, принято называть сервером этого ресурса, а компьютер, желающий им воспользоваться ⎯ клиентом.[3]

То есть, процессы, запрашивающие службы у серверов путем посылки запроса и последующего ожидания ответа от сервера, называются клиентами (clients).[4]

Существует по меньшей мере три модели архитектуры «клиент – сервер»: – модель доступа к удаленным данным (RDA модель); – модель сервера базы данных (DBS модель); – модель сервера приложений (AS модель).[5]

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

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


Для клиентских приложений распределенная база данных предстает в виде определенной совокупности. Все части данных имеют право располагаться более чем на одном компьютере, которые  будут объединяться с помощью линий связи. При этом каждая честь базы данных будет функционировать под управлением обособленной системой управления. Работа пользователя с распределенной базой данных осуществляется благодаря приложениям. Они в свою очередь могут разделяться на те, которым необходимо непосредственный доступа к данным, расположенным на других узлах (локальные приложения), и на те, которым нужен аналогичный доступ (глобальные приложения).[7]

Что же касается клиента, то следует обратить внимание, что клиент, в котором реализован только пользовательский интерфейс, называется тонким клиентом, в противном случае клиент называется толстым.[8]

Клиент — это интерфейсный компонент, который представляет первый уровень, собственно приложение для конечного пользователя. Первый уровень не должен иметь прямых связей с базой данных, быть нагруженным основной бизнес - логикой и хранить состояние приложения. На первый уровень может быть вынесена и обычно выносится простейшая бизнес-логика: интерфейс авторизации, алгоритмы шифрования, проверка вводимых значений на допустимость и соответствие формату, несложные операции (сортировка, группировка, подсчет значений) с данными, уже загруженными на терминал.[9]

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

Толстый клиент (rich client) — это приложение, обеспечивающее полную функциональность и независимость от центрального сервера. Вся работа по обработке и представлению этих данных переносится на машину клиента. Толстый клиент обладает полной функциональностью работы с данными сервера, обеспечивает режим многопользовательской работы, предоставляет возможность работы даже при обрывах связи с сервером, имеет возможность подключения к банкам данных без использования сети Интернет, обладает высоким быстродействием.[10]


Существуют системы баз данных, в которых клиент может получать доступ к любому числу серверов одновременно (т. е. за один запрос можно получить комбинированные данные двух и более серверов). В этом случае серверы рассматриваются клиентом как один сервер (с логической точки зрения), и пользователь может не знать, на каком именно компьютере какая часть данных содержится.[11]

Клиентская часть приложения (которая может состоять из нескольких однотипных клиентских приложений), получая данные от сервера данных, обеспечивает их обработку и отображение в интерфейсе пользователя на каждом клиенте. При обработке данных клиентское приложение может формировать команды по созданию или изменению структур данных, по добавлению новых данных, обновлению или удалению существующих.[12]

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

  • функции ввода и отображения данных (Presentation Logic);
  • прикладные функции, определяющие основные алгоритмы решения задач приложения (Business Logic);
  • функции обработки данных внутри приложения (Database Logic);
  • функции управления информационными ресурсами (Database Manager System);
  • служебные функции, играющие роль связок между функциями первых четырех групп.[13]

Не следует забывать, что клиентская часть, отвечает за целевую обработку данных и организацию взаимодействия с пользователем. К выделенному серверу БД с помощью сети подключены узлы — компьютеры пользователей (клиенты). При этом узел-клиент сам может быть СУБД.[14]

Зачастую клиентская программа — это только один из уровней между сервером и файловой системой или локальной сетью пользователя.[15]

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

  • с помощью языков программирования (C++, Delphi, VBA);
  • с помощью специальных компонентов СУБД (конструкторов форм Microsoft Access, Oracle и др.).

Клиенты за время своего становления и отделения от монолитной системы, эволюционировали до программ общего назначения, разработанных на основе различных технологий, включая программный код, программы на различных языках сценариев.[16]


Создается такое приложение обычно с использованием средств языков высокого уровня (например, C++, Pascal, Visual Basic), позволяющих реализовать эффективную целевую обработку данных и дружественный пользовательский интерфейс. В исходный текст программы включаются SQL (Structured Query Language)-выражения, специфицирующие условия выборки или изменения данных в базе. Во время исполнения приложения эти выражения передаются серверу, который, собственно, и манипулирует данными. Данные, полученные в результате выполнения сервером SQL-запросов, возвращаются прикладной программе и размещаются в заранее определенных структурах для дальнейшей обработки, в том числе корректировки записей.[17]

В современных клиентах практически всегда существует встроенная возможность расширяемости, и в качестве входных данных они способны принимать переносимый код.[18]

По мере возрастания сложности разрабатываемых систем и увеличения запросов пользователей потребовались новые средства, обеспечивающие значительное сокращение сроков разработки. Это послужило предпосылкой к созданию целого направления в области программного обеспечения – инструментальных средств для быстрой разработки приложений, (RAD). Развитие этого направления привело к появлению на рынке программного обеспечения средств автоматизации практически всех этапов жизненного цикла систем.[19]

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

Пользовательские приложения создаются и работают на компьютерах-клиентах (АРМ пользователя). Именно эти компьютеры должны иметь, наряду со средствами формирования запросов к базе данных, средства разработки интерфейса. Наряду с программным обеспечением – клиент, при разработке пользовательских программ в конкретной СУБД могут использоваться другие языки программирования, специальные библиотеки, другие системы программирования (определенные для этой СУБД).[20]

В данный момент возникают задачи по созданию не только веб-сайтов компаний, но и связанных с ними по смыслу и набору информации клиентских приложений для различных операционных систем и мобильных платформ.[21]

Главное в программе — достичь хорошего результата и качественно и эффективно запрограммировать алгоритм, уделяя структуре программы большую часть времени. Именно в связи с этим начали появляться программные пакеты для быстрой разработки программного обеспечения.[22]