Представляемая книга содержит опыт, накопленный автором за время работы преподавателем информатики в школе. Десять лет назад мы учили школьников работать на программируемых калькуляторах, сегодня — на самой современной вычислительной технике. Но, в любом случае, убеждение, что преподавание основ программирования в школе необходимо, осталось до сих пор, хотя и претерпело какие-то изменения.
Алгоритмизация мышления позволяет человеку выживать в бушующем море информации, формирует системный подход к любым жизненным ситуациям.
Кроме того, за этот десятилетний период работы в школе автору очень редко приходилось встречать хорошие задачники по программированию, которые были бы насыщены разнообразными примерами. А еще, полагая, что Бейсик сейчас преподается в большинстве своем школьникам и, по опыту зная, насколько им интереснее "живые", не сухие задания, автор попытался вести разговор с читателем на понятном им языке, включая иногда и какие-то сленговые компьютерные словечки.
В данной книге, в предисловии вашему вниманию предлагается ряд сведений о языках программирования, в т. ч. и о языке Бейсик. В первой части вы найдете большой набор авторских и творчески обработанных задач, охватывающих все основные разделы программирования на языке начинающих программистов — Бейсик. Задачи сгруппированы по темам и, в основном, расположены по степени возрастания сложности.
Во второй части вы сможете найти решения некоторых задач с необходимыми пояснениями, а в приложениях самые любознательные отыщут много интересных дополнительных сведений об изучаемом языке и представлении информации в компьютере.
Название "Каскадные таблицы стилей" происходит от английского Cascading Style Sheets, аббревиатурой которого является CSS. Впервые стили появляются в HTML 4.0 для определения представления элементов HTML и решения проблем представления документов. Стили обычно хранятся в таблицах стилей: могут быть определены как внутри HTML-документа, так и в специальном файле с расширением css. Используя отдельные файлы для хранения таблиц стилей, можно существенно сократить объем работы. Также можно определить несколько стилей, которые, подчиняясь существующим правилам, будут каскадно задавать один определенный стиль.
Реестр становится необходимым уже на начальных этапах загрузки Windows NT/2000. Проблемы при загрузке могут быть вызваны, в том числе, и повреждением реестра. Например, многие пользователи Windows NT/2000 могли испытать шок, получив в процессе загрузки сообщение следующего вида:
Windows 2000 Could not start because the following file is missing or corrupt:
\WINNT\SYSTEM32\CONFIG\SYSTEM
You can attempt to repair this file by Starting Windows NT Setup using the original Setup floppy disk or CD-ROM. Select 'r' at the first screen to repair.
Появление такого сообщения свидетельствует об отсутствии или повреждении важной части реестра Windows NT/2000 — файла куста (hive) разделов реестра SYSTEM (речь о принципах хранения реестра пойдет далее в этой главе). Приведенный пример убедительно демонстрирует, что единственная ошибка в системном реестре может не только повлиять на всю конфигурацию, но и сделать невозможным запуск операционной системы. Помимо этого, добиться корректной работы некоторых приложений можно также лишь через редактирование реестра. Таким образом, важность навыка редактирования реестра нельзя недооценивать.
Непосредственное редактирование реестра, даже в тех случаях, когда оно необходимо, при неумелом выполнении может привести к большим неприятностям. Поэтому, если вы чувствуете себя неуверенно или просто не можете позволить себе затратить значительное время для проведения восстановительных работ, не ставьте смелых экспериментов над реестром своей операционной системы (будь то Windows NT 4.0 или Windows 2000). Вполне возможно, что единственная ошибка приведет к необходимости переустановки операционной системы.
Для выполнения задач по конфигурированию системы, по мере возможности, рекомендуется использовать административные утилиты, так как их применение всегда предпочтительнее непосредственного редактирования реестра. Этот метод намного безопаснее, поскольку административные средства не позволяют сохранять в реестре некорректные значения. Если в процессе редактирования реестра с помощью одного из редакторов реестра будет допущена ошибка, редактор сохранит некорректное значение, а вы не получите даже предупреждения, так как редакторы реестра не распознают и не исправляют такие ошибки.
Все современные операционные системы из семейства Windows — Windows 95/98, Windows NT 4.0 и Windows 2000 — имеют в своем составе утилиты, предназначенные для просмотра и редактирования реестра, так называемые редакторы реестра. В Windows NT/2000 существует два таких редактора. Традиционная программа редактирования реестра Windows NT носит название Regedt32.exe. Эта программа наследуется от предыдущих версий Windows NT и позволяет редактировать реестр Windows NT/2000 методами, которые не поддерживаются в Windows 95/98. Более новая программа, Regedit.exe, была первоначально написана для Windows 95. Она обладает многими из возможностей Regedt32.exe и снабжена интерфейсом Windows Explorer. Версия Regedit, которая имеется в составе Windows NT/2000, почти полностью идентична аналогичному приложению, имеющемуся в составе Windows 95/98.
MIDI (Musical Instrument Digital Interface - "цифровой интерфейс музыкальных инструментов) - стандарт, предложенный в 1983 г. фирмой "Roland" и тогда же утвержденный. Стандарт определялся как интерфейс обмена цифровой информацией между различными музыкальными устройствами, его поддерживающими. Стандарт MIDI был установлен благодаря усилиям производителей электронных музыкальных инструментов (ЭМИ), и жестко определял протокол передачи информации между ЭМИ, а также различными дополнительными устройствами - секвенсорами, семплерами и т.д. Передача данных в интерфейсе осуществляется аналогично тому, как это происходит в последовательном интерфейсе ПК - т.е. порциально, в виде отдельных коротких сообщений. Электрически интерфейс MIDI представляет собой соединение типа "токовая петля".
При переключении портов COM1 или COM2 в режим совместимости с MIDI-интерфейсом частота тактирования приемопередатчика порта повышается, чтобы при настройке на стандартную скорость 28800 бит/с (делитель частоты 4) порт фактически работал на стандартной для MIDI скорости 31250 бит/с. Однако это не делает последовательный порт программно совместимым с MIDI-портом звуковых карт; понадобится еще и программная поддержка обычного COM-порта.
PHP, "PHP: Hypertext Preprocessor/Гипертекстовый Препроцессор", широко используемый Открытый Ресурс, язык скриптинга (сценариев) общего назначения, который особенно подходит для Web и может быть внедрён в HTML. Его синтаксис происходит от C, Java и Perl и лёгок для понимания и изучения.
Главной целью создания этого языка является: дать web-разработчикам возможность быстро создавать динамически генерируемые страницы для web, но вы можете сделать с помощью PHP гораздо больше.
Этот учебник состоит в основном из справочника по функциям, но содержит также справочник по языку, разъяснения по некоторым основным возможностям языка PHP и другую сопутствующую информацию.
Компонент TStoredProc используется для выполнения из приложений C++ Builder хранимых процедур, содержащихся на серверах баз данных. Хранимая процедура представляет собой скомпилированную программу на процедурном расширении языка SQL, характерном для выбранного сервера. Хранимые процедуры могут возвращать наборы данных, основанные на выполнении запроса, если такие процедуры поддерживаются выбранным сервером (в этом случае TStoredProc может использоваться так же, как TQuery, и, так как при этом не требуется компиляция запроса сервером, использование TStoredProc может повысить производительность выполнения выбора данных), могут возвращать числовые параметры (в этом случае эти параметры можно использовать в приложении) и могут ничего не возвращать, а выполнять какие-либо действия на сервере баз данных. Хранимые процедуры также могут иметь входные параметры, передаваемые им из клиентского приложения.
Словосочетание "информационная безопасность" в разных контекстах может иметь различный смысл.
В Доктрине информационной безопасности Российской Федерации термин "информационная безопасность" используется в широком смысле. Имеется в виду состояние защищенности национальных интересов в информационной сфере.
В Законе РФ "Об участии в международном информационном обмене" информационная безопасность определяется аналогичным образом – как состояние защищенности информационной среды общества, обеспечивающее ее формирование, использование и развитие в интересах граждан, организаций, государства.
В данном курсе наше внимание будет сосредоточено на хранении, обработке и передаче информации вне зависимости от того, на каком языке (русском или каком-либо ином) она закодирована, кто или что является ее источником и какое психологическое воздействие она оказывает на людей. Поэтому термин "информационная безопасность" будет использоваться в узком смысле.
Спецификация и тестирование систем с асинхронным интерфейсом
В работе рассматривается метод спецификации и тестирования систем с асинхронным интерфейсом при помощи технологии UniTesK. Определяются математические модели, лежащие в основе метода, и подходы к решению основных задач тестирования для систем с асинхронным интерфейсом. Предлагается унифицированная архитектура теста, определяющая архитектуру всех тестовых систем, построенных в соответствии с предложенным методом. Описывается реализация поддержки метода в наборе инструментов CTesK и опыт применения метода, полученный в шести проектах по тестированию различного программного обеспечения.
Язык PHP был разработан как инструмент для решения чисто практических задач. Его создатель, Расмус Лердорф, хотел знать, сколько человек читают его online-резюме, и написал для этого простенькую CGI-оболочку на языке Perl, т.е. это был набор Perl-скриптов, предназначенных исключительно для определенной цели – сбора статистики посещений.
Для справки. CGI (Common Gateway Interface – общий интерфейс шлюзов) является стандартом, который предназначен для создания серверных приложений, работающих по протоколу HTTP. Такие приложения (их называют шлюзами или CGI-программами) запускаются сервером в режиме реального времени. Сервер передает запросы пользователя CGI-программе, которая их обрабатывает и возвращает результат своей работы на экран пользователя. Таким образом, посетитель получает динамическую информацию, которая может изменяться в результате влияния различных факторов. Сам шлюз (скрипт CGI) может быть написан на различных языках программирования – Cи/C++, Fortran, Perl, TCL, UNIX Shell, Visual Basic, Python и др.
Вскоре выяснилось, что оболочка обладает небольшой производительностью, и пришлось переписать ее заново, но уже на языке Си. После этого исходники были выложены на всеобщее обозрение для исправления ошибок и дополнения. Пользователи сервера, где располагался сайт с первой версией PHP, заинтересовались инструментом, появились желающие его использовать. Так что скоро PHP превратился в самостоятельный проект, и в начале 1995 года вышла первая известная версия продукта, называвшаяся Personal Home Page Tools (средства для персональной домашней страницы). Средства эти были более чем скромными: анализатор кода, понимающий всего лишь несколько специальных команд, и набор утилит, полезных для создания гостевой книги, счетчика посещений, чата и т.п.
Еще живы люди, которые помнят младенческие годы кино. В их памяти еще свежи споры о том, считать ли кино искусством и станет ли оно когда-нибудь в один ряд с литературой, театром, музыкой, живописью. Они помнят эстетическое потрясение, вызванное увиденными впервые «Броненосцем «Потемкиным» и «Золотой лихорадкой». На их глазах прошли этапы технического развития кинематографа — от немого к звуковому,. цветному, широкоформатному.
За короткий срок выразительные средства десятой музы проделали огромную эволюцию — от первых съемок Люмьеров и кинофеерий Мельеса к художественной сложности современного фильма. Киноискусство изменяется с каждым десятилетием, если не с каждым годом, и в этом подтверждение огромных, еще не открытых до конца возможностей использования его художественных средств. Эти изменения происходят не в вакууме, не в тиши лабораторий, но в идеологической борьбе, в сложном взаимодействии с другими искусствами и между кинематографиями разных стран.
От наивной фотографической регистрации действительности, от съемки прибытия поезда или кормления младенца кино пришло к совершенной технике передачи внутреннего мира человека, потока его мыслей и воображения средствами, присущими только киноискусству.
В Законе РФ "Об участии в международном информационном обмене" информационная безопасность определяется аналогичным образом – как состояние защищенности информационной среды общества, обеспечивающее ее формирование, использование и развитие в интересах граждан, организаций, государства.
В данном курсе наше внимание будет сосредоточено на хранении, обработке и передаче информации вне зависимости от того, на каком языке (русском или каком-либо ином) она закодирована, кто или что является ее источником и какое психологическое воздействие она оказывает на людей. Поэтому термин "информационная безопасность" будет использоваться в узком смысле, так, как это принято, например, в англоязычной литературе.
Под информационной безопасностью мы будем понимать защищенность информации и поддерживающей инфраструктуры от случайных или преднамеренных воздействий естественного или искусственного характера, которые могут нанести неприемлемый ущерб субъектам информационных отношений, в том числе владельцам и пользователям информации и поддерживающей инфраструктуры. (Чуть дальше мы поясним, что следует понимать под поддерживающей инфраструктурой.)
Защита информации – это комплекс мероприятий, направленных на обеспечение информационной безопасности.
Непременное условие успеха технологии Web лежит в ее способности связывать ресурсы. То, что "Всемирная паутина" опирается на признанный гоферовский протокол, может быть объяснено хотя бы тем, что HTML позволяет вставлять в документы ссылки гипертекста. С их помощью можно помещать изображения на страницы документов, а также переходить от одного документа к другому или же от одной его части к другой. С учетом того, что XML может быть преобразован в HTML для последующего просмотра, синтаксис, который, используется в HTML для задания связей, может быть перенесен и в XML.
Язык "C" является универсальным языком программирования. Он тесно связан с операционной системой "UNIX" , так как был развит на этой системе и так как "UNIX" и ее программное обеспечение написано на "C". Сам язык , однако, не связан с какой-либо одной операционной системой или машиной; и хотя его называют языком системного программирования, так как он удобен для написания операционных систем , он с равным успехом использовался при написании больших вычислительных программ, программ для обработки текстов и баз данных.
Язык "C" - это язык относительно "низкого уровня". В такой характеристике нет ничего оскорбительного; это просто означает, что "C" имеет дело с объектами того же вида, что и большинство ЭВМ, а именно, с символами, числами и адресами. Они могут объединяться и пересылаться посредством обычных арифметических и логических операций, осуществляемых реальными ЭВМ.
После повторения достаточно большого количества трансиверов, описанных в отечественной радиолюбительской литературе, этот вариант возник как “симбиоз” из отработанных и опробованных узлов. Основные его особенности это применение модификаций ковельских синтезаторов и довольно мощного выходного каскада на транзисторах. В итоге получился аппарат с весьма неплохими характеристиками, достаточно удобный в работе, Это чисто “сетевой” трансивер без возможности работы от аккумуляторов. Проблемы с электроэнергией в последние годы вынудили разработать еще несколько вариантов основных плат и трансиверов с однополярным питанием 12-13,8V. Этой темы в данной публикации пока касаться не буду, возможно, что следующее издание будет целиком посвящено вопросу трансивера с питанием от аккумуляторов. Такой трансивер создан в 1996 году и прошел испытание у многих радиолюбителей. Описываемый трансивер отрабатывался в 1994 году и на настоящий момент опробован в различных условиях. Упор был сделан на аппарат для повседневной работы. Хотя со слов UA6LPN он неплохо подходит и для DX работы, RV6AQ сравнивал с Р160 во время соревнований отдал предпочтение трансиверу как более удобному из-за сервиса синтезатора. Опасения в надежности транзисторного выходного каскада оказались напрасны. При выходной мощности до 100Вт выдерживается любой КСВ. Во время демонстрации возможностей, можно спокойно давать полную выходную мощность на всех девяти диапазонах на какую-нибудь “веревку”.