Сайт о телевидении

Сайт о телевидении

» » Новые возможности указанных систем

Новые возможности указанных систем

Давайте повторим: статическая информация это папки (разделы) и файлы (страницы) в структуре сайта, динамическая информация - это инфоблоки Информационный блок - специальный инструмент "1С-Битрикс: Управление сайтом" с помощью которого заносится информация в Базу данных.
.

Значит, статическое меню:

  • Использует файлы и папки из структуры сайта
  • Пункты доступны для редактирования
  • Файл .тип_меню.menu_ext.php не подключается

А динамическое меню:

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

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

Создаем статическое меню

Разместим на нашем демо-сайте статическое меню :

  • создаем новый раздел Мода
  • в административном разделе в папке /moda создаем пустой файл .left.menu_ext.php , чтобы основное динамическое меню не показывалось в нашем разделе;
  • в разделе Мода создаем и наполняем содержимым несколько страниц;
  • статическое меню формируется автоматически, если при создании страниц будет отмечена опция "Добавить пункт меню";
  • отключаем использование кеша Кеш - это некое хранилище для ускорения просмотра информации на сайте. Когда пользователь просматривает информацию на сайте, то она не всегда запрашивается из базы данных, а берется из кеша.
    для того, чтобы компонент меню обновлялся сразу при изменении данных.

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


Создаем динамическое меню

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

  1. Самый простой способ - добавить к каталогу демо-сайта свои разделы и подразделы. Они сразу автоматически добавятся в основное меню.
  2. Посмотрите, как это сделать, в коротком видеоролике:

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

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

    В визуальном редакторе компонент расположен по пути Контент > Каталог > Каталог .

    Компонент относится к модулю Информационные блоки.

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

    для работы с инфоблоками
  • указываем в параметрах компонента наш созданный инфоблок в качестве источника данных
  • в разделе сайта будет показан наш инфоблок в виде каталога с его собственным меню

