Основные определения и закономерности систем. Целевое и структурное определения систем. Классификации систем в ит



страница1/17
Дата20.04.2017
Размер0.93 Mb.
Просмотров1918
Скачиваний0
ТипЗакон
  1   2   3   4   5   6   7   8   9   ...   17

KOT.ITMO.RU

Помогли? Яндекс.Деньги 41001143976737



  1. Основные определения и закономерности систем. Целевое и структурное определения систем. Классификации систем в ИТ (по уровню сложности, естественные и искусственные, открытые и закрытые, большие-малые, сложные-простые).

Системы

Цель – субъективный образ (абстрактная модель) несуществующего, но желаемого состояние среды, кот. Решило бы возникшую проблему.

Целевое определение: система – средство достижения цели.

Структурное: с. – совокупность взаимосвязанных эл-тов обособленное от среды и взаимодействующее с ней как целое.

В реальной системе должны согласованно выполняться оба ее определения, это бывает не всегда.

Закономерности системы.



  1. Целостность

  2. Св-во системы не есть сумма св-в эл-тов.

  3. Св-во системы не зависит от св-в эл-тов.

  4. Интерактивность

  5. Набор системообразующих свойств

  6. Иерархичность

  7. Закономерность целостности проявляется на каждом уровне иерархии (OSI модель)

  8. Коммуникативность

  9. Система всегда связана коммуникациями с окружающей средой (системы без среды не бывает).

  10. Эквифинальность

  11. Все элементы системы одновременно достигают одного и того же уровня развития

  12. Закон необходимого разнообразия

  13. Разнообразие системы должно превышать разнообразие решаемой ею проблемы.

Виды систем

Классификация систем по уровню сложности (классификация Боулдинга)

1 уровень: Статические системы, структурные схемы – отражают взаимосвязи между элементами (скелет человека, структуризация знаний).

2 уровень: Простые динамические системы с заданным движением – уровень часового механизма (динамо-машина, паровой котел).

3 уровень: Простые кибернетические системы – саморегулируемые организации с обратной связью (Утюг с терморегулятором).

4 уровень: Открытые или самовосстанавливающиеся системы – рубеж между живым и неживым, может быть названа уровнем клетки (пламя, река и др. эколог. системы).

5 уровень: Уровень живых растений – Имеет место разделение функций между клетками.

6 уровень: Живые организмы – отличаются подвижностью, целенаправленным поведением, восприимчивостью к информации (животный мир).

7 уровень: Человек как система – организация, обладающая сознанием, наличием языка как средства общения.

8 уровень: Социальные организации – общественные институты, целенаправленно интегрирующие деятельность людей (государство, фирмы, социальные группы).

Взаимоотношения ур-ней 4-8 этой прямой закономерности не подчиняются. Поведенческие реакции человека могут варьироваться от ур.4 до ур.8. Ур.8 для ур.7 сост. законодательную и котролир. среду.

9 уровень: Уровень полного отрыва инф-ции от физического носителя. Трансцендентальные, непознанные системы (антимиры, черные дыры, возникновение галактик, мир идей (Платон))


Естественные и искусственные системы.

Естественная система — это система, имеющая объективную природу, предопределяющую естествен­ный характер ее возникновения, функционирования и развития.

Критерии естеств. структурирования системы:

развивается по объективным законам - закон сохранения, максимизация интенсивности связи внутри элементов, минимизация интенсивности связи между элементов.

Искусственная с. - система, созданная и поддерживаемая руками человека.

Открытые и закрытые системы

О.с. – системы, в кот. все или некоторые элементы взаимодействуют не только друг с другом, но и с внешней средой и наоборот – закрытая система, это такая, в которой элементы взаимодействуют только друг с другом.

Пример закрытой экономической системы – натуральное хозяйство.

Теория открытых систем была открыта Пригожиным (синергетика), которая базировалась на термодинамических системах (они обмениваются с окружающей средой веществом, Е и р, для них стационарное состояние – состояние проточного равновесия).

Большие/малые, сложные/простые системы

Системы разделяются на б/м в зависимости от объема материальных ресурсов, требуемых для их поддержания.

Для ИТ: объем памяти, быстродействие.

Большая система – система, моделирование которой затруднено вследствие ее большой размерности.

Системы разделяются на простые/сложные в зависимости от объема информации, которой располагают управ. относительно этой системы.




  1. Информационные системы, информационные процессы, информационные технологии. Их определения согласно Федеральному законодательству. Проблемно, аппаратно и технологически ориентированные определения информационных систем.

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

