Библиотека

Теология

Конфессии

Иностранные языки

Другие проекты







Ваш комментарий о книге

Мусаев А. Библия для адъюнктов и соискателей. Как подготовить и защитить кандидатскую диссертацию: методическое пособие

ОГЛАВЛЕНИЕ

ГЛАВА 2.
ОРГАНИЗАЦИЯ НАУЧНОЙ РАБОТЫ

"Все как один - на кросс. Не можешь бежать - ползи, но иди."
Важнейшей предпосылкой успешного завершения диссертационных исследований является правильная организация научной работы. В ее основе лежит строгое временное планирование как самой работы над диссертацией, так и связанных с нею процессов. Ведь подготовка и представление в Совет хорошо написанного тома составляют лишь часть выполнения комплексной программы "Ученая Степень". Необходимо позаботиться еще о публикациях, апробациях, реализациях, о подготовке общественного мнения и все это - на фоне обязательной учебы в адъюнктуре, пробных лекций, нарядов, строевых смотров и прочих атрибутов военной жизни. Для соискателей - еще сложнее, ведь для них диссертационные исследования очень часто проходят под гневным взором непосредственного начальника, искренне уверенного в том, что его подчиненный занимается "не делом." Да и сама жизнь не снимает с адъюнктов и соискателей своих обязательных требований - семья, дети, здоровье, ремонт квартиры, техосмотр автомобиля и т.д. и т.п.
Единственный вариант "выжить и победить" в столь критической ситуации - тщательно планировать работу (и прочую жизнь) и неукоснительно следовать намеченному плану. Дневник-ежедневник (расписанный по часам) или органайзер должен стать неотступным спутником соискателя, а 10...12-часовой рабочий день без (или почти без) выходных - нормой повседневной жизни.

При планировании рабочего времени имеет смысл настраиваться на реальные (а не желаемые) временные затраты. Пессимистический опыт научного мира частично отражен в знаменитой "мэрфологии" [110]. Приведем некоторые из ее положений.
Правило Вестгеймера: чтобы определить, сколько времени потребует работа, возьмите время, которое, по-Вашему, на нее необходимо, умножьте на 2 и замените единицы измерения на единицы более высокого порядка. Так мы выделяем два дня на одночасовую работу.
Закон Грехэма: пустяковые вопросы решаются быстро, важные - никогда не решаются.
Закон Хардина: никогда не удается делать что-то одно.
Лемма Гроссмана: любую стоящую работу стоило делать вчера.
Производная от закона Мэрфи, предложенная Наггом: чем сложнее и грандиознее план, тем больше шансов, что он провалится.
Аксиома Дехая: простую работу откладывают, считая, что всегда найдется время сделать ее позже.

Нелишне заметить, что немаловажное значение в научной работе приобретают контроль и поддержание здоровья. Переутомление, невроз, головная боль, радикулит, геморрой и прочие сопутствующие "радости" научной карьеры являются не столько атрибутами интеллектуальной самоотдачи, сколько результатом отсутствия рациональной системы поддержания рабочего режима.
Подорвать здоровье очень легко, особенно когда мозг монопольно занят решаемой задачей и снижает качество управления вегетативной нервной системой. А вслед за снижением жизненного тонуса неизбежно падает и коэффициент полезного действия мозга. Следовательно, необходимо планировать и неукоснительно выполнять еженедельный план оздоровительных мероприятий - бег, баня с парилкой, система профилактических упражнений (зарядка, дыхательные упражнения, упражнения для глаз и т.п.), контрастный душ, самомассаж, даже йога и спорт в умеренных количествах.
Огромную помощь в организации научной работы может оказать компьютер. Сейчас уже трудно себе представить возможность подготовки диссертации без помощи всемогущего "Пентиума". Поэтому, исходя из требований времени, большая часть настоящего раздела будет посвящена обзору компьютерных технологий. Однако необходимо помнить, что до последнего времени "быстрые разумом невтоны" как-то обходились без персональной помощи персональных ЭВМ и тем не менее...


 

рганизация труда,
Поверь,
совсем не ерунда!
Работать нужно вкусно,
с чувством
Проникновения в искусство
Высоких сфер!
Твой труд достоин
Быть благолепно обустроен,
Комфорт - не роскошь,
только - средство,
И говорить о нем уместно
вполне.
Не трать же время зря,
Организовывай себя!

2.1. Компьютер - новая реальность

"Командир батальона пешком не ходит, он берет с собой
ГАЗ-66 или зампотеха."
Пожалуй, трудно найти что-либо еще, соизмеримое с компьютером по уровню значимости для научных исследований. Возможно, в какой-то степени создание компьютера можно сравнить по важности с изобретением бумаги и книг. И если применение больших ЭВМ, сыгравших немалую роль в прогрессе науки и технологий, в основном сводилось к решению расчетных задач и программному моделированию, то появление персональных ЭВМ (ПЭВМ) качественно изменило сам процесс научных исследований. Компьютер перестал быть просто рабочим инструментом ученого, он превратился в его среду обитания. Исследователь буквально погружается в некоторую сгенерированную им самим (!) информационную среду, и трудно найти более растерянного, рассерженного и обиженного человека, чем он, если внезапно выключается питание в электросети или почтенная супруга пытается заставить его срочно отобедать.
С изобретением ПЭВМ полуабстрактные измышления 70-х гг. о человеко-машинных системах стали превращаться в реальность. Действительно, основная характеристика человека - процесс мышления - неразрывно связана с наличием долговременной памяти и умением ею оперировать. Естественный процесс обращения к памяти крайне сложен, он осуществляется на бессознательном уровне и практически не управляем. Как правило, человек не в состоянии хранить в памяти все то, что ему хотелось бы; процесс забывания, защищающий мозг от перегрузки, достаточно интенсивен, и в первую очередь стирается информация, которая не используется в его повседневной деятельности. Что-то остается в подкорковых областях мозга, но чтобы восстановить когда-то проторенный путь, нужно снова погружаться в книги (которые не всегда есть под рукой) и в пыльные бумажные архивы, которыми каждый ученый-профессионал обрастает с удручающе высокой скоростью.
Таким образом, компьютер, никогда ничего не забывающий, аккуратно, "по полочкам" раскладывающий и хранящий драгоценные знания, к которым можно обратиться в любой момент времени и за доли секунды получить нужные сведения, превращается, по существу, в искусственное расширение памяти человека и, в конечном счете, в усилитель интеллектуальной деятельности. А если учесть, что современные ПЭВМ по вычислительной производительности существенно обогнали пресловутые ЭВМ ЕС (IBM 360), обслуживаемые целым штатом инженеров-электронщиков, то они становятся просто незаменимыми для исследовательских работ.
Наличие баз знаний и возможностей в плане моделирования и вычислений, разумеется, не исчерпывает всего потенциала возможностей компьютера. Так, с помощью электронного органайзера можно облегчить себе жизнь в вопросах контроля рабочего (и нерабочего) времени, а интегральные пакеты прикладных программ теоретически позволяют решать сложнейшие, математически сформулированные задачи без особого углубления в тайны вычислительной математики.
Активное внедрение CD-технологии предоставляет соискателям мощнейший математический инструментарий. Однако следует иметь в виду, что "это палка - о двух (а может и более) концах." В настоящее время высокоинтеллектуальные программные продукты создаются значительно быстрее, чем их может освоить бедный пользователь. И попытка разобраться хотя бы с технологиями их применения может нанести непоправимый удар по временному бюджету адъюнкта. Поэтому осваивать следует лишь то, что ДЕЙСТВИТЕЛЬНО нужно. Кроме того, в каждой программе необходимо использовать то, что лежит на поверхности и достаточно очевидно с точки зрения практического применения.

NB!: "Если ты схватил КамАЗ за задний мост, а он не остановился, - отпусти его!" . Прикладные программы предназначены для облегчения жизни homo sapiens, а не наоборот. Если освоение чьей-то программы требует слишком много времени, то не следует ее осваивать.


 

