ПРИЛОЖЕНИЕ В. СКРИНШОТ ПРОГРАММЫ

АННОТАЦИЯ

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


ABSTRACT

The developed in the course of the course project program is disigned to query the Web pages from the internet, processing, output, and the transition from one page to another.


ЗАДАНИЕ КУРСОВОГО ПРОЕКТА

Задание курсового проекта заключается в создании программы браузера на языке высокого уровня C#. Программа должна иметь пользовательский интерфейс. Программа должна давать верные ответы на запросы веб-страниц из интернета.


СОДЕРЖАНИЕ

Введение6

1. Основная часть7

1.1. Структура данных7

1.2. Выбор языка программирования 7

1.3. Интерфейс 8

1.4. Элементы программы9

1.5. Тестирование13

1.6 Системные требования14

Заключение15

Список используемой литературы17

Приложения18

ВВЕДЕНИЕ

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

Задачи данного курсового проекта: а) создание веб-браузера в среде Visual Studio 2010 на языке C#; б) формализовать полученные данные из интернета, разработать структуры для отображения на экране пользователя; в) разработать алгоритм; г) выбрать язык программирования и среду разработки; д) выполнить кодирование; е) разработать интерфейс; ж) выполнить отладку и тестирование

Объект курсового проекта - полноценный браузер на основе Internet Explorer.

Предмет курсового проекта - разработка программы реализующей получение данных из интернета в виде html страниц.

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


ОСНОВНАЯ ЧАСТЬ

Структуры данных

После запуска программы, окно браузера откроется на всю ширину и высоту вашего экрана. Каталог избранных страниц. Также Вы увидите адресную строку, строку поиска в Yandex сервисе, также ряд кнопок, которые служат навигацией при загрузке веб-страниц.

Выбор языка и среды программирования

Данное программное средство было написано с использованием среды разработки Visual Studio 2010, имеющий широкий ряд возможностей для работы с такими программными средствами. В результате было создано программное средство "Web-Browser" , которое может быть использовано в любой сфере деятельности. Я выбрал эту среду программирования потому что :

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

2. версия Visual Studio 2010 Professional является на сегодняшний день одной из самых стабильных;

3. Visual Studio 2010 Professional распространяется бесплатно для учащихся ВУЗов;

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

Интерфейс

Программы интерфейс состоит из win-form окна (скриншот можно увидеть в приложении, Рисунок В1), на котором отображены навигационные кнопки для управления загруженными страницами (это кнопки: вперед, назад, стоп, домой). Также адресная строка для ввода адреса сайта в интернете (например: www.google.com). Также присутствует строка для поиска через известный сервис Яндекс, после ввода элемента поиска, Вы попадает на сайт Яндекса с уже введенными параметрами поиска. Еще Вы можете воспользоваться каталогом избранных сайтов для быстрого перехода к ним. Браузер обладает интуитивно понятным интерфейсом, позволяет полноценно работать в сети. Компонент “WebBrowser” позволяет нам использовать дополнительные функции, необходимые для полноценной работы в сети Internet. Для полноценного использования браузера в сети Интернет необходимы устройства ввода и вывода (комплектация зависит от целей работы):

- компьютерная мышь или тачпад;

- экранная или обычная клавиатура;

- монитор;

- колонки/наушники (опционально).

А так же доступ в сеть Интернет, и установленная на компьютере операционная система Windows, так как создаваемый браузер создаётся именно для этой операционной системы.

Одной из целей работы является создание браузера, интуитивно понятного любому пользователю, поэтому программа должна быть удобна и одновременно проста для использования

 

Элементы программы

В программе используются объекты:

1) Form1 - основная форма на которой размещены все остальные объекты браузера;

2) address - адресная строка;

3) search - строка поиска информации в Яндексе;

4) Кнопка back - возвращение на предыдущую страницу;

5) Кнопка forward - переход на следующую страницу;

6) Кнопка refresh - обновление текущей страницы;

7) Кнопка stop - остановка загрузки текущей страницы;

8) Кнопка home - переход на домашнюю страницу;

9) Каталог combobox1 - избранные страницы;

10) WebBrowser wb - собственно сам объект, в котором отображаются полученные данные из сети интернет.

В программе используются такие события как : Key_Down - реагирование на нажатие какой-либо клавиши. Click - нажатие на кнопку. Document_Completed - выполнение кода после полной загрузки веб-страницы. Load - это событие применено к форме form1, она выполняет код после полного открытия этой формы.

Подробнее о кодирование программы:

private void Form1_Load(object sender, EventArgs e)

{

 

WindowState = FormWindowState.Maximized;

}

 

В этом фрагменте кода, после полной загрузки формы, устанавливается максимальное значение ширины и высоты окна, т.е. окно браузера будет открываться во весь экран.

private void Form1_KeyDown(object sender, KeyEventArgs e)

{

if (e.KeyCode == Keys.Back)

{

wb.GoBack();

}

}

 

