A joint project of the Graduate School, Peabody College, and the Jean & Alexander Heard Library

Title page for ETD etd-07022015-215440


Type of Document Master's Thesis
Author Smith, Nolan Michael
Author's Email Address nolan.m.smith@vanderbilt.edu
URN etd-07022015-215440
Title Java 8: Completable Futures and Asynchronous Pipelines
Degree Master of Science
Department Computer Science
Advisory Committee
Advisor Name Title
Douglas Schmidt Committee Chair
Jules White Committee Member
Keywords
  • Java 8
  • Asynchronous Progamming
  • Interface Design
Date of Defense 1995-01-01
Availability unrestricted
Abstract
As the meteoric rise of publicly available web service APIs enables access to increasing amounts of useful data via network requests, and network requests are best handled asynchronously, asynchronous and concurrent programming in applications is becoming commonplace. However, current solutions use abstractions that, when performing pipelines of asynchronous operations, lead to poorly architected interfaces in code. The goal of this project is to discuss new abstractions intended to alleviate the pitfalls involved in asynchronous programming and present an example of sound interface design in an asynchronous Java 8 client-server application environment. The application uses Java 8 to construct a dependent network of computations that invoke publicly available web services to plan an eventful weekend at a destination city.

Given a budget and a destination city, the application retrieves flights, tickets to events, and fun public places to visit. Most importantly, the application emphasizes asynchronous interfaces that enable code to be modularized, easily read, and to minimize the latency felt by the user.

Files
  Filename       Size       Approximate Download Time (Hours:Minutes:Seconds) 
 
 28.8 Modem   56K Modem   ISDN (64 Kb)   ISDN (128 Kb)   Higher-speed Access 
  NolanSmith.pdf 68.70 Kb 00:00:19 00:00:09 00:00:08 00:00:04 < 00:00:01

Browse All Available ETDs by ( Author | Department )

If you have more questions or technical problems, please Contact LITS.