ерцающая магия экрана
Наркотиком восточного кальяна
Уводит в мир неведомых пространств,
В мир,
где для всех сокровищ и богатств
Реалий жизни - просто нету места,
Нет, не из чувства глупого протеста,
А потому, что он - совсем иной,
Весь этот мир, навеяный игрой
Зеркальных сфер,
блистательных абстракций,
Мир информации,
мир истовых простраций,
Здесь даже время свой теряет счет,
Но тот, кто в Зазеркалие войдет,
Как Тахтагата , новую свободу,
А вместе с нею –
– знаний новых квоту
В себе самом найдет
и обретет
Возможности для творчества такие,
Что и дела, и помыслы мирские
Отступят перед натиском идей.
Компьютерная мистика теней
Откроет дверь в заветные пещеры,
И если не грузиться свыше меры,
Хватаясь за пустой, блестящий прах,
То можно с диссертацией в руках
Успеть вернуться вовремя к защите,
Ну а пока - дерзайте и ищите
Свою тропу в компьютерных мирах,
Забыв про сон,
сомнения и страх!

2.2. Планирование работы

"Вы что, глупый? Запомнить не можете? Записывайте,
я-то записываю!"
Для начала, заметим, что еще в X в. до н.э. древние философы недвусмысленно указывали на актуальность планирования: "Всему свое время, и время всякой вещи под небом. Время рождать, и время умирать...время разрушать, и время строить... Время разбрасывать камни, и время собирать камни... время молчать, и время говорить." Не прошли мимо этого вопроса и великомудрые эллины: "Тщательно учитывай время!." Ну а в нынешние времена, "когда космические корабли бороздят вселенную, а наш балет завоевал всю Америку", проблема учета временных ресурсов обострилась, как никогда ранее.
Любые, а особенно диссертационные исследования, достаточно критичны к срокам их выполнения. Конечно, случаются и эпохальные труды, над которыми великие мэтры от науки, а иногда и целые коллективы, трудятся десятилетиями. Однако соискателей кандидатских степеней такие сроки, по-видимому, не устроят. Не говоря уже о плановых адъюнктских изысканиях, сроки коих установлены свыше - три года и ни дня больше!

NB!: "Адъюнкт работает по индивидуальному учебному плану, который разрабатывается под руководством научного руководителя на весь период подготовки в адъюнктуре, обсуждается на заседании кафедры и после утверждения темы научной (диссертационной) работы ученым советом, но не позднее трех месяцев со дня начала подготовки адъюнкта, утверждается начальником академии" [96].

Планирование диссертационных исследований и связанных с ними работ является мощным организационным стимулом. Разумеется, если планы не только составляются, но и исполняются. И посему a'priori составленный план должен почитаться и выполняться с неукоснительностью шариата и всех святых догм. Корректировать план в принципе допустимо, но только в одну сторону - в сторону опережения.
Одного плана, как правило, недостаточно: помимо трехлетнего адъюнктского плана, детализированного до года или полугодия, должны формироваться месячные, недельные и даже ежедневные планы, расписанные по часам. И это вовсе не плод ночных мечтаний бумаголюба-бюрократа, это - мощный инструмент упорядочения временных расходов и жизненных приоритетов, многократно окупающий, согласно выводам специалистов в области НОТ , временные расходы на их составление.
В какой форме составлять планы, лучше всего определить самому соискателю. Разумеется, эта реплика не касается обязательных адъюнктских планов, являющихся отчетными документами, строго регламентированными по форме и содержанию. Типичный адъюнктский план может иметь вид, представленный ниже (в качестве примера).
Впрочем, этот план тоже не вполне закончен, его необходимо дополнить планами адъюнктуры по обучению педагогике, психологии и т.п.
Планы "для себя" могут составляться на бумаге (ежедневники, ежемесячник) или в виде компьютерных файлов. Современные интегрированные пакеты уже содержат программы-планировщики рабочего времени. Так например, пакет MS Office содержит планировщик Schedule, включает в себя календарь-ежедневник, телефонную книжку, систему электронной связи и другие полезные атрибуты "делового человека". Будущему ученому они тоже не помешают.

План-график диссертационных исследований

Этап

Сроки

Мероприятия

1

1.12.1998 - 30.06.1999

Постановка задачи исследований, проведение установочного НТС (НТС-1), утверждение темы диссертации в Совете факультета, участие в двух отчетах о НИР, подготовка одной статьи на депонирование, подготовка эксперимента, сдача кандидатского минимума по философии и иностранному языку

2

1.07.1999 - 30.12.1999

Написание 1й главы диссертации, выступление на НТК вида войск, проведение НТС-2, участие в отчетах о НИР, подготовка одной статьи в сборник трудов, проведение эксперимента, подача заявки на патент

3

1.01.2000 - 30.06.2000

Написание 2й и 3й глав диссертации, выступление на НТК, проведение НТС-3, участие в отчете о НИР, подготовка статьи в российское периодическое издание, сдача кандидатского экзамена по специальности.

4

1.01.2001 - 30.06.2001

Написание 4й главы диссертации, проведение итогового семинара НТС-4, участие в отчете о НИР, работа по реализации материалов исследований в в/ч…, НПО…, Академии…, управлении…, подготовка статьи в сборник трудов, подготовка автореферата диссертации

5

1.07.2001 - 30.08.2001

Оформление диссертации и автореферата и представление их комиссии Совета, проведение расширенного заседания кафедры (НТС-5), устранение замечаний комиссии и кафедры, представление диссертации в Совет, рассылка диссертации и автореферата на отзывы, сбор отзывов ведущей организации, оппонентов, других организаций, подготовка и проведение защиты диссертации


 

планировать работу? Это просто!
Здесь нет пока что
очень жестких ГОСТов
Часов двенадцать нужно, без сомненья,
Отдать процессу умного творенья
Работы собственной.
Еще часа четыре
Ученью надо отдавать отныне.
Изобретения, доклады и статьи
Еще два с половиной или три
часа займут.
И нужно не забыть
Еще часа четыре положить
На добыванье данных для модели,
Которую с Учителем успели
Вы сотворить...
И остается ЧАС,
Которого достаточно как раз,
Чтобы поспать, поесть и отдохнуть,
Ведь в часе целых шестьдесят минут!
Гуляй весь час, свободою дыши,
Есть и в науке время для души,
А выйдет срок - опять ныряй в науки,
Das ist zer good!
Трудись, трудись без скуки!

"...быстрых разумом невтонов..." - из "Оды на день восшествия на престол Елисаветы Петровны, 1747года" М.В.Ломоносова.
3 Зак. 92

Высказывание в современном изложении повторяет изречение, приписываемое Ганнибалу: "Если ты схватил слона за хвост, а он не остановился - отпусти его."

Тахтагата (санскр.) - "так ушедший", один из эпитетов Будды.

Библия, "Книга Экклесиаста", 3.1...3.7.

Питтак.

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

НОТ - научная организация труда.

Das ist zer good! (нем.) - Это очень хорошо.

2.3. Языки программирования:
и снова выбор