А тут при нажатии на кнопку BackSpace вызывается функция GoBack(), которая возвращает вас на предыдущую посещенную страницу.

 

private void wb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)

{

address.Text = wb.Url.ToString();

}

 

Здесь при завершении загрузки страницы, в адресную строку вставляется полная ссылка url адреса сайта, на котором в данный момент вы находитесь.

 

private void search_KeyDown(object sender, KeyEventArgs e)

{

if (e.KeyCode == Keys.Enter)

{

wb.Navigate("http://yandex.ru/yandsearch?text=" + search.Text + "&lr=39");

}

}

 

Этот фрагмент кода служит для вставки вашего поискового запроса, в панель поиска службы Яндекс. И при нажатии на кнопку Enter Вы оказываетесь на сайте yandex.ru с уже готовыми ответами на Ваш поисковый запрос.

private void home_Click(object sender, EventArgs e)

{

wb.Navigate("google.ru");

}

 

Это один из многочисленных событий клика по кнопке, в данном случае это клик по кнопке Домой, которая перенесет Вас на домашнюю страницу указанную в двойных кавычках. Аналогичные события и на кнопках Вперед, Назад, Стоп и Обновить.

 

Также Вы можете воспользоваться готовым каталогом, которого описывает код представленный ниже:

 

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)

{

switch (comboBox1.SelectedIndex)

{

case 0: wb.Navigate("www.vk.com"); break;

case 1: wb.Navigate("www.rambler.ru"); break;

case 2: wb.Navigate("www.rbc.ru"); break;

case 3: wb.Navigate("www.google.ru"); break;

case 4: wb.Navigate("www.yandex.ru"); break;

case 5: wb.Navigate("www.mail.ru"); break;

case 6: wb.Navigate("www.odnoklassniki.ru"); break;

case 7: wb.Navigate("www.iccup.com"); break;

case 8: wb.Navigate("www.habrahabr.ru"); break;

case 9: wb.Navigate("www.intuit.ru"); break;

case 10: wb.Navigate("www.sports.ru"); break;

case 11: wb.Navigate("www.mts.ru"); break;

}

}.

 

В этот список я добавил одни из самых посещаемых мною сайтов за последние полгода.

Тестирование

В комплект поставки программы входит файл Браузер.exe. В ходе тестирования были проверены все функции программы: загрузка страницы, корректное отображение, навигационные кнопки работают корректно, сайты из каталога избранных и Яндекс поиск функционируют в полном порядке.

Программное средство было разработано на компьютере со следующей конфигурацией:

- микропроцессор Pentium(R) Dual-Core CPU T4200;

- оперативная память 4 ГБ DDR;

- видеоадаптер Mobile Intel(R) 45 Express;

- винчестер TOSHIBA MK3255GSX ATA Device;

- операционная система Microsoft Windows 7 Максимальная.

 

Список компьютеров на которых проводилось тестирование:

- Компьютер 1: Intel Core T4300 2.1 ГГц, 4096 МБ ОЗУ, 500 Гб жесткий диск, Nvidia GeForce 220M, ОС Windows Vista.

- Компьютер 2: AMD Quad-Core A8-4500M, 2.8 ГГц, 6 Гб ОЗУ, 500 Гб жесткий диск, ОС Windows 7.

- Компьютер 3: Intel Celeron 700 700 Гц, 512 Мб ОЗУ, 120 Гб жесткий диск, Nvidia GeForce GT6600, ОС Windows XP.

- Компьютер 4: . Intel Pentium 4, 2.1 ГГц, 1024 Мб ОЗУ, 320 Гб жесткий диск, Nvidia GeForce GT7600, ОС Windows XP.

Системные требования

Для работы с программами необходимо наличие следующих системных и программных средств на используемом персональном компьютере:

- процессор не ниже 1000 МГц;

- 256 MB ОЗУ;

- 30 Mб свободного дискового пространства;

- стандартный монитор и видеокарта SVGA с разрешением 800х600, глубина цвета 16 бит (65536);

- клавиатура;

- манипулятор "Мышка";

- операционная система Microsoft Windows не ранее XP.


ЗАКЛЮЧЕНИЕ

В результате разработки, получен полноценный браузер, с помощью которого можно беспрепятственно посещать различные Интернет ресурсы. Плюсом написания браузера на С# является то, что основной упор делается на максимальном использовании кода. Это позволяет разработчикам строить приложения весьма быстро из заранее подготовленных объектов, а так же дает им возможность создавать свои собственные объекты для среды Visual Studio. Никаких ограничений по типам объектов, которые могут создавать разработчики, не существует. Я считаю создание браузера очень эффективным в образовательном плане, так как при его написании возникал ряд трудностей, преодолевая которые развиваются необходимые качества для программиста, такие как упорство, логика, умение находить оптимальное решение проблемы. Дизайн и внешний облик браузера и функционал целиком и полностью зависит от разработчика, поэтому реализация данного проекта позволяет развивать творческое мышление и повысить мотивацию к обучению, овладеть методами научного познания. Странное на первый взгляд слово «браузер» произошло от английского слова browse, что означает «листать» (это слово можно увидеть на кнопках в диалоговых окнах англоязычных программ). Это название программа получила за рубежом еще до возникновения системы World Wide Web в то время, когда, кроме текста, просматривать в Сети было нечего, и пользователи «листали» текстовые файлы на экранах компьютеров. Сейчас Интернет предлагает нам удивительное многообразие информации — текст, графику, анимацию, видео, звук, и все это великолепие мы видим и слышим благодаря браузеру.

