Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Способ указания объекта приложения



Любой объект обработки обязательно имеет определенный тип. Кроме того, объект указанный значением или выражением называется неименованным. Если адрес неименованного объекта скопировать в объект ссылки, то получится именованный объект. При этом следует помнить, что неизменяемым или изменяемым может быть, как неименованный объект, так и именованный.

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

1. Строки символов - последовательность допустимых символов.

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

3. Кортеж - просто список который нельзя изменять.

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

5. Классы – объекты которые имеют поля для хранения данных, подпрограммы для работы с ними и некоторые другие элементы. Объекты описываются специальным типом Класс, который в программе представлен объектом этого типа.

6. Файлы – объекты для работы с объемами данных.

7. Функции – объекты для хранения ссылок (адресов) на блок кода функции.

8. Обыкновенные дроби – объекты предоставляющие возможность выполнения операция над обыкновенными дробями. Особенность Python в том, что все представлено объектами, поэтому существует объект чисел, объект типа. Например, при записи int имеем объект этого типа, который можно использовать при формирования новой ссылки которая будет задавать другое имя для обращения к ним. Например som = int предполагает, что адрес int копируется в объект ссылки som. Если необходимо узнать сведения о типе то вызывают встроенную функцию type по шаблону type ( v ), где v - объект обработки.

Формирование модулей

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

1. Любой текстовый файл с расширением . py трактуется как модуль.

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

3. Для импорта модулей текущих приложений записывают оператор import в одной из следующих форм:

а) для подключения всех ресурсов модулей (имена перечисляются через запятую):

import< список полных имен подключаемых модулей>

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

< имя пакета> < имя подпакета> < имя модуля>

Следует иметь ввиду, что при такой форме импорта имена модулей добавляются в глобальную таблицу текущего модуля. Это предполагает, что при ссылки на ресурс какого-то модуля используют шаблон < имя модуля> < имя элемента>. Например, при импортировании стандартного математического модуля для отображения косинуса, нужно указывать math.cos(50)

 

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

from< имя модуля> import< список подключаемых ресурсов>

from math import sin, cos, sqrt

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

 

в) для импорта всех объектов модуля, за исключением имен начинающихся с подчеркивания, используют шаблон:

from< имя модуля> import*

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

Разработка алгоритма

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

1. Алгоритм – это то, что в дальнейшем будет записано в тексте программы для выполнения действий по преобразованию данных. Это означает что никаких инструкций для транслятора в алгоритме нет - они будут записаны непосредственно в коде программы.

2. Алгоритм обязательно должен быть структурированным и должен разрабатываться по методике нисходящего проектирования (по методу сверху-вниз). Эта методика предполагает последовательное уточнение действий от общих идей к частности. Базовой структурной единицей алгоритма является базовая управляющая структура. Базовая управляющая структура это схема стандартного перехода от одного действия к другому. Всего существуют 3 вида базовых управляющих структуры, которые называются: следование, выбор, цикл. Структура следование предполагает переход к очередному действию без анализа условий и повторений. Структура выбор предполагает анализ некоторого условия и выбор одного из путей продолжения процесса преобразования данных. Если таких путей всего два, то это двоичный выбор, в противном случае множественный выбор. Структура цикл предполагает повторение одних и тех же действий при изменяющихся параметрах.

Все эти структуры имеют определенные шаблоны тех или иных средств. В качестве средств представления алгоритма можно использовать обиходный письменный язык, псевдокод или языки схем. Наиболее выгодным средством является язык схем в котором действие и порядок действий указываются с помощью линий, стрелок и геометрических фигур. Многие из языков схем имеют стандарты. В нашем случае будет использован международный стандарт, аналогом которого является российский ГОСТ 19.701-90. Кроме того будет использована схема Нэсси-Шнегермана. Эта схема отображает подробные сведения которые закодированы в программе и представлена некоторым прямоугольником внутри которого представлена последовательность базовых управляющих структур. Эта схема удобна только для небольших алгоритмов. В любом случае алгоритм не содержит сведения о типах данных и объявлении объектов обработки (только действие, которое можно преобразовать в последовательность машинных команд). При использовании языка схем обязательно нужно будет предварительно описывать объекты обработки. Выглядит это примирительно к схеме Нэсси-Шнейдермана так:

 

Задача.

На диске хранятся вещественные числа. Необходимо считать все числа, вычислить сумму только тех из них, которые меньше Е, на экран вывести значение суммы и сообщение о завершении обработки. Алгоритм выглядит следующим образом:

 

Имена Описание объектов
Х, Е Переменные, текущее число и эталон сравнения
sum Переменная, сумма чисел, вещественная, выходная

Таблица объектов обработки

 

 

Отобразить на экране подсказку “Введите Е: ”
Ввести с клавиатуры значение Е
Открыть файл для чтения
Очистить память
Считать из файла значение.
Считатать из файла значение Х
Пока не конец файла X < Е    Да                                                    Нет Пропустить                                    Суммировать
Считать из файла значение X
Закрыть файл
Отобразить на экране значение суммы
Отобразить сообщение о завершении работы

 


Поделиться:



Последнее изменение этой страницы: 2019-05-04; Просмотров: 209; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.012 с.)
Главная | Случайная страница | Обратная связь