Взвод английского языка! Взвод французского языка! Взвод матлингвистского языка!
В качестве основного инструмента решения исследовательских задач в современной науке выступают имитационные модели, выполненные в виде программно-алгоритмических комплексов. А для того, чтобы машина поняла, чего именно от нее хотят и что она должна сделать, совокупность моделирующих и расчетных алгоритмов переписывается на языке, ей понятном, - языке программирования.
Теперь уже трудно поверить в то, что на заре компьютерной цивилизации мученики-первопроходцы исписывали бесконечные "простыни" первобытно-общинных программ непосредственно в машинных кодах двухадресных и трехадресных монстров, пышущих жаром электронных ламп. Революционный прорыв в развитии software (или просто soft'а) был получен благодаря созданию компиляторных языков программирования высокого уровня, прежде всего Алгола-60 и Фортрана-4. Тяжелое ремесло превратилось в технологическое искусство.
Большая часть пользователей могла бы и по сей день оставаться вполне удовлетворенными возможностями этих двух, во истину великих языков, но... Но наука не может останавливаться на достигнутом - по определению! Хотелось большего, и прежде всего самим программистам-системщикам, специалистам по тому же soft'у. Возможностей Алгола и Фортрана явно не хватало для решения их задач, приходилось пользоваться ассемблерами, т.е. средствами, упрощающими подготовку программ за счет написания их в некоторых мнемонических обозначениях с последующим автоматическим переводом в машинные коды. Впрочем, и у многих пользователей резко повысились запросы: захотелось упростить работу со структурами, иметь проблемно-ориентированные языки, машинно-ориентированные языки... и еще много чего захотелось. И, как бывает в подобных ситуациях, начался образцово-показательный библейский Вавилон .  Люди, сиречь программисты-системщики и пользователи, получили множество языков программирования, а заодно и проблему взаимопонимания.
Алгол-68, Бэйсик, ПЛ-1, АПЛ, Кобол, Ада, Лисп, Рефал, Пролог... Один перечень существующих языков программирования займет целый список. В конечном счете соискателю предоставляется integrum dare - свобода выбора. Разумеется, если это не противоречит каким-то внутренним требованиям кафедры или научной школы. Однако для соискателей, использующих ЭВМ в интересах научных исследований, имеет смысл основное внимание уделить наиболее распространенным языкам программирования типа Паскаль и С (или С++).
Первая версия языка Паскаль была разработана в 1968 г. швейцарским математиком Николаусом Виртом. Целью работы Вирта было создание учебного языка программирования, который строился бы на небольшом количестве базовых понятий, имел простой синтаксис и допускал бы перевод в машинный код простым компилятором [115]. Однако широкое практическое применение он получил лишь в версии ТурбоПаскаль (TurboPascal, TP), созданной фирмой Borland International. Современные версии TP позволяют поддерживать расширенную память в стандарте LIMS/EMS, работать с интегрированной инструментальной оболочкой, содержащей встроенный многооконный текстовый редактор, работать с "мышью", использовать при написании программ ассемблер, создавать объектно-ориентированные программы (ООП), использовать типизированный адресный оператор и многое другое.
Лингвистическая концепция TP основана на принципах структурного программирования, объектно-ориентированного программирования и иерархического проектирования.
Современный ТР - это достаточно мощный промышленный язык, сравнимый с С и С++. Последние его версии содержат, кроме ООП-технологии, достаточно мощные и выразительные средства. В отличие от С и С++ ТР поддерживает модульное программирование на уровне языка (С и С++ делают это только на уровне некоторой культуры их использования, что позволяет писать на них весьма сложные программы). Язык применим практически для любых задач, но более подходит для научно-прикладных задач, чем для системных.
Дальнейшее развитие ТурбоПаскаля связано с созданием программной среды Дельфи с мощной интегрированной оболочкой поддержки разработки, ориентированной исключительно на разработку программ под Windows. Эта среда позволяет легко создавать программы со сложным интерфейсом и базами данных. Специалисты считают ее лучшим средством для Windows-програм­ми­ро­вания в настоящее время.
Язык программирования С очень хорош для системных приложений - операционные системы, утилиты и т.д., активно используется практически в любых областях. Характерная особенность языка - сильные макросредства и значительный перенос семантики в библиотеки. Поэтому в зависимости от используемых библиотек С может превращаться в подъязыки, подходящие для тех или иных классов задач, даже таких отдаленных от возможностей универсальных языков, как, например, работа с базами данных или с системами реального времени. В настоящее время С - язык, используемый корпоративными кругами, что и определяет его популярность и широкое применение в промышленных, военных и деловых сферах.
С++ - наследник С, впитавший много ценных идей европейской школы программирования, включая классы, объектный подход и т.д. Применяется практически в тех же ситуациях, что и С. Кроме того, активно используется в Windows-программировании, благодаря наличию относительно удобных для этого сред программирования типа Борланд С++ (Борланд) и Вижуал С++ (Микрософт).
Заметим, что С, С++ и Паскаль доступны в старых версиях для ДОС и тогда требуют всего несколько мегабайт дискового пространства и 2...4 Мгбайта памяти. Имеются в виду версии Паскаля, поддерживающие ООП. Идеальны для обучения собственно языкам.
Теперь кратко рассмотрим другие языки программирования. Старые универсальные языки - Фортран, Алгол-60, Алгол-68, ПЛ-1, Модула-2 - при всех своих достоинствах на персональных ЭВМ практически не используются, хотя и существуют в природе.
Бейсик - язык, созданный для домашних компьютеров с минимальной памятью и программистским уровнем домохозяек. Сейчас иногда используется как встроенный язык в электронных записных книжках. Знаменит тем, что именно он лег в основу империи Микрософта. Однако Вижуал Бейсик - очередной "вижуал-продукт" Микрософта - отличается от первого Бейсика, как реактивный самолет от устройства братьев Райт. Тем не менее он сохранил многие негативные черты, сильно портящие стиль программирования. Используется в первую очередь для программирования в среде Windows и занимает ту же нишу, что и Дельфи. Собственно, они в ней - единственные конкуренты, поскольку для других языков (включая С и С++) пока не сделано (хотя и обещано) столь же удобных сред программирования.
Следует отметить, что последние программные разработки требуют очень много дискового пространства и памяти. Практически не имеет смысла использовать ни один из "вижуал-продуктов" Микрософта, равно как Борланд С++ и Дельфи на машинах ниже 486 с памятью, меньшей 8 Мбайт. Для эффективного использования таких программных инструментов целесообразно иметь 16 Мбайт оперативной памяти и около 100 Мбайт дискового пространства. Иногда их можно установить на 5...10 Мбайт жесткого диска, чтобы основная часть бралась с CD-диска.
Как правило, перечисленные выше языки полностью удовлетворяют программные потребности соискателей. Однако при проведении специфических исследований, связанных, например, с разработкой экспертных систем, баз данных (БД), сетевых систем и т.п., могут оказаться полезными специальные языки программирования - логические, функциональные и другие.
Функциональный язык программирования Лисп - это язык списков. Активно использовался в системах алгебраических вычислений (типа MuSimp/MuMath), а также иногда при построении экспертных систем.
Очень популярен при построении экспертных систем язык программирования Пролог. Использует в качестве основы хорновские стандартные формы.
Заметим, что старые реализации языков Лисп и Пролог требовали очень мало ресурсов.
При создании и применении баз данных, о которых будет подробнее написано в этой главе, используются специальные языки БД.
xBASE - семейство языков реляционных баз данных, очень похожих друг на друга (в значительной мере совместимых) и происходящих из СУБД DB II, до сих пор существующей на больших машинах. На ПЭВМ появилась СУБД DBase III, которая была способна работать еще на ХТ компьютерах. Сейчас это семейство включает в себя языки для dBase, Clipper и FoxBase.
SQL - язык запросов к реляционным базам данных, активно используемый в клиент/сервер - технологии, т.е. когда запрос обрабатывается на сервере и по сети на компьютер-клиент передается уже только результат. Сейчас имеется большое количество SQL-серверов различных фирм. Все они требуют значительных ресурсов, обычно доступных на сетевых серверах.
Для специалистов в области сетевых систем представляют интерес Интернет-языки. Здесь описаны языки, ориентированные в первую очередь на использование в сетях типа Интернет и различных Интранет решениях.
HTML (Hyper Text Mark-up Language) относится к семейству mark-up языков. Получил распространение как один из основных языков для формирования Web-страниц, т.е. текстовых документов (содержащих графику, гипертекстовые ссылки и другие объекты), которые становятся доступными через Web-технологию (или по http-протоколу). Несмотря на простоту и специфичность задачи, на данный момент вполне возможно, что это язык на котором написано наибольшее количество текста в мире, если мерять гига- и терабайтами.
Ява (Java), первоначально разработанный как универсальный язык программирования, и его сокращенная версия ЯваСкрипт (JavaScript) получили широкое распространение как средство создания интернет-программ, т.е. программ, которые загружаются для выполнения с интернет-сервера и выполняются на пользовательском компьютере. Сейчас в основном используется для формирования сложных Web-страниц с динамическими элементами (электронный магазин, чат-сервер и т.д.)
Язык программирования Перл (Pearl), созданный как интерпретируемый язык для Юникса (в основном как язык для командных оболочек), получил широкое распространение как средство для CGI-программирования, т.е. создания программ, которые выполняются на Web-сервере и динамически формируют ответ по запросу Web-клиента. В той же роли используются и любые другие языки, но Перл имеет преимущество перед ними благодаря своей переносимости. Сейчас он существует на всех ЭВМ с ОС Юникс и Windows NT, покрывая практически все известные разновидности Web-серверов.
Автор вполне осознает, что читатель уже утомился от этого обзора. Что поделать, как писал Ж.Мот, "часто стоит понять содержание какого-либо метода, чтобы уметь обходиться без него всегда, когда это возможно." Посему в заключение параграфа приведем описание такого полезного программного инструментария, как библиотеки, а также историю языка Ада.
Windows API (Application Programm Interface) - это стандартный интерфейс для разработки программ под Windows, по сути, событийно-ориентированная библиотека с минимальным ООП. Термин "для разработки" отражает присущее Биллу Гейтсу своеобразное чувство юмора, достаточно плохо оцениваемое в программистских кругах.
Библиотека MFC, разработанная Микрософтом, предназначена для создания Windows интерфейсов. Имеет не вполне удобный дизайн и достаточно сложна в применении. Тем не менее несколько облегчает использование Windows API. Успех Борланд Дельфи и Вижуал Бейсика в значительной степени связан именно
с тем, что они оказались способны достаточно хорошо скрыть неудобства Windows API и MFC, предоставив более приличный интерфейс разработчика.
Библиотека OWL, разработанная фирмой Борланд, предназначена для того же, что и MFC, но была создана несколько раньше. Скорее всего именно ее создание и заставило Микрософт разработать MFC. Библиотека поставляется в составе "Вижуал-продуктов", Борланд С++ и Борланд Дельфи.
Последний язык, который будет представлен в этом параграфе, - язык программирования Ада, обладающий достаточно любопытной историей.

В конце 70 - начале 80-х гг. американская промышленность (особенно аэрокосмическая) оказалась перед вопросом: "Сколько может стоить ошибка в программе в один единственный знак?" Вопрос возник по довольно неприятной причине - у него уже был ответ. Не будем вдаваться в подробности бухгалтерского учета и назовем округленно - один миллион долларов. Некий программист работал в проекте программного обеспечения для нового спутника, который должен был пройти невдалеке от одной из планет Солнечной системы (традиция называет обычно либо Венеру, либо Меркурий). Программа управления готовилась на Фортране, и по ходу дела надо было несколько раз открыть шторку камеры, чтобы сфотографировать туристические виды. Собственно, ради этого спутник и запускался.
Оператор управления шторкой включал в себя цикл: FOR I=1,3. Случайно вместо запятой программист написал точку, т.е. FOR I=1.3. И вместо цикла от 1 до 3 по переменной I в программе оказалось присваивание переменной FORI значения 1.3. Спутник хладнокровно проследовал мимо потрясающих видов с полным безразличием к необходимости зафиксировать их для человечества и благополучно сгорел в солнечной короне, как и ожидалось. К неожиданным последствиям можно отнести специальную комиссию Пентагона по расследованию данного инцидента. Комиссия "порубила" немало голов, уволила программиста без выходного пособия, но в конце концов вынесла обвинительное заключение против главного виновника происшедшего - языков программирования Фортран и ПЛ-1.
В связи с этим Пентагон объявил конкурс на создание лучшего языка, который бы не страдал подобными изъянами. Все проходило по-американски, с большой помпой и в конце концов победил язык Ада, разработанный группой французских специалистов. Мир с затаенным дыханием следил, что же за язык будет принят в одной из крупнейших организаций мира - американской армии и флоте?
Язык действительно содержал много нового и обогнавшего эпоху или, по крайней мере, достаточно свежего, например, так называемые пакеты (package) - аналог современного модуля, элементы поддержки задач реального времени и т.д. и т.п. И, как все новое, оказался первым блином, который комом. Во всех исследовательских организациях и университетах (особенно в СССР) срочно бросились изучать этот язык и пытаться что-то с ним сделать, но язык не давался. Т.е. написать на нем, видимо, что-то можно было, в конце концов и не на таком писали, но что-то было не то...
Позднее в программистских кругах Ленинграда ходила гипотеза, будто бы Ада заняла на самом деле первое место с конца, за что и была объявлена по всему миру в качестве великолепной дезинформации. А выиграл тот конкурс, дескать, совсем другой язык, который и был принят на вооружение. Как ни странно, но, действительно, в то время в ВВС США активно использовался новый, совершенно другой язык, появившийся на свет подозрительно близко к моменту окончания конкурса... Трудно сказать, как было на самом деле, будем снисходительны к легендам программирования от дней иных.
А Ада долгое время служила объектом язвительных шуток типа "На разработку языка военного ведомства США Ада СССР ответил созданием Русского Алгоритмического Языка - РАЯ." Да, Вы правильно угадали, это уже было в перестройку. "Русский Алгоритмический Язык" РАЯ - это название действительно существовавшего языка, разработанного для обучения школьников. По мнению многих программистов, он так же был не пригоден для обучения школьников, как Ада - для программирования систем военного ведомства.

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


 

урсор бежит за "мышкою" вослед,
И на экране долгий ровный след
Изящных линий выстроил кривые,
В которых отражаются иные,
Неведомые миру полюса,
А ты глядишь на них во все глаза
И объяснить изгибы их не в силах,
Совсем не так об этом пишут в книгах,
И что компьютер нынче насчитал
Иначе, как печальнейший провал,
Назвать нельзя...
и ты бежишь к сенсею ,
Уж он, наверняка, понять сумеет
Где, что и как? -
- На то он и мудрец,
И твой в науке лидер и отец,
И мастер несравненный -
- видно сразу:
Он взял твои бумаги, как проказу,
И тоном Ментора все просто объяснил,
При этом не сказал, что ты - дебил
И что тебе положено лечиться...
Да ладно, не беда,
тебе простится...
И все-таки сомненье гложет душу,
И умиленье радостное душит:
Ведь график, что компьютер начертал,
Перевернув, Учитель объяснял...

2.4. Пакеты прикладных программ:
опасные сокровища

"Я академиев не кончал, но высшее образование вам даду."
Совершенствование систем программно-алгоритмической поддержки научных исследований происходило в нескольких направлениях. Первое из них связано с разработками унифицированных пакетов прикладных программ (ППП), позволяющих использовать уже готовые программно-алгоритмические продукты для решения математических и других научных задач. Достаточно определить совокупность исходных данных, войти с ними в выбранную процедуру из ППП - и все, ответ готов "на блюдечке с золотой каемочкой".
Простейшие пакеты представляют собой библиотеки исходных или загрузочных модулей (процедур, подпрограмм), удовлетворяющих требованиям концептуального единства (ограничениям по согласованию входов-выходов модулей, допустимости внешних переменных, согласованности описаний и т.д.) [3...5]. Типичным ППП может служить пакет статистической обработки биомедицинских данных BMDP.
Последующее развитие систем поддержки научных исследований связано с разработкой универсальных информационно-вычислительных сред, позволяющих совместить процессы алгоритмических расчетов с подготовкой текстового и графического материала. Как правило, интегрированные среды имеют меньшие возможности по сравнению с языками программирования типа С++ или TP при проведении расчетов, по сравнению с Word или Лексиконом в части редактирования текстов и по сравнению с "рисовалками" типа Paintbrush в части "художественных промыслов". Однако удобство одновременного применения различных режимов работы с достаточно богатыми встроенными библиотеками по математическому обеспечению делают такие программные продукты вполне конкурентноспособными и пользующимися большим спросом как у исследователей, так и у инженеров.
Особый интерес для научных исследований представляют специализированные программные продукты, типичным представителем которых является MathCAD - интегрированная система автоматизации математических и инженерно-технических расчетов, ориентированная на IBM-совместимые персональные ЭВМ [23]. Система разработана фирмой MathSoft, Inc. и, начиная с третьей версии, работает под Windows. MathCAD включает в себя посредственный текстовый редактор, вычислитель и достаточно удобные, простые средства отображения графики (графический процессор).
Язык программирования приближен к обычному математическому языку и предельно прост для реализации. Имеется множество встроенных математических функций и операторов, включая быстрое преобразование Фурье и сплайн-аппроксимацию. Многомерные преобразования записываются непосредственно в векторно-матричной форме как для вещественных, так и для комплексных чисел. Все это позволяет сместить центр тяжести исследований с вопросов программирования на вопросы естественного математического описания методов и алгоритмов решения поставленных задач. Начиная с третьей версии, MathCAD способен осуществлять также аналитические и символьные вычисления, называемые иногда компьютерной алгеброй.
Вычислитель MathCAD'а достаточно универсален. Он позволяет вычислять ряды, суммы и произведения, решать линейные и нелинейные уравнения, проводить минимизацию функций, работать с системами уравнений в векторно-матричной записи,решать задачу регрессии, осуществлять статистические расчеты и многое другое. При численных расчетах можно легко изменять разрядность чисел и задавать допустимые погрешности итерационных методов.
Главным достоинством графического процессора MathCAD'а является простота общения в сочетании с хорошими возможностями в области трехмерной графики. Он позволяет легко строить графики в логарифмическом масштабе, наносить масштабные сетки с любым числом делений, отдельные линии отмечать точками, прямоугольниками, ромбами и т.п., строить гистограммы. Графики легко переносятся в другое место, совмещаются с пояснительными надписями, сжимаются и растягиваются.
MathCAD, по крайне мере в своих ранних версиях, очень неприхотлив. Работать с ним можно даже на ПЭВМ типа PC/XT, он требует всего 512 кбайт памяти и размещается на одной дискете на 720 кбайт. Совместим с MS DOS, начиная со второй версии.
Дальнейшее развитие MathCAD'а привело к незначительным улучшениям при несоизмеримом росте требований к памяти компьютера. Так, Window'ские версии MathCAD'а 5.0 и 6.0+ требуют от винчестера 6.9 Мбайт и 11.2 Мбайт памяти соответственно.
Заметим, что последние версии интегрированных пакетов, как правило, занимают очень много места на жестком диске. В связи с этим целесообразно хранить их на CD-дисках, переписывая на винчестер лишь на время непосредственной работы.
Вполне достойным конкурентом MathCAD'у может служить вычислительная среда MatLAB (MatrixLaboratory) [49, 50]. Система была разработана К. Молером в 70-х гг. и позднее адаптирована для персональных компьютеров. В ее основу положен принцип допустимости расширения и адаптации к задачам пользователя. В зависимости от версий MatLAB поставляется с базовым словарем на 150 внутренних слов и с комплектом из 150...300 m-файлов, хранящих внешние расширения.
MatLAB позволяет в удобной и простой форме записывать расчетные программы, результаты которых можно наглядно отобразить с помощью трехмерной графики. Система ориентирована на матрично-векторные вычисления, которые достаточно просто выполняются в интерактивном режиме. MatLAB имеет очень богатый набор матричных функций. Пакет менее требователен к памяти компьютера: версии MatLAB 3.5 и 4.0 занимают на винчестере 3.5 и 4.0 Мбайт памяти соответственно. MatLAB, в отличие от MathCAD'а, не приспособлен к написанию программ в символьном виде, т.е. в виде, приближенном к обычному написанию математических соотношений. Однако он достаточно гибок в смысле программирования алгоритмов и, как правило решает задачи намного быстрее, чем MathCAD. Последние версии MatLAB обладают очень удобным пользовательским интерфейсом и мощными средствами графического отображения.

  4 Зак. 92

  По сравнению с приведенными выше пакетами интегрированная математическая система Eureca, разработанная фирмой Borland в 80-х гг. , обладает значительно меньшими вычислительными возможностями [48, 50]. Система базируется на достаточно эффективном универсальном алгоритме минимизации погрешности решения системы нелинейных уравнений при наличии довольно сложных ограничений, заданных математическими выражениями. Подобный подход позволяет выполнять весьма широкий объем операций прикладной математики: минимизацию функций одной или нескольких переменных при наличии ограничений, решение систем линейных и нелинейных уравнений, задач линейного и нелинейного программирования, аппроксимации, регрессионных задач и многих других. Eureca имеет широкий набор встроенных функций, современный пользовательский интерфейс, достаточно простой входной язык. Недостатками системы являются слабые графические возможности и отсутствие средств явной организации циклов.
Дальнейшее развитие математических систем связано с разработкой и применением интегрированных сред, позволяющих использовать символьные преобразования, т.е. работать не только с вычислениями, но и с аналитическими преобразованиями. Если в такой среде написать, например, выражение для интеграла с соответствующей подынтегральной функцией, то компьютер выведет на экран либо точное аналитическое соотношение, отвечающее результату интегрирования, либо его аналитическую аппроксимацию в виде отрезка ряда. Представителями этого направления являются такие программные комплексы, как Derive, Mathematica или MapleV.
Система символьной математики Derive, разработанная фирмой SoftWarehous, представляет собой удивительно компактную, элегантную разработку, которая, занимая на диске всего 240 кбайт (версия 2.1), способна конкурировать по скорости и надежности решаемых задач с такими многомегабайтными монстрами, как Mathematica или MapleV [50].
Система Derive была сформирована с помощью языка искусственного интеллекта Lisp. Достоинством системы является возможность проведения символьных вычислений в режиме диалога. Наряду с символьной математикой Derive позволяет осуществлять и обычные вычисления, причем с произвольной разрядностью чисел. Используя определенную опцию, можно установить любое основание чисел для входных и выходных данных. Входной язык Derive - это математически ориентированный язык сверхвысокого уровня, относящийся к классу интерпретаторов. Программирование на Derive сводится к заданию нужных функций и обеспечению взаимосвязи между ними. Derive имеет полный набор встроенных элементарных математических функций, набор статистических, экономических и специальных математических функций, а также ряд функций градиентного и векторного анализа. Вместе с Derive поставляется богатая библиотека расширений, включающая в себя программы решения нелинейных и дифференциальных уравнений, векторный анализ, геометрические расчеты, различные числовые методы и многое другое.
Одной из самых мощных систем символьной математики является пакет MapleV, разработанный канадской фирмой Waterloo Maple Software [101]. Система имеет большое число встроенных функций, очень удобный пользовательский интерфейс и хорошую графику. Для использования MapleV необходимо иметь процессор с производительностью не меньше, чем у 386/486, сопроцессор, не менее 2,5 кбайт оперативной памяти и 7 Мбайт на жестком диске.
Основным конкурентом MapleV является разработанная фирмой WRI (Wolfram Research, Inc) мощная многофункциональная система Mathematica, ориентированная на задачи исследований и проектирования. Система обладает мощной цветной машинной графикой, допускающей отображение исследуемых процессов в динамическом режиме. Mathematica допускает звуковое сопровождение, обеспечивая программно-управляемый синтез звука и поддержку звуковых плат Sound Blaster. Благодаря уникальному ядру системы, сформированному в машинных кодах, базовые тексты Mathematica совпадают не только для версий под MS DOS и Windows, но и для текстов аналогичных систем других компьютерных комплексов (Macintosh, NeXT, Sun, Crow).
Пользовательский интерфейс Mathematica под Windows (в отличие от интерфейса под MS DOS) вполне рационален и имеет удобную графическую оболочку типа Notebook. Благодаря графическому интерфейсу на экране дисплея отображаются одновременно тексты, формулы и графики. Имеется возможность интерактивно менять углы обзора графических объектов. Математически ориентированный язык Mathematica является средством сверхвысокого уровня, однако при этом обладает и низкоуровневыми возможностями. Язык достаточно специфичен, имеет около 850 команд и встроенную систему проверки орфографии. В состав Mathematica входит около 150 файлов с дополнительными командами, набор графических подпрограмм и программ статистических вычислений.
Версия Mathematica 2.0 под MS DOS требует от компьютера с 386/486 процессором не менее 4 Мбайт ОЗУ и 16 Мбайт на жестком диске. Однако для улучшения быстродействия целесообразно использовать компьютер с 6...8-Мбайтным ОЗУ и свободным пространством на жестком диске не менее 23 Мбайт [50]. Эта же версия под Windows требует от компьютера ОЗУ уже не менее 8 Мбайт и математический сопроцессор 387/487.
В настоящее время в практике научных исследований используется множество разнообразных интегрированных пакетов - от устаревших Reduce и Eurica до современных версий Statgraphics, MathCAD, Mesosavr, Mathematica, Statistica, Derive и т.п. Все они представляют собой настоящие сокровища для исследователей, но сокровища весьма опасные. Проблема заключается в том, что любой математический метод, как правило, имеет весьма существенные особенности и ограничения в практических приложениях. В то же время исходная алгоритмика в интегрированных пакетах намертво "зашита" в исполнительных файлах. Таким образом, проверить достоверность расчетных результатов оказывается если не невозможным, то, во всяком случае, достаточно сложным делом. К тому же после серьезного изучения математических основ той или иной прикладной алгоритмики и особенностей ее применения может оказаться, что проще самому написать расчетную процедуру, чем мучиться сомнениями относительно качества работы неизвестных программистов.
 
В подтверждение представленных выводов приведем два "мэрфологических" положения.
Принцип Шоу: создайте систему, которой сможет воспользоваться даже дурак, и только дурак захочет ею пользоваться.
Принцип ИБМ: машина должна работать, человек - думать.
 
В заключение перечислим еще некоторые, менее распространенные математические системы [50]. Для решения систем дифференциальных уравнений могут быть использованы такие пакеты, как DiffEq, Phaser или Desire. Многооконная система Assystant применяется для обработки данных и численного решения дифференциальных уравнений, записанных в аналитическом виде. Для решения задач автоматики могут быть предложены специализированные системы Tutsim, Simnon или CC. Для решения различных типов уравнений используются системы TK!Solver+ и PCNonLin.


 

ак хорошо свою задачу
Совсем чуть-чуть переиначить
И сунуть в мельницу пакета,
И в ожидании ответа
Руками жадно потирать...
Ответ пришел и, так сказать,
Не то попал ты пальцем в небо,
Не то пакет весьма умело
Решенью ласково помог
Нырнуть в крутой английский смог
И не выныривать обратно.
И как бы не было печально,
А нужно двигаться назад,
И самому свой строить лад
Среди программ и алгоритмов.
Науки строгая палитра
Раскрасит быстро полотно,
И остается лишь одно:
Жать урожай и твердо верить,
Что ты в науке смог посеять
Вполне разумное зерно,
А если нет - то все равно
Ты не имеешь права сдаться,
И снова нужно возвращаться
И, намечая новый путь,
В пакеты заново нырнуть.

Software - программно-алгоритмическое обеспечение ЭВМ.

Согласно библейскому мифу, непомерная гордыня привела строителей древнего мира к идее создания башни, способной достигнуть небес. Творцу мира сего не понравились ни тематика этих исследований, ни ее цель. В результате работа была "завалена" в прямом смысле этого слова, а человечество наказано "разноязычьем".

Integrum dare (лат.) - предоставить свободу выбора (Цицерон).

Язык назван в честь французского математика и философа Блеза Паскаля.

Сенсей (япон.) - учитель, наставник.

Ментор - в поэме Гомера "Одиссея" наставник Телемаха, сына Одиссея.

2.5. Базы данных, базы знаний

"В Африке птиц налетает очень полно."
Базы данных (БД, data bases) представляют собой унифицированные электронные формы, позволяющие хранить большие массивы данных в единой иерархической системе, а также осуществлять их сортировку, поиск и обработку [66, 67]. При этом имеется возможность хранить информацию достаточно сложной структуры, поддерживать целостность данных при редактировании, упорядочивать их по различным критериям, осуществлять выбор по заданным признакам и т.п. Очевидно, что подобные возможности являются неоценимыми для делового мира - это готовые и предельно удобные формы для бухгалтерий, отделов кадров, рекламных агентств, торговых представительств и т.п.
Однако и для "неделовых" ученых кругов базы данных представляют собой значительный интерес. Вот некоторые конкретные примеры:

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

Сформировать собственную БД достаточно непросто, это требует от разработчика определенной подготовки. Для создания и работы с БД используют специальные программные среды - системы управления базами данных (СУБД). СУБД обеспечивают удобный доступ к данным, поддерживают заданные ограничения целостности, дают возможность пользователю получить доступ к ячейке, не зная ее физический адрес.
Среди наиболее известных и популярных СУБД следует назвать MS Access, Paradox, Clipper, DBase, FoxPro.
dBase III - уже устаревший программный продукт, хотя в свое время он задавал стандарт. Сейчас продается пятая версия DBase - это очень дальний потомок dBase III и к тому же выполненный другой фирмой. Из DOSовских баз данных следует упомянуть Paradox, Clipper и FoxPro; из БД, выполненных под Windows, - MS Access, Paradox, dBaseV, Interbase. В принципе в Windows есть некоторый стандарт доступа к базам данных, который позволяет работать с ними независимо от их формата. Стандарт называется ODBC и на уровне соответствующих драйверов сам разбирается в форматах.
Для очень сложных и объемных приложений существуют SQL серверы в рамках клиент/сервер технологии. SQL - это специальный язык запросов (например, на нем можно написать  "Выдай мне все записи о курсантах с фамилией начинающейся на "К", но так, чтобы имя не кончалось да "Д", с ростом выше 170 и шапкой 45-го размера.") Но такие серверы - достаточно серьезные системы. Основная идея клиент/сервер - технологии состоит в том, что компьютер-сервер не является просто очень большим диском, предоставляющим доступ к своим файлам, а проводит частичную обработку запросов прямо у себя. Это позволяет при включении сервера в сеть значительно уменьшить объем циркулирующей в ней данных по сравнению со случаем, когда программа-клиент считает по сети сначала базу данных, а потом делает выборку из них для пользователя. Данный подход применяется тогда, когда современные сети (мегабиты и десятки мегабит в секунду) не справляются с передачей данных. Как правило, в рамках кандидатских исследований такими объемами данных обременяться без нужды не рекомендуется.
В настоящее время существует множество типов БД, допускающих классификацию по различным признакам [41].
По используемой модели данных различают иерархические, сетевые и реляционные БД. Реляционные БД в историческом соревновании одержали победу над остальными моделями данных, что объясняется простотой и мощностью математического аппарата реляционной алгебры. В дальнейшем мы будем говорить об этих БД, хотя следует учесть, что активно ведутся работы по созданию постреляционных БД.
По типу хранимых данных БД разделяют :

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

Большинство локальных БД являются фактографическими. Стремительный рост Internet привел к необходимости развития документальных баз данных.
По характеру организации хранения данных различают локальные(персональные) и сетевые (интегрированные и распределенные) БД. Это деление является весьма условным, поскольку локальные БД поддерживают работу в сети с ограниченным числом (не более десяти) пользователей.
По количеству файлов в БД они делятся на одно- и многофайловые. Почти все локальные БД состоят из нескольких файлов, в каждом из которых хранится отдельная таблица, индекс или ограничения целостности БД. Лишь Microsoft Access хранит все перечисленные данные в одном файле. На качество БД это не влияет.
По используемым в СУБД языкам они бывают процедурные и декларативные. Процедурные языки обеспечивают работу с данными на низком уровне, допуская обработку каждой записи. Программирование с их помощью похоже на программирование в Pascal или С. Декларативные языки позволяют одним оператором описать достаточно сложное условие для поиска интересующих данных. Декларативный язык запросов SQL (Structured Query Language) является стандартом де-юре для доступа к данным (одобрен ISO в качестве стандарта SQL-93, разрабатывается SQL-3).
По сфере применимости различают универсальные и проблемно-ориентированные (специализированные) БД. Почти все известные БД являются универсальными, давая пользователю возможность хранить различные данные в форматах, поддерживаемых СУБД. Пример специализированных БД - БД географических информационных систем.
По операционной системе, требуемой для работы СУБД, различают СУБД для DOS, Windows, UNIX. Следует сказать, что сами файлы БД не зависят от ОС (если не учитывать допустимые правила именования файлов). В силу исторических обстоятельств Microsoft является монополистом на отечественном рынке ОС. Производители СУБД пытаются поддерживать совместимость версий своих продуктов "сверху вниз", т.е. СУБД для Windows могут работать с файлами для DOS, но не наоборот.
Следует заметить что, помимо БД существуют и другие системы хранения, сортировки и обработки полезной (а иногда и бесполезной) информации - электронные таблицы, базы знаний (БЗ), хранилища данных.
Электронные таблицы (spreadsheet) позволяют хранить данные, сортировать их и осуществлять с ними те или иные арифметические операции. При внесении новых данных автоматически меняются вычисленные значения в результирующих графах. Наиболее популярные электронные таблицы - MS Excell, Lotus, Quattro Pro.
Понятие "база знаний" возникло в процессе создания экспертных систем. В принципе БЗ представляет собой систему хранения поиска и обработки информационных массивов, включающую в себя правила логического вывода. Поскольку текстовая, графическая или иная информация кодируется и хранится в виде данных, то можно сказать, что БЗ - это те же БД, их частный случай. В принципе любой эксплуатируемый компьютер с хранящейся в нем информацией уже является базой знаний.
Управление БЗ, естественно, значительно сложнее, чем числовыми массивами. По существу задача построения и управления БЗ восходит к проблеме искусственного интеллекта.
Своеобразным подтверждением философского закона перехода количества в качество служит концепция хранилищ данных (Data Warehowse). Хранилища данных - это сложные технические системы, предназначенные для хранения гигантских (порядка тетрабайт) объемов информации из разных предметных областей. Прежде чем попасть в хранилище, информация подвергается тщательной проверке, а потому доступна рядовому пользователю в режиме "только для чтения". Тем не менее статистическая обработка этих массивов информации, по оценке западных экспертов , дает "удивительные результаты".
В случае, когда полет творческой фантазии адъюнкта приводит к необходимости создания собственной БД, целесообразно (при выборе СУБД) пользоваться следующими рекомендациями.
1. Прежде чем создавать БД, подумайте еще раз: нужна ли она Вам? Так, проектирование реляционной БД предполагает как минимум знание начал реляционной алгебры [43]. Заметим, что существует ряд программных продуктов (ERWin фирмы Logic Works, Designer 2000 от Oracle и др.), обеспечивающих создание структуры БД на основе концептуального представления данных, но эти продукты достаточно редкие, нелокализованные (нерусифицированные), поэтому их освоение отнимет драгоценное время. По оценке экспертов, до 80% информации в мире хранится в формате электронных таблиц Quattro Pro, SuperCalc (для DOS), Lotus 1-2-3, MS Exel (для Windows) и других известных форматах (Lotus Organizer, MS Schedule и т.п.).
2. Не гонитесь за мощностью СУБД. Вряд ли Вам для работы потребуется сетевая СУБД типа Sybase, Interbase, SQL Windows, Informix или Oracle. Слоган компании Oracle - "Мы храним триллионы байт". При этом, однако, не упоминается, что на диске Вашего компьютера потребуется дополнительно до полгигабайта места (Oracle 8). По данным социологического опроса [67], среди американских пользователей по основным показателям (простота использования, скорость работы, гибкость запросов и программирования, совместимость с другими ОС, цена ) среди локальных СУБД лидирует MS Access, за ним следует Paradox компании Borland.
3. Если Вы все же решили создать свою собственную БД, следует иметь в виду, что практически все современные СУБД имеют конверторы текстовых файлов, позволяющие преобразовать их в формат, поддерживаемый БД; важно только , чтобы данные в Вашем файле были структурированы. В принципе концепция открытого доступа к базам данных ODBC (Open Database Connectivity) компании Microsoft обеспечивает перевод (шлюз - на слэнге программистов) баз данных из любого формата в любой другой, был бы соответствующий драйвер.
В завершенние данного параграфа приведем выборку "мэрфологических" законов, полезных для творцов собственных БД.
Второй закон термодинамики Эверита: неразбериха в обществе постоянно возрастает; только очень упорным трудом можно ее несколько уменьшить. Однако сама эта попытка приведет к росту совокупной неразберихи.
Теорема Стакмайера: если кажется, что работу сделать легко, это  непременно будет трудно; если на вид она трудна, значит, выполнить ее абсолютно невозможно.
Первый закон создания динамики систем Зимерги: если уж Вы открыли банку с червями, то единственный способ снова их запечатать - это воспользоваться банкой большего размера.
Правило взаимозависимости Ричарда: то, что Вы храните достаточно долго, можно выбросить; как только Вы что-то выбросите, оно Вам понадобится.
Закон Снэйфу: самый необходимый предмет или самая необходимая информация будут наименее доступны.
Закон Буба: то, что ищешь, найдешь, только обыскав все.
Закон поиска: начинать поиски надо с самого неподходящего места.
Закон Мэрианна: Находишь всегда то, что не искал.


 

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

Драйвер - маленькая, но очень полезная системная программа.

Существуют и киоски данных (Data Mart) - относительно небольшие хранилища тематической информации.

На момент написания книги данные об отечественных аналогах отсутствовали.

Слоган - рекламный лозунг.

Цена, учитывая размах информационно-"пиратской" деятельности, для России (как и для Китая) вовсе не показательна.

2.6. Редакторы и графика: сам себе оформитель

"Что вы, товарищ курсант, такой неровный квадрат нарисовали? Вы, что дальтоник?"
Все дальше и дальше уходят в историю добрые старые времена, когда диссертационную работу писали романтическими гусиными перьями, золочеными "Паркерами" или демократическими шариковыми ручками, истребляя на черновики сотни листов ныне дорогостоящей бумаги. Современный компьютер позволяет быстро и без особого труда формировать тексты и рисунки, редактировать их, отыскивать грамматические ошибки, красиво, с использованием разных шрифтов, распечатывать необходимые экземпляры и даже, с некоторыми огрехами, перевести Ваш труд на английский язык.
Работа с текстовым редактором настолько удобна, что авторы, приобщившиеся к компьютеру, уже представить себе не могут иных способов написания научных трудов. Редактирование позволяет быстро, без оглядки на почерк, набирать тексты, оперативно вносить любые поправки, добавлять, стирать или переносить с одного места на другое куски текстов любого объема. При некоторой забывчивости достаточно задать слово или последовательность слов, и машина сама осуществит поиск и найдет их в тексте. А при необходимости и заменит многократно используемое слово или предложение на более, с Вашей точки зрения, подходящее. Особенно удобно мгновенное форматирование абзацев, позволяющее выравнивать поля, центрировать, изменять межстрочное расстояние и многое другое.
С многочисленными возможностями текстовых редакторов позволяют познакомиться, хорошие популярные издания [70, 100, 116] или более углубленные описания каждого конкретного редактора, например [40].
Обычно для подготовки, редактирования и оформления диссертации пользуются, как уже отмечалось, текстовыми редакторами или текст-процессорами. Среди наиболее распространенных редакторов следует назвать Лексикон, ChiWriter, Write, AmiPro, Multi-Edit и целый ряд Word'ов: MS Word, Word for Windows, WordPerfect. Одни из них работают под управлением MS DOS, другие ориентированы на работу "под Windows" и тесно связаны с ее архитектурой.
Что можно сказать об этих редакторах? ChiWriter достаточно устарел и неудобен. Если какие-то полезные тексты уже существуют в виде "чирайтеровских" файлов, то лучше всего перевести их в Лексикон с помощью программы chiview.exe. Тем не менее следует отметить, что новые и более совершенные версии ChiWriter'а продолжают появляться на свет.
Отечественный редактор Лексикон на сегодняшний день - один из самых распространенных текст-процессоров. Он не нуждается в русификаторе, умеет делать переносы в словах, имеет простой многооконный режим (до 10 окон), а начиная с 8-й версии, может проверять правописание с помощью спеллера на 100 тысяч слов. Сразу заметим, что в природе существуют и невстроенные спеллеры - SpellRus, Lingvo Corrector, Сократ, Орфо, Корректор и другие.
Среди недостатков Лексикона можно указать на плохое согласование с другими программами по обработке текстов (например, с форматом Text-Only), бедный выбор шрифтов, неудобную систему выделения фрагментов текста, медленную печать на матричном принтере, отсутствие возможности вставлять рисунки. Однако программа постоянно развивается, совершенствуется и, будем надеяться...
Текстовый редактор Write является очень простым и удобным инструментом при работе в Windows. Его собственные ограниченные возможности существенно компенсируются потенциалом Windows. В частности, работая в Write, можно использовать богатейший набор шрифтов разных размеров, вставлять картинки, подготовленные в популярных графических форматах, или блоки информации из электронных таблиц и баз данных. Тем не менее при работе над диссертацией значительно удобнее иметь дело с полноценным, многооконным текстовым редактором. И в этом смысле наибольший интерес для соискателей представляют собой редакторы типа Word.
Текстовый редактор Microsoft (MS) Word ориентирован на работу из MS DOS, а Word for Windows (WindWord) на работу в оболочке Windows. Word обладает мощным арсеналом разнообразнейших технических средств, многие из которых, как показывает практика, просто не нужны рядовому соискателю. Поэтому выбор следует вести на основе традиционного компромисса желаемого-необходимого-возможного. Например, необходимо помнить, что малонужная полная версия WindWord 6.0 потребует от винчестера Вашего компьютера до 25Мбайт, а результирующее быстродействие может оказаться меньше, чем у версии 2.0. Вывод прост: "Modum habe!" .
Немного о ТеХе. ТеХ - это система подготовки текстов с полиграфическим качеством. Иными словами - готового для публикации оригинал-макета. Будучи разработанной в 70-х гг., она страдает отсутствием хорошего визуального интерфейса, а потому практически не используется сейчас в массовом книгоиздательстве. Однако, будучи ориентированной с самого начала на набор математических текстов, она показала себя в этой области настолько хорошо, что до сих пор ни одна коммерческая система (ТеХ, по крайней мере, в основных версиях - бесплатный) не смогла ее вытеснить с рынка математического набора. Сейчас практически все математические журналы требуют статьи в электронной форме в формате ТеХа, практически все издательства, работающие с математической литературой, используют ТеХ для набора и верстки. Кратко: если Вы хотите быть опубликованным (по крайней мере, за рубежом), надо знать ТеХ.
Автор ТеХа, проф. Дональд Е. Кнут хорошо известен во всем мире как автор знаменитого трехтомника "Искусство программирования для ЭВМ". В своей системе (плюс в разработанной для ТеХа системе подготовки шрифтов МетаФонт) он значительно обогнал свое время и реализовал идеи, которые впоследствии были заимствованы крупнейшими фирмами-разработчиками при создании систем как верстки и набора, так и подготовки шрифтов. В какой-то мере ТеХ послужил "отцом" и "дедушкой" всех современных систем подготовки публикаций.
Более подробно о достоинствах и недостатках текстовых редакторов можно узнать, ознакомившись с книгой [70]. Технику работы с Word удобно изучать по [40].
Еще более высокий уровень технического обеспечения позволяют получить издательские системы типа Corel Ventura, Xerox Ventura Publisher, Aldus Page Maker и другие. Однако их достаточно высокие требования к компьютеру явно несоизмеримы с техническими потребностями скромных (и даже не вполне скромных) соискателей.
Оформительская работа соискателя над диссертацией не ограничивается работой с текстами - необходимы еще и рисунки. Некоторые из них получаются достаточно просто в виде графиков, построенных в среде используемого языка программирования, например в ТурбоПаскале. Аналогично можно получить графики, "вырезая" их из какой-либо интегрированной вычислительной среды типа MathCad. Однако в тех случаях, когда душа соискателя или насущная необходимость, вытекающая из проводимых исследований, требует более высокого уровня художественного представления результатов, приходится обращаться к специальным рисовальным пакетам, называемым графическими редакторами.
По своему типу все графические редакторы делятся на растровые (Paintbrush, Aldus PhotoStyler, PhotoFinish и другие) и векторные (Corel Draw, MS Draw и другие). С точки зрения пользователя различие между ними состоит в том, что в первом случае рисунок делается по точкам, а во втором - как комбинации отрезков линий.
Векторные графические редакторы очень удобны для самых разнообразных трансформаций рисунка - сжатия, растяжения, разворота и т.п. Растровые же редакторы обычно применяются в задачах, связанных с необходимостью обработки изображений. С точки зрения живописи к растровой обработке ближе всего пуантилизм . Растровые редакторы очень удобны для управления цветамии и полутонами, контрастом, яркостью, четкостью. В частности, данная технология позволяет ретушировать фотографии, комбинировать рисунки, формировать коллажи .
Заметим, что простой и удобный растровый графический редактор Paintbrush (MS Paint) входит в стандартный комплект инструментов (или accessories) Windows и легко сопрягается с его текст-процессорами. А в специализированный MS Draw можно войти непосредственно из текстового редактора WindWord.
Во многих случаях оказывается удобным не рисовать, а просто ввести в память компьютера уже подготовленные рисунки. С этой целью можно использовать сканеры и отвечающие им программы поддержки, например DeskScan.
В заключение отметим, что при наличии некоторого запаса времени и творческого энтузиазма можно украсить свой доклад компьютерными анимациями. Среди программ компьютерной анимации можно указать 3D Studio, Picture Man, AutoDesk Animator и другие. Но это - достаточно серьезный труд, и прежде чем за него браться, имеет смысл оглянуться на свой временной план-график.


 

екст набрать совсем несложно,
В Лексиконе все возможно,
Ну, а если это Word,
То плоды твоих работ
Ни Доре, ни тот, что круче
Не дерзнет оформить лучше:
Воссияет пухлый том!
Все на принтере потом
Можно будет распечатать
И торжественно просватать
С тихой гордостью в Совет,
Привздохнуть...
и ждать ответ.

Спеллер - от англ. spelling checking - проверка орфографии, программа проверки правописания.

"Modum habe!" (лат.) - "Соблюдай меру!".

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

Ваш комментарий о книге
Обратно в раздел Наука












 





Наверх

sitemap:
Все права на книги принадлежат их авторам. Если Вы автор той или иной книги и не желаете, чтобы книга была опубликована на этом сайте, сообщите нам.