К сожалению, разработка браузера на основе Internet Explorer не перспективна в настоящее время, так как сам по себе браузер Internet Explorer имеет достаточно большое количество минусов (в частности серьезные проблемы в системе безопасности, скорости работы, производительности, функциональности, наличии уязвимостей), и уступает по многим параметрам аналогам (таким как Opera, Mozilla FireFox, Safari, Google Chrome и другим). Написание же браузера на собственном, уникальном ядре задача очень не простая и требует огромных умственных, материальных и временных затрат. В последующем возможно доработать программу по следующим пунктам:

- добавить возможность загружать страницы с указанием процесса загрузки;

-добавить закладки;

- добавить загрузки.

 

СПИСОК ЛИТЕРАТУРЫ

1. «C# на примерах» Шилдт Г., «Питер», Санкт-Петербург, 2005, 866стр.

2. «Продвинутый .NET Framework» Фаронов В.В. «ОМД Групп», Москва, 2008, 531стр.

3. MSDN, [Электронный ресурс] / Microsoft Corporation. - Элетронные текстовые данные (1 html-страница, 439 Кб). - Рэдмонд: Microsoft Corporation, 2012. - URL: http://msdn.microsoft.com/ru-ru/library/k50ex0x9.aspx, режим доступа: свободный. - Дата последнего доступа: 24.12.2012.


 

 

ПРИЛОЖЕНИЯ

 

ПРИЛОЖЕНИЕ А. ЛИСТИНГ ПРОГРАММЫ

 

 

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

 

namespace Браузер

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

 

 

}

 

 

private void address_KeyDown(object sender, KeyEventArgs e)

{

string url = address.Text;

if (url.Length == 0 && e.KeyCode == Keys.Enter)

{

MessageBox.Show("ОШИБКА!\nВведите адрес сайта!", "ERROR!",

MessageBoxButtons.OK, MessageBoxIcon.Error);

}

 

else

{

if (e.KeyCode == Keys.Enter)

{

if (!url.StartsWith("http://") &&

!url.StartsWith("https://"))

{

url = "http://" + url;

}

 

wb.Navigate(new Uri(url));

}

 

}

}

 

private void back_Click(object sender, EventArgs e)

{

wb.GoBack();

}

 

private void forward_Click(object sender, EventArgs e)

{

wb.GoForward();

}

 

private void wb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)

{

address.Text = wb.Url.ToString();

}

 

private void Form1_Load(object sender, EventArgs e)

{

toolTip1.SetToolTip(address, "Введите\n адрес сайта");

WindowState = FormWindowState.Maximized;

 

}

 

private void Form1_KeyDown(object sender, KeyEventArgs e)

{

if (e.KeyCode == Keys.Back)

{

wb.GoBack();

}

 

}

 

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)

{

switch (comboBox1.SelectedIndex)

{

case 0: wb.Navigate("www.vk.com"); break;

case 1: wb.Navigate("www.rambler.ru"); break;

case 2: wb.Navigate("www.rbc.ru"); break;

case 3: wb.Navigate("www.google.ru"); break;

case 4: wb.Navigate("www.yandex.ru"); break;

case 5: wb.Navigate("www.mail.ru"); break;

case 6: wb.Navigate("www.odnoklassniki.ru"); break;

case 7: wb.Navigate("www.iccup.com"); break;

case 8: wb.Navigate("www.habrahabr.ru"); break;

case 9: wb.Navigate("www.intuit.ru"); break;

case 10: wb.Navigate("www.sports.ru"); break;

case 11: wb.Navigate("www.mts.ru"); break;

}

}

 

private void home_Click(object sender, EventArgs e)

{

wb.Navigate("google.ru");

 

}

 

private void refresh_Click(object sender, EventArgs e)

{

wb.Refresh();

}

 

private void search_KeyDown(object sender, KeyEventArgs e)

{

if (e.KeyCode == Keys.Enter)

{

wb.Navigate("http://yandex.ru/yandsearch?text=" + search.Text + "&lr=39");

}

}

 

private void stop_Click(object sender, EventArgs e)

{

wb.Stop();

}}}

 

 

ПРИЛОЖЕНИЕ В. СКРИНШОТ ПРОГРАММЫ

 

 

Рисунок В1. Скриншот программы