Лабораторна робота №3
Тема: Розробка багатопоточних програм
Мета: Закріпити теоретичні знання та придбати практичні навички з розробки програм з декількома потоками.
Завдання 1.
Відлагодити приклади, що були наведені у лекційному матеріалі.
Завдання 2.
За основу необхідно взяти додаток, що було розроблено у лабораторній роботі 2.
2.1. Метод пошуку даних (відповідно до індивідуального завдання у л.р.2) реалізувати у вигляді окремого потоку, відображення даних у головному потоці.
2.2. Розробити метод сортування даних за одним з критеріїв, на користувальницькому інтерфейсі відображати поточну кількість проходів по масиву даних.
Програма може бути реалізована будь якою мовою програмування, обмеження на категорію проекту не накладається.
Висновки:___________________________________________________________________________________________________________________________________________________________________________ ____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Виконано « » _____________ 2016р викладач _____________________
Група _____________ Студент(ка) ________________________________
Лабораторна робота №4
Тема: Розробка класу логування програм.
Мета: Закріпити теоретичні знання та придбати практичні навички з розробки та налагодження програм за допомогою логування даних.
Завдання 1.
Створити, відлагодити, та інтегрувати у власний проект клас, що здійснює логування даних. Приклад класу наведено нижче.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace Test
{
public static class ClassReportLog // класс для создания log файлов
{
private static List<string> logText = new List<string>();
public static string fileNameLog = @"Log.txt";
private static void addMessageToLog(DateTime inCurrentDate, string inFunctionName, string inMessage)
{
logText.Add(inCurrentDate.ToString() + " " + inFunctionName + " "+ inMessage);
}
public static void createLogFile(string inPath = @"ReportLog\")
{
fileNameLog =inPath + "Log_d"+Convert.ToString(DateTime.Now.Day)+"m"+Convert.ToString(DateTime.Now.Month)+".txt";
if (!File.Exists(fileNameLog))
{
StreamWriter file = new StreamWriter(fileNameLog);
file.Close();
}
}
private static void writeMessage(string inFunctionName, string inMessage)
{
addMessageToLog( DateTime.Now, inFunctionName, inMessage);
StreamWriter file = new StreamWriter(File.Open(fileNameLog, FileMode.Append));
file.WriteLine(DateTime.Now.ToString() + " " + inFunctionName + " " + inMessage);
file.Close();
}
public static void info(string inFunctionName, string inMessage, int isModeLog = 0, bool isIgnoreLogMode = false)
{
if(isIgnoreLogMode) { writeMessage(inFunctionName, inMessage); }
else if(isModeLog >= 2) { writeMessage(inFunctionName, inMessage);}
}
//аналогично необходимо реализовать остальные методы
}
}
Завдання 2.
За основу необхідно взяти додаток, що було розроблено у лабораторних роботах 2-3.
2.1.Використовуючи створений клас логування, виконати фіксацію базовий дій у прозробленому додатку.
2.2. Додати до проекту бібліотеку Log4Net. Виконати логування дій у програмі.
Програма може бути реалізована будь якою мовою програмування, обмеження на категорію проекту не накладається.
Висновки:
(Висновки повинні містити заключення щодо доцільності розробки власних класів логування та принципів роботи зі стандартними бібліотеками. Висновок зробити на базі порівняння програмних кодів завдань 2.1 та 2.2 та вихідних файлів )
____________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________________
Виконано « » _____________ 2016р викладач _____________________
Група _____________ Студент(ка) ________________________________