Российский ГОСТ РВ 51987 определяет информационную систему как «автоматизированную систему, результатом функционирования которой является представление выходной информации для последующего использования».


Технология совокупность приемов и методов, определяющих последовательность действий для реализации процессов.

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

Информационный процесс — процесс получения, создания, сбора, обработки, накопления, хранения, поиска, распространения и использованияинформации.

Классификация ИС:


По степени распределённости отличают:

  • настольные (desktop), или локальные ИС, в которых все компоненты (БД,СУБД, клиентскиеприложения) находятся на одном компьютере;

  • распределённые (distributed) ИС, в которых компоненты распределены по нескольким компьютерам.

По степениавтоматизации ИС делятся на:

  • автоматизированные: информационные системы, в которых автоматизация может быть неполной (то есть требуется постоянное вмешательство персонала);

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

По характеру обработки данных ИС делятся на:

  • информационно-справочные, или информационно-поисковые ИС, в которых нет сложных алгоритмов обработки данных, а целью системы является поиск и выдача информации в удобном виде;

  • ИС обработки данных, или решающие ИС, в которых данные подвергаются обработке по сложным алгоритмам. К таким системам в первую очередь относятавтоматизированные системы управления исистемы поддержки принятия решений.

Классификация по охвату задач (масштабности):


  • Персональная ИС предназначена для решения некоторого круга задач одного человека.

  • Групповая ИС ориентирована на коллективное использование информации членами рабочей группы или подразделения.

  • Корпоративная ИС в идеале охватывает все информационные процессы целого предприятия, достигая их полной согласованности, безызбыточности и прозрачности. Такие системы иногда называют системами комплексной автоматизации предприятия.

  1. Логические языки в ИТ. Логика Аристотеля. Сущности, кванторы, силлогизмы. Исчисление высказываний. Алфавит, формулы, аксиомы, правила вывода. Применение в ИТ.

Логика Аристотеля

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



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

Квантор — общее название для логических операций, ограничивающих область истинности какого-либо предиката и создающих высказывание. Чаще всего упоминают:

- Квантор всеобщности (обозначение: \forall, читается: «для всех…», «для каждого…»).

- Квантор существования (обозначение: \exists, читается: «существует…»).

Силлогизм - импликация (логическая операция, образующая сложное высказывание посредством логической связки) (Аристотель) типа:

Если А присуще всякому В и В присуще всякому С, то А присуще всякому С.

Исчисление высказываний - логика неанализируемых предположений, в которой пропозициональные константы могут рассматриваться как представляющие определенные простые выражения вроде "Сократ — мужчина" и "Сократ смертен" (р, q, r, …), которые иногда называют атомарными формулами, или атомами.

Правила для конструирования правильно построенных формул (ППФ).

(S. U) ЕслиU является атомом, то у является ППФ.

(S¬) Если U является ППФ, то ¬U также является ППФ.

(S. v) Если U и ф являются ППФ, то (U v ф) также является ППФ.

Алфавит системы — счетное множество символов.

Формулы системы — некоторое подмножество всех слов, которые можно образовать из символов, входящих в алфавит (обычно задается процедура, позволяющая составлять формулы из символов алфавита системы).

Аксиомы системы — выделенное множество формул системы.

Правила вывода системы — конечное множество отношений между формулами системы.

Высказывание – это такое утверждение, относительно которого можно в любой момент сказать истинное оно или ложное, или приписать ему такую интерпретацию.

Правила вывода


  1. правило подстановки

  2. правило заключения

С точки зрения теории алгоритмов множество всех высказываний исчислимо и разрешимо.

Область применения – анализ и синтез конечных автоматов.



  1. Основные понятия теории систем. Принципы системного подхода в моделировании систем. Общая характеристика проблемы моделирования систем. Классификация видов моделирования систем. Возможности и эффективность моделирования систем на вычислительных машинах.

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

При системном подходе необходимо прежде всего четко определить цель моделирования.

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

Основные принципы классического и системного подхода:

При классическом подходе реальный объект разбивается на подсистемы, выделяются отдельные данные (Д) и ставятся цели (Ц). По отдельной совокупности исходных данных Д ставится цель моделирования отдельной стороны функционирования системы, на базе этой цели формируется некоторая компонента К будущей модели. Совокупность компонент объединяется в модель М.

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

