Учебная практика для студентов 2 курса. Методические указания к проведению учебной практики для студентов 2 курса
.pdfМИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ОБРАЗОВАНИЯ «ЛИПЕЦКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ»
Кафедра автоматизированных систем управления
УЧЕБНАЯ ПРАКТИКА
ДЛЯ СТУДЕНТОВ 2 КУРСА
МЕТОДИЧЕСКИЕ УКАЗАНИЯ к проведению учебной практики для студентов 2 курса
Т.В. ЛАВРУХИНА
Липецк Липецкий государственный технический университет
2017
УДК 004(07)
Л137
Рецензент – канд. техн. наук, доц. В.А. Алексеев
Лаврухина, Т.В.
Л137 Учебная практика для студентов 2 курса [Текст]:
методические указания к проведению учебной практики для студентов
2 курса / Т.В. Лаврухина. – Липецк: Изд-во Липецкого государственного технического университета, 2017. – 35 с.
Методические указания представляют порядок прохождения и программу практики. Освещены материалы и темы, которые должен освоить студент в результате прохождения практики.
Предназначены для студентов направлений 09.03.01 «Информатика и вычислительная техника», 09.03.04 «Программная инженерия» и 02.03.03 «Математическое обеспечение и администрирование информационных систем».
Табл. 2. Библиогр.: 6 назв.
© ФГБОУ ВО «Липецкий государственный технический университет», 2017
1. Общие положения
Учебная практика для студентов 2 курса по направлениям подготовки
09.03.01 «Информатика и вычислительная техника», 09.03.04 «Программная инженерия», 02.03.03 «Математическое обеспечение и администрирование информационных систем» является обязательной частью образовательной программы высшего профессионального образования и проводится в течение двух недель в соответствии с графиком учебного процесса.
Учебная практика проводится в лабораториях кафедры автоматизированных систем управления.
Впериод прохождения практики студент обязан:
-посещать занятия практики;
-выполнить индивидуальное задание.
По окончании практики каждый студент оформляет отчет, содержание которого должно соответствовать ее программе. Отчет по практике выполняется в соответствии со стандартами ЛГТУ.
Формой отчетности по практике является зачет с оценкой на основе защиты отчета, содержание которого должно соответствовать программе практики.
Студенты, пропустившие практику по уважительной причине, проходят ее по индивидуальному графику.
Студенты, пропустившие практику по неуважительной причине,
подлежат отчислению из университета в порядке, предусмотренном в академических правилах студентов ЛГТУ.
2. Цели и задачи практики
Целью проведения учебной практики является получение студентом первичных профессиональных умений и навыков на примере решения реальной инженерной задачи по разработке программной системы.
3
Задачами учебной практики являются: проектирование и создание компонентов программного продукта; графического пользовательского интерфейса; освоение средств автоматизированной разработки программного обеспечения; получение навыков работы с интернет-ресурсами с использованием REST API; повышение мотивации к профессиональной деятельности; получение навыков поиска, хранения, обработки и анализа информации из различных источников и баз данных.
3. Перечень приобретаемых компетенций
В результате выполнения учебной практики у обучающегося
формируются компетенции (табл. 1).
|
|
|
|
|
|
|
Таблица 1. |
|
|
|
Перечень компетенций |
|
|
||
|
|
|
|
|
|
||
Направление |
|
Код |
|
|
Содержание компетенции |
||
подготовки |
|
компетенции |
|
|
|
|
|
|
|
|
|
|
|||
09.03.04 |
|
ОК-7 |
|
Способность к самоорганизации и самообразованию |
|||
Программная |
|
|
|
|
|||
|
ОПК-4 |
|
Способность осуществлять поиск, хранение, |
||||
инженерия |
|
|
|
обработку и анализ информации из различных |
|||
|
|
|
|
источников и баз данных, представлять ее в |
|||
|
|
|
|
требуемом |
формате |
с |
использованием |
|
|
|
|
информационных, компьютерных и сетевых |
|||
|
|
|
|
технологий |
|
|
|
|
|
|
|
|
|||
09.03.01 |
|
ОК-7 |
|
Способность к самоорганизации и самообразованию |
|||
Информатика |
и |
|
|
|
|||
ОПК-5 |
|
Способность осуществлять поиск, хранение, |
|||||
вычислительная |
|
|
|
обработку и анализ информации из различных |
|||
техника |
|
|
|
источников и баз данных, представлять ее в |
|||
|
|
|
|
требуемом |
формате |
с |
использованием |
|
|
|
|
информационных, компьютерных и сетевых |
|||
|
|
|
|
технологий |
|
|
|
|
|
|
|
|
|
|
|
4
|
|
|
|
|
Продолжение табл. 1 |
|
|
|
|
|
|
||
Направление |
|
Код |
|
Содержание компетенции |
||
подготовки |
|
компетенции |
|
|
|
|
|
|
|
|
|||
02.03.03 |
|
ОК-7 |
Способность к самоорганизации и самообразованию |
|||
Математическое |
|
|
|
|||
|
ОПК-1 |
Способность осуществлять поиск, хранение, |
||||
обеспечение |
и |
|
обработку и анализ информации из различных |
|||
администрирование |
|
источников и баз данных, представлять ее в |
||||
информационных |
|
|
требуемом |
формате |
с |
использованием |
систем |
|
|
информационных, компьютерных и сетевых |
|||
|
|
|
технологий |
|
|
|
|
|
|
|
|
|
|
4. Порядок выполнения учебной практики
4.1.Работа с API сервисами
В качестве примера, для совершения запросов, воспользуемся API
сервиса получения погоды.
Для выполнения запроса воспользуемся классом WebRequest из пространства – System.Net. Класс WebRequest не имеет публичного конструктора, поэтому придётся воспользоваться фабричным методом для создания экземпляра данного класса:
WebRequest request = WebRequest.Create("http://api.openweathermap.org/data/2.5/weather?id=21727 97&appid=77ffd1b1aebdfd6663dfb1117ea958d9");
В данном примере мы использовали метод WebRequest.Create(...),
который принимает один параметр - строковой URL API к которому мы хотим обратиться.
Для выставления типа запроса (POST, GET, PUT, DELETE и т.д.)
необходимо выставить свойство Method в нужном типе:
request.Method = "GET";
В случае POST или PUT запросов возможно добавление тела к запросу,
для этого вызывают метод GetRuestStream():
5
Stream requestStream = request.GetRequestStream();
И далее записать в поток запроса данные, которые необходимо отправить на сервер в теле запроса. Для удобства создают поток нужного типа:
using (StreamWriter sw = new StreamWriter(requestStream)) sw.Write("{\"key\": \"value\"}");
В классе WebRequest используют свойство Headers - представляет собой коллекцию заголовков при выполнении запроса. Для добавления заголовков необходимо воспользоваться методом Headers.Add(...), через который добавляют необходимые заголовки.
Например, добавление Cookies к заросу:
request.Headers.Add(HttpRequestHeader.Cookie, "wqewafds313afd");
Для выполнения запроса необходимо вызвать метод GetResponse(),
который вернёт объект класса WebResponse:
WebResponse response = request.GetResponse();
При необходимости из класса WebResponse можно достать заголовки,
обратившись к свойству Headers. Например, получение куков:
string cookie = response.Headers[HttpRequestHeader.Cookie];
Для загрузки данных необходимо обратиться к методу GetResponse()
класса WebResponse. Он возвращает экземпляр класса Stream через который
мы можем загрузить ответ от сервера:
Stream responseStream = response.GetResponseStream();
Далее мы можем работать с потоком как нам удобнее:
using (StreamReader sr = new StreamReader(responseStream)) Console.WriteLine(sr.ReadToEnd());
6
4.2.Чтение и запись в файл
Класс FileStream не очень удобно применять для работы с текстовыми файлами, для этого в пространстве System.IO определены специальные классы: StreamReader и StreamWriter.
Чтение из файла и StreamReader
Класс StreamReader позволяет нам легко считывать весь текст или отдельные строки из текстового файла. Выделяют следующие методы этого класса:
Close: закрывает считываемый файл и освобождает все ресурсы.
Peek: возвращает следующий доступный символ, если символов больше нет, то возвращает -1.
Read: считывает и возвращает следующий символ в численном представлении. Имеет перегруженную версию: Read(char[] array, int index, int count), где array - массив, куда считываются символы, index -
индекс в массиве array, начиная с которого записываются считываемые символы, и count - максимальное количество считываемых символов.
ReadLine: считывает одну строку в файле.
ReadToEnd: считывает весь текст из файла.
Считаем текст из файла различными способами:
string path= @"C:\SomeDir\hta.txt"; try {
Console.WriteLine("******считываем весь файл********");
using (StreamReader sr = new StreamReader(path)) { Console.WriteLine(sr.ReadToEnd()); }
Console.WriteLine();
Console.WriteLine("******считываем построчно********");
using (StreamReader sr = new StreamReader(path, System.Text.Encoding.Default)) {
string line;
while ((line = sr.ReadLine()) != null) { Console.WriteLine(line); }
}
7
Console.WriteLine();
Console.WriteLine("******считываем блоками********");
using (StreamReader sr = new StreamReader(path, System.Text.Encoding.Default)) {
char[] array = new char[4];
// считываем 4 символа sr.Read(array, 0, 4); Console.WriteLine(array); }
}
catch (Exception e) { Console.WriteLine(e.Message);
}
Как и в случае с классом FileStream здесь используется
конструкция using. В первом случае мы разом считываем весь текст с помощью метода ReadToEnd(). Во втором случае считываем построчно через цикл while: while ((line = sr.ReadLine()) != null) - сначала присваиваем переменной line результат функции sr.ReadLine(), а затем проверяем, не равна ли она null. Когда объект sr дойдет до конца файла и больше строк не останется, то метод sr.ReadLine() будет возвращать null. В третьем случае считываем в массив четыре символа.
Обратите внимание на то, что в последних двух случаях в конструкторе
StreamReader указывалась кодировка System.Text.Encoding.Default.
Свойство Default класса Encoding получает кодировку для текущей кодовой страницы ANSI. Также через другие свойства мы можем указать другие кодировки. Если кодировка не указана, то при чтении используется UTF8.
Иногда важно указывать кодировку, так как она может отличаться от UTF8, и
тогда мы получим некорректный вывод.
Запись в файл и StreamWriter
Для записи в текстовый файл используется класс StreamWriter. Свою функциональность он реализует через следующие методы:
Close: закрывает записываемый файл и освобождает все ресурсы.
Flush: записывает в файл оставшиеся в буфере данные и очищает буфер.
8
Write: записывает в файл данные простейших типов, как int, double, char, string и т.д.
WriteLine: также записывает данные, только после записи добавляет в файл символ окончания строки.
Рассмотрим запись в файл на примере:
string readPath= @"C:\SomeDir\hta.txt"; string writePath = @"C:\SomeDir\ath.txt"; string text = "";
try {
using (StreamReader sr = new StreamReader(readPath, System.Text.Encoding.Default)) {
text=sr.ReadToEnd();
}
using (StreamWriter sw = new StreamWriter(writePath, false, System.Text.Encoding.Default)) {
sw.WriteLine(text);
}
using (StreamWriter sw = new StreamWriter(writePath, true, System.Text.Encoding.Default)) {
sw.WriteLine("Дозапись"); sw.Write(4.5);
}
}
catch (Exception e) { Console.WriteLine(e.Message);
}
В коде сначала мы считываем файл в переменную text, записываем эту переменную в файл, а затем через объект StreamWriter записываем в новый файл. Класс StreamWriter имеет несколько конструкторов. Мы использовали один из них: new StreamWriter(writePath, false, System.Text.Encoding.Default). В
качестве первого параметра передается путь к записываемому файлу. Второй параметр представляет булевую переменную, которая определяет, будет файл дозаписываться или перезаписываться. Если этот параметр равен true, то новые данные добавляются в конце к уже имеющимся данным. Если false, то
9
файл перезаписывается. И если в первом случае файл перезаписывается, то во втором делается дозапись в конец файла. Третий параметр указывает кодировку, в которой записывается файл.
4.3.Работа со строками
Строки в C# - это объекты класса String, значением которых является текст. Для работы со строками в этом классе определено множество методов
(функций) и мы рассмотрим некоторые из них. Чтобы использовать строку, ее нужно сначала создать – присвоить какое-либо значение, иначе мы получим ошибку: "Использование локальной переменной "[имя переменной]", которой не присвоено значение". Объявим простую строку и выведем ее на экран:
static void Main(string[] args) { string s = "Hello, World!"; Console.WriteLine(s);
}
static void Main(string[] args) { string s;
Console.WriteLine(s); // ошибка, строка не создана
}
Для объединения (конкатенации) строк используется оператор "+".
string s = "Hello," + " World!";
Оператор "[]" используется для доступа (только чтение) к символу строки по индексу:
string s = "Hello, World!"; char c = s[1]; // 'e'
Свойство Length возвращает длину строки.
Символ "\" является служебным, поэтому, чтобы использовать символ обратного слэша необходимо указывать его дважды "\\".
Символ табуляции – "\t".
Символ перевода строки – "\r\n".
10
