Почему вам нужно изучать новый язык программирования Java?
Если ответить на этот вопрос кратко, то потому, что он специально ориентирован на самые передовые технологии, связанные с сетью Internet. Растущая популярность Internet и, в особенности, серверов Web, создает для программистов новые возможности для реализации своих способностей.
Огромное преимущество Java заключается в том, что на этом языке можно создавать приложения, способные работать на различных платформах. К сети Internet подключены компьютеры самых разных типов - Pentium PC, Macintosh, рабочие станции Sun и так далее. Даже в рамках компьютеров, созданных на базе процессоров Intel, существует несколько платформ, например, Microsoft Windows версии 3.1, Windows 95, Windows NT, OS/2, Solaris, различные разновидности операционной системы UNIX с графической оболочкой XWindows. Между тем, создавая сервер Web в сети Internet, вы бы наверняка хотели, чтобы им могло пользоваться как можно большее число людей. В этом случае вас выручат приложения Java, предназначенные для работы на различных платформах и не зависящие от конкретного типа процессора и операционной системы.
Программы, составленные на языке программирования Java, можно разделить по своему назначению на две большие группы.
К первой группе относятся приложения Java, предназначенные для автономной работы под управлением специальной интерпретирующей машины Java. Реализации этой машины созданы для всех основных компьютерных платформ.
Вторая группа - это так называемые аплеты (applets). Аплеты представляют собой разновидность приложений Java, которые интерпретируются виртуальной машиной Java, встроенной практически во все современные браузеры.
Приложения, относящиеся к первой группе (мы будем называть их просто приложениями Java), - это обычные автономные программы. Так как они не содержат машинного кода и работают под управлением специального интерпретатора, их производительность заметно ниже, чем у обычных программ, составленных, например, на языке программирования C++. Однако не следует забывать, что программы Java без перетрансляции способны работать на любой платформе, что само по себе имеет большое значение в плане разработок для Internet.
Аплеты Java встраиваются в документы HTML, хранящиеся на сервере Web. С помощью аплетов вы можете сделать страницы сервера Web динамичными и интерактивными. Аплеты позволяют выполнять сложную локальную обработку данных, полученных от сервера Web или введенных пользователем с клавиатуры. Из соображений безопасности аплеты (в отличие от обычных приложений Java) не имеют никакого доступа к файловой системе локального компьютера. Все данные для обработки они могут получить только от сервера Web. Более сложную обработку данных можно выполнять, организовав взаимодействие между аплетами и расширениями сервера Web - приложениями CGI и ISAPI.
Для повышения производительности приложений Java в современных браузерах используется компиляция "на лету"- Just-In-Time compilation (JIT). При первой загрузке аплета его код транслируется в обычную исполнимую программу, которая сохраняется на диске и запускается. В результате общая скорость выполнения аплета Java увеличивается в несколько раз.
Для посылки дейтаграмм отправитель и получатель создают сокеты дейта-граммного типа. В Java их представляет класс DatagramSocket. В классе три конструктора:
* DatagramSocket ()
— создаваемый сокет присоединяется к любому свободному порту на локальной машине;
* DatagramSocket (int port)
— создаваемый сокет присоединяется к порту port на локальной машине;
* DatagramSocket(int port, InetAddress addr) — создаваемый СОКСТ присоединяется к порту port; аргумент addr — один из адресов локальной машины.
Класс содержит массу методов доступа к параметрам сокета и, кроме того, методы отправки и приема дейтаграмм:
* send(DatagramPacket pack)
— отправляет дейтаграмму, упакованную в пакет pack;
* receive (DatagramPacket pack)
— дожидается получения дейтаграммы и заносит ее в пакет pack.
Основная идея, лежавшая в разработке технологии Enterprise JavaBeans -- создать такую инфраструктуру для компонент, чтобы они могли бы легко ``вставляться'' (``plug in'') и удаляться из серверов, тем самым увеличивая или снижая функциональность сервера. Технология Enterprise JavaBeans похожа на технологию JavaBeans в том смысле, что она использует ту же самую идею (а именно, создание новой компоненты из уже существующих, готовых и настраиваемых компонент, аналогиично RAD-системам), но во всем остальном Enterprise JavaBeans -- совершенно иная технология.
Формы являются одним из важных элементов любого сайта и предназначены для обмена данными между пользователем и сервером. Область применения форм не ограничена отправкой данных на сервер, с помощью клиентских скриптов можно получить доступ к любому элементу формы, изменять его и применять по своему усмотрению.
Любая форма характеризуется следующими параметрами.
Элементы формы, которые представляют собой стандартные поля для ввода информации.
Кнопку отправки данных формы на сервер (кнопка SUBMIT).
Адрес программы на веб-сервере, которая будет обрабатывать содержимое данных формы.
Событие blur происходит когда поля формы select, text или textarea теряют фокус. Обработчик событий onBlur выполняет программу JavaScript, когда происходит событие blur
Microsoft Visual C++ и MFC. Программирование для Win95 и WinNT
В предыдущих томах серии “Библиотеки системного программиста” мы ориентировались в первую очередь на язык программирования Си. Даже если некоторые программы были написаны на Си++, то богатые возможности этого языка практически не использовались.
Сегодня уровень сложности программного обеспечения настолько высок, что разработка коммерческих приложений Windows с использованием средств одного только языка Си значительно затрудняется. Программист должен будет затратить массу времени на решение стандартных задач по созданию многооконного интерфейса. Реализация технологии связывания и встраивания объектов - OLE потребует от программиста еще более тяжелой работы.
Чтобы облегчить работу программиста практически все современные компиляторы с языка Си++ содержат специальные библиотеки классов. Такие библиотеки включают в себя практически весь программный интерфейс Windows и позволяют пользоваться при программировании средствами более высокого уровня, чем обычные вызовы функций. За счет этого значительно упрощается разработка приложений, имеющих сложный интерфейс пользователя, облегчается поддержка технологии OLE и взаимодействие с базами данных.
В данной главе дается раз'яснение основных концепций об'единения сетей. Представленная здесь основополагающая информация поможет читателю понять тот технический материал, из которого составлена большая часть данной публикации. В главу включены разделы, касающиеся эталонной модели OSI, важные термины и концепции, а также перечень основных организаций по стандартизации сетей.
Все больше людей обращаются к Всемирной паутине. Некоторые ищут необходимые для работы научные данные, другие — результаты футбольных матчей, электронные варианты художественных книг или рефераты. Спектр представленной в Интернете информации очень широк. Однако в большинстве случаев доступ ко всему многообразию ресурсов осуществляется одним и тем же образом — через web-сайт, на котором представлены какие-либо сведения.
Число пользователей Интернета постоянно растет, и многие из них уже не хотят довольствоваться аскетичным оформлением первых сайтов, появившихся в научных центрах и военных организациях. Тогда основную ценность представляло их содержание — информация, а до оформления многим просто не было дела. Теперь все по-другому — пользователей так много, что относительно небольшая их часть ищет научные или технические сведения о технологиях или фундаментальных исследованиях.
Существует значительное количество программных продуктов, позволяющих реализовать те или иные методы анимации. В данной книге рассматриваются только наиболее распространенные из них, как простые, так и значительно более сложные, обладающие различными наборами возможностей. Не претендуя на полноту обзора существующих программных продуктов, автор, однако, старался обратить внимание на их отличительные особенности и соответствие современным требованиям.
Прежде чем перейти к строгому математическому описанию поведения различных систем при свободных колебаниях, остановимся подробно на природе их возникновения.
Известно, что в ряде случаев тело, получившее некоторое начальное возмущение, после удаления причины этого возмущения продолжает совершать колебания. Эти свободные колебания играют важнейшую роль не только в плане проверки системы на резонанс, т.е. на выявление совпадения одной из собственных частот колебаний с частотой действующих на систему постоянно вибрационных нагрузок. Дело в том, что поведение системы при свободных колебаниях характеризует её "динамическую индивидуальность", которая определяет поведение системы при всех других условиях.
Рассмотрим некоторые примеры возникновения свободных колебаний. После того как по струне рояля ударяет один из молоточков, струна некоторое время продолжает самостоятельно совершать колебания - свободные колебания. Это становится возможным, во-первых, потому, что струна имеет массу и при движении накапливает кинетическую энергию, а во-вторых, потому, что при отклонении от положения равновесия струна накапливает потенциальную энергию .
Ну, что, очередной раз решили включить компьютер и полазить в Интернет? Ну и как компьютер грузится? Медленно? И при этом жужжит винчестером как майский жук? Ничего удивительного. А что у вас грузится каждый раз при старте системы? Как не знаю?! Тогда пора просвещаться, а заодно проверим, нет ли где хитрых троянов, нагло ворующих пароли от Интернет.
Сперва выясним, как Windows узнает о программах, которые надо запустить во время старта системы. Всего есть три места, где хранятся эти сведения: папка Автозагрузка из меню "Пуск", файл win.ini и реестр. Ну, с Автозагрузкой все понятно - это наиболее простое и доступное место для запуска программ, а вот на win.ini и реестре стоит остановиться поподробнее.
Начнем, пожалуй, с файла. Хоть Microsoft и усиленно призывает разработчиков хранить все настройки в реестре, отказываясь от INI-файлов, уверяет пользователей в том, что эти файлы оставлены только для совместимости со старыми программами, тем не менее, сами продолжают ими пользоваться. Сам файл находится в каталоге, где установлена операционная система. Откройте его любым текстовым редактором. В самом начале файла вы увидите раздел [windows]. В этом разделе есть два параметра, отвечающие за автоматическую загрузку программ - load и run. Обычно они пустые, но если там есть какая-то запись, обязательно проверьте, что за программу она запускает, и не затесалось ли туда что-то вроде kernel16.exe :).
Компания, занимающаяся производством программного обеспечения, может преуспевать только в том случае, если выпускаемая ею продукция всегда отличается высоким качеством и разработана в соответствии с запросами пользователей. Фирма, которая способна выпускать такую продукцию своевременно и регулярно, при максимально полном и эффективном использовании всех имеющихся человеческих и материальных ресурсов будет стабильно процветать.
Из сказанного следует, что основным продуктом такой компании является именно первоклассное программное обеспечение, удовлетворяющее повседневным нуждам пользователей. Все остальное - прекрасные документы, встречи на высшем уровне, великолепные лозунги и даже Пулитцеровская премия за идеальные строки исходного кода - вторично по сравнению с этой основной задачей.
К сожалению, во многих организациях путают понятия "вторичный" и "несущественный". Нельзя забывать, что для разработки эффективной программы, которая соответствует своему предполагаемому назначению, необходимо постоянно встречаться и работать с пользователями, чтобы выяснить реальные требования к вашей системе. Если вы хотите создать качественное программное обеспечение, вам необходимо разработать прочное архитектурное основание проекта, открытое к возможным усовершенствованиям. Для быстрой и эффективной разработки программного продукта с минимальным браком требуется привлечь рабочую силу, выбрать правильные инструменты и определить верное направление работы. Чтобы справиться с поставленной задачей, принимая во внимание затраты на обеспечение жизненного цикла системы, необходимо, чтобы процесс разработки приложения был тщательно продуман и мог быть адаптирован к изменяющимся потребностям вашего бизнеса и технологии.
Microsoft Office — самый популярный комплект приложений для настольных компьютеров, контролирующий свыше 90% рынка офисных пакетов. Он является одним из лучших продуктов Microsoft и приносит корпорации от трети до половины годового дохода. Например, за последний квартал 2002 года продажа операционных систем принесла компании Microsoft 2,5 миллиарда долларов, продажа комплектов Office — 2,3 миллиарда. Рост продаж по позиции Office XP Professional за финансовый 2003 год в России и СНГ составил 86%.
Для Microsoft выпуск новой версии Office является самым значительным событием со времен начала продаж операционной системы Windows XP в 2001 году. Его опытную проверку проводили около 500 тысяч бета-тестеров. В настоящее время Microsoft предпочитает говорить не о пакете, решающем проблемы служащих офиса, а о более широком системном решении потребностей корпоративных пользователей. Предполагается, что в 2003—2005 г.г. компания затратит более 3 млрд. долл. на разработку и распространение нового семейства продуктов Microsoft Office с тем, чтобы увеличить объем его продаж до 20 млрд. долл. к 2010 г.
По умолчанию Windows NT и выше создают в разделе NTFS специальную таблицу, содержащую все имена файлов и папок в формате MS-DOS по формуле 8.3 (8 символов имени файла и 3 символа для его расширения). Данная возможность в настоящее время не совсем актуальна и ее можно отключить для повышения производительности системы
Безопасность программного обеспечения компьютерных систем
Чем сложнее задача автоматизации и чем ответственнее область, в которой используются компьютерные информационные технологии, тем все более и более критичными становятся такие свойства как надежность и безопасность информационных ресурсов, задействованных в процессе сбора, накопления, обработки, передачи и хранения компьютерных данных. Вредоносные воздействия на информацию в процессе функционирования компьютерных систем (КС) различного назначения осуществляется с целью нарушения ее конфиденциальности, целостности и доступности. Решение задач, связанных с предотвращением воздействия непосредственно на информацию, осуществляется в рамках комплексной проблемы обеспечения безопасности информации и имеет достаточно развитую научно-методическую базу. При этом, рассматривая информацию как активный эксплуатируемый ресурс, можно говорить о том, что процесс обеспечения безопасности информации включает в себя и обеспечение безопасности программного обеспечения КС. Данный аспект обеспечения безопасности информации и средств ее обработки именуется эксплуатационной безопасностью, так как соответствует этапу применения КС. В то же время, в последнее время появились новые проблемы обеспечения безопасности, связанные с информационными технологиями, которые, по мнению ряда зарубежных и отечественных экспертов в области их создания и применения, в значительной степени определяют эффективность создаваемых компьютерных систем.
Ада 83 это язык программирования, разработанный в соответствии с так называемыми стилмановскими требованиями, определенными МО США. Более того, эти требования определили язык с мощными выразительными возможностями, пригодный для широкого класса задач. Вследствие этого языку Ада присущи как свойства классических языков, подобных языку Паскаль, так и свойства, характерные для специализированных языков. Таким образом, этот язык является современным алгоритмическим языком с традиционными управляющими структурами и средствами определения типов и подпрограмм. Он также удовлетворяет требованию модульности; данные, типы и подпрограммы могут образовывать пакеты. Модульность понимается и в физическом смысле, что обеспечивается раздельной компиляцией модулей.
В дополнение к указанному язык обеспечивает программирование задач реального времени с возможностями моделирования параллельных задач и обработки исключений. Он пригоден также для системного программирования; это требует прецизионного управления представлением данных и доступа к зависимым от системы параметрам. Наконец, в языке определены пользовательский и машинный уровни ввода-вывода.
Специалисты в области информационных технологий всегда с интересом встречают выход очередной версии программных продуктов, используемых в сети предприятия: какими новыми свойствами они порадуют и будут ли заявленные улучшения настолько ощутимы, чтобы затраты на переход к новому продукту счесть окупившимися? Корпорация Microsoft предоставила нашей редакции бета-версию уже анонсированного ею нового выпуска Microsoft Office System. В серии статей мы хотим предложить читателям мнение нашего обозревателя по этому программному продукту.
Роясь недавно в базе публикаций по информационной безопасности, я наткнулся на целый ряд статей разных авторов, посвященных такой непростой задаче, как доказательство возможности создания абсолютно защищенной системы. И это несмотря на общепризнанный факт того, что такую систему создать невозможно. Мало того. Многие компании даже создают системы, называемые "абсолютно защищенными". Как правило, такие заявления делаются фирмами, занимающимися криптографической защитой. Например, компания , создавшая Virtual Matrix Encryption, или TriStrata Securities. Однако и в области не криптографии регулярно всплывают фирмочки, заявляющие о революции в области информационной безопасности и создании абсолютно защищенной системы. Например, компания AppShield, выпустившая одноименное устройство и даже гарантирующая возврат денег, если ее систему взломают (как тут не вспомнить рекламу мужского дезодоранта OldSpice, обещающего схожие гарантии).
Но это все небольшие компании, которые, выйдя на уже поделенный рынок, пытаются привлечь к себе внимание любыми способами. А что же крупные и известные игроки этого рынка? И здесь есть свои герои. Например, такой гранд в области информационной безопасности, как Symantec, проводила в июле этого года семинар с претенциозным названием: "Абсолютная защита корпоративной сети предприятия на основе интегрированных решений Symantec".
Эта книга построена как раз на основных принципах, применимых к информационным технологиям на любом уровне. К таким взаимосвязанным принципам относятся: простота, благодаря которой программы остаются короткими и управляемыми, четкость и ясность, которые облегчают понимание программ и людям, и машинам, обобщенность, означающая, что программа способна корректно работать в широком диапазоне ситуаций и нормально адаптироваться к новым ситуациям, и автоматизация, которая позволяет передавать машине наиболее утомительные и скучные части нашей работы. Рассматривая программирование на различных языках, от алгоритмов и структур данных, через проектирование, отладку, тестирование, до улучшения производительности, мы иллюстрируем универсальные концепции, которые не зависят ни от языка, ни от операционной системы, ни от конкретного задания.
Книга родилась из нашего многолетнего опыта в написании и поддержке разнообразнейших программ, в преподавании программирования и в общении с большим количеством программистов. Мы хотим поделиться знаниями, приобретенными благодаря этому опыту, чтобы помочь программистам всех уровней работать более эффективно и профессионально.
Adobe предлагает сложные программы для создания проектов с использованием богатой графики, текста и видео. И, естественно, в этом постоянно изменяющемся взаимосвязанном цифровом мире возникает масса вопросов, и чем дальше, тем больше.
Благодаря инициативе и творческому видению пользователей Adobe, сфера применения программ значительно расширяется, развивается новое мышление, появляются новые приемы и методы работы. На сайте сделана попытка задокументировать пробы и ошибки пользователей.
Материалом послужили - база данных технологии Adobe из архива отдела Customer Support, материал из рубрики вопросов и ответов журнала Adobe Magazine (бывший Aldus Magazine) за последние три года, а также подборка советов, статей, Web-страниц Adobe и даже раздел по проблемам PostScript из книги издательства Adobe Press.
Стандарт – документ, устанавливающий характеристики продукции, правила осуществления и характеристики процессов производства, эксплуатации, хранения, перевозки, реализации и утилизации, выполнения работ или оказания услуг в целях многократного использования.
Реквизиты документа – надписи, которые являются обязательными элементами оформления официальных документов.
Каждый документ имеет индивидуальный набор реквизитов, которые отражают его особенности и назначение.
Формуляр документа – набор реквизитов официального письменного документа, расположенных в определенной последовательности.
Бланк документа – набор реквизитов, идентифицирующих автора официального письменного документа.
Заголовочная часть (реквизиты: с 01 по 17 и 19) содержит сведения об организации и первичные данные о самом документе.
Содержательная часть (реквизиты: 18, 20 и 21)– главная часть документа, раскрывающая его назначение и смысл.