На основе исходных данных Д, которые известны из анализа внешней системы, тех ограничений, которые накладываются на систему сверху либо исходя из возможностей ее реализации, и на основе цели функционирования формулируются исходные требования Т к модели системы S. На базе этих требований формируются ориентировочно некоторые подсистемы П, элементы Э и осуществляется наиболее сложный этап синтеза — выбор В составляющих системы, для чего используются специальные критерии выбора КВ.



Общая характеристика проблемы моделирования систем.

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

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

Если цель моделирования и функционирования системы ясна, то возникает следующая проблема: построение модели М. Построение модели оказывается возможным, если имеется информация или выдвинуты гипотезы относительно структуры, алгоритмов и параметров исследуемого объекта.

Если модель М построена, то следующей проблемой можно считать проблему работы с ней, т.е. реализацию модели, основные задачи которой – минимизация времени получения конечных результатов и обеспечение их достоверности.

Классификация видов моделирования систем представлена на рисунке.
Детерминированное моделирование отображает детерминированные процессы, т. е. процессы, в которых предполагается отсутствие всяких случайных воздействий; стохастическое моделирование отображает вероятностные процессы и события.

Статическое моделирование служит для описания поведения объекта в какой-либо момент времени, а динамическое моделирование отражает поведение объекта во времени.

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

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

Математическое моделирование. Для исследования характеристик процесса функционирования любой системы S математическими методами, включая и машинные, должна быть проведена формализация этого процесса, т. е. построена математическая модель. Под математическим моделированием будем понимать процесс установления соответствия данному реальному объекту некоторого математического объекта, называемого математической моделью, и исследование этой модели, позволяющее получать характеристики рассматриваемого реального объекта.

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

При имитационном моделировании реализующий модель алгоритм воспроизводит процесс функционирования системы S во времени, причем имитируются элементарные явления, составляющие процесс, с сохранением их логической структуры и последовательности протекания во времени, что позволяет по исходным данным получить сведения о состояниях процесса в определенные моменты времени, дающие возможность оценить характеристики системы S.

Комбинированное (аналитико-имитационное) моделирование проводится предварительная декомпозиция процесса функционирования объекта на составляющие подпроцессы и для тех из них, где это возможно, используются аналитические модели, а для остальных подпроцессов строятся имитационные модели.

При реальном моделировании используется возможность исследования различных характеристик либо на реальном объекте целиком, либо на его части.



Натурным моделированием называют проведение исследования на реальном объекте с последующей обработкой результатов эксперимента на основе теории подобия.

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

Возможности и эффективность моделирования систем на вычислительных машинах.

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



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

  • блоки, характеризующие моделируемый процесс функционирования системы S;

  • блоки, отображающие внешнюю среду и ее воздействие на реализуемый процесс;

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

  1. Математические схемы моделирования систем. Основные подходы к построению математических моделей системы. Непрерывно-детерминированные модели. Дискретно-детерминированные модели. Дискретно-стохастические модели. Непрерывно-стохастические модели. Сетевые модели. Комбинированные модели.

Мат.схемы – переход от содержательного описания к формальному описанию системы с учетом воздействия окружающей среды.

Исходной информацией служат данные о назначении и условиях работы системы.

Модель системы, можно представить в виде множества величин

в общем случае следующие подмножества:



  • подмножество совокупности входных воздействий на систему x=\left \{ x_i \right \}, i=\overline{1,n_x}

  • подмножество совокупности воздействий внешней среды на систему v=\left \{ v_l \right \}, l=\overline{1,n_v}

  • подмножество совокупности внутренних (собственных) параметров системы h=\left \{ h_k \right \}, k=\overline{1,n_h}

  • подмножество совокупности выходных характеристик системы y=\left \{ y_j \right \}, j=\overline{1,n_y}

Под математической моделью объекта понимают конечное подмножество переменных {х (t),v (t), h (t)} вместе с математическими связями между ними и характеристиками у (t).

Рассмотрим особенности непрерывно-детерминированного под­хода на примере использования в качестве математических моделей дифференциальных уравнений. Дифференциальными уравнениями называются такие уравнения, в которых неизвестными будут функ­ции одной или нескольких переменных, причем в уравнение входят не только функции, но и их производные различных порядков. Если неизвестные — функции многих переменных, то уравнения называ­ются уравнениями в частных производных, в противном случае при рассмотрении функции только одной независимой переменной уравнения называются обыкновенными дифференциальными уравне­ниями.

