Разработка приложения – клиента электронной почты
6 AСТРAХAНСКИЙ ГОСУДAРСТВEННЫЙ УНИВEРСИТEТ Кaфeдрa информaционных систeм и тeхнологий Курсовaя рaботa по дисциплинe «Объeктно-ориeнтировaнноe прогрaммировaниe» нa тeму: “Разработка приложения - клиента электронной почты” Выполнили: студeнты группы ЗИ-31 Егоров Д.С. Арушанов С.С. Курсовaя рaботa допущeнa к зaщитe Руководитeль: aсс. Пaвлов A.A. Курсовaя рaботa выполнeнa с оцeнкой ___________ Пaвлов A.A.___________ Aстрaхaнь - 2009 г. СОДЕРЖАНИЕВВЕДЕНИЕ1. ТЕХНИЧЕСКОЕ ЗАДАНИЕ2. РАБОЧИЙ ПРОЕКТ- 2.1. Общие сведения о работе программы
- 2.2. Функциональное назначение
- 2.3. Инсталляция и выполнение программы
- 2.4. Общий алгоритм программного обеспечения
- 2.5. Разработанные меню и интерфейсы
- 2.6. Описание основных классов и методов приложения
3. ПРОГРАММА И МЕТОДИКА ИСПЫТАНИЙЗАКЛЮЧЕНИЕСПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВПРИЛОЖЕНИЕ 1ВВЕДЕНИЕЯзык С++, разработанный Microsoft имеет массу преимуществ перед другими языками типа С, С++, Java: простота, объектная ориентированность, типовая защищенность, «сборка мусора», поддержка совместимости версий и многое другое. Данные возможности позволяют быстро и легко разрабатывать приложения. При создании С++ его авторы учитывали достижения многих других языков программирования: C++, С, Java, Visual Basic и т.д. Надо заметить, что поскольку С++ разрабатывался что называется «с нуля», у его авторов была возможность не переносить в него все неудачные особенности любого из предшествующих языков. Особенно это касается проблемы совместимости с предыдущими версиями. В результате получился действительно простой, удобный и современный язык, который по мощности не уступает C++, но существенно повышает продуктивность разработок. Ввиду высокой объектной ориентированности, язык С++ великолепно подходит для быстрого конструирования различных компонентов -- от высокоуровневой бизнес-логики до системных приложений, использующих низкоуровневый код. Также следует отметить, что С++ является и Web-ориентированным -- с помощью простых встроенных конструкций языка ваши компоненты легко превратятся в Web-сервисы, к которым можно будет обращаться из Интернета, используя любой язык на любой операционной системе. Дополнительные возможности и преимущества С++ перед другими языками приносит использование современных Web-технологий, таких как: XML (Extensible Markup Language) и SOAP (Simple Object Access Protocol). Удобные методы для разработки Web-приложений позволяют программистам, владеющим навыками объектно-ориентированного программирования, легко освоиться в разработке Web-сервисов. Цель данной курсовой работы укрепить и улучшить практические навыки основ объектно-ориентированного программирования, полученных во время изучения курса, по данному предмету, а также научиться применять полученные знания в сетевом программировании .NET.1. ТЕХНИЧЕСКОЕ ЗАДАНИЕРазработка приложения-клиента электронной почты.В ходе разработки клиентского приложения электронной почты, необходимо разработать и реализовать с использование двух основных протоколов передачи электронной почты POP3 и SMTP:· методы приема и отправки сообщений; · интуитивно понятный интерфейс, обеспечивающий удобную работу с приложением; · сохранение почтовых сообщений на локальном диске компьютера; · реализовать алгоритмы построения списка сообщений;· при выборе сообщения обеспечить отображение темы сообщения, отправителя и адресата письма, а также текст самого сообщения; · дополнительно необходимо реализовать возможность сворачивания приложения в трей панели задач Windows;· проверку наличия новых сообщений по времени и смену иконки в трее при получении новых сообщений. 2. РАБОЧИЙ ПРОЕКТ2.1. Общие сведения о работе программы Программа разработaнa в среде программирования Microsoft Visual Studio 2008, на языке программирования C++. Программа отправляет запрос на сервер электронной почты. Протокол POP3 проверяет правильность ввода имени и пароля электронной почты. После этого программа получает ответ от протокола о статусе ввода пароля и имени (правильно, не правильно). Если все переменные введены правильно, то происходит подключение к серверу. После этого программа получает список сообщений с сервера, а после этого сохраняет их на локальном компьютере. После завершения получения сообщения происходит отсоединение от сервера POP3. При отправке сообщений используется протокол SMTP. В начале происходит авторизация на сервере SMTP, а после этого непосредственная передача сообщения почтовому демону.
2.2. Функциональное назначение Программа предназначена для получения и отправки электронных писем, содержит теоретические и практические материалы, позволяющие систематизировать знания по работе с сетевыми протоколами электронной почты. 2.3. Инсталляция и выполнение программы Для запуска программы из среды «Microsoft Visual Studio 2008» необходимо, зайдя в «Microsoft Visual Studio 2008» запустить файл Mail client.sln. 2.4. Общий алгоритм программного обеспечения Программа состоит из методов, которые используются для подключения к серверам электронной почты, используя протоколы электронной почты, а так же для получения и отправки электронных писем. При нажатии на меню «Получить почту», происходит подключение к серверу через протокол, и получение списка входящих писем. 6 Рис. 1.1. «Диаграмма работы протокола POP3» При нажатии на кнопку написать письмо в меню «Файл», загружается окно нового письма, в котором содержатся поля: кому адресовано письмо, поле темы, поле для текста письма и кнопка для отправки письма. При нажатии на кнопку «SendMail», происходит отправка письма, используя протокол SMTP. При нажатии кнопки выход в меню «Файл», происходит завершение работы программы. 6 Рис. 1.2. «Диаграмма работы протокола SMTP»
2.5. Разработанные меню и интерфейсы При запуске программы на экране появляется главное окно программы с элементами управления (Рис. 2.1). Рис. 2.1. «Главное окно» Для настройки почтового клиента необходимо нажать на меню «Настройки». В результате, загружается окно настроек (рис. 2.2.). Рис. 2.2. «Настройки» Для отправки письма необходимо запустить окно «Написать письмо» (рис 2.3.), нажатием на кнопку «Написать письмо» в меню «Файл». Рис. 2.3. окно «Написать сообщение» 2.6. Описание основных классов и методов приложения Рис. 3.1. «Диаграмма классов» Класс POP3 Класс POP3, также как и одноименный протокол используется для извлечения сообщений с почтового сервера. Данный класс наследуется от System.Net.Sockets.TcpClient реализованного в VS 2008. Класс содержит несколько методов: · ConnectPOP - используется для установки соединения с сервером; · DisconnectPOP - закрывает соединение с сервером; · ListMessages - получаем список сообщений с сервера; · RetriveMessage - получение сообщения с сервера; · DeleteMessage - удаление сообщения на сервере; · Write - принимает сообщение на входе и записывает его в сетевой поток TCP; · Response - метод обратный от Write. Класс SMTP Класс SMTP как и одноименный протокол обеспечивает отправку сообщений. Содержит метод SendMail, который обеспечивает отправку сообщения по протоколу SMTP. Класс Form1 Класс Form1 обеспечивает интерфейс главного окна программы, а также обеспечивает функциональность сохранения и отображения принятых сообщений. Основные методы: · LoadProfile - загрузка файла профиля почтового ящика; · ReadMess - чтение сообщения из файла; · FileCreate - сохранение почтового сообщения; · ListMess - загрузка сообщений в элемент ListView; · ItemsAdd - добавление новых сообщений в элемент ListView; Класс FormSettings Класс FormSettings обеспечивает интерфейс окна настроек почтового ящика, а также обеспечивает сохранение этих настроек в файл профиля. Основные методы: · LoadProfile - загрузка файла профиля почтового ящика; · EditProfile - сохранение изменений профиля почтового ящика; 3. ПРОГРАММА И МЕТОДИКА ИСПЫТАНИЙЗапуск программы осуществляется с помощью запуска файла Mail client.sln из среды разработки «MVS-2008».Вверху окна расположены кнопки главного меню (рис. 3.5.1). Ниже расположено поле, в которое загружается список полученных писем. В самое нижнее поле загружается текст письма.Результатом нажатия на меню «Получить почту», будет загрузка входящих писем в верхнее поле. Результатом нажатия на любое письмо, будет загрузка текста письма в нижнее поле. Для отправки письма нужно загрузить окно «Написать письмо» (рис 3.5.3) в меню файл. Результатом нажатия кнопки «SendMail» в окне «Написать письмо» будет отправка Эл. письма адресату. Результатом нажатия кнопки «выход» в меню «файл», будет выход из программы.ЗАКЛЮЧЕНИЕРезультатом выполнения курсовой работы на тему «Разработка приложения-клиента электронной почты» стала программа, содержащая в себе методы реализации протоколов электронной почты POP3 и SMTP, так как, все современные почтовые сервера используют эти протоколы, а также методы отправки и приема писем. Программа представляет собой удобный пользовательский интерфейс, интуитивно понятный для любого пользователя, программе не требуется установка, что позволяет использовать программу с любых носителей информации.СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ1. Герберт Шилдт «Полный справочник по C++», 2004 г.2. Лабор В.В «Создание приложений для Windows», 2003 г.3. Агуров П.В «Разработка компонентов в MS Visual Studio», 2008 г.4. Э.Кровчик, В.Кумар, Н.Логари, А.Мунгале, К.Нагел, Т.Паркер, Ш.Шивакумар «NET сетевое программирование для профессионалов»,2005г.ПРИЛОЖЕНИЕ 1Form1.csnamespace Mail_client{ public partial class Form1 : Form { private string dir; public static int countMesStart; public static int countMes=0; public static string sServerName ; public static string sUserName; public static string sPassword; public static string SMTPserver; private FormSettings fset= new FormSettings(); private FormNewMess fnewmess = new FormNewMess(); public Form1() { InitializeComponent(); this.ShowInTaskbar = false; dir = Directory.GetCurrentDirectory(); ItemsAdd(); LoadProfile(); } public string LoadProfile() //загрузка файла профиля { FileStream fs = new FileStream(dir+"\\messages\\profile\\porfile.txt", FileMode.Open, FileAccess.Read); StreamReader sr = new StreamReader(fs); string CurLine; int i = 0; while ( (CurLine = sr.ReadLine()) != null) { i++; if(i==1) countMes = Convert.ToInt32(CurLine);
Страницы: 1, 2, 3
|