Информация по предмету Компьютеры, программирование

  • 1601. Объектно-ориентированное программирование
    Другое Компьютеры, программирование

    Инкапсуляция является важнейшим свойством объектов, на котором строится объектно-ориентированное программирование. Инкапсуляция заключается в том, что объект скрывает в себе детали, которые несущественны для использования объекта. В традиционном подходе к программированию с использованием глобальных переменных программист не был застрахован от ошибок, связанных с использованием процедур, не предназначенных для обработки данных, связанных с этими переменными. Предположим, например, что имеется «не-ООП» программа, предназначенная для начисления заработной платы сотрудникам некой организации, а в программе имеются два массива. Один массив хранит величину заработной платы, а другой телефонные номера сотрудников (для составления отчёта для налоговой инспекции). Что произойдёт, если программист случайно перепутает эти массивы? Очевидно, для бухгалтерии начнутся тяжёлые времена. «Жёсткое» связание данных и процедур их обработки в одном объекте позволит избежать неприятностей такого рода. Инкапсуляция и является средством организации доступа к данным только через соответствующие методы.

  • 1602. Объектно-ориентированное программирование на C++ с использованием библиотеки OpenGL
    Другое Компьютеры, программирование
  • 1603. Объектно-ориентированные CASE-средства
    Другое Компьютеры, программирование

    Существуют расширения Rational Rose, которые позволяют выполнять скелетную (round-trip) разработку ИС, создаваемых на базе языков C/C++, Java, Smalltalk, Ada, Object Pascal (Borland Delphi) и др. Таким образом, можно сгенерировать каркас программного кода на любом из указанных языков или выполнить процедуру обратного проектирования, что позволяет сформировать модель на базе существующего кода.Rose предоставляет огромные возможности для проектирования ИС с использованием лучших архитектурных принципов. С помощью инструмента можно визуализировать, анализировать и уточнять требования к создаваемому продукту. Способности описывать графический интерфейс отдельно от бизнес-логики приводят в конечном итоге к лучшим результатам на уровне всего проекта. Всегда лучше и эффективнее лишний раз проанализировать, что должно быть сделано, чем каждый раз заниматься трудоемкими переделками и подгонкой кода. Использование единого инструмента моделирования на протяжении всего жизненного цикла разработки помогает создавать "идеальную" систему.Rose предлагает плавный процесс разработки ИС. Любые модели, создаваемые с помощью данного средства, являются взаимосвязанными: бизнес-модель, функциональная модель, модель анализа, модель проектирования, модель базы данных, модель компонентов и модель физического развертывания системы.

  • 1604. Объектно-ориентированные языки програмирования
    Другое Компьютеры, программирование

    В 1986 г. группы с фирм Xerox PARC и Symbolics, а также группа с фирмы Lucid, начала работу над проектом спецификации для CLOS, представленный на рассмотрение технической рабочей группе Ansi, X3J13. Эта спецификация одобрена для вероятного принятия в качестве части развивающегося стандарта Common Lisp. Цели CLOS: использование набора уровней для независимых друг от друга действий языка программирования; сделать как можно больше в рамках первого класса Object System (объект первый класс - это объект, который можно явно создать и работать с ним); желание избавиться от сложного поведения для упрощения понятий и их объяснений; сделать спецификацию языка как можно более точной [DeMichiel and Gabriel 1987]. Основные средства CLOS:три слоя языка: интерфейс для объектно-ориентированного программирования, функциональный интерфейс для Object System, и инструменты, позволяющие программисту создавать свои собственные объектно-ориентированные языки;использование обобщенных функций вместо посылки сообщений; при таком подходе объекты и функции являются анонимными объектами: ни один из них не является собственностью другого;поддержка множественного наследования: список старшинства классов используется для решения потенциальных конфликтов между наследуемой структурой и поведением; средство комбинации методов для получения значений обобщенной функции - задание способа комбинации методов, применимых к набору аргументов (в результате множественного наследования);гарантия, что обобщенные функции и классы являются объектами первого класса (т.е. они могут храниться в любом месте, где разрешено хранение обобщенных объектов).

  • 1605. Объектно-ориентированный подход к программированию
    Другое Компьютеры, программирование

    Имена классов принято начинать с буквы T, но это просто соглашение, а не правило. Вы можете назвать Ваш объект как хотите. Однако, буква Т в начале имени класса - это правило хорошего тона. Далее, указывается, что этот класс является потомком от Tobject. Если Вы запишите TmyClass = class, то все равно ваш класс будет потомком от Tobject. Далее, идет закрытая часть интерфейса класса. Здесь объявляются свойства и методы класса, которые будут доступными только из методов этого же класса, и будут недоступными для других классовых методов и из других модулей программы. При наследовании класса, потомок тоже не будет иметь доступа к закрытой части интерфейса. Иногда, такое поведение класса неудобно. Например, при большом количестве обращений к списку данных одного класса из другого через открытую часть интерфейса, при каждом обращении, возможно, будут проверяться допустимые границы индекса списка. Это правильно, но может значительно замедлить работу программы, поэтому было бы неплохо иметь возможность для ограниченного числа классов или функций разрешить доступ к закрытой части, чтобы они могли обращаться к свойствам класса, объявленным в закрытой части. Возможно, Вы писали на С++ и знаете, что там такие классы и функции называются друзьями. В Delphi эта возможность реализуется через объявление дружественных классов и функций в одном модуле программы, т.е. все друзья должны быть объявлены в одном модуле. Далее, идет защищенная часть. Она отличается от закрытой тем, что из потомка класса, Вы можете иметь доступ к этой части. Далее, идет открытая часть интерфейса. Здесь Вы можете объявить свойства и методы класса, которые будут доступны для других классов, процедур и функций. Есть еще одна часть интерфейса - published (опубликованная). Эта часть имеет место у потомков от Tcomponent. Delphi использует эту часть интерфейса в инспекторе объектов. При доступе к классу во время выполнения программы, эта часть ничем не отличается от public. Здесь имеет смысл объявлять свойства и события класса. Все свойства и события будут доступны из инспектора объектов, и Вы сможете редактировать их во время разработки. Чтобы работать с классом, Вы должны объявить переменную объектного типа этого класса, затем инициализировать ее вызовом конструктора.

  • 1606. Объектно-ориентированный подход к проектированию программного обеспечения на примере работы налоговой инспекции
    Другое Компьютеры, программирование

    Принципиальное различие между структурным и объектно-ориентированным подходом заключается в способе декомпозиции системы. Объектно-ориентированный подход использует объектную декомпозицию, при этом статическая структура системы описывается в терминах объектов и связей между ними, а поведение системы описывается в терминах обмена сообщениями между объектами. Каждый объект системы обладает своим собственным поведением, моделирующим поведение объекта реального мира. Понятие "объект" впервые было использовано около 30 лет назад в технических средствах при попытках отойти от традиционной архитектуры фон Неймана и преодолеть барьер между высоким уровнем программных абстракций и низким уровнем абстрагирования на уровне компьютеров. С объектно-ориентированной архитектурой также тесно связаны объектно-ориентированные операционные системы. Однако наиболее значительный вклад в объектный подход был внесен объектными и объектно-ориентированными языками программирования: Simula, Smalltalk, C++, Object Pascal. На объектный подход оказали влияние также развивавшиеся достаточно независимо методы моделирования баз данных, в особенности подход "сущность-связь".

  • 1607. Обязательный набор программ безопасности на персональном компьютере
    Другое Компьютеры, программирование

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

  • 1608. Один метод построения полигональных изображений
    Другое Компьютеры, программирование

    Вектор направленный отрезок, его положение будем задавать либо координатами начала и конца, либо их разностями (собственно координатами вектора). Длина (модуль) вектора рассчитывается как квадратный корень из суммы квадратов его координат это следствие теоремы Пифагора. Скалярное произведение векторов число p, определяемое следующим образом: или, где |A| и |B| - длины векторов A и B, x, y, z их координаты, t угол между ними. Коллинеарные векторы два или более вектора, лежащие на одной прямой или параллельных прямых. Компланарные векторы три или более вектора, которые при отложении из одной точки оказываются лежащими в одной плоскости. Если векторы A, B, C компланарны, то вектор C можно разложить по векторам A и B, то есть C=aA+bB, где a и b некоторые коэффициенты. Нормаль к вектору вектор единичной длины, перпендикулярный данному. На плоскости координаты нормали к вектору P(x; y) определяются по формулам:

  • 1609. Одномерная оптимизация функций методом золотого сечения
    Другое Компьютеры, программирование

    Второй шаг проводим на отрезке [a1, b1], где a1 = a0, b1 = x2. Нужно снова выбрать две внутренние точки, но одна из них (x1) осталась из предыдущего шага, поэтому достаточно выбрать лишь одну точку x3, вычислить значение f(x3) и провести сравнение. Поскольку здесь f(x3) > f(x1), ясно, что минимум находится на отрезке [x3, b1]. Обозначим этот отрезок [a2, b2], снова выберем одну внутреннюю точку и повторим процедуру сужения интервала неопределенности. Процесс оптимизации повторяется до тех пор, пока длина очередного отрезка [an, bn] не станет меньше заданной величины ?.

  • 1610. Одномерные и двумерные массивы (таблицы)
    Другое Компьютеры, программирование

    Однако описание массива в виде многомерной структуры делается лишь из соображений удобства программирования как результат стремления наиболее точно воспроизвести в программе объективно существующие связи между элементами данных решаемой задачи. Что же касается образа массива в памяти ЭВМ, то как одномерные, так и многомерные массивы хранятся в виде линейной последовательности своих компонент, и принципиальной разницы между одномерными и многомерными массивами в памяти ЭВМ нет. Однако порядок, в котором запоминаются элементы многомерных массивов, важно себе представлять. В большинстве алгоритмических языков реализуется общее правило, устанавливающее порядок хранения в памяти элементов массивов: элементы многомерных массивов хранятся в памяти в последовательности, соответствующей более частому изменению младших индексов.

  • 1611. Одноранговые сети
    Другое Компьютеры, программирование

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

  • 1612. Окремі випадки задач оптимального стохастичного керування
    Другое Компьютеры, программирование

    Багато задач послідовної оптимізації, що становлять практичний інтерес, можуть розглядатися як окремі випадки задач загального виду. Розглянемо деякі з них:

    • задачі детермінованого оптимального керування;
    • задачі стохастичного керування зі зліченним простором збурень;
    • задачі стохастичного керування із зовнішнім інтегралом;
    • задачі стохастичного керування з мультиплікативним функціоналом витрат;
    • задачі мінімаксного стохастичного керування.
  • 1613. Онлайн переводчики
    Другое Компьютеры, программирование

    ImTranslator многофункциональный переводчик откомпании Smart Link Corporation. Позволяет переводить тексты намножество языков, использовать словари, проверку орфографии, виртуальную клавиатуру, атакже печатать результаты перевода иотправлять e-mail. ImTranslator содержит 24языка перевода: английский, арабский, болгарский, голландский, греческий, датский, испанский, итальянский, китайский традиционный, китайский упрощенный, корейский, немецкий, норвежский, польский, португальский, румынский, русский, финский, французский, хинди, хорватский, чешский, шведский, японский. Текст для перевода может быть на:английском, арабском, греческом, датском, испанском, итальянском, китайском, корейском, немецком, португальском, русском, французском, японском. Кроме того, данный онлайн-переводчик содержит интерфейс на6языках. Предоставляет хорошее качестов перевода.

  • 1614. Оперативная память персонального компьютера
    Другое Компьютеры, программирование

    Повышение тактовой частоты вызывает резкое усиление всевозможных помех и в первую очередь электромагнитной интерференции, интенсивность которой в общем случае пропорциональна квадрату частоты, а на частотах свыше 350 мегагерц вообще приближается к кубической. Это обстоятельство налагает чрезвычайно жесткие ограничения на топологию и качество изготовления печатных плат модулей микросхемы, что значительно усложняет технологию производства и себестоимость памяти. С другой стороны, уровень помех можно значительно понизить, если сократить количество проводников, т.е. уменьшить разрядность микросхемы. Именно по такому пути компания Rambus и пошла, компенсировав увеличение частоты до 400 МГц (с учетом технологии DDR эффективная частота составляет 800 МГц) уменьшением разрядности шины данных до 16 бит (плюс два бита на ECC). Таким образом, Direct RDRAM в четыре раза обгоняет DDR по частоте, но во столько же раз отстает от нее в разрядности.

  • 1615. Операторы цикла
    Другое Компьютеры, программирование

    Порядок выполнения цикла с шагом 1 следующий: вычисляются значения начального и конечного значений параметра цикла; параметр если I принимает начальное значение; если I меньше или равно конечному значению, исполняется тело цикла; значение параметра цикла увеличивается, т.е. I := succ(I); проверяется условие I<=B (для отрицательного шага условие I>=B) и при его выполнении цикл повторяется. Выход из цикла осуществляется, если I>B (I<B для H=-1), и выполняется оператор, следующий за оператором цикла. Если A>B (или A<B для H=-1), то цикл не исполняется ни разу.

  • 1616. Операторы цикла. Задачи целочисленной арифметики
    Другое Компьютеры, программирование

    Порядок выполнения цикла с шагом 1 следующий: вычисляются значения начального и конечного значений параметра цикла; параметр если I принимает начальное значение; если I меньше или равно конечному значению, исполняется тело цикла; значение параметра цикла увеличивается, т.е. I := succ(I); проверяется условие I<=B (для отрицательного шага условие I>=B) и при его выполнении цикл повторяется. Выход из цикла осуществляется, если I>B (I<B для H=-1), и выполняется оператор, следующий за оператором цикла. Если A>B (или A<B для H=-1), то цикл не исполняется ни разу.

  • 1617. Операции над данными в СП с плавающей точкой
    Другое Компьютеры, программирование

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

  • 1618. Операционная и социотехническая системы (Контрольная)
    Другое Компьютеры, программирование

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

    1. Управляемый процесс или параметр, которые должны быть определены самым тщательным образом.
    2. Обратная связь. Необходимо разработать метод для измерения действительной производительности процесса.
    3. Сравнение. Значение действительной производительности процесса необходимо сравнить с расчетной нормой или расчетной производительностью процесса.
    4. Корректирующий фактор. Необходимо иметь структуру, принимающую корректирующие действия при приеме сигнала об отклонении хода производства за допустимые пределы.
    5. Планирующая система с участием человека. Необходимо определить расчетную норму производительности или эффективности контролируемого процесса.
  • 1619. Операционная система MS DOS
    Другое Компьютеры, программирование

    Прерывание 21Н носит название "диспетчер функций". Диспетчер функций отвечает за выполнение большей части работы MS-DOS. В его обязанности входит обеспечение доступа к системным функциям. Каждая функция выполняет некоторое конкретное задание, например, открывает файл, выводит символьную строку на экран дисплея, распределяет блок памяти или выдает номер работающей версии MS-DOS. Функции также дифференцированы по номерам. Чтобы программно обратиться к системной функции, необходимо выполнить следующее: (1) записать номер соответствующей функции в регистр АН; (2) записать параметры, необходимые для работы функции, в соответствующие регистры; (3) вызвать прерывание 21Н. При обращении к прерыванию 21Н, управление передается MS-DOS. Операционная система по значению регистра АН определяет, какая функция должна выполняться. Затем из остальных (вполне определенных для каждой функции) регистров считываются значения параметров, после чего требуемая функция выполняется. MS-DOS помещает возвращаемые функцией параметры в соответствующие регистры и возвращает управление в вызывающую программу. Программа просматривает регистры и производит анализ результата выполнения функции.

  • 1620. Операционная система Windows Server 2008
    Другое Компьютеры, программирование

    Надежность, масштабируемость и быстродействие инфраструктуры значительно повышаются благодаря усовершенствованиям, которые были внесены и в Windows Vista, и в Windows Server 2008.

    • Перед отправкой заданий печати на сервер клиентские компьютеры могут обрабатывать их локально с целью уменьшения нагрузки на сервер печати и повышения его доступности.
    • Серверные ресурсы кэшируются локально и остаются доступными даже в случае потери подключения к серверу. После восстановления подключения копии автоматически обновляются.
    • Приложения и сценарии, которые выполняются и на сервере, и на клиентском компьютере, используют транзакционную файловую систему для снижения риска возникновения ошибки при обработке файла или реестра и производят откат к заведомо исправному состоянию в случае сбоя или отмены операции.
    • С целью повышения качества обслуживания для приложений и служб, требующих распределения пропускной способности сети между сервером и клиентским компьютером, могут создаваться соответствующие политики.
    • Клиентские компьютеры Windows Vista, подключаясь к сети, в которой развернуты серверы Windows Server 2008, быстрее обмениваются данными и надежнее работают.
    • При выполнении поиска на серверах Windows Server 2008 с клиентского компьютера Windows Vista используются улучшенные технологии индексирования и кэширования в обеих операционных системах, что приводит к повышению продуктивности труда в рамках всей компании.
    • За счет изначальной поддержки протокола IPv6 всеми клиентскими и серверными службами формируется более надежная и масштабируемая сеть, а переписанный стек TCP/IP ускоряет обмен данными в сети и делает его более эффективным.
    • Новый протокол SMB 2.0 имеет ряд усовершенствований по части обмена данными, включая повышенную производительность при подключении к общим файловым ресурсам по каналам с большими задержками и улучшенную безопасность за счет взаимной проверки подлинности и подписывания сообщений.
    • Обновленные службы терминалов в Windows Server 2008 предоставляют клиентским компьютерам Windows Vista удаленный доступ к внутренним ресурсам через шлюз HTTP и позволяют пользоваться удаленными приложениями так, будто они запущены на локальном компьютере.