[Росдистант] Программирование на .Net (ДотНет) 2 (контрольная работа, практические задания)

Раздел
Программирование
Предмет
Просмотров
12
Покупок
0
Антиплагиат
Не указан
Размещена
14 Янв в 17:35
ВУЗ
Росдистант, Тольяттинский государственный университет, ТГУ
Курс
Не указан
Стоимость
2 400 ₽
Демо-файлы   
1
docx
Задания Задания
70 Кбайт 70 Кбайт
Файлы работы   
6
Каждая работа проверяется на плагиат, на момент публикации уникальность составляет не менее 40% по системе проверки eTXT.
zip
Задание 1_Решение
94.4 Кбайт 400 ₽
zip
Задание 2_Решение
28.8 Кбайт 400 ₽
zip
Задание 3_Решение
85 Кбайт 400 ₽
zip
Задание 4_Решение
106.8 Кбайт 400 ₽
zip
Задание 5_Решение
106.5 Кбайт 400 ₽
zip
Задание 6_Решение
76.5 Кбайт 400 ₽
Всего 6 файлов на сумму 2400 рублей
Описание

Тольяттинский государственный университет (Росдистант), ТГУ. Программирование на .Net (ДотНет) 2 (11215). Практические задания 1-6. Решение.

Для Росдистант имеются и другие готовые работы. Пишем уникальные работы под заказ. Помогаем с прохождением онлайн-тестов. Пишите в ЛС (Ксения).

Оглавление

Проверяемое задание № 1

Тема 1. Обработка исключений

Лекция 1.1. Обработка исключений

Цель работы

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

«Задание 

- Разработать тип для работы с матрицами.

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

- Реализовать метод GetEmpty(…), который возвращает нулевую мат-рицу заданного размера.

- Объявить и применить свой тип исключения:

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

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

- должны быть созданы разные виды конструкторов по примеру ба-зового исключения System.Exception.

- В качестве UI-интерфейса использовать консольное приложение с интерфейсом командной строки, WinForms или WPF-приложение.

- Создать unit-тесты для тестирования методов разработанного типа».

Проверяемое задание № 2

Тема 2. Управление ресурсами в .NET. Сборка мусора 

Лекция 2.1. Управление ресурсами в .NET. Сборка мусора

Цель работы

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

Задание 

«Создать новый класс, который будет работать с текстовым файлом как «с массивом символов».

a) Создать конструктор, который принимает путь файла и длину «после-довательности символов», создает новый файл с «совместным доступом» к чтению и записи, а также в режиме чтения/записи и подготавливает файл: устанавливает длину и заполняет пробелами.

- Для создания потока файла использовать класс FileStream.

b) Сделать индексатор, который пишет/читает символ по указанному чис-ловому индексу.

- Для записи в файл использовать класс StreamWriter.

- Для чтения из файла использовать класс StreamReader.

c) Файл должен быть в ANSI-кодировке, которая используется по умолча-нию в операционной системе.

- Нужно найти подходящее свойство в классе System.Text.Encoding.

d) Реализовать метод Close() для освобождения ресурсов.

- В качестве примера реализации можно рассмотреть реализацию FileStream.Close().

e) Класс должен реализовывать интерфейс IDisposable.

f) Создать свойство Length, возвращающее длину «массива».

g) Доработать класс:

  - «Создание нового файла»: в данный момент есть конструктор для со-здания файла, который нужно сделать «закрытым», чтобы нельзя было со-здать объект класса извне. Необходим открытый статический метод Create(…), который будет создавать через конструктор объект и возвра-щать созданный объект.

  - «Чтение существующего файла»: нужно создать новый закрытый кон-структор, который будет открывать существующий файл и работать с ним. Следует сделать открытый статический метод Read(…), который будет со-здавать через соответствующий конструктор объект и возвращать создан-ный объект.

Приложение должно: 

a) сохранить в файл строку вида «[01] Привет мир!» с использова-нием созданного класса; освободить ресурсы с применением try/finally;

b) с помощью созданного класса открыть созданный файл (пункт а) и изменить в нём один символ, чтобы в файле получилось «[02] Привет мир!»; освободить ресурсы с применением using». 

Проверяемое задание № 3

Тема 3. Работа с файловой системой

Лекция 3.1. Работа с файловой системой

Цель работы

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

Задание

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

2. Создать unit-тесты для тестирования разработанного приложения. 

Проверяемое задание № 4

Тема 4. Делегаты и события

Лекция 4.1. Делегаты и события

Цель работы

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

«Задание 

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

2. Для создания эффекта ожидания использовать метод Thread.Sleep про-странства имен System.Threading.

3. Добавить возможность для пользователя задавать имя таймера.

4. Доработать тип делегата, чтобы получатель события мог определить «источник события» и вывести «имя таймера».

5. Добавить событие с отсчётом времени, в котором будет передаваться «сколько секунд осталось».

6. Предусмотреть возможность подписки на событие в нескольких клас-сах.

7. Создать три пользовательских класса, явно реализующих интерфейс ICutDownNotifier с методами Init() (подписывается на событие «тайме-ра») и Run (запускает «таймер»):

o первый обрабатывает события с помощью методов;

o второй обрабатывает события с помощью анонимных делегатов;

o третий обрабатывает события с помощью лямбда-выражений». [1]

8. «В итого каждый из пользовательских классов должен обрабатывать три события:

