Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
билеты по информатике.docx
Скачиваний:
46
Добавлен:
18.04.2015
Размер:
341.85 Кб
Скачать

19 Вопрос

линейная и событийная структуры программы

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

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

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

В линейной структуре система управления организацией компонуется по производственному признаку с учетом степени концентрации производства, технологических особенностей, ассортимента выпускаемой продукции и т.п.

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

Линейная организационная структура управления имеет свои преимущества и недостатки (табл. 1).

Таблица 1. Преимущества и недостатки линейной организационной структуры

Преимущества

Недостатки

  1. единство и четкость

распорядительства

  1. согласованность

действий исполнителей

  1. простота управления

(один канал связи)

  1. четко выраженная

ответственность

  1. оперативность в принятии

решений

  1. личная

ответственность

руководителя за конечные

результаты деятельности своего подразделения

  1. высокие требования к

руководителю, который

должен быть подготовлен

всесторонне, чтобы

обеспечивать эффективное

руководство по всем функциям управления

  1. отсутствие звеньев по

планированию и подготовке

решений

  1. перегрузка информацией,

множество контактов с

подчиненными, вышестоящими

и сменными структурами

  1. затруднительные

связи между инстанциями

  1. концентрация власти

в управляющей верхушке

Событийно-ориентированное программирование

С активным распространением системы Windows и появлением визуальных RAD-сред широкую популярность приобрел событийный подход к созданию программ — событийно-ориентированное программирование

Идеология системы Windows основана на событиях. Щелкнул человек на кнопке, выбрал пункт меню, нажал на клавишу или кнопку мыши - в Windows генерируется подходящее сообщение, которое отсылается окну соответствующей программы. Структура программы, созданной с помощью событийного программирования, следующая. Главная часть представляет собой один бесконечный цикл, который опрашивает Windows, следя за тем, не появилось ли новое сообщение. При его обнаружении вызывается подпрограмма, ответственная за обработку соответствующего события (обрабатываются не все события, их сотни, а только нужные), и подобный цикл опроса продолжается, пока не будет получено сообщение «Завершить работу».

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

Событийное программирование является развитием идей нисходящего проектирования, когда постепенно определяются и детализируются реакции программы на различные события

20 вопрос Компоненты в Delphi. Object Inspector.

 Компонент Delphi MainMenu предназначен для добавления к программе главного меню, элемента, без которого не обходится ни одно из приложений для Windows. Чтобы добавить к программе Delphi главное меню, нужно расместить на Форме в произвольном месте компонент MainMenu. Компонент MainMemu невизуальный, то есть, хотя и отображается на прототипе Формы как небольшой квадрат, в работающей программе не будет виден. Опции главного меню создаются с помощью специального редактора. Редактор меню вызывается с помощью двойного щелчка по компоненту MainMenu. Первоначально меню пустое, но имеет один выделенный элемент:

Для создания первой опции (как правило, опция главного меню программы File) нужно перейти в Инспектор объектов и свойству Caption присвоить нужное название. В Windows опции меню, как правило, имеют возможность выбора при помощи сочетания клавиш ALT+<Key>, где Key - первая буква в названии данной опции должна иметь подчеркивание. Для создания такого подчеркивания перед этой буквой ставится символ &. После нажатия Enter созданный пункт меню появляется на Форме:

   Обратите внимание на то, что автоматически Delphi создаёт следующий пустой пункт меню верхнего уровня. А щёлкнув в редакторе меню по синему прямоугольничку File, мы сразу получим пустой пункт меню второго уровня. Они не выделены, и отображаются белыми прямоугольниками. Щелкнув по одному из них, мы получим возможность редактировать его совершенно аналогично. Пока их свойства не заданы, в работающей программе на Форме они не появятся, и удалять в редакторе их не нужно.    Далее, в редакторе меню щёлкнув по пункту меню правой клавишей мыши, мы получим контекстное меню, в котором есть пункты Insert (вставить) и Delete (удалить). Пункт Insert добавляет новый пункт меню над выделенным, а Delete - удаляет выбранный пункт.    То, что мы пользуемся Инспектором объектов, говорит о том, что опция меню для Delphi - это объект, со своими свойствами и методами. И без их настройки будет пассивной структурой надписей. Для того чтобы меню выполняло свои функции, как минимум нужно описать обработчик события OnClick каждого пункта меню. Делается это совершенно стандартным способом. Опишем пункт меню, который будет закрывать программу.    Выделим нижний элемент меню, в Инспекторе объектов изменим свойство Caption на Exit (ну или по-русски тоже можно - Выход). Затем перейдём на вкладку Инспектора объектов Events и щелкнем дважды мышкой по обработчику OnClick. В созданной процедуре напишем просто - Close; Всё, скомпилируем программу (нажмите F9). В работающей программе наше меню функционирует - при нажатии мышкой Exit программа закрывается. И при нажатии на клавиатуре ALT появляется подчеркивание первой буквы пунктов меню верхнего уровня - File, и далее можно выбрать нужный пункт, работая кнопками управления курсором.    Во всплывающем меню выделенного элемента есть также пункт Create SubMenu, нажав на который мы создадим подменю выбранного элемента, а к его названию прибавится изображение треугольника - стрелки, указывающей на его наличие. Работа с подменю осуществляется также совершенно аналогично.    Кстати, описывать обработчик OnClick пунктов меню верхнего уровня не обязятельно, раскрывание меню при щелчку мышкой происходит автоматически. Но в случае необходимости произвести какие-либо действия при раскрытии меню этот обработчик позволит это сделать.    Наш компонент MainMenu обладает также возможностью сопровождать названия опций меню пиктограммами. Для этого нужно из редактора меню перейти к самому компоненту, и в Инспекторе объектов его свойству Image присвоить значение одного из компонентов ImageList, который необходимо предварительно поместить на Форму, и наполнить нужными пиктограммами (компонент ImageList описывается на странице Win32). Далее, выбрав нужный пункт меню в редакторе меню, его свойству ImageIndex нужно присвоить номер пиктограммы, который она имеет в компоненте ImageList. Для удобства выбора свойство ImageIndex имеет раскрывающийся список, содержащий пиктограммы, находящиеся в компоненте ImageList. Значение -1 означает отсутствие пиктограммы.    Есть более простой альтернативный способ задать пиктограмму для пункта меню - через свойство BitMap этого пункта. Щёлкните по кнопочке, появляющейся при переходе в эту строку Инспектора объектов. Появится окно выбора файла, где можно выбрать и загрузить нужную пиктограмму.    Стандартный набор пиктограмм поставляется в дистрибутиве Delphi и находится в папке Buttons по адресу C:\Program Files\Common Files\Borland Shared\Images. Правда, пиктограммы представлены в сдвоенном формате - для активного и неактивного состояния кнопки или пункта меню. Удобство применения компонента ImageList состоит в том, что он умеет разделять стандартные пиктограммы на две. Ненужную затем можно удалить, а оставшуюся сохранить для использования в других программах. Обычно это цветная пиктограмма для активного состояния, так как неактивная кнопка или меню умеют отображать свои пиктограммы в оттенках серого.