Эти действия подробно показаны в видеоролике:

  • Этим способом можно создать динамическое меню, основанное на произвольном инфоблоке. Но он предполагает изменения в коде. Поэтому рекомендуется только для самых опытных и "продвинутых" контент-менеджеров.

    Потребуется внести изменения в код. Будьте внимательны и аккуратны!



  • < TR >
    < TD >< a href = #3>Save

    < TR >
    < TD >< a href = #4>Close



    < DIV class= "menuitem" >
    < A class= "a" href = "#11" > Help < BR >
    < TABLE >
    < TR >
    < TD >< a class= "disabled" >..

    < TR >
    < TD >< a href = #13>Index

    < TR >
    < TD >< a href = "#14" > About






    < TR >
    < TD id = "moz" > Mozilla specific menu !
    < DIV id = "menu" >
    < DIV class= "menuitem" >
    < a class= "a" href = "#" > Filezilla
    < TABLE >
    < TR >
    < TD >< a href = #2>Open

    < TR >
    < TD >< a href = #3>Save

    < TR >
    < TD >< a href = #4>Close




    < DIV class= "menuitem" >
    < A class= "a" href = "#11" > Helpzilla
    < TABLE >
    < TR >
    < TD >< a class= "disabled" >..

    < TR >
    < TD >< a href = #13>Index

    < TR >
    < TD >< a href = "#14" > About







    < BR >

    Что происходит, почему все работает?

    Сразу оговорюсь, что в этой статье я не буду вас учить использованию CSS. Поэтому сразу переходим к рассмотрению принципа работы меню - к псевдоклассу ":hover". Да, это именно класс. Т.е. селектор может наследовать другой селектор, который включает ":hover". В нашем случае "A:hover TABLE" выбирает "

      Динамическая смена Title, Description и URL товара при смене артикула

      Используем плагин "Поля артикула" для того чтобы можно было задавать Title, Description и URL для каждого артикула. С помощью этого плагина можно эти данные получить на странице товара. Задача стоит в том, чтобы при смене артикула (цвет)...

      Доработать меню

      http://sunday-shop.ru/Необходимо переделать меню чтобы структура была как категории магазина. (В этих пунктах есть ещё вложенные) В моем понимании есть два варианта: собрать меню просто в HTML на основе категорий, и второй сделать...

      Здравствуйте!Создал несколько типов товаров и добавил для них характеристики (получилось почти 100 характеристик). Создал основные категории. При создании динамической категории мне предлагается выбор из всего перечня характеристик для всех типов...

      Подскажите пожалуйста. У меня на сайте категория Новинки-динамическая. Как можно ограничить, чтобы там показывались только страниц 20-30, а то уже за 100 перевалило.{foreach $products as $p} {if $category.id ==XX && $p@iteration > YY }{break}{/if}XX...

      Доброго времени суток!Есть динамический список последних добавленных товаров, "Правило формирования списка" = "Дата добавления"!Каким способом можно исключить некоторые товары из этого динамического списка списка?Можно менять дату...

      Всем привет!Возможно ли разделить вывод обычных категорий (например в одном месте: меню верхнее горизонтальное), и вывод динамических категорий в меню слева/справа?Для наглядности вот скрин: https://yadi.sk/i/YftP_ummhdGis

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

      Есть решение

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

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

      Здравствуйте.Подскажите пожалуйста. У меня на сайте категория Новинки-динамическая. Как можно ограничить. чтобы там показывались только последние 200 товаров.?

      +6

      Нужно обязательно сделать формирование уникальных страниц при динамической фильтрации товаров!То есть например у меня на сайте есть категории и подкатегории, и когда я провожу фильтрацию товара в подкатегории (например выбираю золото, вставка -...

      Есть решение

      Добрый день! Подскажите пожалуйста, как сделать динамическую категорию, задав в фильтр несколько значений одной характеристики. Т.е. у меня есть характеристика: длинна 1 м, 2 м, 3 м, 4 м и т.д., нужно создать категорию, где будут отображаться, допустим...

      Такой возможности нет. Как вариант - добавить таким товарам дополнительную характеристику, которая была бы одинаковой для товаров длиной 1 и 2 м, и использовать ее в фильтре. Например, назвать ее Величина и задавать значения Малая - для 1 и 2 м, Средняя для 3 и 4 м, и так далее.

      Есть решение

      Здравствуйте, у меня следующий вопрос, начну с сути: на сайте есть 10 товаров (в которых по 10 характеристик), которые находятся в Категории №1 и ПодКатегории 2 (схематично так)Категория 1 (5 товаров)- ПодКатегория 2 (5 товаров)Мне необходимо создать...

      Я нашел решение мое проблемы, но при каждом обновлении системы настройки слетают.Мое решение позволяет создать категорию-фильтр с любой характеристикой, не завизимо в какой категории находится товар.В вайле wa-apps/shop/lib/classes/shopProductsCollection.class.php в методе categoryPrepare после строки$info = $this->info;добавить$info["parent_id"] = 0;Только это изменение "слетит" при установке обновлений для магазина.

      +1

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

      В товары -> услуги добавляю услугу со стоимостью услуги +50%, раньше в карточке товара эта цена менялась динамически при смене артикулов (цены артикулов разные). Сейчас не меняется в карточке товара, стоит изначальная, с первого артикула. А в...

      Определенные категории в выпадающее меню Есть решение

      Добрый вечер.Несложная штука вроде, однакож сам не могу сделать. Дано:1. Категории магазина, которых условно много.2. Есть обычное выпадающее меню во фронтенде. Надо сделать так, чтобы можно было выбирать (например через дополнительные параметры в...

      Буду рад сотрудничать. Skype: [email protected]

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

      Требуется вывод рекомендуемых товаров с динамическими допами

      Итак, задача:Есть товар, имеющий две меняющий характеристики - размер и цвет (кровати). И так же у рекомендуемых товаров меняется либо размер либо цвет (матрасы и тумбы)! Требуется сделать справа как тут http://joxi.ru/1A5aPzVtKZ780A при нажатии...

      Динамические цены

      У меня есть кафе и рестораны где пьют мой чай. У всех кафе и ресторанов разные цены на чаяпития.Я хочу чтобы они вводили домен, набирали айди заведения и отправляет юзера (рефер) на шоп скрипт.На главной странице чтобы я показал цены именно по этому...

    Соц работа в УФСИН России получила наиболее широкое распро­странение с 90-х годов XX века. Её ведут администрация и ее персонал, ме­д, соц и др работники, психологи. В соц работе медперсонала в УФСИН существует ряд функций: -первичное изучение заключенного по документам;-мед помощь;-преодоление психологического стресса;-наблюдение за здоровьем заключ и их лечение;-составление совместно с администрацией и психолог и соц службами плана исправления осужденного и тд В социально-медицинской работе четко выделяются два аспекта - правовой и психологический.Социально-медицинская и психологическая работа среди заключенных имеет свою специфику . Она проводится в экстремальных условиях, в обста-новке лишения свободы правонарушителя, при наличии психолого-патологических особенностей у личности – объекта воздействия, нахождения ее в криминогенной среде и так далее.

    В соц работе в пенитенциарной системе сущ определен­ные методы воздействия на осужденных: наблюд за преступностью через преступника по документам, беседы, интервью и др виды соц терапии. Немаловажную роль играют и прогрессивные методы «расширения позитивных общественных связей и отношений» заключен­ных, постепенное вытеснение нездоровых потребностей, антиобщественных взглядов, агрессивных чувств, отрицательных эмоций. Он осуществляется через приобщение осужд к худ литературе, музыке, ис­кусству, спорту и т.д.Особо важное значение в соц работе в УФСИН имеют мероприятия по реабилит здоровья осужденных и подготовке их к выходу на свободу.В ходе социальной работы медицинские работники должны рекомендовать заключенным и повышение общеобразовательного уровня, и специальности.Важная роль посоц реабилитации отводится пропаганде здор образа жизни,формированию установки на самосохранное (самоохраное) поведение , отказу от вредных привычек: употребл алкоголя, курения, особенно больных туберкулезом, наркотиков; проведению индивид утренней зарядки, личной гигиене, приобщению к спорту, участию в со­ревнованиях. Много проблем в УФСИН создают амнистии, кот в послед­ние годы проводятся ежегодно(в 1999,2000, в конце 2001 года). Неожиданно, не пройдя курса лечения, без достаточных советов и рекомендаций, лекарств, необходимой одежды и обуви на волю выходят десятки тысяч больных, в том числе и больные туберкулезом. Так, по амнистии 2000 года на свободе оказа­лись все больные туберкулезом и инвалиды 1 -й и 2-й групп, не совершившие тяжких и особо тяжких преступлений. Оказавшись одновременно на воле, они ухудшили эпидемиологическую ситуацию и соц-психол климат в стране и пополнили число безработных и бездомных. В связи с этим важное значение имеют контакты, связи медиков с разл общественными организациями, оказывающими в РФ помощь лицам, отбывшим наказание. Таких организаций в стране более 200. Например, в 1998 году в Иваново создан реабилит центр, оказывающий бесплат мед услуги бывшим заклю­ченным, в том числе по закреплению результатов лечения от алкого­лизма и наркомании в области. На берегу Камы, напротив Набережных Челнов, создан фтизиопульмонологическийреабилит центр. Сюда посылают бывших осужденных, и здесь они могут жить, адаптируясь к реалиям свободы, по 3-6 месяцев. В конце 2001 года в Архангельске открылся реабил центр для подростков, вышедших на свободу, где они смогут находиться в течение месяца. Существуют общественные фонды и центры и по оказанию помощи самим заключенным. Так, в Новодвинске действует фонд «Надежда», помогающий заключенным в решении их проблем, в том числе путем передачи им медикаментов.

    11. Организация медико-социальной работы в детской поликлинике. Модель медико-социального наблюдения за детьми в детской поликлинике

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

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

    Основными принципами отечественной системы охраны здоровья детей являются соблюдение прав детей и подростков в области охраны здоровья и профилактика.

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

     выявление и учет семей медико-социального риска, выделение из них семей высокого социального риска (семьи алкоголиков, наркоманов, детей-инвалидов, юных матерей, матерей-одиночек и др.);

     изучение потребностей данных семей в конкретных видах медико-социальной помощи;

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

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

     оказание консультативной, в т.ч. педагогической, психологической помощи семьям социального риска;

     проведение социально-правовой помощи (активное разъяснение прав и обязанностей данных семей, а также социальных льгот, предоставляемых государством, и др.);

     организация и контроль за получением детьми раннего возраста бесплатного питания и лекарственного обеспечения, других льгот;

     оказание помощи семье в воспитании детей;

     проведение совместно с медицинским персоналом санитарно-просветительной работы по гигиеническому воспитанию детей, пропаганде здорового образа жизни;

     осуществление мероприятий по планированию семьи;

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

     внесение предложений, направленных на совершенствование законодательных актов по социальным вопросам, на развитие службы медико-социальной помощи;

     ведение учетно-отчетной документации (дневника патронажных помещений, паспорта семьи и др.).

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

    Первый уровень (I) обеспечивается детскими поликлиниками, реализуется при тесном взаимодействии с образовательными учреждениями.

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

    Третий уровень (III) обеспечивается детской клинической больницей.

    12. Оккупациональная терапия (определение, принципы, технологии)

    Термин оккупациональная терапия происходит от англ. occupatinaltherapy - лечение занятием. Оккупациональная терапия (ОТ) предусматривает деятельность, направленную на реабилитацию лиц, которые по состоянию здоровья нуждаются в помощи при уходе за собой, провождении досуга и выполнении трудовой деятельности. Все эти виды занятий объединяются в понятие оккупациональной деятельности. Работа специалистов по ОТ направлена на помощь лицам, чья оккупациональная деятельность страдает вследствие травмы или заболевания, психических или эмоциональных нарушений, врожденных или приобретенных заболеваний, либо в результате возрастных изменений.Целью ОТ является: * расширение независимости и автономности человека в плане перечисленных занятий; * обеспечение успешного и независимого выполнения оккупациональных действий. Объектом ОТ являются люди, нуждающиеся в восстановлении и нормализации оккупациональной деятельности. При этом проявление клинических нарушений рассматривается только с учетом взаимосвязи с оккупациональной деятельностью. Медицина накапливает информацию о признаках и симптомах заболеваний, нарушений или травм и разрабатывает способы лечения. ОТ собирает информацию о самообслуживании, проведении досуга и трудовой деятельности пациентов и осуществляет стратегию, направленную на восстановление и нормализацию оккупациональной деятельности .Синонимом оккупациональной терапии является Ergotherapy(эрготерапия). Этот термин используется в Германии и Франции из-за трудностей точного перевода оккупациональной терапии на национальные языки. В России наиболее близким понятием к оккупациональной терапии является термин "социальная реабилитация" (социально-бытовая адаптация и социально-средовая ориентация), который описан в Федеральном Законе РФ "О социальной защите инвалидов в Российской Федерации", 24.11.95гОТ может пользоваться различными методами, чтобы помочь пациенту восстановить независимый образ жизни. Это могут быть и медицинская реабилитация, и социальная адаптация, и восстановление деятельности за счет использования вспомогательных приспособлений.

    ОТ руководствуется следующими принципами. * Участие в ОТжизненно необходимо. Такое участие позволяет человеку удовлетворять природные потребности, приобретать навыки и способности, необходимые для преодоления жизненных проблем, достигая чувства удовлетворенности и значимости. * важным компонентом социальной адаптации человека* Участие зависит от воздействия ряда факторов, которые включают индивидуальные особенности, характер и смысл оккупациональной деятельности, социальную и окружающую среду, на фоне которых осуществляется эта деятельность. * Каждый пациент активно вовлекается в процесс ОТ. * Каждый человек имеет возможности для своего развития и совершенствования. * Между элементами, составляющими занятия, должен быть баланс, который необходим для обеспечения здорового и благоприятного образа жизни. Уход за собой, досуг и трудовая деятельность образуют определенную структуру в повседневной жизни человека. Возможность деятельности в каждой из трех областей обеспечивает удовлетворение потребностей человека в занятиях. Например, человек, у которого уход за собой занимает слишком много времени, не сможет участвовать в трудовой деятельности и, следовательно, удовлетворять потребность в значимой социальной сфере или достичь экономической независимости. * Специалисту по ОТ необходимо учитывать возрастные особенности пациента. * Вовлечение пациента в оккупациональную деятельность считается нормальным и социально оправданным.. Поэтому во внимание должны приниматься как возможности пациента, так и особенности окружающей обстановки. * Оккупациональная деятельность используется в качестве терапии. Оккупациональные занятия позволяют развивать способности и навыки пациентов, которые могут быть использованы в повседневной жизни. Они позволяют пациентам адаптироваться к окружающей обстановке. На основании изложенного можно сказать, что оккупациональная терапия состоит из комплекса знании, умений и навыков, которые помогают лицам с ограниченными возможностями сохранять здоровье, уменьшать последствия инвалидности и вести независимый образ жизни.

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

    Технологии - агротерапию, зоотерапию, омпьютерные технологии Отдельное место среди компьютерных технологий занимают "социальные" компьютерные программы, моделирующие ситуации в магазине, метро, на улице и т.д., что позволяет ребенку с ограниченными возможностями адаптироваться к той или иной незнакомой жизненной ситуации., игровая терапия и др. ИНКЛЮЗИВНОЕ ОБУЧЕНИЕ равные возможности

    ОТВЕТЫ

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

    В компьютере одновременно работает много программ:
    одна программа выводит изображение на монитор (видеодрайвер)
    другая программа выводит на принтер (драйвер принтера)
    третья - работает с мышью (драйвер мыши)
    четвертая - с клавиатурой
    пятая - с винчестером,
    и т. д.
    А ОС объединяет работу этих программ и управляет ими

    2. Каковы функции операционной системы?

    Основные функции операционной системы:

    1. Обмен данными между компьютером и различными периферийными устройствами (терминалами, принтерами, гибкими дисками, жесткими дисками и т.д.). Такой обмен данными называется "ввод/вывод данных".

    2. Обеспечение системы организации и хранения файлов.

    4. Организация диалога с пользователем.

    3.Охарактеризуйте основные ступеньки эволюции операционных систем.

    Первое поколение.

    40-е годы. Первые цифровые вычислительные машины без ОС. Организация вычислительного процесса решается программистом с пульта управления.

    Второе поколение.

    50-е годы. Появление прообраза ОС - мониторные системы, реализующие систему пакетной обработки заданий.

    Пакетный режим

    Необходимость оптимального использования дорогостоящих вычислительных ресурсов привела к появлению концепции «пакетного режима» исполнения программ. Пакетный режим предполагает наличие очереди программ на исполнение, причём ОС может обеспечивать загрузку программы с внешних носителей данных в оперативную память, не дожидаясь завершения исполнения предыдущей программы, что позволяет избежать простоя процессора.

    Третье поколение.

    1965-1980 г.г. Переход к интегральным схемам. IBM/360. Реализованы практически все основные концепции, присущие современным ОС: разделение времени и многозадачность , разделение полномочий , реальный масштаб времени , файловые структуры и файловые системы . Реализация мультипрограммирования потребовала внесения очень важных изменений в аппаратуру компьютера: привилегированный и пользовательский режимы, средства защиты областей памяти, развитой системы прерываний.

    Разделение времени и многозадачность

    Уже пакетный режим в своём развитом варианте требует разделения процессорного времени между выполнением нескольких программ. Необходимость в разделении времени (многозадачности, мультипрограммировании) проявилась ещё сильнее при распространении в качестве устройств ввода-вывода телетайпов (а позднее, терминалов с электронно-лучевыми дисплеями) (1960-е годы). Поскольку скорость клавиатурного ввода (и даже чтения с экрана) данных оператором много ниже, чем скорость обработки этих данных компьютером, использование компьютера в «монопольном» режиме (с одним оператором) могло привести к простою дорогостоящих вычислительных ресурсов.

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

    Четвертое поколение.

    Конец 70-х. Создан рабочий вариант стека протоколов TCP/IP. В 1983 году он был стандартизирован. Независимость от производителей, гибкость и эффективность, доказанные успешной работой Интернет, сделала этот стек протоколов основным стеком для большинства ОС.

    Начало 80-х. Появление персональных компьютеров. Бурный рост локальных сетей. Поддержка сетевых функций стала необходимым условием. 80-е годы. Приняты основные стандарты на коммуникационные технологии локальных сетей: Ethernet, Token Ring, FDDI. Это позволило обеспечить совместимость сетевых ОС на нижних уровнях.

    Начало 90-х. Практически все ОС стали сетевыми. Появились специализированные сетевые ОС (например IOS, работающая в маршрутизаторах)

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

    4.Охарактеризуйте стиль работы с помощью графических операционных систем семейства Windows.

    С переходом на персональные компьютеры с процессором 80386 и с увеличенной памятью (не менее 4 Мбайт), на смену Norton Commander и характерному для DOS стилю работы в текстовом режиме пришла оболочка Windows и новый стиль работы с графическим интерфейсом. Идея графического интерфейса Windows заимствована компанией «Microsoft», долгое время специализировавшейся на операционных системах для персональных компьютеров IBM, у операционной системы для компьютеров Apple. Иногда Windows определяют не как оболочку, а как нечто большее, используя термин типа «операционная среда». При этом исходят из того, что если классическая оболочка (такая как Norton Commander) видоизменяет лишь пользовательский интерфейс, то программа типа Windows дополнительно к этому берет на себя управление программами и заданиями, т.е. реализует основные функции операционной системы.

    Принципиально важные особенности Windows по сравнению с MS DOS - это многозадачность (допускается одновременное выполнение нескольких процессов) и возможность обмена данными между работающими программами. Важно и то, что Windows использует расширенную оперативную память (много больше 640 кбайт) и подразумевает единый интерфейс всех прикладных программ. Недаром утвердилось понятие «программировать под Windows», т.е. ориентироваться на стандартный графический интерфейс.

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

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

    5.Назовите основные объекты Windows и опишите их назначение

    Папка Группа файлов, объединенных по какому-либо критерию (аналог в NC – каталог).
    Документ Обычно изображаются на Рабочем столе как листочки бумаги с загнутыми уголками. Документ – любой файл, обрабатываемый с помощью приложений (программ). Документ может содержать текстовую, графическую, звуковую и видеоинформацию.
    Ярлыки Легко узнать по изогнутой стрелочке в нижнем левом углу пиктограммы. Ярлыки представляют собой высокоэффективное средство ускоренного доступа к объектам. Ярлык можно «нацепить» на любой объект – файл, программу, сетевую папку, диск, значок и поместить в любой области интерфейса пользователя. Двойной щелчок по ярлыку открывает объект, с которым он связан.
    Программы В отличие от других объектов имеют каждая свое собственное «лицо» (пиктограмму).
    Буфер обмена Эффективное средство интеграции приложений. Его можно представить как некоторое динамическое пространство оперативной памяти для временного размещения данных обмена.Для занесения информации в буфер обмена и ее извлечения Windows имеет в своих меню команды Копировать , Вырезать , Вставить .

    6.Какие функции выполняют меню Пуск? Поиск?

    Меню «Пуск» в Windows XP:

    · Отображение имени и аватар пользователя

    · Доступ к браузеру и E-mail клиенту

    · Доступ к часто используемым программам

    · Открытие специальных папок

    · Выключение компьютера

    Поиск :

    · Осуществляет поиск файлов и папок, а также компьютеров в сети

    7.Как вызвать динамическое меню и каковы его возможности?

    Для быстрого вызова часто повторяемых команд можно воспользоваться динамическим меню, которое вызывается правой кнопкой мыши. Динамическое меню (рис) содержит часто употребляемые команды. Набор команд зависит от выбранного объекта: значка диска, папки или файла, выделенного текста, панели задач или свободного места экрана.

    Если щелкнуть правой кнопкой значок диска в окне программы Мой компьютер, то появятся команды: Открыть, Проводник, Найти, Разделение, Форматировать, Вставить, Создать ярлык. Свойства. Так же как и для диска, команды динамического меню для файла зависят от типа файла и дублируют меню Файл. Правую кнопку мыши удобно использовать для перемещения или копирования файла из одного окна в другое папки Мой компьютер или Проводник. После транспонирования значка папки/файла с нажатой правой кнопкой мыши появляется динамическое меню, позволяющее указать цель транспортировки: переместить или скопировать объект, создать значок быстрого вызова.

    (динамическое меню)

    8.Охарактеризуйте назначение пунктов главного системного меню Windows.

    Главное системное меню содержит следующие основные пункты.

    Меню часто запускаемых программ. В этих строках обычно располагаются программы, которые пользуются наибольшим спросом, т.е. запускаются чаще других.

    Все программы.

    Мои документы, Недавние документы, Рисунки, Моя музыка, Мой компьютер. Второй пункт выводит на экран меню, состоящее из открываемых в последнее время документов.

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

    Администрирование, Сетевые подключения, Принтеры и факсы.

    Справка и поддержка. Осуществляет допуск к справочной информации по работе с Windows. Справку можно получить в трех вариантах: по общему содержанию, по предметному указателю, по команде Поиск (поиск перечня разделов, где встречается интересующий термин).

    Поиск. Осуществляет поиск файлов и папок, а также компьютеров в сети.

    Выполнить. Позволяет осуществить запуск программ по указанному пути.

    9.В чем заключаются принципы Plug and Play OLE и Drag and Drop?

    Plug and Play (включи и работай). Данная технология ориентирована на автоматическое распознавание, установку и настройку любого типа устройств, в том числе, монитор, видеоплату, принтер, звуковую карту, модем, CD-ROM, различные контроллеры жесткого диска. Она позволяет упростить настройку и управление оборудованием, обеспечить надежную без сбоев их работу.

    OLE Object Link and Embedding (связь и внедрение объектов). Объект OLE – произвольный элемент, созданный средствами какого-либо приложения Windows, который можно поместить (внедрить и/или связать) в документ другого приложения Windows. При этом, внедрив в документ приложения некий объект, созданный в другом приложении, имеется возможность редактировать этот объект средствами «родного» приложения.

    Существуют два способа реализации технологии OLE.

    · Первый способ – через буфер обмена.

    · Второй способ – командой приложения Вставка/Объект...

    Следует различать операции Внедрить и Связать.

    При внедрении объект становится частью документа-приемника и теряет связь с исходным файлом (если таковой был). Внедренный объект можно редактировать средствами «отца» – OLE-источника, но внесенные изменения не отражаются на исходном файле (и наоборот, «автономные» изменения исходного файла не отражаются на внедренном объекте).

    Связать с приемником можно только объект, который оформлен как файл-документ (т.е. зарегистрирован в файловой системе по точному адресу). При обновлении файла-документа средствами «отца» (OLE-источника) изменения отражаются и в документе-приемнике (либо автоматически, либо по указанию пользователя).

    Drag and Drop – метод, используемый для копирования или перемещения выделенного фрагмента информации, значка, окна, объекта в другое положение. Например, если, выделив участок картинки «ножницами», указать на него курсором мыши, нажав левую или правую кнопку и удерживать ее, то можно «перетащить» участок на новое место. Если во время перетаскивания удерживать нажатой клавишу , фрагмент будет копироваться на новое место. Кроме того, методом Drag and Drop можно изменять границы абзаца и страницы документа, ширину и высоту строк таблицы, составлять пользовательские панели инструментов и выполнять многие другие операции. Drag and Drop используется в технологии OLE, в информационных системах для физического и логического перемещения документов и т.д.

    10.Опишите типичное окно Windows.

    Главным объектом интерфейсной части Windows является окно – прямоугольная часть экрана, которая позволяет просматривать выведенную в ней информацию. Различаются три типа окон:

    Окно программы (приложения);

    Окно документа (окно объекта обработки программы);

    Диалоговое окно (инструмент обработки). Элементы окна Windows представлены на рисунке

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

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

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

    Некоторые кнопки панели инструментов окна (см. рисунок) имеют очевидный смысл.

    Опишем некоторые возможные манипуляции с размерами окон.

    1. При помощи кнопок, расположенных в строке заголовка окна:

    Кнопка Свернуть сворачивает окно в кнопку и помещает ее на Панели задач.

    Чтобы снова развернуть окно, необходимо щелкнуть по данной кнопке;

    Кнопка Развернуть увеличивает размер окна до максимально возможного;

    Кнопка Восстановить изменяет размер окна от максимального до среднего и обратно.

    2. При помощи мыши:

    Подвести указатель мыши к границе окна (вертикальной, горизонтальной, к углу), которую необходимо изменить (указатель примет вид двойной стрелки);

    При нажатой левой клавише мыши переместить указатель в нужном направлении.

    3. Закрыть окно можно следующими способами:

    Комбинация клавиш и ;

    Щелчок по кнопке Закрыть строки заголовка окна;

    Активизировать системное меню и выбрать команду Закрыть;

    Выполнить команду Файл/Закрыть.

    11.Охарактеризуйте стандартные приложения Windows.

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

    По мере развития семейства Windows стандартные приложения также совершенствуются. Текстовый редактор Блокнот (Notepad )позволяет работать с небольшими неформатированными текстами, а его более мощная версия WordPad является промежуточным по уровню возможностей редактором текстов между Notepad и мощным текстовым процессором Word. Графический редактор Paint – усовершенствованная версия редактора PaintBrush – позволяет создавать и редактировать несложные изображения, окрашивать их фрагменты, стирать и добавлять новые; кроме того, Paint может быть полезен как промежуточная среда при обмене рисунками между приложениями, когда из рисунка надо вырезать фрагмент и т.п. Программа Imaging обеспечивает: просмотр графических документов и их свойств, масштабирование, работу с фрагментами, получение графического документа путем сканирования изображения на бумаге, добавление комментариев. Калькулятор способен работать в двух режимах: простые вычисления (лишь арифметические операции) и инженерные вычисления (многие математические функции, различные системы счисления, использование скобок и т.д.). В специальных папках среди стандартных приложений имеются игры, в том числе с использованием Интернета, а также средства развлечения, позволяющие просматривать видеофайлы, прослушивать аудиодиски, создавать собственные видеоролики.

    12.Опишите развитие операционных систем семейства Windows .

    На смену системе Windows 95 последовательно пришли:

    ОС Windows 98, Windows NT, семейства систем Windows 2000 (Professional, Server и Advanced Server) и Windows XP (Home Edition, Professional) – и список этот не закрыт. Windows NT и Windows 2000 Server (Advanced Server) нацелены на обслуживание локальных сетей (обсуждение сетевых ОС отложим до гл. 5), а системы Windows 98, Windows 2000 Professional и Windows XP непосредственно продолжают линию Windows 95 и предназначены для организации работы ПК.

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

    Новые возможности указанных систем.

    ОС Windows 98 является непосредственным усовершенствованием Windows 95. Общего между ними так много, что их в литературе часто обозначают собирательным именем Windows 9x. Тем не менее, во многих отношениях Windows 98 превосходит предшественницу. У нее более рациональный и более богатый возможностями пользовательский интерфейс и значительно упрощен доступ к ресурсам Интернета. Последнее достигнуто за счет включения в состав Windows 98 программы-обозревателя Internet Explorer 4.0 и возможности выхода в Интернет из различных панелей и окон. В Internet Explorer включены программа для работы с электронной почтой Outlook Express и другие коммуникационные программы. Значительно расширены возможности для использования мультимедиа-приложений, т.е. программ, использующих одновременно графические и звуковые средства отображения, а также движущихся изображений.

    ОС Windows 2000 Professional расширяет возможности пользователя ПК в следующих сферах:

    Установка системы и обновление системных файлов;

    Повышенная безопасность;

    Поддержка работы с Интернетом;

    Поддержка мультимедиа-приложений;

    Работа на переносном компьютере в режиме использования аккумуляторов.

    ОС Windows 2000 Professional может поддерживать компьютер с двумя центральными процессорами и значительно большей оперативной памятью. Новые возможности (по отношению к Windows 9x) связаны с более удобной процедурой установки ОС (включая установку по сети), с большей защищенностью от сбоев. Система поддерживает многоязычный пользовательский интерфейс. Ей свойственна ускоренная многозадачность, т. е. можно одновременно выполнять больше задач, чем в Windows 9x. Система допускает возможность параллельного использования на одном компьютере с системами Windows 9x, включая совместный допуск к папкам и периферийным устройствам. Специальный сервис организуется для переносных компьютеров. Так, она позволяет использовать «спящий режим» путем запоминания текущей настройки рабочего стола, последующего полного отключения питания с восстановлением рабочего состояния по желанию пользователя.

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

    Продолжение совершенствования ОС Windows в направлениях, указанных выше, привело к созданию ОС Windows XP. У нее обновлен пользовательский интерфейс, который может быть адаптирован к личным приемам работы пользователя, позволяет группировать однотипные приложения под общей кнопкой на Панели задач. Установлены новые или существенно усовершенствованы программы работы с аудио- и видеоданными, а также усилены коммуникативные возможности; в частности, пользователи могут совместно работать с приложениями (при работе в сети). Системные файлы защищены от порчи (перезаписи) при установке новых приложений. Разумеется, каждая новая версия ОС Windows наследует лучшие черты предшественницы.

    Brush, не выходя ни из одной из этих программ в едином интерфейсе Windows.

    Рис. 2.6. Пример окна диспетчера файлов

    Для работы с файлами в Windows существует специальная программа - File Manager (Диспетчер Файлов - Менеджер Файлов), рис. 2.6. Она позволяет выполнять все виды работ с файлами: просмотр файловой структуры, копирование, удаление, переименование, пересылку между каталогами и т.д. Пиктограмма Диспетчера Файлов имеет вид шкафа с ящиками, каталога - папки, текущего каталога - раскрытой папки. Благодаря наглядности и простоте использования оболочка Windows получила огромное распространение и стала стандартом для IBM совместимых персональных компьютеров с процессорами 386 и более мощных.

    Важно понимать, однако, что многозадачность Windows не есть реальная параллельность в выполнении программ. На машине с одним процессором, которой является IBM PC, истинная параллельность невозможна. Среда Windows создает видимую параллельность, разделяя время между приложениями малыми порциями и постоянно переходя от одного к другому.

    С 1995 года на смену операционной оболочке Windows 3.1 для IBM-совместимых персональных компьютеров пришла операционная система Windows"95. В настоящее время эта операционная система бьет все рекорды популярности. По прогнозам ожидается около 100 млн. продаж этой системы к 2000 году. Трудно оценить количество несанкционированных копий этой системы, широко используемой как в России, так и во всем мире. Windows"95 предназначена для установки на персональных компьютерах desktop и компьютерах типа notebook, имеющих процессор типа

    Intel 80386DX, 80486, Pentium. Объем оперативной памяти должен быть не менее 4 Мбайт. Новая версия операционной системы лучше использует дополнительную оперативную память, чем предыдущая. Однако многие приложения для нормальной работы требуют от 8 до 16 Мбайт.

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

    Операционная система позволяет прослушивать компакт-диски, редактировать музыкальные произведения, работать с видеофрагментами. Новая операционная система обладает также улучшенными телекоммуникационными возможностями, которые позволяют использовать ее в локальных и глобальных сетях, работать с электронной почтой. Windows"95 обеспечивает работу пользователя в сети, с электронной почтой, факсом и со средствами мультимедиа, поддерживает большинство приложений DOS и предыдущих версий Windows. Если в предыдущих версиях ак-

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

    Применение 32-разрядного фонового спулинга печати ускоряет печать больших документов, позволяет минимизировать перерывы в работе. Сопоставление возможностей Windows"95 и Windows for Workgroups 3.11 показало, что при использовании новой операционной системы скорость загрузки и печати 100-страничного WinWord-документа возросла примерно на 30%.

    После загрузки Windows"95 на экране появляется изображение, напоминающее рабочий стол. Так же, как на рабочем столе, на его модели (на экране) размещены значки папок с документами и значки быстрого доступа. Одна из основных задач, поставленная разработчиками новой операционной системы, заключалась в обеспечении простоты, удобства, интуитивной очевидности пользовательского интерфейса. Интерфейс Windows"95 спроектирован так, чтобы создать комфортные условия для пользователя и обеспечить объектно-ориентированную и документированную работу. По сравнению с предыдущими версиями улучшилось оформление экрана: появились эффектные трехмерные интерфейсные элементы, изменилось оформление диалогового окна, окон приложений и документов. Улучшенный пользовательский интерфейс, однотипность выполнения всех базовых операций призваны ускорить процесс освоения операционной системы.

    Для обозначения различных объектов, с которыми имеет дело пользователь, в Windows используются графические символы. В Windows"95 отдельные файлы объединяют в папки, которые являются аналогом каталогов, использовавшихся в предыдущих версиях. Так же, как в каталоге может находиться несколько каталогов более низкого уровня, папка может состоять из нескольких папок более низкого уровня.

    Значительное внимание уделено документо-ориентированной работе с тем, чтобы пользователь в первую очередь уделял внимание документам, а не прикладным программам (документом называется любой файл, обрабатываемый с помощью прикладной программы). Windows"95 позволяет открыть любой документ, не запуская предварительно приложение, в котором оно создано. Объекты (предметы), с которыми мы контактируем в реальной жизни, обладают определенными свойствами. У каждого предмета свой внешний вид, вес, габариты и т.п. Аналогично, объекты Windows имеют свои характеристики. Можно подобрать внешний вид значка, отображающего файл. Файлы имеют размеры, для них задаются атрибуты и т. п.

    Windows"95 предоставляет удобные средства быстрого вызова программ, документов и папок с помощью значков быстрого вызова, позволяющих двойным щелчком открыть папку или документ, не запуская предварительно приложение, в котором создавался объект. Чтобы ускорить открытие часто используемых документов и запуск приложений, можно создать к ним сколько угодно значков быстрого вызова и разместить их на рабочем столе в одной или нескольких папках. Например, можно обеспечить быстрый вызов принтера, установив его значок на рабочей поверхности стола. В этом случае, чтобы распечатать файл будет достаточно перетащить мышью его значок на значок принтера. Двойной щелчок значка быстрого вызова Блокнот на экране дисплея запустит текстовый процессор.

    Чтобы установить значок быстрого вызова к папке (файлу), ее необходимо выделить в окне Мой компьютер и выбрать командуСоздание ярлыка из менюФайл. Первоначально значок располагается в конце списка окна. Значок можно переместить или скопировать на рабочий стол или в часто используемую папку с помощью мыши методом Drag and Drop (Перетащить и Отпустить). Другой вариант установки значка быстрого вызова в нужной папке или на рабочем столе - перетащить значок программы или документа в нужную папку, нажав правую кнопку мыши, и воспользоваться командойСоздать ярлык из динамического меню, которое появится, когда отпустят правую кнопку. Можно не копировать файл (папку) в другую папку, а вставить в нее значок быстрого вызова к этому файлу. Сначала следует выделить файл, затем активизировать командуКопировать из менюПравка. После перехода в окно, где предполагается разместить значок быстрого вызова, активизируют командуВставить ярлык из менюПравка. Изображение значка быстрого

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

    Длина имени файла в предыдущих версиях Windows, как и в DOS, была ограничена восемью символами, а расширение - тремя символами после точки. Это вызывало неудобства при вспоминании содержания файла. В Windows"95 эти ограничения сняты. Windows"95 позволяет давать файлам имена, содержащие до 255 символов и включать пробелы, знак плюс, знак равенства, квадратные скобки, точку с запятой и другие знаки препинания. Пробелы, находящиеся в начале и в конце имени, не учитываются. Имя файла можно писать на русском языке. Любые символы, стоящие после последней точки, рассматриваются как расширение, расширение имени зависит от приложения, в котором создавался файл. Имя для папки задается так же, как для файла. Однако для папки не задается расширение.

    Чтобы установить атрибуты файла и определить его принадлежность к приложению или документу, используются первые три символа после последней точки в имени файла. Так, для файла CONFIG.SYSTEM устанавливается расширение SYS. Совместимость имен файлов новой операционной системы с предыдущими версиями и DOS обеспечивается поддержкой ранее используемой таблицы размещения файлов (FAT), в которой хранится информация о свободных секторах и о дисковом пространстве, отведенном для файлов. Существенные ограничения таблицы FAT связаны с тем, что она не предназначена для работы с большими дисками объемом 100 Мбайт. При работе с такими дисками FAT не помещается целиком в памяти и загружается частями, что увеличивает количество перемещений головок при считывании файла. Кроме того, использование FAT приводит к сильной фрагментации больших дисков, что увеличивает потери времени, связанные с их обработкой. Аналогичная таблица для Windows"95 совместима с FAT и поэтому при установке Windows"95 не требуется переформатирование жесткого диска. При использовании длинного имени, созданного Windows"95, в DOS FAT создаются «псевдонимы», которые обеспечивают ввод первых восьми букв из нового имени и добавляют порядковый номер после знака тильда "~". Например, при использовании слова literature (литература) в именах двух файлов в DOS они запишутся как litera~l для первого документа и litera~2 для второго документа. Инсталлируемая файловая система Windows"95 поддерживает также сетевые файловые системы.

    Существенно усовершенствованы в Windows"95 окна. Групповые окна заменены на окна папок, в которых появились очень полезные для работы панели инструментов. Их можно отобразить в окне папки или удалить командой Панель инструментов (рис. 2.7.) из менюВид. Панель содержит раскрывающееся окно списка, в котором представлено имя текущей папки, и кнопки, дублирующие часто используемые команды. После раскрытия окна списка в нем видна древовидная диаграмма папок, имеющихся на компьютере. Команду можно быстро активизировать, щелкнув кнопку на панели инструментов. При этом нет необходимости сначала выбирать меню. При подводе указателя мыши к кнопке рядом с ним появляется флажок-подсказка с названием выполняемой команды.

    Рис. 2.7. Панель инструментов окна папки

    Ниже кратко описывается назначение кнопок:

    1 - вверх на один уровень (Up one level) - переход в родительскую папку; 2- подключить сетевой диск (доступно при работе в сети); 3 - отключить сетевой диск (доступно при работе в сети);

    4 - вырезать (Cut) - перемещение выделенного объекта в Буфер Обмена;

    5 - копировать (Copy) - копирование выделенного объекта в Буфер Обмена; 6 - вставить (Paste) - вставка выделенного объекта из Буфера Обмена;

    7 - отменить (Undo) - отмена последней команды, восстанавливает вид окна до выполнения

    предыдущей команды;

    8 - удалить (Delete) - уничтожение выделенного файла или папки; 9 - свойства (Properties) - вызов одноименного диалогового окна;

    10 - большие значки (Large Icons) - отображение рядом с именами папок и файлов больших значков;

    11 - маленькие значки (Small Icons) - отображение рядом малых значков;

    12 - список (List) - отображение сначала папок, затем файлов столбцами так, чтобы надписи к ним следовали в алфавитном порядке;

    13 - таблица (Details) - отображение рядом с именами папок и/или файлов их кратких характеристик.

    В зависимости от указанного типа файла, Windows"95 позволяет открыть то или иное приложение, использовать определенный набор команд. Для изменения типа файла или значка к нему используют кнопку Правка.

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

    Параметры панели задач команды Панель задачменю Настройки.Установка флажка Автомати-

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

    Windows^95 дает возможность печатать документы на нескольких десятках языков. При начальной установке системы необходимо записать утилиты, позволяющие работать на нужном вам языке. Русифицированная версия содержит кодовую страницу, поддерживающую знакогенератор и раскладку клавиатуры на русском языке. Эта страница обеспечивает корректную работу с именами файлов, содержащими русские буквы не только в Windows, но и в DOS. Язык, на котором будут печататься символы, переключатели, используемые для перехода с одного языка на другой, выбираются в диалоговом окне программы Клавиатура с вкладкойЯзык приложенияПанель управления. Приложение можно вызвать, щелкнув кнопкуПуск. Затем в менюНастройки выбирают командуПанель управления. Чтобы добавить другой язык для ввода символов, нажимают кнопкуДобавить, в раскрывающемся окне списка Язык выбирают требуемый и щелкают кнопку ОК.

    Для выделения заголовков, смыслового разграничения отдельных фрагментов, при написании формул, индексов используются различные стили и размеры шрифта. Получить справочные данные о шрифте и увидеть его гарнитуру (стиль) позволяет окно, появляющееся после выбора команды Открыть из менюФайл папкиШрифты программыМой компьютер. В окне отражаются название, размер файла, версия, фирма-разработчик, демонстрируются образцы нескольких размеров шрифта. Чтобы удалить используемый шрифт, его надо выделить в окне папкиШрифты и выбрать командуУдалить из менюФайл.

    Во многих приложениях гарнитура и размер шрифта задаются в диалоговом окне команды Шрифт. Перечень всех установленных шрифтов приводится в окне спискаШрифт. Размер в пунктах выбирается в окнеРазмер. Образец написания выбранного шрифта представляется в демонстрационном полеОбразец в правой части окна. В полеЦвет задается цвет символов. Начертание (стиль) шрифта задается в окнеНачертание: обычный, полужирный, курсив, подчеркнутый.

    Меню Пуск позволяет выполнить большой набор работ, связанных с запуском приложений, получением справок, поиском и открытием документов, настройкой системы. Видимо поэтому разработчики операционной системы рядом с кнопкойПуск поместили подсказку: «Начните работу с нажатия этой кнопки». Для активизации менюПуск следует щелкнуть кнопкуПуск или нажать на клавиши Ctrl+Esc. При остановке указателя мыши на пункте меню со значком треугольника с правой стороны раскрываются окна, содержащие подменю и команды. В свою очередь отдельные пункты появившегося подменю также могут быть отмечены значком треугольника и иметь свои подменю. Каждое подменю содержит группу программ. Для выбора программы необходимо остановить на ней указатель и щелкнуть мышью.

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

    Документы. Тогда документ можно открыть, запустив то приложение, в котором он создавался. Как правило, открыть документ позволяет командаОткрыть из менюФайл соответствующего приложения Windows. Кроме того, документ можно открыть двойным щелчком его значка в окне

    Мой Компьютер.

    Ряд приложений Windows проверяет, имеются ли в памяти компьютера несохраненные данные. При выходе из приложения без команды Сохранить появится предупреждающее сообщение с вопросом о необходимости сохранения последних изменений. При попытке закрыть приложение без указаний как поступить с открытым документом появится запрос: «Сохранить изменения, внесенные в документ?». Три кнопки -Да, Нет, Отменить - позволяют сохранить внесенные во время текущего сеанса работы изменения, не вносить изменений или отменить выход из системы.

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

    Нередко приходится искать нужный файл/папку, так как забыто его имя или место расположения. Если известна папка, где расположен файл, то можно легко найти его по расширению. Сложнее, если не известно название и расширение. Чтобы быстро найти файл или папку на компьютере пользователя или на других компьютерах сети можно использовать команду Файлы или Папки из менюПоиск. Поиск можно выполнять по следующим критериям:

    по имени файла или папки и по цепочке символов, входящих в имя файла или папки;

    по расширению имени файла;

    по дате последней модификации;

    по размеру;

    по отрывку текста из документа или по заголовку какого-либо раздела.

    Использование различных вкладок облегчает поиск файлов по определенным критериям. Для быстрого вызова часто повторяемых команд можно воспользоваться динамическим

    меню, которое вызывается правой кнопкой мыши. Динамическое меню (рис. 2.8) содержит часто употребляемые команды. Набор команд зависит от выбранного объекта: значка диска, папки или файла, выделенного текста, панели задач или свободного места экрана.

    Если щелкнуть правой кнопкой значок диска в окне программы Мой компьютер, то поя-

    вятся команды: Открыть, Проводник, Найти, Разделение, Форматировать, Вставить, Создать ярлык. Свойства.Так же как и для диска, команды динамического меню для файла зависят от типа файла и дублируют меню Файл.Правую кнопку мыши удобно использовать для перемещения или копирования файла из одного окна в другое папки Мой компьютерили Проводник.После транспонирования значка папки/файла с нажатой правой кнопкой мыши появляется динамическое меню, позволяющее указать цель транспортировки: переместить или скопировать объект, создать значок быстрого вызова.

    Папка Мусорная корзина предназначена для удаления ненужных файлов. Основное различие между выполнением командыУдалить в Windows"95 и в других программах состоит в том, что в новой версии операционной системы выбор команды приводит не к удалению файла, а к его перемещению в папкуМусорная корзина. Попавший в нее файл сохраняется до тех пор пока Корзина не будет «очищена». Чтобы удалить любой файл, папку или значок быстрого вызова, можно использовать командуУдалить или переместить значок удаляемого объекта мышью на значокМусорная корзина. Значок перетаскиваемого объекта исчезнет. Чтобы просмотреть все файлы, находящиеся в Мусорной корзине, необходимо дважды щелкнуть ее значок. Появится окно папки со строкой меню, имеющим стандартный набор команд. Для восстановления файла, папки или значка быстрого вызова необходимо щелкнуть имя восстанавливаемого файла. Если надо восстановить несколько файлов, то имена файлов выделяют при нажатой клавише Ctrl. Затем используют ко-

    манду Восстановитьиз меню Файл.

    Рис. 2.8. Динамическое меню

    В настоящее время для IBM PC-совместимых компьютеров выпускаются тысячи наименований винчестеров, адаптеров, контроллеров и других изделий. В ряде случаев их установка на компьютере вызывает значительные трудности с точки зрения совместимости, требует больших затрат времени пользователя для выбора положения перемычек. Компьютеры с Plug and Play - адаптерами не нуждаются в ручной установке DIP-переключателей. В соответствии с технологией Plug and Play после включения компьютера автоматически определяются названия вновь подключенных устройств или плат и их характеристики, выполняется их конфигурирование и автоматически загружаются соответствующие драйверы. Это может происходить и во время сеанса работы

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

    При инсталляции Windows"95 приложение Setup (Установка) определяет адаптеры и драйверы, которые не поддерживают новую технологию, и автоматически делает соответствующие записи в системных файлах. Даже если ваш компьютер не полностью поддерживает стандарт Plug and Play, Windows"95 поможет настроить аппаратное обеспечение с помощью диалогового окна Свойства с вкладкойРесурсы рассматриваемого устройства. Для вызова окнаУстройства сначала следует активизировать значокСистема Панели Управления и двойным щелчком мыши выбрать устройство. В нижнем полеСписок конфликтующих устройств указываются устройства, с которыми может конфликтовать рассматриваемое устройство. Рекомендуется установить флажокИспользовать автоматическую настройку, чтобы операционная система сама производила настройку системных ресурсов.

    Технология Plug and Play содержит три основных компонента: операционную систему,

    поддерживающую Plug and Play, Plug and Play BIOS и Plug and Play - устройства с соответствую-

    щими драйверами. Поэтому полное решение проблемы Plug and Play требует поддержки как на программном, так и на аппаратном уровнях.

    В ходе работы с Windows"95 иногда приходится производить перезагрузку системы. Различают «холодную» и «горячую» перезагрузку компьютера. «Холодная» перезагрузка выполняется после выключения питания и его повторного включения. Необходимые для работы программы и параметры считываются в оперативную память заново. «Горячая» перезагрузка производится без выключения питания, одновременным нажатием клавиш Alt+Ctri+Del. В этом случае вся информация, хранящаяся в оперативной памяти и не записанная на жесткий диск, стирается. «Горячую» перезагрузку, как правило, используют в том случае, когда программа «зависла» и не реагирует на нажатие на клавиши и на кнопки мыши. В ряде случаев при нажатии на клавиши Alt+Ctri+Del появляется диалоговое окно Снять Задачу. Если окно позволит закрыть «зависшую» программу, то необходимость в перезагрузке компьютера отпадет.

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

    ной в группе Служебные программы.

    Для корректного выхода из Windows надо щелкнуть кнопку Пуск и командуЗавершить работу в появившемся меню. Появится диалоговое окно Завершение Работы. Окно содержит кноп-

    ки-переключатели: Выключить компьютер. Перезагрузить компьютер. Перезагрузить компьютер в режиме эмуляции MS DOS, Войти в систему под другим именем.Все кнопки закрывают все программы. В нижней части окна Shut Down Windows расположены три кнопки - Да, Нет, Справ-

    ка. Через небольшой промежуток времени после щелчка мышью кнопкиДа компьютер будет подготовлен к выключению: будут очищены внутренние буферы и кэши дисков, обеспечено сохранение данных. Не следует выключать электропитание до тех пор, пока не появится сообщение: «Теперь питание компьютера можно выключить».

    Мы ограничимся лишь приведенным выше кратким описанием принципов работы Windows. Реальное ее освоение (еще в большей мере, чем DOS и Norton Commander) - дело практических занятий за компьютером с помощью как многочисленных специальных руководств, так и встроенного справочника.

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

    1. Охарактеризуйте место операционных систем среди других видов программного обеспе-

    2. Каковы функции операционной системы?

    3. Охарактеризуйте основные ступеньки эволюции операционных систем.

    4. Каково содержание понятий

    процесс?

    ресурс?

    виртуализация?

    прерывание?

    5. Охарактеризуйте функции основных компонент операционных систем.

    6. В чем состоит назначение файловой системы ОС?

    7. Что такое файл? Какие структуры файлов поддерживаются различными ОС?

    8. Что такое каталог (директорий)? Для чего каталоги служат?

    9. Какие операции над файлами обеспечиваются операционными системами?

    10. Охарактеризуйте команды операционной системы MS DOS.

    11. Опишите интерфейс оболочки ОС Norton Commander.

    12. Охарактеризуйте стиль работы с помощью оболочки Windows.

    13. По каким показателям Windows"95 превосходит Windows 3.11?

    14. Опишите типичное окно Windows"95.

    15. Какие функции выполняют меню Пуск? Поиск?

    16. Как вызвать динамическое меню и каковы его возможности?

    § 2. ПОНЯТИЕ О СИСТЕМЕ ПРОГРАММИРОВАНИЯ

    2.1. ОСНОВНЫЕ ФУНКЦИИ И КОМПОНЕНТЫ

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

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

    трансляторы с языков высокого уровня;

    средства редактирования, компоновки и загрузки программ;

    макроассемблеры (машинно-ориентированные языки);

    отладчики машинных программ.

    Системы программирования, как правило, включают в себя

    текстовый редактор (Edit ), осуществляющий функции записи и редактирования исходного текста программы;

    Загрузчик программ (Load ), позволяющий выбрать из директория нужный текстовый файл программы;

    запускатель программ (Run ), осуществляющий процесс выполнения программы;

    компилятор (Compile), предназначенный для компиляции или интерпретации исходного текста программы в машинный код с диагностикой синтаксических и семантических (логических)

    отладчик (Debug), выполняющий сервисные функции по отладке и тестированию про-

    диспетчер файлов (File ), предоставляющий возможность выполнять операции с файлами:сохранение, поиск, уничтожение и т.п.

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

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

    Процедурные языки разделяют на языки низкого и высокого уровня.

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

    Рис. 2.9. Общая классификация языков программирования

    Программы на языках высокого уровня близки к естественному (английскому) языку и представляют набор заданных команд.

    Перечислим наиболее известные системы программирования.

    1. Фортран (FORmula TRANslating system - система трансляции формул); старейший и по сей день активно используемый в решении задач математической ориентации язык.

    2. Бейсик (Beginner"s All-purpose Symbolic Instruction Code - универсальный символический код инструкций для начинающих); несмотря на многие недостатки и изобилие плохо совместимых версий - самый популярный по числу пользователей.

    3. Алгол (ALGOrithmic Language - алгоритмический язык); сыграл большую роль в теории, но для практического программирования сейчас почти не используется.

    4. ПЛ/1 (PL/I Programming Language - язык программирования первый). Многоцелевой язык; сейчас почти не используется.

    5. Си (С - «си»); широко используется при создании системного программного обеспече-

    6. Паскаль (Pascal - назван в честь ученого Блеза Паскаля); чрезвычайно популярен как при изучении программирования, так и среди профессионалов. На его базе созданы несколько более мощных языков (Модула, Ада, Дельфи).

    7. Кобол (COmmon Business Oriented Language - язык, ориентированный на общий бизнес);

    в значительной мере вышел из употребления.

    8. Дельфи (Delphi) - язык объектно-ориентированного «визуального» программирования; в данный момент чрезвычайно популярен.

    9. Джава (Java) - платформенно-независимый язык объектно-ориентированного программирования, чрезвычайно эффективен для создания интерактивных веб-страниц.

    Среди непроцедурных языков наиболее известны

    1. Лисп (Lisp);

    2. Пролог (PROgramming in LOGic);

    3. Оккам (назван в честь философа У. Оккама).

    Широкое распространение среди разработчиков программ, а также при обучении програм-

    мированию, получили системы программирования «Турбо» (Turbo) фирмы Borland, ядром которых являются трансляторы с языков программирования Бейсик, Паскаль, Си, Пролог и др. Интерфейс Турбо-оболочки для любых систем программирования внешне совершенно одинаков и предоставляет пользователю стандартный набор функций и команд, описанных выше и отображаемых в главном меню системы.

    Рассмотрим технологию разработки программ с использованием популярной системы программирования Турбо-Паскаль 7 (оставив знакомство с самим языком до следующей главы).

    В подобных интегрированных системах программирования сделана попытка предоставить разработчику программ максимум сервисных возможностей. Помимо основных функций система Турбо-Паскаль 7 позволяет настроить компилятор на работу в трех режимах: обычном режиме MS DOS (Real), защищенном режиме (Protected) и в режиме операционной среды Windows (Windows).

    После загрузки системы (файл TURBO. EXE), на экране монитора появляется интерфейсное окно, рис. 2.10.

    Рис. 2.10. Вид экрана интегрированной среды Турбо-Паскаля версии 7 (монтаж)

    Главное меню системы (верхняя строка экрана) содержит команды, которые позволяют осуществлять следующие виды работ:

    Работа с файлами (сохранение, загрузка, связь с операционной

    системой);

    Работа с текстовым редактором (после загрузки системы по умолчанию

    текстовый редактор находится в активном состоянии);

    Поиск и замена фрагментов текста;

    Запуск программы на выполнение;

    Компиляция программы и установка параметров компиляции;

    Установка параметров отладки программы;

    Инструментальные программные средства (ненавязчивый сервис);

    Установка опций интегрированной среды;

    Работа с окнами;

    Система помощи и подсказок.

    Для начала работы с системой программирования необходимо иметь проект текста программы, который можно набирать на рабочем поле окна системы. Встроенный текстовый редактор прост и максимально приспособлен для набора текстов программ на языке Паскаль. В нем предусмотрена специальная подсветка управляющих структур, команд. Удобна система контекстной помощи (Shift+Fl), которая вызовет подсказку по набираемому текущему тексту программы в любой момент и в любом месте. Впрочем, текст программы можно приготовить в любом текстовом редакторе, хранящем тексты в ASCII-кодах (например, в Лексиконе); необходимо лишь снабдить имя файла расширением.pas.

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

    После окончания формирования текста необходимо откомпилировать программу (пункт меню Compile). Если в программе есть ошибки, то компилятор их укажет. После исправления ошибок можно снова повторить компиляцию.

    После удачной компиляции запуск программы осуществляется командой меню Run.

    Но на этом этапе чаще всего работа не заканчивается. Сложные алгоритмы требуют тестирования и отладки. Многие программы составляются из отдельных модулей, требуют связи с дру-

    гими программами и системами и т.д. Для решения всех этих проблем предназначены другие команды системы (Debug ,Options и пр.).

    Разумеется, программисту, работающему на Паскале, нет нужды самому программировать такие непростые, но часто встречающиеся операции, как вычисление значений математических функций, построение изображений простых геометрических объектов (отрезков прямых, окружностей и т.д.), очистка экрана и множество других. Высокоэффективные, тщательно отлаженные программы таких действий сведены в стандартные модули и надо лишь уметь к ним обратиться. В состав пакета библиотек стандартных модулей входят: Crt - работы с экраном,Graph -работы с графикой и другие, такие какOverlay ,String ,System ,Turbo3 ,WinAPI, WinCrt, WinDos,

    WinPrn, WinTypes, WinProcs.

    2.2. ТРАНСЛЯЦИЯ ПРОГРАММ И СОПУТСТВУЮЩИЕ ПРОЦЕССЫ

    С появления первых компьютеров программисты серьезно задумывались над проблемой кодирования компьютерных программ. Уже с конца 40-х годов стали появляться первые примитивные языки программирования высокого уровня. В них программист записывал решаемую задачу в виде математических формул, а затем, используя специальную таблицу, переводил символ за символом, преобразовывал эти формулы в двухлитерные коды. В дальнейшем специальная программа (впоследствии названная интерпретатором) превращала эти коды в двоичный машинный код. Первый компилятор был разработан Г. Хоппер в начале 50-х годов; он осуществлял функцию объединения команд и в ходе трансляции производил организацию подпрограмм, выделение памяти компьютера, преобразование команд высокого уровня (в то время псевдокодов) в машинные команды. В дальнейшем компиляторы и интерпретаторы для языков Ассемблера стали развиваться и прочно вошли в практику компьютерного дела.

    Идеи трансляции (перекодирования) одних символов в другие легли в основу создания различных языков программирования с соответствующими трансляторами - компиляторами и/или интерпретаторами. Отличие компиляторов от интерпретаторов заключается в процедуре трансляции текста в машинный код. Компилятор преобразует весь текст программы в последовательный набор машинных команд, который в дальнейшем отправляется на выполнение (пример компилятора с языка Паскаль). Интерпретатор же осуществляет трансляцию по принципу синхронного перевода. Каждая отдельная строка программного текста транслируется, а затем, после ее интерпретации, команды этой строки выполняются (пример языка Бейсик). Современные трансляторы с языков программирования высокого уровня, систем управления базами данных интегрируют в себе возможности и достоинства компиляторов и интерпретаторов, а в системы программирования добавляют различные сервисные утилиты по трансляции и отладке создаваемых программ.

    Важнейшим элементом в развитии систем программирования выступили подпрограммы. Появление аппарата подпрограмм существенно облегчило процесс разработки системных и прикладных программ. Подпрограммы позволили формировать библиотеки из наиболее часто употребляемых в программах алгоритмов -процедур и функций. В системах программирования обязательно присутствуют стандартные (встроенные в систему) библиотеки подпрограмм. Например, в их число входят подпрограммы вычисления математических функций sin(х), cos(x), abs(х) и др.

    В настоящее время распространены пользовательские и прикладные библиотеки подпрограмм. Их число увеличивается. Меняется структура библиотечных подпрограмм. В современных языках получили распространение модули (Unit ), представляющие специализированные пакеты взаимосвязанных подпрограмм определенного предназначения, например по работе с клавиатурой, с графикой и пр. Развитие объектно-ориентированного программирования позволило создавать библиотеки объектов и подпрограмм с объектными типами данных (Object ). Примером могут служить оболочки типаTurboVision .

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

    Рассмотрим один из вариантов трансляции программы с языка программирования Паскаль. Исходный текст программы решения квадратного уравнения представлен ниже:

    Слышали ли вы когда либо такое утверждение, что "нельзя сделать динамическое выпадающее меню исключительно на CSS для IE"? Уверен, что да. И что, вы-таки верите этому? Правильно, лучше не верьте.

    Цель, которой мы хотим достичь в этой статье

    Цель данной статьи - сделать выпадающее меню для IE, сделанное исключительно на CSS. Начав с этой постановки, я расширил задачу до того, чтобы заставить работать такое меню в других наиболее известных браузерах (прим. пер.: из комментариев выясняется, что этими браузерами являются Opera 7.x и последние версии Firefox).

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

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

    Вообще-то я думал о том, чтобы пометить эту статью как для "углубленного изучения (advanced)". Но я уверен, что даже не самые опытные разработчики хорошо поймут то, что написано в статье. Короче, читатель просто обязан знать основы CSS и
    HTML.

    Чем это меню отличается от всех других?

    Я долго искал в сети меню, которые были бы сделаны на CSS, но не нашел ни одного решения, которое бы работало без глюков в IE. Однако же я нашел много интересных идей, которые и привели меня к тому результату, который будет здесь описан. Да, мой код тоже не совершенен, но у меня попросту нет времени, чтобы выправить все ошибки. Самое интересное альтернативное решение из всех, что я видел (которые используют CSS), основано на использовании псевдокласса hover для элементов LI. А я-то никогда и не думал, что такое возможно, впрочем, как и не думал о том, что вообще возможно сделать выпадающее меню для IE без скриптов...

    Основным отличием между моим и другими меню является то, что мое работает в IE. Все решения, которые я видел, используют элемент LI как основной элемент для псевдокласса:hover, однако Microsoft решила, что этот псевдокласс может быть использован только для
    элемента A. Большинство сайтов делают оговорку, что их меню работают только в браузерах Opera 7.x или Mozilla. Но ведь эти браузеры используются только пятью процентами пользователей! Да, такие меню хороши в этих браузерах, но к сожалению не могут быть видны в большинстве самых распространенных браузеров. Сейчас мы исправим это недоразумение.

    Что такое меню, сделанное с помощью только CSS?

    Это динамическое меню, для создания которого используется только CSS, и не используются скрипты (например, написанные на JavaScript).

    Что, не верится?

    Давайте рассмотрим код:

    < STYLE type = text / css id = "default" title = "default" name = "default" >
    *::- moz - any - link br ,*:- moz - any - link br {
    /*a workarround for mozilla*/
    display : none ;
    }

    div #menu * {
    cursor : pointer ; /*because IE displays the text cursor
    if the link is inactive*/
    }

    Disabled {
    color : red ! important ;
    background : none ! important ;
    }

    Div #menu {
    background : #F5F5DC;

    height : 15px ;
    white - space : nowrap ;
    width : 100 %;
    }

    Div #menu .a {
    background : #F5F5DC;
    border : 1px solid #F5F5DC;
    color : #000000;
    text - decoration : none ;
    }

    Div #menu .a table {
    display : block ;
    font : 10px Verdana , sans - serif ;
    white - space : nowrap ;
    }

    Div #menu table, div#menu table a {
    display : none ;
    }

    Div #menu .a:hover, div#menu div.menuitem:hover {
    background : #7DA6EE;
    border : 1px solid #000080;
    color : #0000FF;
    margin - right :- 1px ; /*resolves a problem with Opera
    not displaying the right border*/
    }

    Div #menu .a:hover table, div#menu div.menuitem:hover table{
    background : #FFFFFF;
    border : 1px solid #708090;
    display : block ;
    position : absolute ;
    white - space : nowrap ;
    }

    Div #menu .a:hover table a, div#menu div.menuitem:hover table a {
    border - left : 10px solid #708090;
    border - right : 1px solid white ; /*resolves a jump problem*/
    color : #000000;
    display : block ;
    padding : 1px 12px ;
    text - decoration : none ;
    white - space : nowrap ;
    z - index : 1000 ;
    }

    Div #menu .a:hover table a:hover, div#menu div.menuitem:hover table a:hover {
    background : #7DA6EE;
    border : 1px solid #000000;
    border - left : 10px solid #000000;
    color : #000000;
    display : block ;
    padding : 0px 12px ;
    text - decoration : none ;
    z - index : 1000 ;
    }

    Td {
    border - width : 0px ;
    padding : 0px 0px 0px 0px ;
    }

    Menuitem {
    float : left ;
    margin : 1px 1px 1px 1px ;
    padding : 1px 1px 1px 1px ;
    }

    Menuitem * {
    padding : 0px 0px 0px 0px ;
    }

    #other {

    }

    #moz{

    }

    #moz::-moz-cell-content{
    height : auto ; visibility : visible ;
    }

    #other::-moz-cell-content{
    height : 1px ; visibility : hidden ;
    }

    #holder {
    width : 100 %;
    }

    < TABLE id = holder >
    < TR >
    < TD id = "other" >
    < DIV id = "menu" >
    < DIV class= "menuitem" >
    < a class= "a" href = "#" > File < BR >
    < TABLE >
    < TR >
    < TD >< a href = #2>click me

    в
    элементе , на который наводится указатель мыши. Далее следует трюк с таблицей, свойство "display" которой равняется "none" (т.е. она невидима). Таблица находится между тэгами якорей (,). По словам Microsoft, это может вызвать неадекватную реакцию IE, но я ничего такого не заметил.

    Почему мы используем таблицу? А потому, что что она очень хорошо разделяет вложенные якоря, которые мы хотим задействовать из основного якоря. Такое решение не работает в Mozilla 0.7 и даже с помощью JavaScript я еще не нашел способа реализовать это. Прямое вложение якорей не допускается Microsoft, поэтому элемент table - это своеобразный хак для IE. И, насколько я знаю, только таблицы позволяют таким образом "провести" IE.

    Итак, что у нас тут имеется? 2 таблицы с якорями внутри якорей.

    < A class= "a" href = "#11" > Help < BR >
    < TABLE cellpadding = "0" cellspacing = "0" border = "0" >
    < TR >
    < TD >< a href = "#12" > Howto

    < TR >
    < TD >< a href = "#13" > Index

    < TR >
    < TD >< a href = "#14" > About

    Которые являются скрытыми.

    div #menu .a table {
    display : none ;
    z - index :- 1 ;
    }

    Браузер показывает содержимое якоря при наведении указателя мыши и применяет в этом случае соответствующий стиль:

    div #menu .a:hover {
    background : #7DA6EE;
    border : 1px solid black ;
    color : black ; z - index : 0 ;
    }

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

    div #menu .a:hover table{
    background : White ;
    display : block ;
    position : absolute ;
    width : 125px ; z - index : 0 ;
    border : 1px solid #708090;
    }

    Для ссылок внутри подменю:

    div #menu .a:hover table a {
    display : block ;
    color : Black ;
    text - decoration : none ;

    }

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

    Для ссылок внутри подменю:

    div #menu .a:hover table a:hover {
    display : block ;
    background : #7DA6EE;
    color : black ;
    text - decoration : none ;
    padding : 0px 11px ;
    border : 1px solid black ; z - index : 1000 ;
    visibility : visible ;
    }

    Стиль ссылок в выпадающем меню:

    div #menu .a:hover table a {
    display : block ;
    color : Black ;
    text - decoration : none ;
    padding : 1px 12px ; z - index : 1000 ;
    }

    Возможно, вы заметили, что я испольщовал несколько свойств "z-index" для некоторых элементов. Они являются хаками для некоторых проблем, которые я нашел при тестировании меню.

    Усовершенствования

    Для того, чтобы добавить подуровни в выпадающее меню нужно просто вставить еще один элемент div ".menuitem" (вместе с его содержимым и аналогичной структурой) вместо ссылки в родительскую таблицу.
    Теперь, когда у вас есть подуровни в меню, вам нужно будет удалить тэги
    , чтобы дать меню "нормально выезжать". В дополнение к этому, вам нужно будет сделать несколько копий классов.menuitem и.a с одинаковыми свойствами, но разными именами для каждого подменю.
    Да, похоже поработать придется много, НО вы можете просто добавить их селекторы в соответствующую секцию таблицы стилей.

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

    Переключение стилей (Скины)

    Если вы хотите добавить скины для вашего меню с возможностью их смены самим пользователем, вам нужно будет добавить дополнительные таблицы стилей и дать им имена с id="some_name" (для IE) и с именами name="some_name" (для остальных браузеров). Для того, чтобы не применялись оба стиля, вам нужно заблокировать все стили, кроме стилей по умолчанию, путем добавления параметра "disabled" в стиль тэга (причем не имеет значения, связываете ли вы его или используете линейный синтаксис). Mozilla и Opera позволяют переключение поименованных стилей из браузера. Как правило, эти браузеры не применяют все стили, которые определены именем name="..." и игнорируют id="...". Также они умеют использовать имя name="default" как таблицу стилей по умолчанию и name="alternate" в качестве альтернативной таблицы стилей. Вы можете определить имя стиля, которое пользователь будет видеть как свойство title="...". Например, демонстрационная версия меню на этой странице включает следующие определения:

    < STYLE type = text / css id = "alternate" title = "Blue" name = "alternate" disabled >
    ...< STYLE >
    < STYLE type = text / css id = "default" title = "Default" name = "default" >
    ...< STYLE >

    Обратите внимание на порядок присвоения имен, я настойчиво рекомендую строго ему следовать.

    IE не имеет встроенного переключения стилей CSS, поэтому нам придется его сделать самим (тут уже не без использования JavaScript):

    Выберите один из стилей, кликнув на соответствующий, и вернитесь вверх, чтобы увидеть
    изменения:

    onclick = "document.styleSheets("default").disabled=false;document.styleSheets("alternate").disabled=true;" > Стиль
    по умолчанию

    Onclick = "document.styleSheets("alternate").disabled=false;document.styleSheets("default").disabled=true;" > Голубой

    Onclick = "document.styleSheets("alternate").disabled=true;document.styleSheets("default").disabled=true;" > Без
    стилей

    Это делается так:

    < ul >
    < li onclick = "document.styleSheets("default").disabled=false;
    document.styleSheets("alternate").disabled=true;"
    >
    < a >Default

    < li onclick = "document.styleSheets("alternate").disabled=false;
    >
    < a > Blue

    < li onclick = "document.styleSheets("alternate").disabled=true;
    document.styleSheets("default").disabled=true;"
    >
    < a > No Stylesheet

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

    Заключение

    Я советую всем использовать меню на основе CSS на ваших сайтах (и в веб-приложениях), потому что таким образом можно избежать многих проблем, которые появляются при использовании меню на основе JavaScript. Такие проблемы, как правило, возникают при неправильной обработке событий в IE. Более того, в некоторых браузерах имеется возможность отключения скриптов, и уж тем более многие браузеры не поддерживают JS от Microsoft.

    Если же браузер не поддерживает CSS, то он по крайней мере будет отображать все ссылки.

    Известные ошибки

    По умолчанию ссылки в подменю не работают в Mozilla. Но я нашел более-менее приемлемое решение этой ошибки. Оно основано на вставке специального меню, опять-таки без использования скриптов. Просмотрите внимательно те места кода, где упоминается Mozilla (или "moz"). Вы увидите, что HTML разделы не имеют вложенных якорей (последний тэг помещен туда, где он и должен находиться). В первой части CSS я использую недокументированные селекторы - это специальные селекторы для Mozilla, и добавляю селектор:hover для тех элементов div, которые поддерживаются Mozilla. И все равно после этого поведение остается не совсем корректным.

    В комментариях есть замечание (от Nick Young), что меню не работает в Netscape. я уверен, что проблема там в том же, что и в Mozilla. Надо искать дополнительную информацию об этом. Решение возможно потребует некоторых изменений, потому что альтернативный код должен нормально работать и в Netscape.

    Замечания:

    Страница была протестирована в IE версий 5, 5.5, 6, в Opera 7.23 и Mozilla 0.71. Скорее всего, меню будет работать и в более ранних версиях указанных браузеров.