Курсовая работа на тему: «Чат — разработка клиент-серверного приложения для передачи сообщений на Java»

Заказ 240 

Цена полной версии курсовой: 900 рублей

Оглавление

Введение. 3

1 Язык программирования Java. 5

1.1 Java – объектно-ориентированный язык. 5

1.2 Требования объектно-ориентированной системы.. 8

1.3 Базовая система классов Java. 13

2 Инструменты разработки. 16

2.1 Среда разработки IntelliJ IDEA.. 16

2.2 Набор библиотек JDK.. 19

3 Клиент-серверное приложение. 21

3.1 Понятие «Socket». 21

3.2 Алгоритм работы «клиент-сервер». 22

3.3 Реализация программы «Чат». 23

3.3.1 Серверная часть. 24

3.3.2 Клиентская часть. 28

Заключение. 33

Список литературы.. 35

Введение

Данная работа посвящена одному из самых перспективных на сегодняшний день языков программирования – языку Java. Технологию по имени Java можно без преувеличения назвать революционной в индустрии разработки программного обеспечения. В чём же перспективность и революционность этой технологии?

Сегодня создание программного обеспечения представляет собой чрезвычайно тяжелое занятие. Трудности связаны с разнообразием архитектур машин, операционных систем, графических оболочек и т. д. Стремительный рост технологий, связанных с сетью Internet, дополнительно усложняет эту задачу. К сети Internet подключены компьютеры самых разных типов – PC, Mac, Linux и другие. Даже в рамках IBM-совместимых компьютеров, существует несколько платформ, например, MS Windows 9x/Me/XP/NT/2000, OS/2, Solaris, различные разновидности операционной системы UNIX с графической оболочкой X­Windows и т. д. Все эти системы образуют единую сеть, которая должна работать как одно целое, обеспечивая при этом высокий уровень безопасности информации. Под влиянием указанных факторов резко возрастает уровень требований, предъявляемый к программному обеспечению.

Современные приложения должны быть безопасны, высокопроизводительны, работать в распределенной среде, быть нейтральны к архитектуре. Все эти факторы привели к необходимости нового взгляда на сам процесс создания и распределения приложений на множестве машин различной архитектуры. Требования к переносимости заставили отказаться от традиционного способа создания и доставки бинарных файлов, содержащих машинные коды и, следовательно, привязанных к определенной платформе. Созданная компанией SunMicrosystems система разработки Java удовлетворяет всем этим требованиям. Java – объектно-ориентированный язык, удобный и надёжный в эксплуатации благодаря таким своим достоинствам, как многозадачность, поддержка протоколов Internet и кроссплатформенность. Java – это интерпретируемый язык, и каждая Java-программа компилируется для гипотетической машины, называемой Виртуальная Машина Java. Результатом такой компиляции является байт-код Java, который в свою очередь может выполняться на любой операционной системе при условии наличия там системы времени выполнения Java, которая интерпретирует байт-код в реальный машинный код конкретной системы.

Однако, такая универсальность данной технологии рождает недостаток – требовательность к ресурсам компьютера. Так как Java-программы не содержат машинного кода и при их запуске включается в работу система времени выполнения Java, их производительность заметно ниже, чем у обычных программ, составленных, например, на языке программирования C++. Данный недостаток становится с течением времени всё менее ощутим, в следствии роста вычислительной мощности компьютерных систем.

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

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

1 Язык программирования Java

1.1 Java– объектно-ориентированный язык

Система Java создавалась объектно-ориентированной с самого начала. Объектно-ориентированная парадигма наиболее удобна при создании программного обеспечения типа клиент-сервер, а также для организации распределенных вычислений. Одна из черт, присущих объектам, заключается в том, что объекты обычно переживают процедуру, их создающую. Они затем могут перемещаться по сети, храниться в базах данных и т.д. Идейными наследниками Java являются такие языки, как C++, Eiffel, Smalltalk и Objective C. За исключением примитивных типов данных, практически все в этом языке является объектом.

……………………..

…………………..

………………….

2 Инструменты разработки

2.1 Среда разработки IntelliJ IDEA

В качестве среды для разработки приложения была выбрана IntelliJIdea компании JetBrains. Существует множество сред разработки, но данная была выбрана по многочисленным рекомендациям среди программистов, а также ввиду ее удобного простоту графического интерфейса и средств отладки.

………………….

…………………..

……………….

Заключение

В процессе написания данной работы были выяснены следующие свойства языка Java:

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

В процессе написания данной курсовой работы был разобран алгоритм работы приложения типа «клиент-сервер», на практике была произведена работа с сокетами для передачи данных между клиентом и сервером. Вся работа была выполнена в профессиональной среде разработке IntelliJIdea от компании JetBrains.Говоря о выборе среды разработки, можно сказать, что IntelliJ IDEA — IDE, которая понимает код.

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

Сервер выступает в роли посредника, к котором происходит подключение всех клиентов. Разработанную программу можно использовать для общения большого количества пользователей, которые могут быть удалены друг от друга. Такую возможность можно использовать, запустив серверную часть приложения на реальном и желательно мощном компьютере, который выступает неким сервером и будет работать без перебоев. Мощность необходима для того, чтобы сервер смог выдержать нагрузки в случае большого количества пользователей или большого объема передаваемой информации. Клиенты же будут подключаться к нему, и общаться в одной сети.

Список литературы

  1. Кей Хорстманн, Гари Корнелл–«Java 2. Библиотека профессионала. Том 2. Тонкости программирования».
  2. Брюс Эккель–«Философия Java».
  3. Х. М. Дейтел, П. Дж. Дейтел, С. И. Сантри–«Технологии программирования на Java 2. Распределенные приложения».
  4. К. Хорстманн– «Java2: основы».
  5. Г. Буч – «Объектно-ориентированный анализ и проектирование с примерами приложений».
  6. С.Стелинг, О.Массен– «Применение шаблонов Java».
  7. Стив Макконнел – «Совершенный код».
  8. М. Фаулера– «Архитектура корпоративных приложений».