Добро пожаловать на мой канал. Давайте поговорим про виды программного обеспечения, узнаем какими они бывают, какой вид ПО за что отвечает. Так же рассмотрим архитектуру, что это такое и какая бывает архитектура.
Выделяют три основных вида программного обеспечения:
-Системное;
-Прикладное;
-Инструментальное.
Давайте разберем каждый вид в отдельности.
Системное ПО - обеспечивает согласованное взаимодействие устройств компьютера и создает условия для выполнения остальных программ.
(Проще говоря, это та операционная система, которая в настоящий момент стоит на вашем устройстве. Н-р: DOS, Windows, Unix, Linux, MacOS, Android)
Системное ПО обеспечивает:
-пользовательский интерфейс;
-регулирует взаимодействие программ друг с другом и их доступ к процессору, памяти и видео карте;
-Обеспечивает иерархическое хранение файлов и папок.
Прикладное ПО (приложения)- это программы, предназначенные непосредственно для удовлетворения потребностей пользователя.
Самые простые представители: MS Word, Photoshop, Corel, Google Chrome, WhatsApp.
Инструментальное ПО –к инструментальному программному обеспечению относятся средства автоматизации разработки компьютерных программ, то есть инструменты программиста.
Инструментальное ПО – это разновидность прикладного ПО (оно является прикладным для разработчика).
Более простыми словами, это тот инструмент, в котором программист создает свои программы.
Далее давайте поговорим про архитектуру ПО.
Архитектура программного обеспечения (software architecture) – это представление, которое дает информацию о компонентах ПО, обязанностях отдельных компонентов и правилах организации связей между компонентами.
Проще говоря, архитектура ПО это описание того из каких частей состоит программа и как она работает.
Необходимость архитектуры обоснована сложностью программного обеспечения. Продуманная архитектура облегчает разработку и дальнейшее развитие ПО. Она служит базисом, каркасом создаваемой системы, интегрируя отдельные компоненты и создавая модель системы.
(Если на старте разработки заложена хорошая архитектура, то это может говорить о том что дальнейшая разработка, поддержка, тестирование такого программного обеспечения не доставит больших проблем.
Если еще проще сказать, то архитектура – это как кирпичи, из которых складывается стена. Кирпичи бывают разные, соответственно и компоненты программного обеспечения тоже бывают разные. Сюда в архитектуру входит все и база данных, и выбор языка, и метод написания кода, протоколы взаимодействия и т.д. )
Так же в архитектуре присутствуют определенные архитектурные стили (модели)
Архитектурные стили – это набор принципов используемых в архитектуре программы.
Архитектурные стили упрощают коммуникацию разработчиков и предлагают готовые решения целого класса абстрактных проблем.
Рассмотрим клиент-серверную модель.
Это самая распространенная модель в архитектуре, которая существует на данный момент.
Есть некоторый сервер(центральный), который хранит в себе все данные ( базу данных), хранит в себе весь код. К серверу подключены клиенты
Клиент – это ноутбуки, планшеты, телефоны, различные устройства, которые подключены к серверу.
Удобство такой модели в том, что вся обработка и вся информация находится в одном месте. Клиенты подключаются и работают с этой информацией удаленно.
Во время чтения статьи вы уже используете клиент-серверную модель. Зайдя через браузер и подключившись к серверу. Благодаря подключению к серверу вы просматриваете данную статью.
Клиент и сервер общаются между собой по средством запроса и ответа. И все взаимодействие так же происходит по средствам ЗАПРОС – ОТВЕТ.