Применяются для исследования систем, функционирующих в непрерывном времени. Для описания таких систем в основном используются дифференциальные, интегральные, интегро-дифференциальные уравнения.

Основным видом дискретно-детерминированных моделей является конечный автомат. Оперируют с дискретным временем.

Конечным автоматом-дискретный преобразователь информации, способный под воздействием входных сигналов переходить из одного состояния в другое и формировать сигналы на выходе. Автоматы разделяются на автоматы без памяти, автоматы с памятью. Описание их работы производится с помощью таблиц, матриц, графов, отображающих переходы автомата из одного состояния в другое.

Дискретно-стахостические (Р-схемы) принято называть вероятностными автоматами, с помощью которых можно определить дискретные преобразования информации с памятью.

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

Пример такой модели представляет дискретная марковская цепь с конечным множеством состояний. Анализ F-схем основан на обработке и преобразовании матриц вероятностей переходов и анализе вероятностных графов.



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

Сетевые модели - для формального описания структуры и взаимодействия параллельных систем и процессов используются сети Петри, называемые N-схемами.

N = ,

где В – конечное множество символов, называемых позициями, B ≠ O;

D – конечное множество символов, называемых переходами D ≠ O,

B ∩ D ≠ O;

I – входная функция (прямая функция инцидентности) I: B × D → {0, 1};

О – выходная функция (обратная функция инцидентности), О: B × D → {0, 1}.

Комбинированные модели (A-схемы).

Основаны на описании процессов функционирования любых систем на базе агрегативного метода. При агрегативном описании система разбивается на отдельные подсистемы, которые могут считаться удобными для математического описания. В результате отдельные уровни системы поддаются анализу.



  1. Стандарт жизненного цикла ПО. Основные процессы ЖЦ ПО. Вспомогательные процессы ЖЦ ПО. Организационные процессы ЖЦ ПО. Взаимосвязь между процессами ЖЦ ПО

Жизненный цикл программного обеспечения (ПО) — период времени, который начинается с момента принятия решения о необходимости создания программного продукта и заканчивается в момент его полного изъятия из эксплуатации. Этот цикл — процесс построения и развития ПО.

Стандарты ЖЦ ПО

  • ГОСТ 34.601-90

  • ISO/IEC 12207:2008 «System and software engineering — Software life cycle processes» (российский аналог — ГОСТ Р ИСО/МЭК 12207-2010 Информационная технология. Системная и программная инженерия. Процессы жизненного цикла программных средств)

1. Основные процессы жизненного цикла - Primary Processes

1.1 Заказ - Acqusition


1.2 Поставка - Supply
1.3 Разработка - Development
1.4 Эксплуатация - Operation
1.5 Сопровождение - Maintenance

2. Вспомогательные процессы жизненного цикла – Supporting Processes

2.1 Документирование - Documentation
2.2 Управление конфигурацией – Configuration Management
2.3 Обеспечение качества – Quality Assurance
2.4 Верификация - Verification
2.5 Аттестация - Validation
2.6 Совместный анализ – Joint Review
2.7 Аудит - Audit
2.8 Решение проблем – Problem Resolution

3. Организационные процессы жизненного цикла – Organizational Processes

3.1 Управление - Management
3.2 Создание инфраструктуры - Infrastructure
3.3 Усовершенствование - Improvement
3.4 Обучение – Training
Стандарт определяет высокоуровневую архитектуру жизненного цикла. Жизненный цикл начинается с идеи или потребности, которую необходимо удовлетворить с использованием программных средств. Архитектура строится как набор процессов и взаимных связей между ними. Например, основные процессы жизненного цикла обращаются к вспомогательным процессам, в то время, как организационные процессы действуют на всем протяжении жизненного цикла и связаны с основными процессами.


  1. Модели жизненного цикла ПО. Каскадная модель ЖЦ. Итерационная модель жизненного цикла ПО.

Наиболее часто говорят о следующих моделях жизненного цикла:

  • Каскадная (водопадная) или последовательная

  • Итеративная и инкрементальная – эволюционная (гибридная, смешанная)

  • Спиральная (spiral) или модель Боэма

Водопадная модель жизненного цикла была предложена в 1970 г. Уинстоном Ройсом. Она предусматривает последовательное выполнение всех этапов проекта в строго фиксированном порядке. Переход на следующий этап означает полное завершение работ на предыдущем этапе. Требования, определенные на стадии формирования требований, строго документируются в виде технического задания и фиксируются на все время разработки проекта. Каждая стадия завершается выпуском полного комплекта документации, достаточной для того, чтобы разработка могла быть продолжена другой командой разработчиков.

