Разработка web-приложения на платформе Java

История создания и основные понятия фреймворка Spring. Проектирование объектов на языке Kotlin. Правила построения архитектуры программного кода на платформе Java. Принципы компилирования файлов web-приложения. Авторизация и аудентификация пользователей.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 18.02.2019
Размер файла 797,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://allbest.ru

Федеральное агентство железнодорожного транспорта

Омский государственный университет путей сообщения

Кафедра "Автоматика и системы управления"

Пояснительная записка к курсовой работе

Разработка web-приложения на платформе Java

по дисциплине «Прикладное программирование»

Выполнил: студентка Л.А. Чернякова

Руководитель: Е.А. Альтман

доцент кафедры АиСУ

Омск 2017

Реферат

УДК 681.51

Рассмотрено назначение фреймворка Spring, его особенности и отличительные черты. Выполнена разработка проекта с использованием фреймворка и его модулей. Изучен современный язык JVM Kotlin.

Пояснительная записка выполнена в программе Microsoft Word 2010, программная реализация выполнена в среде IntelliJ IDEA 2016.

Ключевые слова: фреймворки, аннотации, сервер, база данных.

Содержание

Введение

1. Основные понятия о Framework Spring

1.1 Введение в Spring Framework и история создания

1.2 Модули Spring Framework'a

1.3 Недостатки проекта с шаблонным кодом

1.4 JPA

2. Реализация проекта

2.1 Конфигурация сборки

2.2 Хранение Data объектов

2.3 Тестирование Web-сервера

Заключение

Библиографический список

Приложения

Введение

Фреймворк (неологизм от англ. framework - каркас, структура) - программная платформа, определяющая структуру программной системы; программное обеспечение, облегчающее разработку и объединение разных компонентов большого программного проекта.

Библиотека (от англ. library) в программировании - сборник подпрограмм или объектов, используемых для разработки программного обеспечения (ПО).

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

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

Можно сделать вывод, что библиотека является фреймворком, если:

- задает правила построения архитектуры программного кода;

- диктует принципы структурирования файлов;

- внутри себя имеет несколько библиотек.

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

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

Задание: С помощью фреймворка Spring и модуля Spring JPA (Java Persistence API) разработать web-приложение. Для сборки приложения необходимо будет скомпилировать несколько файлов исходных кодов и добавить объектные файлы библиотек.

Требуется выполнить несколько вариантов сборки:

- для тестирования;

- для локального выполнения;

- для запуска на сервере.

1. Основные понятия о Framework Spring

1.1 Введение в Spring Framework и история создания

The Spring Framework (или коротко Spring) - open source фреймворк для Java-платформы и .NET Framework (Spring.NET).

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

Spring Framework - вероятно, наиболее известен как источник расширений (features), нужных для эффективной разработки сложных бизнес-приложений вне тяжеловесных программных моделей. Ещё одно его достоинство в том, что он ввел ранее неиспользуемые функциональные возможности в сегодняшние господствующие методы разработки, даже вне платформы Java. фреймворк компилирование файл код язык

Этот фреймворк предлагает последовательную модель и делает её применимой к большинству типов приложений, которые уже созданы на основе платформы Java. Считается, что Spring Framework реализует модель разработки, основанную на лучших стандартах индустрии, и делает её доступной во многих областях Java.

Первая версия была написана Родом Джонсоном, который впервые опубликовал её вместе с изданием своей книги «Expert One-on-One Java EE Design and Development» (Wrox Press, октябрь 2002 года).

Фреймворк был впервые выпущен под лицензией Apache 2.0 license в июне 2003 года. Первый стабильный релиз 1.0 был выпущен в марте 2004. Последующие стабильные релизы вышли в сентябре 2004 года и марте 2005 года. Текущая версия 3.1.0.]

Несмотря на то, что Spring Framework не обеспечивал какую-либо конкретную модель программирования, он стал широко распространённым в Java сообществе главным образом как альтернатива и замена модели Enterprise JavaBeans. Spring Framework предоставляет большую свободу Java разработчикам в проектировании, кроме того, он предоставляет хорошо документированные и лёгкие в использовании средства решения проблем, возникающих при создании приложений промышленного масштаба.

Между тем, особенности ядра Spring Framework применимы в любом Java приложении, и существует множество расширений и усовершенствований для построения веб-приложений на Java Enterprise платформе. По этим причинам Spring приобрёл большую популярность и признаётся разработчиками как стратегически важный фреймворк.

