Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

1672

.pdf
Скачиваний:
0
Добавлен:
21.11.2023
Размер:
222.47 Кб
Скачать

Министерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего образования

«Нижегородский государственный архитектурно-строительный университет»

Молькин Н.В.

ТЕХНОЛОГИИ РАЗРАБОТКИ ПРОГРАММНЫХ ПРИЛОЖЕНИЙ

Учебно-методическое пособие по подготовке к лекциям, практическим занятиям

(включая рекомендации по организации самостоятельной работы)

для обучающихся по дисциплине «Технологии разработки программных приложений»

по направлению подготовки 09.03.03 Прикладная информатика профиль Прикладная информатика в экономике

Нижний Новгород

2016

УДК 004.9

Молькин Н.В. / Технологии разработки программных приложений [Электронный ресурс]: учеб.- метод. пос. / Н.В. Молькин; Нижегор. гос. архитектур. - строит. ун-т – Н. Новгород: ННГАСУ, 2016. –

12с.– 1 электрон. опт. диск (CD-RW).

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

Учебно-методическое пособие предназначено для обучающихся в ННГАСУ по дисциплине «Технологии разработки программных приложений» по направлению подготовки 09.03.03 Прикладная информатика, профиль Прикладная информатика в экономике.

Учебно-методическое пособие ориентировано на обучение в соответствии с календарным учебным графиком и учебным планом по основной профессиональной образовательной программе направления 09.03.03 Прикладная информатика, профиль Прикладная информатика в экономике, утверждённым решением учёного совета ННГАСУ от 02.09.2016 г. (протокол № 1).

© Н.В. Молькин, 2016 © ННГАСУ, 2016

2

Оглавление

1.

Общие положения ............................................................................................................................................

4

 

1.1

Цели изучения дисциплины и результаты обучения .............................................................................

4

 

1.2

Содержание дисциплины ..........................................................................................................................

4

2.

Методические указания по подготовке к лекциям........................................................................................

7

 

2.1

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

7

 

2.2

Общие рекомендации при работе с конспектом лекций........................................................................

7

 

2.3

Контрольные вопросы ...............................................................................................................................

7

3.

Методические указания по подготовке к практическим занятиям .............................................................

8

 

3.1

Общие рекомендации по подготовке к практическим занятиям ..........................................................

8

 

3.2

Примеры задач для практических занятий..............................................................................................

8

4.

Методические указания по организации самостоятельной работы ............................................................

9

 

4.1

Общие рекомендации для самостоятельной работы ..............................................................................

9

 

4.2

Темы для самостоятельного изучения ...................................................................................................

10

 

4.3

Учебно-методическое обеспечение самостоятельной работы ............................................................

10

 

4.4

Задания для самостоятельной работы ...................................................................................................

11

3

1. Общие положения

1.1 Цели изучения дисциплины и результаты обучения

Основными целями освоения учебной дисциплины «Технологии разработки программных приложений» являются:

-ознакомление с современными языками программирования, их классификацией и областями их применения;

-освоение различных методов абстрагирования, обеспечения модульности и других аспектов проектирования программных систем;

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

В процессе освоения дисциплины студент должен

Знать:

-языки программирования и приемы разработки или модификации программного кода;

-основные виды технической документации проектов автоматизации и информатизации прикладных процессов;

Уметь:

-разрабатывать программное обеспечение для прикладных задач;

-составлять техническую документацию проектов автоматизации и информатизации прикладных процессов;

Владеть:

-навыками программирования приложений и их отладки;

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

Данная дисциплина позволит студентам не только систематизировать полученные теоретические

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

1.2 Содержание дисциплины

Материал дисциплины сгруппирован по следующим разделам:

1. Общие положения о стандартах.

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

4

2. Стандарты документирования программных средств.

Общая характеристика состояния в области документирования программных средств. Единая система программной документации. ГОСТ 19.101-77 ЕСПД. Виды программ и программных документов. ГОСТ 19.102-77. ЕСПД. Стадии разработки. ГОСТ 19.105-78 ЕСПД. Общие требования к программным документам. ГОСТ 19.201-78 ЕСПД. Техническое задание. Требования к содержанию и оформлению. ГОСТ 19.402-78 ЕСПД. Описание программы. ГОСТ 19.404-79 ЕСПД. Пояснительная записка. Требования к содержанию и оформлению ГОСТ 19.503-79 ЕСПД. Руководство системного программиста. Требования к содержанию и оформлению ГОСТ 19.504-79 ЕСПД. Руководство программиста. Требования к содержанию и оформлению ГОСТ 19.505-79 ЕСПД. Руководство оператора. Требования к содержанию и оформлению ГОСТ 19.506-79 ЕСПД. Описание языка. Требования к содержанию и оформлению. Государственные стандарты Российской Федерации (ГОСТР).

3. ГОСТ Р ИСО/МЭК12119-2000.

Работы по тестированию. Протоколы тестирования. Отчет о тестировании. Дополнительное тестирование. Требования к средствам обеспечения тестирования. Организация и этапы тестирования при испытаниях надежности сложных программных средств. Методика тестирования при испытаниях надежности сложных программных средств. Тестирование и отладка программных компонентов в реальном времени. Тестирование и испытания комплекса программ по данным имитаторов внешней среды. Тестирование и испытания надежности комплекса программ при воздействиях операторовпользователей. Испытания комплекса программ в реальной внешней среде. Тестирование программного обеспечения. Цель тестирования. Тестирование и качество. Виды тестирования. Место тестирования в процессе разработки ПО. Специалист отдела тестирования квалификационные требования. Инструментарий специалиста по тестированию. Передовые технологии в тестировании (автоматизация тестирования).

4. Современные динамические языки.

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

ния.

Итераторы. Реорганизующее присваивание. Особенности объектной модели Ruby: унифициро-

ванность

объектного представления,

модули

и примеси, инкапсуляция. Динамическое изменение

классов,

элементы Meta-Object Protocol(MOP) в Ruby. JRuby и взаимодействие с Java, Java Scripting

API. Регулярные выражения. Классы

символов.

Жадные и нежадные выражения. Основные опера-

ции

с

регулярными выражениями.

 

 

5. Современные функциональные языки.

Классификация языков по парадигмам программирования. Функциональное программирование (ФП). Неподвижное состояние объекта как ключевое отличие ФП от ООП. Чистые функции, функции высших порядков. Функции, как объекты первого класса. Лексические контексты, анонимные функции, замыкания. Общие характеристики семейства языков Lisp: единое представление кода и данных, S- выражения, модель трансляции и исполнения, REPL. Язык Clojure, как современный представитель семейства Lisp: основные структуры языка. Компонентное тестирование в Clojure. Функциональные возможности Clojure: коллекции,реорганизующее присваивание, мемоизация, отложенные вычисления, бесконечные структуры данных. Абстрагирование данных с помощью функциональных примитивов (пары, числа Черча). Моделирование времени с помощью потоков. Символьные вычисления. Преимущества и недостатки ФП в сравнении с ООП. Императивные возможности Clojure. Software

5

Transactional Memory. Многопоточность. Ссылки, атомы, агенты, переменные, виды транзакций. Взаимодействие с Java.

6. Элементы метапрограммирования, аспектно-ориентированное программирование.

Управляемая кодогенерация. Макросы в Lisp (на примере Clojure). Модель исполнения макросов. Макросы, как способ расширения языка.Понятие о проблемно-специфичных языках (DSL) и языках сценариев. Методы построения и генерации DSL. Динамические объектные модели. CLOS: обобщенный динамический полиморфизм, обобщенные функции и мультиметоды, вспомогательные методы. Реализация элементов CLOS в Clojure. Интроспекция, введение в MOP. Сквозная функциональность (cross-cutting concerns), проблема модульности. Традиционные методы обеспечения модульности в условиях сквозной функциональности. Применение АОП в проектирование. Преимущества и недостатки по сравнению с традиционными методами проектирования. Примеры задач, эффективно решаемых с помощью АОП.

6

2. Методические указания по подготовке к лекциям

2.1 Общие рекомендации по работе на лекциях

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

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

Личное общение на лекции преподавателя со студентами предоставляет большие возможности для реализации образовательных и воспитательных целей.

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

2.2Общие рекомендации при работе с конспектом лекций

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

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

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

2.3Контрольные вопросы

1.Нормативные документы по стандартизации и виды стандартов.

2.Требования к средствам обеспечения тестирования.

3.Организация и этапы тестирования при испытаниях надежности сложных программных средств.

4. Общая классификация языков по назначению и модели исполнения.

5.Общие свойства динамических.

6.Динамическая типизация.

7. Классификация языков по парадигмам программирования.

8.Функциональное программирование (ФП).

9.Императивные возможности Clojure.

10.Software Transactional Memory.

11.Многопоточность.

7

3. Методические указания по подготовке к практическим занятиям

3.1Общие рекомендации по подготовке к практическим занятиям

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

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

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

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

3.2Примеры задач для практических занятий

Пример № 1 Организация разработки внутрифирменных стандартов. Пример № 2

Составление руководств системного программиста, программиста, оператора. Описание языка. Пример №3 Протоколы тестирования.

Пример № 4 Отчет о тестировании. Пример № 5

Основные операции с регулярными выражениями. Пример № 6 Моделирование времени с помощью потоков. Пример № 7 Символьные вычисления.

Пример № 8 Аспектно-ориентированное программирование (АОП). Пример № 9

Динамические лексические контексты, их реализация в Clojure. Пример № 10

Элементы АОП в CLOS.

8

4. Методические указания по организации самостоятельной работы

4.1 Общие рекомендации для самостоятельной работы

Самостоятельная работа студентов является основным способом овладения учебным материалом в свободное от обязательных учебных занятий время.

Целями самостоятельной работы студентов являются:

-систематизация и закрепление полученных теоретических знаний и практических умений студентов;

-углубление и расширение теоретических знаний;

-формирование умений использовать нормативную, правовую, справочную документацию и специальную литературу;

-развитие познавательных способностей и активности студентов:

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

Запланированная в учебном плане самостоятельная работа студента рассматривается как связанная либо с конкретной темой изучаемой дисциплины, либо с подготовкой к курсовой, дипломной работе, а также к защите ВКР. В данном разделе рассматривается только самостоятельная работа первого вида.

Самостоятельная работа выполняется в два этапа: планирование и реализация. Планирование самостоятельной работы включает:

-уяснение задания на самостоятельную работу;

-подбор рекомендованной литературы;

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

На втором этапе реализуется составленный план. Реализация включает в себя:

-изучение рекомендованной литературы;

-составление плана (конспекта) по изучаемому материалу (вопросу);

-взаимное обсуждение материала.

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

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

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

-поиск через систематический каталог в библиотеке;

-просмотр специальных периодических изданий;

-использование материалов, размещенных в сети Интернет.

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

9

довании какой-либо научной проблемы.

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

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

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

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

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

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

Конспект – это систематизированное, логичное изложение материала источника. Объем конспекта не должен превышать 10 страниц. Шрифт Times New Roman, кегль 14, интервал 1,5. Список литературы должен состоять из 5-8 источников, по возможности следует использовать последние издания учебных пособий и исследований.

Тезисы — это последовательность ключевых положений из некоторой темы без доказательств или с неполными доказательствами. По объему тезисы занимают одну страницу формата А4 или одну – две страницы в ученической тетради. В конце тезисов студент должен сделать собственные выводы.

Презентации по предложенной теме составляются в программе Power Point или Impress. Количество слайдов должно быть не менее 15 и не превышать 20 слайдов. Кроме текста на слайдах можно создавать схемы и таблицы. Шрифт должен быть читаемым, например, шрифт черного цвета на светлом фоне или светлый шрифт на темном фоне. Также шрифт не должен быть слишком мелким. В слайдах указываются только основные тезисы, понятия и нормы.

4.2Темы для самостоятельного изучения

1.Динамическое изменение классов.

2.Элементы Meta-Object Protocol(MOP) в Ruby.

3.JRuby и взаимодействие с Java.

4.Java Scripting API.

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

6.S-выражения, модель трансляции и исполнения, REPL.

4.3Учебно-методическое обеспечение самостоятельной работы

1.Мобильность программ и данных в открытых информационных системах Липаев Владимир Васильевич , Филинов Евгений Николаевич М. : Науч. кн., 1997.

2.Java. Объектно-ориентированное программирование для магистров и бакалавров : базовый курс по объект.-ориентир. Программированию Васильев Алексей Николаевич СПб. : Питер, 2012

3.http://clojure.org/

10

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]