o «старт обратного отсчёта»;

o «осталось N секунд»;

o «обратный отсчёт завершён». 

9. Каждый обработчик должен выводить «имя таймера» в обработчиках события.

10. Создать делегат «Началось время выполнения задания» с параметрами «Название задачи», «Сколько было отведено времени».

11. Конструктор каждого из пользовательских классов, реализующих ICutDownNotifier, должен принимать два параметра:

o созданный делегат «Началось время выполнения задания»;

o делегат «Закончилось время выполнения задания» на основе стандартного типа Action<T> с параметрами «Название задачи», «Сколько было отведено времени».

Эти делегаты нужно вызывать в соответствующее время». [1]

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

13. Приложение должно одновременно настроить и запустить все три таймера с названиями «Чтение задание», «Выполнение задания» и «Проверка задания перед отправкой». 

o При этом надо работать с массивом объектов типа ICutDownNoti-fier.

14. В качестве UI-интерфейса использовать консольное приложение с ин-терфейсом командной строки, WinForms или WPF-приложение». 

Проверяемое задание № 5

Тема 5. Коллекции и обобщенные типы

Лекция 5.2. Использование обобщенных методов и делегатов. Реализация пользовательского класса коллекции

Цель работы

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

Задание

«Бинарное дерево поиска

1. Разработать тип «бинарное дерево поиска» для хранения результатов тестов, выполненных студентами, и их предоставления в упорядочен-ном виде.

2. Предусмотреть возможность хранения данных любого типа, поддержи-вающего сравнения.

3. Информация о студенте может содержать поля, хранящие имя студента, название теста, дату его прохождения и оценку теста для данного сту-дента. 

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

4. Предусмотреть следующие конструкторы «дерева»:

- принимающий объект стандартного обобщённого типа для сравнения двух объектов одного типа и применяющий его для сравнения добавляемых в дерево элементов;

- принимающий объект типа стандартной обобщенной коллек-ции (не список!) и добавляющий элементы коллекции в дерево (пример смотрите в «исходниках» конструкторов типа List<T>);

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

Итого: если указан «компаратор», то он используется для сравнения элементов, в противном случае используется «срав-нение, реализованное внутри элемента».

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

6. В «дереве» реализовать метод, который возвращает объект для итера-ции по дереву в обратном порядке.

Например, GetReversedEnumarator() (реализовать с помощью yield).

7. В качестве UI-интерфейса использовать консольное приложение с ин-терфейсом командной строки, WinForms или WPF-приложение. В при-ложении нужно:

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

- Добавить ещё несколько чисел в дерево.

- Вывести все числа «дерева» в том порядке, в котором они храняться в дереве.

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

- Вывести информацию о студентах в том порядке, в котором они хранятся в дереве.

- Применить созданное «дерево» для хранения строк:

- Строки добавить из списка строк.

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

Проверяемое задание № 6

Тема 6. Введение в LINQ

Лекция 6.2. Построение динамических запросов и выражений LINQ

Цель работы

Сформировать понимание фундаментальных концепций и возможно-стей LINQ .NET Framework и научиться, используя LINQ, абстрагировать механизм, используемый приложением для запроса данных, от кода при-ложения и строить динамические запросы LINQ с помощью типов про-странства имен System.Linq.Expressions .NET Framework.

 Задание

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

2. Написать расширяющий метод, который определяет, является ли строка положительным целым числом. Методы Parse и TryParse не использовать.

3. Написать методы поиска элемента в массиве (например, поиск всех по-ложительных элементов в массиве) в виде:

- метода, реализующего поиск напрямую;

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

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

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

- LINQ-выражения.

Сравнить скорость выполнения вычислений.

Вам подходит эта работа?
Похожие работы
Другие работы автора
Начертательная геометрия
Контрольная работа Контрольная
15 Янв в 14:01
5 +5
0 покупок
Физическая химия
Контрольная работа Контрольная
14 Янв в 21:37
6 +6
0 покупок
Информационные технологии
Контрольная работа Контрольная
11 Янв в 17:49
50 +8
1 покупка
Государственное и муниципальное управление
Контрольная работа Контрольная
11 Янв в 15:44
12 +1
0 покупок
Пожарная техника
Контрольная работа Контрольная
11 Янв в 14:09
16 +2
0 покупок
Пожарная техника
Контрольная работа Контрольная
10 Янв в 23:12
21 +1
0 покупок
Сварка и резка
Лабораторная работа Лабораторная
10 Янв в 01:31
43 +2
1 покупка
Компьютерные сети и системы
Лабораторная работа Лабораторная
9 Янв в 00:14
13 +2
0 покупок
Техносферная безопасность
Лабораторная работа Лабораторная
7 Янв в 21:58
30
0 покупок
Электротехника
Лабораторная работа Лабораторная
20 Дек 2024 в 15:57
47
0 покупок
Неорганическая химия
Контрольная работа Контрольная
20 Дек 2024 в 13:06
43
0 покупок
Неорганическая химия
Лабораторная работа Лабораторная
20 Дек 2024 в 13:00
37
0 покупок
Уголовный процесс
Контрольная работа Контрольная
17 Дек 2024 в 16:39
63
0 покупок
Системы автоматизированного проектирования
Контрольная работа Контрольная
17 Дек 2024 в 12:51
42 +2
0 покупок
Темы журнала
Показать ещё
Прямой эфир