На Java существует набор API для решения типичных задач (взаимодействие с хранилищами данных, в том числе БД, отображение данных, в том числе на web-страницах, и другие). Эти программные интерфейсы нельзя считать достаточно последовательно спроектированными друг относительно друга (так как создавались они независимо). Программы, которые обычно используют сразу несколько таких интерфейсов, наследуют эту непоследовательность. Spring призван предоставить программные решения, которые помогут создавать лучшую архитектуру для программ, сделать их более логически прозрачными, удобочитаемыми и, как следствие, снизить подверженность ошибкам.

1.2 Модули Spring Framework'a

Framework имеет модульную архитектуру, состоящую из ядра и отдельных проектов (модулей):

Spring Core - предназначен для конфигурирования приложения, состоящего из различных объектов различных классов. Конфигурация содержит как список объектов приложения, так и устанавливает связи между ними. Это позволяет разрабатывать классы для логики приложения, не беспокоясь о типах используемых баз данных, обеспечения безопасности и др.

Spring Boot - предлагает шаблоны конфигурации для приложения. Отдельные настройки шаблона можно переопределить.

Spring Data - обеспечивает хранение данных в базах данных.

Spring Security - обеспечивает авторизацию и аудентификацию пользователей и разграничение доступа к объектам.

Spring Framework может быть рассмотрен как коллекция меньших фреймворков или фреймворков во фреймворке. Большинство этих фреймворков может работать независимо друг от друга, однако, они обеспечивают большую функциональность при совместном их использовании. Эти фреймворки делятся на структурные элементы типовых комплексных приложений:

- Inversion of Control контейнер: конфигурирование компонент приложений и управление жизненным циклом Java объектов;

- Фреймворк аутентификации и авторизации: конфигурируемый инструментарий процессов аутентификации и авторизации, поддерживающий много популярных и ставших индустриальными стандартами протоколов, инструментов, практик через дочерний проект Spring Security (ранее известный как Acegi);

- Фреймворк удалённого управления: конфигурируемое представление и управление Java объектами для локальной или удалённой конфигурации с помощью JMX;

- Фреймворк работы с сообщениями: конфигурируемая регистрация объектов-слушателей сообщений для прозрачной обработки сообщений из очереди сообщений с помощью JMS, улучшенная отправка сообщений по стандарту JMS API;

- Тестирование: каркас, поддерживающий классы для написания модульных и интеграционных тестов.

1.3 Недостатки проекта с шаблонным кодом

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

1.4 JPA

JPA - это технология, обеспечивающая объектно-реляционное отображение простых JAVA объектов и предоставляющая API для сохранения, получения и управления такими объектами.

Сам JPA не умеет ни сохранять, ни управлять объектами, JPA только определяет правила: как что-то будет действовать. JPA также определяет интерфейсы, которые должны будут быть реализованы провайдерами. Плюс к этому JPA определяет правила о том, как должны описываться метаданные отображения и о том, как должны работать провайдеры. Дальше, каждый провайдер, реализуя JPA определяет: получение, сохранение и управление объектами. У каждого провайдера реализация разная.

У JPA существуют разные реализации: Hibernate; Oracle TopLink; Apache OpenJPA.

Наиболее высокую популярность среди этих реализаций завоевала Hibernate. Эта технология является ORM-решением для языка Java. ORM - это отображение объектов какого-либо объектно-ориентированного языка в структуры реляционных баз данных. Hibernate не только создает связи между Java классами и таблицами баз данных, но также предоставляет средства для автоматического построения запросов и извлечения данных и может значительно уменьшить время разработки. Hibernate генерирует SQL вызовы и освобождает разработчика от ручной обработки результирующего набора данных и конвертации объектов, сохраняя приложение портируемым во все SQL базы данных.

В самом проекте объекты для JPA помечаются аннотациями. Класс, который будет являться сущностью в базе данных, отмечается аннотацией @Entity. Так как этот класс является сущностью для базы данных, в нем должен быть указан ключ, в нашем случае это ID. Интерфейс репозитория - @Repository. Этот интерфейс наследуется от интерфейса JpaRepository<T,F>, где T - объект нашей сущности (класс с пометкой @Entity), а F - должен быть того же типа, что и ID из класса-сущности. При правильном наследовании Spring предоставит реализованные методы указанные в интерфейсе. Пример реализации сущности и репозитория представлен в приложении Б.

1.1

2. Реализация проекта

2.1 Конфигурация сборки

Для реализации проекта необходимо выбрать систему сборки. В настоящий момент для Maven имеются самые большие репозитории с библиотеками, (например, https://search.maven.org/). Можно легко подключить любую библиотеку. Выбираем нужные зависимости и скачиваем Maven проект.

Рисунок 1 - Структура Maven проекта

Файл DemoApplication.java содержит пример готового проекта.

Рисунок 2 - Файл DemoApplication

Метод main запускает платформу Spring. Аннотация @SpringBootApplication указывает на то, что в этом классе задаются настройки Spring. Настройки задаются с помощью соответствующих аннотаций.

Рисунок 3 - Файл DemoApplicationTests

@RunWith указывает, что перед тестом нужно запустить SpringRunner.class класс, который позволяет тестировать Spring приложения с помощью Junit. Метод contexLoad проверяет правильность загрузки конфигурации.

2.2 Хранение Data объектов

Будем использовать модуль SpringJPA - спецификация для сохранения Java-объектов в базе данных. Реализует концепцию ORM (Object-Relational Mapping). Фактически JPA берет на себя реализацию двух уровней типичного корпоративного приложения: баз данных и DAO (обеспечивает для POJO объектов методы по работе с базой данных: сохранение, загрузка и т.д.). Создадим класс Expense как data объект, написанный на языке Kotlin.

Рисунок 4 - Класс Expense

Аннотация @Entity указывает, что класс должен отображаться (сохраняться и считываться) на базу данных, являться сущностью. Аннотация @Id говорит о том, что поле Id является первичным ключом таблицы. Аннотация @GeneratedValue указывает, что это поле должно генерироваться базой данных. Для автоматической генерации конструктора со всеми аргументами нужно задать начальные значения всех полей. Перед добавлением объекта на постоянное хранение его нужно создать в памяти. Для этого создаем вторичный конструктор с двумя параметрами.

Рисунок 5 - ExpenseRepository

Интерфейс ExpenseRepository содержит стандартные методы для уровня DAO: save, findAll и др. JPA может автоматически сгенерировать описанные таким способом методы и стандартные методы интерфейса ExpenseRepository. Аннотация @Repository говорит о том, что нужно сгенерировать объект со всеми методами, определенными в ExpenseRepository.

На рисунке 6, изображен файл ExpenseController, который содержит аннотации:

- @RestController, указывает на класс, в котором находятся методы, которые нужно вызывать при поступлении запросов;

- @RequestMapping указывает метод, который нужно вызывать при некотором запросе к серверу. Параметры аннотации указывают, на запросы с какими свойствами должен отвечать метод. Результат передается в формате JSON;

- @PathVariable позволяет передать параметры запроса в качестве передаваемого в обрабатываемый метод параметра;

- @RequestBody позволяет передать тело запроса в качестве передаваемого в обрабатываемый метод параметра.

Полный листинг кода представлен в приложении А.

Рисунок 6 - ExpenseController

2.3 Тестирование Web-сервера

Наш сервер будет поддерживать операции CRUD:

- Create - добавление;

- Read - чтение;

- Update - обновление;

- Delete - удаление.

Данные об изменяемом объекте будем передавать в теле HTTP-запроса.

Листинг кода представлен в приложении Б. Результаты тестирования представлены на рисунках 7 и 8.

Рисунок 8 - Результат запуска сервера и отображение данных в формате JSON

Рисунок 9 - Результаты тестирования

Заключение

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

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

Библиографический список

1. Е.А. Альтман, Введение в фреймворк Spring / Е.А. Альтман / Омский гос. ун-т путей сообщения. Омск, 2017. 47 с.

2. Е.А. Альтман, Оптимизация Web сервера / Е.А. Альтман / Омский гос. ун-т путей сообщения. Омск, 2017. 17 с.

3. Справочник по IntelliJ IDEA. [Электронный ресурс] - Режим доступа: http://jetbrains.ru/products/idea/.

4. СТП ОмГУПС-1.2-2005. Работы студенческие учебные и выпускные квалификационные: общие требования и правила оформления текстовых документов. - Омский Государственный Университет Путей Сообщения. Омск, 2005. 28 с.

Приложение А

Содержимое файла pom.xml

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

<modelVersion>4.0.0</modelVersion>

<groupId>com.example</groupId>

<artifactId>Jpa</artifactId>

<version>0.0.1-SNAPSHOT</version>

<packaging>jar</packaging>

<name>Jpa</name>

<description>Demo project for Spring Boot</description>

<parent>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-parent</artifactId>

<version>1.5.1.RELEASE</version>

<relativePath/> <!-- lookup parent from repository -->

</parent>

<properties>

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

<java.version>1.8</java.version>

<kotlin.version>1.1.0</kotlin.version>

</properties>

<dependencies>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-data-jpa</artifactId>

</dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-web</artifactId>

</dependency>

<dependency>

<groupId>com.h2database</groupId>

<artifactId>h2</artifactId>

<scope>runtime</scope>

</dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-test</artifactId>

<scope>test</scope>

</dependency>

<dependency>

<groupId>org.jetbrains.kotlin</groupId>

<artifactId>kotlin-stdlib-jre8</artifactId>

<version>${kotlin.version}</version>

</dependency>

<dependency>

<groupId>org.jetbrains.kotlin</groupId>

<artifactId>kotlin-test</artifactId>

<version>${kotlin.version}</version>

<scope>test</scope>

</dependency>

<dependency>

<groupId>org.jetbrains.kotlin</groupId>

<artifactId>kotlin-stdlib-jre8</artifactId>

<version>${kotlin.version}</version>

</dependency>

<dependency>

<groupId>org.jetbrains.kotlin</groupId>

<artifactId>kotlin-stdlib-jre8</artifactId>

<version>${kotlin.version}</version>

</dependency>

</dependencies>

<build>

<plugins>

<plugin>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-maven-plugin</artifactId>

</plugin>

<plugin>

<groupId>org.jetbrains.kotlin</groupId>

<artifactId>kotlin-maven-plugin</artifactId>

<version>${kotlin.version}</version>

<executions>

<execution>

<id>compile</id>

<phase>compile</phase>

<goals>

<goal>compile</goal>

</goals>

</execution>

<execution>

<id>test-compile</id>

<phase>test-compile</phase>

<goals>

<goal>test-compile</goal>

</goals>

</execution>

</executions>

</plugin>

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-compiler-plugin</artifactId>

<executions>

<execution>

<id>compile</id>

<phase>compile</phase>

<goals>

<goal>compile</goal>

</goals>

</execution>

<execution>

<id>testCompile</id>

<phase>test-compile</phase>

<goals>

<goal>testCompile</goal>

</goals>

</execution>

<execution>

<id>default-compile</id>

<phase>none</phase>

</execution>

<execution>

<id>default-testCompile</id>

<phase>none</phase>

</execution>

</executions>

</plugin>

</plugins>

</build>

</project>

Приложение Б

Листинги класса и интерфейса для JPA

@Entity

data class Expense (

@Id

@GeneratedValue(strategy = GenerationType.AUTO)

val Id:Long? = null,

val name: String = "Зерна",

var cost:Float = (-1.0).toFloat(),

val cat:String = "Растения"){

constructor(_name:String, _cost:Float, _cat:String) : this(

name = _name,

cost = _cost,

cat = _cat

)

}

@Repository

public interface ExpenseRepository extends JpaRepository<Expense, Long> {

//Expense save(Expense expense);

Expense findByName(String name);

}

Приложение В

Листинги класса контроллера и точки запуска сервера

@RestController

public class ExpenseController {

private ExpenseRepository expenseRepository;

@Autowired

public ExpenseController (ExpenseRepository expenseRepository) {

this.expenseRepository = expenseRepository;

expenseRepository.save(new Expense("Банан", 70, "Фрукт"));

expenseRepository.save(new Expense("Малина", 90, "Ягода"));

expenseRepository.save(new Expense("Баклажан", 100, "Овощ"));

}

@RequestMapping(value = "/expenses", method = RequestMethod.GET, headers = "Accept=application/json")

public List<Expense> getExpenses(){

return expenseRepository.findAll();

}

@RequestMapping(value = "/expenses/{id}", method = RequestMethod.GET, headers = "Accept=application/json")

public Expense getExpensesId(@PathVariable Long id){

return expenseRepository.findOne(id);

}

@RequestMapping(value = "/expenses/{id}", method = RequestMethod.DELETE, headers = "Accept=application/json")

public void deleteExpense (@PathVariable Long id){

expenseRepository.delete(id);

}

@RequestMapping(value = "/expenses", method = RequestMethod.POST, headers = "Accept=application/json")

public void postExpense(@RequestBody Expense expense){

expenseRepository.save(expense);

}

@RequestMapping(value = "/expenses", method = RequestMethod.PUT, headers = "Accept=application/json")

public void updateExpense (@RequestBody Expense expense){

expenseRepository.findByName(expense.getName()).setCost(expense.getCost());

Expense exp = expenseRepository.findByName(expense.getName());

expenseRepository.save(exp);

System.out.println(exp);

}

}

@SpringBootApplication

public class DemoApplication {

public static void main(String[] args) {

SpringApplication.run(DemoApplication.class, args);

}

}

Приложение Г

Листинг класса тестирования

@RunWith(SpringRunner.class)

@SpringBootTest

public class DemoApplicationTests {

private MockMvc mockMvc;

private ExpenseController expenseController;

private ExpenseRepository expenseRepository;

@Autowired

private WebApplicationContext webApplicationContext;

@Before

public void setup() throws Exception {

mockMvc = webAppContextSetup(webApplicationContext).build();

}

@Test

public void contextLoads() {

}

@Test

public void getExpenses() throws Exception {

ResultActions perform = mockMvc.perform(get("/expenses"));

perform .andExpect(status().isOk())

.andExpect(jsonPath("$.[1].name", is("Малина")))

.andExpect(jsonPath("$.[1].cost", is(90.)))

.andExpect(jsonPath("$.[1].cat", is("Ягода")));

}

@Test

public void addExpense() throws Exception {

String expens = new ObjectMapper().writeValueAsString(new Expense("Брусника", 150, "Ягода"));

ResultActions perform = mockMvc.perform(post("/expenses").accept(MediaType.APPLICATION_JSON).contentType(MediaType.APPLICATION_JSON).content(expens));

perform .andExpect(status().isOk());

ResultActions performm = mockMvc.perform(get("/expenses/4"));

performm.andExpect(status().isOk())

.andExpect(jsonPath("$.name", is("Брусника")))

.andExpect(jsonPath("$.cost", is(150.)))

.andExpect(jsonPath("$.cat", is("Ягода")));

}

@Test

public void updateCountry() throws Exception {

String expens = new ObjectMapper().writeValueAsString(new Expense("Банан", 70, "Фрукт"));

ResultActions perform = mockMvc.perform(put("/expenses").accept(MediaType.APPLICATION_JSON).contentType(MediaType.APPLICATION_JSON).content(expens));

perform .andExpect(status().isOk());

ResultActions performm = mockMvc.perform(get("/expenses/1"));

performm.andExpect(status().isOk())

.andExpect(jsonPath("$.name", is("Банан")))

.andExpect(jsonPath("$.cost", is(70.)))

.andExpect(jsonPath("$.cat", is("Фрукт")));

}

@Test

public void getExpensebyId() throws Exception {

ResultActions perform = mockMvc.perform(get("/expenses/2"));

perform.andExpect(status().isOk())

.andExpect(jsonPath("$.name", is("Малина")))

.andExpect(jsonPath("$.cost", is(90.)))

.andExpect(jsonPath("$.cat", is("Ягода")));

}

@Test

public void deleteExpenses() throws Exception {

ResultActions perform = mockMvc.perform(delete("/expenses/1"));

perform.andExpect(status().isOk());

ResultActions performm = mockMvc.perform(get("/expenses"));

performm.andExpect(jsonPath("$.length()", is(2)));

}

}

Размещено на Allbest.ru

...

Подобные документы

  • Кратка историческая справка развития языка Java. Анализ предметной области. Java platform, enterprise and standart edition. Апплеты, сервлеты, gui-приложения. Розработка программного кода, консольное приложение. Результаты работы апплета, сервлета.

    курсовая работа [549,2 K], добавлен 23.12.2015

  • Java Runtime Environment - минимальная реализация виртуальной машины, необходимая для исполнения приложений, без компилятора и других средств разработки. Компиляция исходного кода через командную строку. Основные моменты создания игрового 2d-приложения.

    курсовая работа [2,1 M], добавлен 26.04.2014

  • Разработка и создание игры "Змейка". Использование динамически-активных принципов языка Java. Графические объекты программы. Описание игры, правила, теоретические сведения. Классы приложения. Типы данных. Реализация. Метод. Объект. Блок-схема игры.

    курсовая работа [12,4 K], добавлен 18.06.2008

  • История развития языка программирования Java. История тетриса - культовой компьютерной игры, изобретённой в СССР. Правила проведения игры, особенности начисления очков. Создание интерфейса программы, ее реализация в среде Java, кодирование, тестирование.

    курсовая работа [168,1 K], добавлен 27.09.2013

  • История создания языка Java. Основные принципы объектно-ориентированного программирования. Структура, особенности синтаксиса и примеры прикладных возможностей использования языка Java, его преимущества. Перспективы работы программистом на языке Java.

    курсовая работа [795,9 K], добавлен 14.12.2012

  • Архитектура Java и Java RMI, их основные свойства, базовая система и элементы. Безопасность и виртуальная Java-машина. Интерфейс Java API. Пример использования приложения RMI. Работа с программой "Calculator". Универсальность, портативность платформ.

    курсовая работа [208,6 K], добавлен 03.12.2013

  • Изучение объектно-ориентированного языка программирования Java, его функциональные возможности. Создание программного кода. Описание классов и методов, использованных в программе. Руководство пользователя, запуск сервера и клиентского приложения.

    курсовая работа [1,8 M], добавлен 16.09.2015

  • Назначение и возможности разработанного приложения для контроля активности сетевых и периферийных устройств предприятия. Язык программирования Java. Распределенные многоуровневые приложения. Структура базы данных, интерфейс разработанного приложения.

    курсовая работа [1,0 M], добавлен 16.12.2012

  • Архитектура и история создания операционной системы Android. Язык программирования Java. Выбор средства для реализации Android приложения. Программная реализация Android приложения. Проведение тестирования разработанного программного обеспечения.

    курсовая работа [167,8 K], добавлен 18.01.2017

  • Трансляция как процесс перевода программного кода из текстовой формы в машинные коды. Основные категории программ Java. Основные управляющие операторы. Объявление и инициализация переменных. Основные средства разработки приложений, написанных на Java.

    презентация [938,2 K], добавлен 26.10.2013

  • Создание языка программирования с помощью приложения "Java". История названия и эмблемы Java. Обзор многообразия современных текстовых редакторов. Обработка строки. Методы в классе String. Java: задачи по обработке текста. Примеры программирования.

    курсовая работа [276,1 K], добавлен 19.07.2014

  • Методология объектно-ориентированного программирования в Java. Понятия класса, объекта и объектной переменной. Динамическая и статическая объектные модели. Логическое структурирование приложения. Наследование в Java. Отличия интерфейсов от классов.

    курс лекций [547,2 K], добавлен 01.05.2014

  • Анализ целевой аудитории. Функциональные характеристики пользовательского приложения. Разработка алгоритмов и интерфейса программного продукта, функций рабочей области. Написание скриптов на языке C#. Тестирование программы методом чёрного ящика.

    дипломная работа [1,5 M], добавлен 09.11.2016

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

    лабораторная работа [1,2 M], добавлен 01.05.2014

  • Разработка технологии и средств реализации Java-приложения, сокращающих трудоемкость создания и гибкость модификации интерфейса пользователя. Использование XML-документов для описания внешнего представления, элементов управления и событий экранных форм.

    дипломная работа [2,8 M], добавлен 19.08.2011

  • Общая характеристика командного интерфейса приложения в системе 1С: Предприятия. Особенности объектов конфигурации: справочников, документов, регистров накопления и отчетов. Разработка интерфейса приложения "Ремонт техники (от компьютера до пылесоса)".

    курсовая работа [2,8 M], добавлен 06.11.2013

  • Особенности архитектуры Java. Технология Java Database Connectivity. Кроссплатформенность Java-приложений. Преимущества языка программирования. Логическая структура базы данных. Структура программного комплекса. Верификация программных средств.

    курсовая работа [962,8 K], добавлен 13.01.2016

  • Основные принципы написания оконных приложений с графическим интерфейсом на языке Java в среде Eclipse. Управление компоновками компонентов: показ диалоговых окон, вывод графической информации. Структура приложения и размещение элементов интерфейса.

    лабораторная работа [1,1 M], добавлен 01.05.2014

  • Теоретические сведения о возможностях Microsoft.NET. Разработка Windows-приложения на платформе Microst.NET: функциональное назначение, описание логической структуры, изучение требований по установке и техническому обеспечению программного продукта.

    курсовая работа [3,8 M], добавлен 28.06.2011

  • Разработка средствами языка PHP и Фреймворка Yii системы регистрации и аутентификации пользователей на сайте. Проектирование приложения с помощью языка UML, построение диаграммы прецедентов. База данных приложения. Страница регистрации пользователей.

    отчет по практике [1,1 M], добавлен 15.09.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.