Этапы проекта в соответствии с каскадной моделью:



  1. Формирование требований;

  2. Проектирование;

  3. Реализация;

  4. Тестирование;

  5. Внедрение;

  6. Эксплуатация и сопровождение.

Преимущества:

  • Полная и согласованная документация на каждом этапе;

  • Легко определить сроки и затраты на проект.

Недостатки:

В водопадной модели переход от одной фазы проекта к другой предполагает полную корректность результата (выхода) предыдущей фазы. Однако неточность какого-либо требования или некорректная его интерпретация в результате приводит к тому, что приходится «откатываться» к ранней фазе проекта и требуемая переработка не просто выбивает проектную команду из графика, но приводит часто к качественному росту затрат и, не исключено, к прекращению проекта в той форме, в которой он изначально задумывался.



Итерационная:

Альтернативой последовательной модели является так называемая модель итеративной и инкрементальной разработки, получившей также от Т. Гилба в 70-е гг. название эволюционной модели. Также эту модель называют итеративной моделью и инкрементальной моделью.

Модель IID предполагает разбиение жизненного цикла проекта на последовательность итераций, каждая из которых напоминает «мини-проект», включая все процессы разработки в применении к созданию меньших фрагментов функциональности, по сравнению с проектом в целом. Цель каждой итерации — получение работающей версии программной системы, включающей функциональность, определённую интегрированным содержанием всех предыдущих и текущей итерации. Результат финальной итерации содержит всю требуемую функциональность продукта. Таким образом, с завершением каждой итерации продукт получает приращение — инкремент — к его возможностям, которые, следовательно, развиваются эволюционно. Итеративность, инкрементальность и эволюционность в данном случае есть выражение одного и того же смысла разными словами со слегка разных точек зрения.

Подход IID имеет и свои отрицательные стороны, которые, по сути, — обратная сторона достоинств. Во-первых, целостное понимание возможностей и ограничений проекта очень долгое время отсутствует. Во-вторых, при итерациях приходится отбрасывать часть сделанной ранее работы. В-третьих, добросовестность специалистов при выполнении работ всё же снижается, что психологически объяснимо, ведь над ними постоянно довлеет ощущение, что «всё равно всё можно будет переделать и улучшить позже».



Спиральная модель, предложенная Барри Боэмом в 1986 году, стала существенным прорывом в понимании природы разработки ПО. Она представляет собой процесс разработки программного обеспечения, сочетающий в себе как проектирование, так и постадийное прототипирование с целью сочетания преимуществ восходящей и нисходящей концепции, делающая упор на начальные этапы жизненного цикла: анализ и проектирование.

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




  1. Классификация языков программирования. Процедурные, функциональные, логические, объектно-ориентированные. Низкоуровневые и высокоуровневые.

По степени ориентации на специфические возможности ЭВМ:

● машинно-зависимые;

● машинно-независимые.

По степени детализации алгоритма получения

результата:

● языки низкого уровня;

● языки высокого уровня;

● языки сверхвысокого уровня.

По степени ориентации на решение определенного

класса задач:

● проблемно-ориентированные;

● универсальные.

По возможности дополнения новыми типами данных и

операциями:

● языки систем реального времени;

● языки систем условного времени.

По способу получения результата:

● процедурные;

● Непроцедурные.

По типу решаемых задач:

● языки системного программирования;

● языки прикладного программирования.



Процедурное программирование - это парадигма программирования, основанная на концепции вызова процедуры(подпрограммы, методы, функции). Процедуры просто содержат последовательность шагов для выполнения.

Функциональное программирование - парадигма программирования, в которой процесс вычисления трактуется как вычисление значений функций в математическом понимании последних.

Основные свойства:

краткость и простота; строгая типизация; модульность; функции — объекты вычисления;

чистота (отсутствие побочных эффектов); отложенные (ленивые) вычисления.

LISP, Scala, Erlang, F#, Haskell



Логическое программирование — парадигма программирования, основанная на автоматическом доказательстве теорем. Логическое программирование основано на теории и аппарате математической логики с использованием математических принципов резолюций.

Самым известным языком логического программирования является Prolog.



Объектно-ориентированное программирование (ООП) — парадигма программирования, в которой основными концепциями являются понятия объектов и классов. В случае языков с прототипированием вместо классов используются объекты-прототипы.

В современных ОО языках используются механизмы:



Наследование. Создание нового класса объектов путём добавления новых элементов (методов). Некоторые ОО языки позволяют выполнять множественное наследование, то есть объединять в одном классе возможности нескольких других классов.

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

Полиморфизм. При полиморфизме некоторые части (методы) родительского класса заменяются новыми, реализующими специфические для данного потомка действия. Таким образом, интерфейс классов остаётся прежним, а реализация методов с одинаковым названием и набором параметров различается. С полиморфизмом тесно связано позднее связывание.

Python, C++, Java, Objective-C, Perl, JavaScript, Ruby, PHP



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

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

  1. Понятия интегрированной среды разработки (IDE), компилятора, транслятора, интерпретатора, отладчика

Интегрированная среда разработки, ИСР (англ. IDE, Integrated development environment) — система программных средств, используемая программистами для разработки программного обеспечения (ПО).

Обычно, среда разработки включает в себя:

- текстовый редактор,

- компилятор и/или интерпретатор,

- средства автоматизации сборки,

- отладчик.

Компилятор — программа или техническое средство, выполняющее компиляцию.

Компиляция — трансляция программы, составленной на исходном языке высокого уровня, в эквивалентную программу на низкоуровневом языке, близком машинному коду(абсолютный код, объектный модуль, иногда на язык ассемблера). 

Компилировать — проводить трансляцию машинной программы с проблемно-ориентированного языка на машинно-ориентированный язык.

Транслятор — программа или техническое средство, выполняющее трансляцию программы.

Трансляция программы — преобразование программы, представленной на одном из языков программирования, в программу на другом языке и, в определённом смысле, равносильную первой.

Транслятор обычно выполняет также диагностику ошибок, формирует словари идентификаторов, выдаёт для печати тексты программы и т. д.

Язык, на котором представлена входная программа, называется исходным языком, а сама программа — исходным кодом. Выходной язык называется целевым языком или объектным кодом.

Интерпрета́тор — программа (разновидность транслятора) или аппаратное средство, выполняющее интерпретацию.

Интерпрета́ция — пооператорный (покомандный, построчный) анализ, обработка и тут же выполнение исходной программы или запроса (в отличие от компиляции, при которой программа транслируется без её выполнения).

Отла́дчик (деба́ггер, англ. debugger) — компьютерная программа, предназначенная для поиска ошибок в программах, ядрах операционных систем и других видах кода. Отладчик позволяет отслеживать, устанавливать или изменять значения переменных в процессе выполнения кода, устанавливать и удалять контрольные точки или условия остановки и т.д.



  1. Базовые конструкции языков программирования: условные и безусловные переходы, операторы выбора, циклы, процедуры и функции.

Безусловный переход — это переход, который выполняется всегда.

Условный переход — переход, который выполняется в соответствии с результатом проверки некоторого условия.

Наиболее часто имеет две стадии: 1.сравнение между собой некоторых величин, 2.выполняется сам переход.



Оператор выбора - условный оператор позволяет выбрать в зависимости от значений предохранителей, являющихся логическими выражениями, одну из нескольких последовательностей операторов, образующих альтернативные варианты.(If else if else)

Цикл — управляющая конструкция, предназначенная для организации многократного исполнения набора инструкций. Также циклом может называться любая многократно исполняемая последовательность инструкций, организованная любым способом (например, с помощью условного перехода).

Виды:

Безусловные циклы (бесконечные)

While true



Цикл с предусловием

while(<условие>){ <тело цикла> }



Цикл с постусловием

do{ <тело цикла>}while(<условие продолжения цикла>)



Цикл с выходом из середины

break


Цикл со счётчиком

for (i = 0; i< 9; i++)

Совместный цикл

For range(1,5)



for item in iterator_instance:

Функция - поименованный фрагмент программного кода, к которому можно обратиться из другого места программы.После выполнения функции, управление возвращается обратно в адрес возврата — точку программы, где данная функция была вызвана.

Функция может принимать параметры и должна возвращать некоторое значение.



Процедура - функция, которая не возвращает значений.

Функция определяет собственную (локальную) область видимости, куда входят входные параметры, а, также, те переменные, которые объявляются непосредственно в теле самой функции.



  1. Типы данных. Базовые типы данных. Числовые, строковые, логические. Преобразование типов. Контроль типизации.


Поделитесь с Вашими друзьями:
  1   2   3   4   5   6   7   8   9   ...   17


База данных защищена авторским правом ©nethash.ru 2017
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал