Информатика и программирование: Учебная программа

УТВЕРЖДАЮ
Зам. директора Института кибернетики
по учебной работе
________________ С.А. Гайворонский
«___»_____________2015 г.
РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ
ИНФОРМАТИКА И ПРОГРАММИРОВАНИЕ
НАПРАВЛЕНИЕ ООП 09.03.04 Программная инженерия
ПРОФИЛИ ПОДГОТОВКИ Разработка программно-информационных систем
КВАЛИФИКАЦИЯ (СТЕПЕНЬ)
БАЗОВЫЙ УЧЕБНЫЙ ПЛАН ПРИЕМА
КУРС 1,2
СЕМЕСТР
КОЛИЧЕСТВО КРЕДИТОВ
КОД ДИСЦИПЛИНЫ
бакалавр
2014 г.
2,3
6 кредитов ECTS(3/4)
Б1.ВМ4.7
ВИДЫ УЧЕБНОЙ ДЕЯТЕЛЬНОСТИ И ВРЕМЕННОЙ РЕСУРС:
Лекции
56 час.
Лабораторные занятия
56 час.
АУДИТОРНЫЕ ЗАНЯТИЯ
112 час.
САМОСТОЯТЕЛЬНАЯ РАБОТА
104 час.
ИТОГО
216 час.
ВИД ПРОМЕЖУТОЧНОЙ АТТЕСТАЦИИ
ОБЕСПЕЧИВАЮЩЕЕ ПОДРАЗДЕЛЕНИЕ
2-зачет, 3- экзамен
кафедра ОСУ
ЗАВЕДУЮЩИЙ КАФЕДРОЙ ОСУ
____________ М.А. Иванов
РУКОВОДИТЕЛЬ ООП
____________ Чердынцев Е.С.
ПРЕПОДАВАТЕЛЬ
____________ Фофанов О.Б.
2015 г.
1. ЦЕЛИ ОСВОЕНИЯ ДИСЦИПЛИНЫ
Целями преподавания дисциплины являются:
сформировать у студента фундамент основных понятий информатики и современной
информационной культуры, обеспечить устойчивые навыки работы на персональном
компьютере в условиях локальных и глобальных вычислительных сетей и систем
телекоммуникации, сформировать у студента основные навыки программирования на
языках ООП (объектно-ориентированное программирование); усвоение этих знаний
студентами, а также формирование у них мотивации к самообразованию за счет
активизации самостоятельной познавательной деятельности.
Поставленные цели полностью соответствуют целям (Ц1-Ц5) ООП.
К
Формулировка цели
од
ц
Требования ФГОС, критерии
АИОР
и
заинтересованных
работодателей.
ели
1
2
3
4
5
Ц
Подготовка
выпускников
к
проектно-конструкторской деятельности в
области создания и внедрения аппаратных
и
программных
средств
объектов
профессиональной
деятельности
в
соответствии с техническим заданием и с
использованием средств автоматизации
проектирования.
Ц
Подготовка
выпускников
к
проектно-технологической деятельности в
области
создания
компонентов
программных комплексов и баз данных,
автоматизации технологических процессов
с
использованием
современных
инструментальных средств и технологий
программирования.
Ц
Подготовка
выпускников
к
комплексным инженерным исследованиям
для решения задач, связанных с
разработкой аппаратных и программных
средств
объектов
профессиональной
деятельности.
Ц
Подготовка
специалистов
к
монтажно-наладочной
и
сервисноэксплуатационной деятельности для ввода
разработанных
объектов
профессиональной
деятельности
в
опытную и промышленную эксплуатацию
с выполнением требований защиты
окружающей среды и правил безопасности
производства.
Ц
Подготовка
выпускников
к
самообучению
и
непрерывному
профессиональному
самосовершенствованию.
Требования ФГОС.
Критерии
АИОР,
соответствующие международным
стандартам EUR-ACE и FEANI.
Требования ФГОС.
Критерии
АИОР,
соответствующие международным
стандартам EUR-ACE и FEANI.
Требования ФГОС.
Критерии
АИОР,
соответствующие международным
стандартам EUR-ACE и FEANI.
Требования ФГОС.
Критерии
АИОР,
соответствующие международным
стандартам EUR-ACE и FEANI.
Запросы отечественных и
зарубежных работодателей.
Требования ФГОС.
Критерии
АИОР,
соответствующие международным
стандартам EUR-ACE и FEANI.
Запросы отечественных и
зарубежных работодателей.
2. МЕСТО ДИСЦИПЛИНЫ В СТРУКТУРЕ ООП
Дисциплина «Информатика и программирование» (Б1.ВМ4.7) является базовой
профессионального цикла (Б1).
Для её успешного усвоения необходимы:
знания базовых понятий информатики и вычислительной техники, роли и значения
информатики в современном обществе, основы форм представления и преобразования
информации в компьютере;
умения
решать простейшие задачи вычислительного характера;
владение навыками работы на персональном компьютере.
Пререквизитами данной дисциплины являются дисциплина «Информатика» Б2.В5
«Линейная алгебра и аналитическая геометрия» (Б2.Б1.1), «Логика и теория алгоритмов»
(Б2.В1).
Кореквизиты –
«Алгоритмы и структуры данных» (Б3.В3), Архитектура
вычислительных систем (Б3.Б4).
3. РЕЗУЛЬТАТЫ ОСВОЕНИЯ ДИСЦИПЛИНЫ
В соответствии с требованиями ООП освоение дисциплины «Информатика и
программирование» направлено на формирование у студентов следующих компетенций
(результатов обучения), в т. ч. в соответствии с ФГОС:
Таблица 1. Составляющие результатов обучения, которые будут получены при изучении
дисциплины «Информатика и программирование»
Результат
обучения
Код
Знания
Код
Умения
Код
Владения
З.2.1
Основные понятия и
терминологию в
области
вычислительной
техники;
основы построения и
архитектуры
компьютера;
способы
представление
информации в
памяти;
Базовые типы
данных, операции и
операторы языков
программирования;
интегрированные
среды (IDE)
разработки
приложений;
У.2.1
Формализовать
вычислительные и
логические задачи;
представлять
алгоритмы
вычислительных и
логических задач;
записывать алгоритмы
решения задач на
языках высокого
уровня;
В.2.1
Методами
алгоритмизации,
различными
способами описания
алгоритмов,
кодирования на
языках высокого
уровня
У.2.2.
1
Написание программ
наиболее эффективных
с точки зрения
целесообразности
используемых
конструкций языка
В.2.2.
1
Методами отладки
и
тестирования
программных
приложений в IDE
Eclipse
Р2
З.2.2
.1
Р2
Результат
обучения
Код
Знания
Код
Умения
Код
Владения
З.2.6
Принципы ООП;
описание классов и
методов
приложения;
реализацию
наследования и
полиморфизма в
языках ООП;
принципы обработки
исключительных
ситуации в языках
ООП, принципы
событийного
программирования и
создания
графического
интерфейса
У.2.6
Использовать
стандартные классы
языков ООП;
проектировать
собственные классы
интерфейсы и методы
оптимальной
структуры с
использованием
возможностей
инкапсуляции,
наследования и
полиморфизма;
проектировать
графический
интерфейс приложения
из набора стандартных
компонент
В.2.6
Методами
разработки сложных
событийных
приложений на
основе пакетов AWT
и Swing
В результате освоения дисциплины «Информатика и программирование» студентом
должны быть достигнуты следующие результаты:
Таблица 2. Планируемые результаты освоения дисциплины (модуля)
Код
результ
атов
РД1
РД2
РД3
РД4
Результат обучения
(выпускник должен быть готов)
Применяет базовые и специальные знания в области современных
информационных технологий для решения инженерных и экономических задач.
Проводит теоретические и экспериментальные исследования, включающие поиск
и изучение необходимой научно-технической информации, математическое
моделирование, проведение эксперимента, анализ и интерпретация полученных
данных, в области прикладной информатики. Проводить исследования,
связанные с оценкой информационной безопасности проектов.
Знает основы теории информации; принципы алгоритмизации; основы
архитектуры компьютерной техники; возможности языков программирования
высокого уровня, интегрированной среды создания приложений Eclipse.
Умеет содержательно и математически осуществлчять постановку задач
программированияи их алгоритмизацию; владеет навыками написания и отладки
программных приложений Java с использованием IDE Eclipse
4. СТРУКТУРА И СОДЕРЖАНИЕ ДИСЦИПЛИНЫ
4.1 Аннотированное содержание разделов дисциплины:
Второй семестр
Тема № 1. Введение в программирование
Эволюция языков программирования. Назначение и основы использования систем
искусственного интеллекта. Критерии качества программы. Архитектура и
возможности семейства языков высокого уровня. Жизненный цикл выполнения
программ. Модульные программы, объектно-ориентированное программирование,
критерии качества программы.
Лабораторная работа № 1. IDE Eclipse.
Тема № 2. Лексические основы построения языка
Общая структура программы. Применение комментариев и определение констант.
Идентификаторы. Ключевые слова.
Классификация операций
языка.
Арифметические операции, операции отношения, логические операции.
Старшинство операций.
Лабораторная работа № 2. Документирование программ
Тема № 3. Стандартные примитивные типы
Средства и алгоритмы представления, хранения и обработки текстовой и числовой
информации. Примитивные типы FLOAT, DOUBLE, BYTE, SHORT, INTEGER,
LONG, CHAR и BOOLEAN: объявление, вид констант, разрешенные операции и
стандартные функции. Старшинство операций. Классы-оболочки: Number, Integer,
Float, Character, Boolean и др.
Лабораторная работа № 3. Работа с примитивными типами
Тема № 4. Базовые управляющие конструкции
Форма программы и базовые вычисления. Оператор присваивания и простая
арифметика. Класс MATH. Условный оператор и организация разветвлений в
программе. Переключатели. Выход из блоков.
Лабораторная работа № 4. Исследование и сравнительный анализ временной
сложности алгоритмов сортировки вставками и выбором.
Тема № 5. Операторы цикла
Представление основных структур: итерации, ветвления, повторения. Операторы
повторения WHILE, DO, FOR. Применение составной инструкции. Вложенные
циклы. Примеры циклических программ.
Лабораторная работа № 5,6. Программирование циклов
Тема № 6. Одномерные и многомерные массивы
Описание массивов. Инициализация массивов. Ввод-вывод элементов массивов.
Многомерные массивы. «Неровные» массивы. Примеры программ работы с массивами
Лабораторная работа № 6. Работа с массивами
Тема № 7. Работа со строковыми данными
Описание строковых данных. Представление строк в памяти. Операции со строками.
Модификация, сравнение, поиск образца. Динамические строки- класс StringBuffer,
основные методы класса. Лексический анализ строк, класс StringTokenizer.
Лабораторная работа № 7. Работа со строками
Тема № 8. Методология объектно-ориентированного программирования
Определение объекта и класса как типа данных, определяемых пользователем
Инкапсуляция. Наследование. Полиморфизм. Достоинства и недостатки ООП.
Лабораторная работа № 8. Инкапсуляция объектов и классов
Тема № 9. Определение классов и методов
Общая форма определения класса. Создание экземпляров класса. Модификаторы доступа.
Открытый, закрытый, защищенный, пакетный доступы. Определение (описание метода).
Сигнатура метода. Классификация методов. Вызов методов. Рекурсивные методы программирование рекурсивных алгоритмов. Статические методы и переменные.
Перегрузка методов. Конструкторы.
Лабораторная работа № 9. Проектирование и кодирование классов и методов
Тема № 10. Наследование
Определение базового класса. Производные классы. Переопределение методов.
Многоуровневые производные классы. Конструкторы в подклассах
Лабораторная работа № 9. Создание расширений
Практические занятия № 1. Производные классы. Единичное и множественное
наследование.
Третий семестр
Тема № 11. Исключительные ситуации и их обработка
Прерывания и их обработка. Общая схема обработки исключений. Блоки try-caththrow. Иерархия встроенных классов исключений. Проверяемые и непроверяемые
исключения. Генерация объектов-исключений. Использование опции throws.
Создание собственных классов исключений.
Лабораторная работа № 10. Создание обработчиков исключений
Практические занятия № 2. Встроенные классы исключений. Создание
собственных классов исключений.
Тема № 12. Коллекции
Динамические структуры данных, списки: основные виды и способы реализации
Типы коллекций. Интерфейсы List, Set, Map, Queue. Классы ArrayList, LinkedList,
Vector и их методы. Итераторы. Примеры работы с коллекциями.
Лабораторная работа № 11. Коллекции Vector, ArrayList, LinkedList
Практические занятия № 3. Коллекции MAP и их применение
Тема № 13. Потоки ввода-вывода
Определение потока ввода-вывода. Иерархия классов – потоков. Байтовые и
символьные потоки. Базовые абстрактные классы InputStream и OutputStream. .
Класс File. Байтовые потоковые классы и работа с файлами. Классы-фильтры.
Интерфейсы DataInput, DataOutput. Классы потоков Data Базовые классы Reader и
Writer и их расширения. Лексический анализ потока. Работа с файлами прямого
доступа - класс RandomAccessFile. Сериализация и десериализация объектов.
Стандартные потоки ввода-вывода класса System, классы Scanner и Formatter.
Лабораторная работа № 12. Работа с файлами
Практические занятия № 4. Физическая организация файлов. Технологии клиентсервер.
Тема № 14. Событийная модель программирования и обработка событий
Классификация событий. Объекты-события. Слушатели событий. Интерфейсы –
слушатели событий. Классы-адаптеры. Схема делегирования. Обработка событий
Лабораторная работа № 13. Программирование обработчиков событий
Практические занятия № 5. Классы слушателей событий и их методы.
Тема № 15. Создание графического интерфейса
Организация и средства человеко-машинного интерфейса. Архитектура MVC и
варианты ее реализации. Элементы графического интерфейса: кнопки, окна,
полосы прокрутки, диалоговые окна, списки. Пакет AWT. Пакет Swing и иерархия
его классов. Построение окон. Организация информационного диалога. Панели и
менеджеры расположения. Кнопки, метки, поля текстового ввода. Списки.
Создание системы меню.
Лабораторная работа № 14. Работа с графическими компонентами
Практические занятия № 6. Классы пакета Swing и AWT
4.2 Структура дисциплины по разделам и формам организации обучения приведена в
таблице 3.
Таблица 3
Структура дисциплины
по разделам и формам организации обучения
Название раздела/темы
Аудиторная работа (час)
Лекции
Лаб. зан.
СРС
(час)
Колл,
Контр.Р.
Ито
го
1.Введение в
программирование
2. Лексические основы
построения языка
3. Стандартные
примитивные типы
4. Базовые управляющие
конструкции
5. Операторы цикла
2
2
4
8
2
2
4
8
4
2
4
10
2
4
6
12
2
4
6
6. Одномерные и
многомерные массивы
7. Работа со строковыми
данными
8. Методология объектноориентированного
программирования
9. Определение классов и
методов
10. Наследование
2
4
6
2
8
8
2
2
4
8
4
6
6
16
2
6
6
11. Исключительные
ситуации и их обработка
12. Коллекции
4
4
4
4
4
4
13. Потоки ввода-вывода
8
8
8
8
8
10
8
8
56
56
104
14 Событийная модель
программирования и
обработка событий
15. Создание
графического интерфейса
Итого
6
.
12
12
Контр.Р
Контр.Р.
18
14
12
12
24
Контр.Р.
22
Контр.Р.
26
216
5. ОБРАЗОВАТЕЛЬНЫЕ ТЕХНОЛОГИИ
В таблице 4 приведено описание образовательных технологий, используемых в
данном модуле.
Таблица 4
Методы и формы организации обучения (ФОО)
ФОО
Тр*.,
Мк**
Лекц.
Лаб. раб.
√
√
√
√
√
Методы
IT-методы
Работа в команде
Case-study
Игра
Методы проблемного
обучения.
Обучение
на основе опыта
Опережающая
самостоятельная работа
Проектный метод
Поисковый метод
Исследовательский метод
Другие методы
СРС
К. пр.
√
√
√
√
√
*-Тренинг, **-Мастер-класс
6. ОРГАНИЗАЦИЯ И УЧЕБНО-МЕТОДИЧЕСКОЕ ОБЕСПЕЧЕНИЕ
САМОСТОЯТЕЛЬНОЙ РАБОТЫ СТУДЕНТОВ
6.1 Самостоятельная работа студентов (СРС) состоит из текущей СРС.
Текущая СРС – работа с лекционным материалом, подготовка к лабораторным
работам, практическим занятиям с использованием сетевых образовательных ресурсов
(Sun Tutorials); опережающая самостоятельная работа; выполнение домашних заданий;
изучение тем, вынесенных на самостоятельную проработку; подготовка к контрольным
работам и экзамену.
Творческая проблемно-ориентированная самостоятельная работа
(ТСР) – поиск, анализ, структурирование информации по темам индивидуальных
домашних заданий.
6.2 Содержание курсовой работы
Курсовая работа включает следующие разделы
1.
Алгоритмизация – работа с массивами Java
2.
Работа с файлами записей Java
3.
Разработка графического интерфейса на Java
Каждому студенту выдается индивидуальное задание (по № в
соответствующему разделу (Например, Рогова Е.В. - № 12)
группе)
по
Пояснительная записка к курсовому проекту должна содержать:
1.
Теоретические положения, касающиеся конкретного индивидуального
задания
2.
Описание алгоритма (пошаговое и/или блок-схема)
3.
Текст программы с подробным комментарием
4.
Результаты выполнения программ (скриншоты)
5.
Выводы по разделу
6.
CD с разработанным программным обеспечением и текстом Пояснительной
записки
Пример задания
Раздел I. Алгоритмизация (Размеры массивов не менее 20 элементов, ввод значений
массивов с клавиатуры)
Вариант 1.
1. Дана последовательность чисел Фибоначчи, определяемая соотношениями:
u[1]=1,u[2]=1,u[n] = u[n-1]+u[n-2], n>2. Проверить, будет ли u[5k] (k=1,2,...)
делиться на 5.
2. В квадратной матрице найти наибольший и наименьший элементы среди
элементов главной и побочной диагоналей
3. Имеется два массива, один упорядочен по убыванию другой по возрастанию. Из
этих массивов организовать третий, слиянием элементов, упорядоченный по
убыванию.
4. Вычислить произведение двух квадратных матриц
5. В массиве Х[1..N] каждый элемент равен 0, 1 или 2. Переставить элементы
массива так, чтобы сначала располагались все нули, затем все единицы и, наконец,
все двойки (дополнительного массива не заводить!).
6. Элементы вещественного массива X[1..N] вычисляются по формуле X[n]=1/n!,
n=1,...,N.
Написать программу вычисления элементов массива:
a) с использованием процедуры (метода) вычисления факториала;
b) без использования процедуры (метода).
Вариант 2.
1. Даны четыре массива одинаковой размерности. Определить, какие из этих
массивов имеют одинаковые значения
2. Для заданных 10 целых (>40) определить, является ли оно простым
3. В матрице определить число столбцов, содержащих мах значение
4. В массиве строк найти число одинаковых слов.
5. Для каждой пары элементов целочисленного массива найти НОД
6. Задан целочисленный массив A из 20 элементов. Найти все элементы,
делящиеся на 3.
И т.д.
Раздел II. Проектирование приложения. Работа с файлами записей на Pascal и Java
Pascal: Разработать структуру записей (record) для описания нижеперечисленных
предметных областей.
Java: Спроектировать структуру классов для описания нижеперечисленных предметных
областей. Использовать в обязательном порядке следующие этапы проектирования:
•
разработка интерфейсов
•
разработка абстрактных классов
•
разработка классов
В классах предусмотреть
методы, обеспечивающие работу с информацией,
содержащейся в файлах (см.перечень запросов ниже)
Предметные области для проектирования приложения
1.
Аптека
2.
Областная больница
3.
Продажа DVD
И т.д.
Раздел III. Разработка графического интерфейса на Java
Реализовать графический интерфейс для Раздел II на Java с
с максимальным
использованием всех
компонент пакета Swing. Графический интерфейс должен
реализовать функциональность Раздела II:
•
Создание файла
•
Вывод всей информации из файла
•
Найти запись по специфицированному полю
•
Найти совокупность записей, отвечающих определенной спецификации
•
Внести изменения в специфицированную запись
•
Добавить новую запись в файл.
6.3 Контроль самостоятельной работы
Оценка результатов самостоятельной работы организуется как единство двух форм:
самоконтроль и контроль со стороны преподавателя.
Самоконтроль в обучающей программе, контроль знаний, полученных с помощью
обучающей программы (20 контролирующих тестов).
Рубежный контроль в виде тестов по теоретической части.
По результатам текущего и рубежного контроля формируется допуск студента к
экзамену. Экзамен проводится в письменной форме и оценивается преподавателем.
6.4 Учебно-методическое обеспечение самостоятельной работы студентов
Для самостоятельной работы студентов используются сетевые образовательные
ресурсы, пособия и учебники в электронной форме.
7. СРЕДСТВА (ФОС) ТЕКУЩЕЙ И ИТОГОВОЙ ОЦЕНКИ КАЧЕСТВА
ОСВОЕНИЯ ДИСЦИПЛИНЫ
Для организации текущего контроля полученных студентами знаний по данной
дисциплине проводится 2 тестирования.. Образец контролирующего теста приведен ниже
(ПРИЛОЖЕНИЕ 1) . Для проведения экзамена предлагаются 87 вопросов.
Экзаменационный билет содержит 4 пункта.
8. УЧЕБНО-МЕТОДИЧЕСКОЕ И ИНФОРМАЦИОННОЕ ОБЕСПЕЧЕНИЕ
ДИСЦИПЛИНЫ
Основная литература:
Основная
1. Ноутон, Патрик Java 2: наиболее полное руководство : пер. с англ. / П. Ноутон, Г.
Шилдт. —СПб.: БХВ-Петербург, 2008. — 1050 с.: ил.. — В подлиннике. — Предм.
указ.: с. 1034-1050.. — ISBN 978-5-94157-012-6.
2. Васильев,
Алексей
Николаевич
Java.
Объектно-ориентированное
программирование для магистров и бакалавров. Базовый курс по объектноориентированному программированию : учебное пособие / А. Н. Васильев. —
СПб.: Питер, 2011. — 397 с.: ил.. — Стандарт третьего поколения. — Алфавитный
указатель: с. 396.. — ISBN 978-5-49807-948-6
3. Шилдт, ГербертJava 2 v5.0 (Tiger). Новые возможности : пер. с англ. / Г. Шилдт. —
СПб.: БХВ-Петербург, 2005. — 196 с.: ил.. — Предметный указатель: с. 193-196..
— ISBN 5-94157-643-9.
4. Портянкин, Иван Александрович Swing: эффектные пользовательские интерфейсы.
Java Foundation Classes / И. Портянкин. — СПб.: Питер, 2005. — 523 с.. —
Библиотека программиста. — Алфавитный указатель: с. 515-523.. — ISBN 5-46900005-2.
5. Эккель, Брюс Философия Java : пер. с англ. / Б. Эккель. — 4-е изд.. — СанктПетербург: Питер, 2013. — 637 с.. — Библиотека программиста. — Алф. указ.: с.
631-637.. — ISBN 978-5-4461-0107-8.
6. Java : самоучитель / И. Ш. Хабибуллин. — 3-е изд., доп. и перераб.. — СПб.: БХВПетербург, 2008. — 768 с.: ил.. — Самоучитель. — Библиогр.: с. 737-738. —
Предм. указ.: с. 739-749.. — ISBN 978-5-9775-0191-0.
7. Шилдт, Герберт Java : руководство для начинающих / Г. Шилдт. — 5-е изд.. —
Москва: Вильямс, 2014. — 619 с.. — Предметный указатель: с. 611-619.. — ISBN
978-5-8459-1770-6.
Дополнительная
1. Эванс, Бенджамин Java. Новое поколение разработки. Техники Java 7 и
многоязычное программирование : пер. с англ. / Б. Эванс, М. Вербург. — СанктПетербург: Питер, 2014. — 557 с.: ил.. — ISBN 978-5-496-00544-9.
2. Вайсфельд, Мэтт Объектно-ориентированный подход: Java, NET, C++ : библиотека
разработчика: пер. с англ. / М. Вайсфельд. — 2-е изд.. — Москва: Кудиц-образ,
2005. — 336 с.. — Предметный указатель: с. 315-333.. — ISBN 5-9579-0045-1.
3. Java 2: в 2 т.пер. с англ. / А. Хортон. — М.: Лори, 2012 Т. 1. — 2012. — 486 с.: ил..
— ISBN 5-85582-160-9.
4. Java 2: в 2 т.пер. с англ. / А. Хортон. — М.: Лори, 2012 Т. 2. — 2012. — 483 с.: ил..
— ISBN 5-85582-160-9.
программное обеспечение и Internet-ресурсы:
1. Обучающая программа http://download.oracle.com/javase/tutorial/
2. Среда разработки Java SE 6 Update 23
3. Визуальные IDE Java IntelliJ IDEA , Eclipse
4. Web-ресурсы
a. http://citforum.ru/programming/java.shtml
b. http://frolov-lib.ru/programming/javasamples/index.html
9. МАТЕРИАЛЬНО-ТЕХНИЧЕСКОЕ ОБЕСПЕЧЕНИЕ ДИСЦИПЛИНЫ
Лабораторные работы выполняются в компьютерном классе, оснащенном 10-ю
компьютерами на базе процессоров Intel Core 4 Duo.
Программа составлена на основе Стандарта ООП ТПУ в соответствии с
требованиями ФГОС по направлению 09.03.04 «Программная инженерия» и профилю
подготовки «Разработка программно-информационных систем».
Программа одобрена на заседании кафедры оптимизации систем управления
(протокол № 13 от «27» июня 2015 г.).
Автор
Фофанов О.Б.
Рецензент
Марухина О.В.
ПРИЛОЖЕНИЕ 1
Томский политехнический университет
Кафедра оптимизации систем управления
Направление 231000 – «Программная инженерия»;
Дисциплина Информатика и программирование
ТЕСТ№1
по теме «Обработка исключений»
ВАРИАНТ1
Фамилия студента____________________________________
Группа _______________
1
Выберите из приведенных единственный верный вариант вывода приложения при
запуске его командой "java Test 1 two 3".
public class Test {
static public void main(String[] args) {
try {
int k = Integer.parseInt(args[1]);
System.out.println(args[k]);
}
catch (Exception e) {
System.out.println(e);
}
}
}
A. 1
B. two
C. Возникнет NumberFormatException
D. Возникнет ArrayIndexOutOfBoundsException
E. Код не откомпилируется
F. 3
Томский политехнический университет
Кафедра оптимизации систем управления
Направление 231000 – «Программная инженерия»;
Дисциплина Информатика и программирование
ТЕСТ № 2
по теме «Коллекции»
ВАРИАНТ2
Фамилия студента____________________________________
Группа _______________
1. (Пояснение: Метод add(int index, Object object) интерфейса List вставляет объект,
сдвигая все следующие. Метод remove(int index) удаляет элемент и уменьшает индекс всех
следующих на единицу.)
Каков результат выполнения этой программы ?
import java.util.ArrayList;
public class Test {
public static void main(String[] args) {
ArrayList<Integer> array = new ArrayList<Integer>(2);
array.add(5);
array.add(6);
array.add(1, 7);
System.out.print(array.indexOf(6));
array.remove(1);
System.out.println(array.indexOf(6));
}
}
A. 22
B. Ошибка времени выполнения: java.lang.ArrayIndexOutOfBoundsException
C. -1-1
D. 21
ОЦЕНКИ
А+
96-100 баллов
А
90-95 баллов
B+
80-89 баллов
B
70-79 баллов
С+
64-69 баллов
КАЛЕНДАРНЫЙ РЕЙТИНГ-ПЛАН ИЗУЧЕНИЯ ДИСЦИПЛИНЫ
Лекции, ч.
56
«Информатика и программирование»
Практ. занятия, ч.
24
Лаб. занятия, ч.
72
Всего ауд.
работы, ч.
152
СРС, ч.
120
2-3 семестр 2013/14 учебного года
ИТОГО, часов
162
Лектор:
Кредитов
«Отлично»
«Хорошо»
для студентов группы 8К50, института Кибернетики, ООП «Программная
инженерия»
«Удовл.»
7
С
3/4
Зачтено
D
>= 55 баллов
Фофанов Олег Борисович
Зач..(2)
Неудовл./Незаче
т
Недел
я
Дата
начала
F
Результат
обучения
по
менее 55
баллов
Вид учебной деятельности по разделам
Контроль
Экзаме
н (3)
Кол-во
часов
Оценивающие мероприятия
Колво
балло
Информационное
обеспечение
Ауд.
Тема 1. Введение в программирование
1
РД3
Сам.
4
3
4
2
Защита
групповых
проектов
Контрольн
ая работа
Защита
расчетных
работ
дисципл
ине
Защита ЛР
недели
в
Учебная
литература
Интернет
ресурсы
3
ОСН4
ИР1
4
ОСН4
ИР1
2
Лабораторная работа № 1. IDE Eclipse.
2
Тема 2. Лексические основы
2
РД1
2
РД3
Лабораторная работа № 2.
Документирование программ
Тема 3. Стандартные примитивные типы.
2
ОСН1
4
РД1
РД2
3-4
ОСН2
Лабораторная работа № 3. Работа с
примитивными типами
РД3
ОСН3
4
3
5
ИР1
ОСН4
2
РД4
ДОП1
ДОП2
5-6
РД1
Тема 4-5. Базовые управляющие
конструкции и операторы цикла.
4
4
5
5
ОСН1
ИР1
Кол-во
часов
Информационное
Оценивающие мероприятия
Ауд.
Сам.
Защита
групповых
проектов
Контрольн
ая работа
Защита
расчетных
работ
Вид учебной деятельности по разделам
Защита ЛР
Недел
я
Дата
начала
недели
Результат
обучения
по
дисципл
ине
Колво
балло
в
РД2
Учебная
литература
Интернет
ресурсы
ОСН2
РД3
РД4
обеспечение
ОСН3
Лабораторная работа № 4-5.
Программирование циклов
12
ОСН4
ДОП1
8
ДОП2
ДОП3
РД1
Тема 6. Одномерные и многомерные
массивы
4
РД2
7
6
РД3
РД4
РД1
8
Лабораторная работа № 6
4
Работа с массивами
Тема 7 Работа со строками
ОСН1
2
РД2
4
8
5
5
ИР1
ОСН2
РД4
Кол-во
часов
Информационное
Оценивающие мероприятия
Ауд.
Сам.
Защита
групповых
проектов
Контрольн
ая работа
Защита
расчетных
работ
Вид учебной деятельности по разделам
Защита ЛР
Недел
я
Дата
начала
недели
Результат
обучения
по
дисципл
ине
Колво
балло
в
Лабораторная работа № 7
обеспечение
Учебная
литература
Интернет
ресурсы
ДОП1
8
Работа со строками
ДОП3
РД1
9
КОНФЕРЕНЦ-НЕДЕЛЯ
5
5
10
РД2
Всего по контрольной точке (аттестации) 1
10-12
Тема 8. Методология ООП.
30
2
ОСН1
ОСН2
РД3
РД4
Лабораторная работа № 8 Инкапсуляция
объектов и классов
4
5
5
ОСН3
ИР1-3
2
ОСН4
ДОП1
РД1
13-16
РД2
Тема 9. Определение классов и методов
Лабораторная работа № 9
Проектирование и кодирование классов и
4
ОСН4
6
6
5
5
5
ИР1-3
ОСН5
Кол-во
часов
Информационное
Оценивающие мероприятия
Ауд.
Сам.
Защита
групповых
проектов
Контрольн
ая работа
Защита
расчетных
работ
Вид учебной деятельности по разделам
Защита ЛР
Недел
я
Дата
начала
недели
Результат
обучения
по
дисципл
ине
Колво
балло
в
методов
обеспечение
Учебная
литература
Интернет
ресурсы
ДОП1
ДОП3
ОСН5
Тема 10. Наследование
2
РД1
17
РД2
РД3
ОСН6
10
Лабораторная работа № 9
5
5
5
6
ОСН7
ИР1-3
ОСН8
Создание расширений
Практические занятия № 1
ОСН5
РД1
ОСН6
РД2
18
ОСН7
КОНФЕРЕНЦ-НЕДЕЛЯ
РД3
10
10
ИР1-3
ОСН8
РД4
ДОП1
Кол-во
часов
Информационное
Оценивающие мероприятия
Ауд.
Сам.
Защита
групповых
проектов
Контрольн
ая работа
Защита
расчетных
работ
Вид учебной деятельности по разделам
Защита ЛР
Недел
я
Дата
начала
недели
Результат
обучения
по
дисципл
ине
Колво
балло
в
обеспечение
Учебная
литература
Интернет
ресурсы
ДОП2
ДОП3
Всего по контрольной точке (аттестации) 2
60
Зачет
40
ОБЩИЙ ОБЪЕМ РАБОТЫ ПО ДИСЦИПЛИНЕ
64
54
100
в осеннем семестре
ОСН5
РД1
Тема 11. Исключительные ситуации
4
ОСН6
РД2
ОСН7
24-25
4
РД3
РД4
4
5
ИР1-3
ОСН8
Лабораторная работа № 9
6
Создание обработчиков исключений
ДОП2
ДОП3
Кол-во
часов
Информационное
Оценивающие мероприятия
Ауд.
Сам.
Защита
групповых
проектов
Контрольн
ая работа
Защита
расчетных
работ
Вид учебной деятельности по разделам
Защита ЛР
Недел
я
Дата
начала
недели
Результат
обучения
по
дисципл
ине
Колво
балло
в
обеспечение
Учебная
литература
Интернет
ресурсы
РД1
25-26
РД2
Тема 12. Коллекции
ОСН5
4
ОСН6
РД3
4
5
5
ОСН7
ИР1-3
ОСН8
Лабораторная работа № 12
4
Коллекции Vector, ArrayList, LinkedList
Тема 13. Потоки ввода-вывода
ОСН5
8
ОСН6
27-28
10
Лабораторная работа № 13
5
8
ОСН8
Работа с файлами
29-33
Тема 14. Событийная модель и обработка
событий
6
ОСН7
10
5
ИР1-3
Кол-во
часов
Информационное
Оценивающие мероприятия
Ауд.
Сам.
Защита
групповых
проектов
Контрольн
ая работа
Защита
расчетных
работ
Вид учебной деятельности по разделам
Защита ЛР
Недел
я
Дата
начала
недели
Результат
обучения
по
дисципл
ине
Колво
балло
в
обеспечение
Учебная
литература
Интернет
ресурсы
Лабораторная работа № 14
8
Программирование обработчиков событий
ОСН5
ОСН6
РД1
ОСН7
РД2
34
КОНФЕРЕНЦ-НЕДЕЛЯ
10
10
ОСН8
ИР1
РД3
ДОП1
РД4
ДОП2
Тема 15. Создание графических
интерфейсов
35-40
10
8
Лабораторная работа № 15
10
10
8
Работа с графическими компонентами
41
РД1
КОНФЕРЕНЦ-НЕДЕЛЯ
20
20
ОСН1
ИР1
Оценивающие мероприятия
Ауд.
Сам.
Защита
групповых
проектов
Контрольн
ая работа
Защита
расчетных
работ
Вид учебной деятельности по разделам
Защита ЛР
Недел
я
Дата
начала
недели
Информационное
Кол-во
часов
Результат
обучения
по
дисципл
ине
Колво
балло
в
обеспечение
Учебная
литература
РД2
ОСН2
РД3
ОСН3
РД4
ОСН4
ДОП1
ДОП2
ДОП3
Всего по контрольной точке (аттестации) 2
60
Экзамен
40
ОБЩИЙ ОБЪЕМ РАБОТЫ ПО ДИСЦИПЛИНЕ
88
66
в весеннем семестре
«____» ________ 2015. г.
Зав. кафедрой ОСУ
Иванов М.А.
Преподаватель
Фофанов О.Б.
100
Интернет
ресурсы