Client-Server Web Apps with JavaScript and Java

Client-Server Web Apps with JavaScript and Java

Casimir Saternos

Language: English

Pages: 260

ISBN: 1449369332

Format: PDF / Kindle (mobi) / ePub

As a Java programmer, how can you tackle the disruptive client-server approach to web development? With this comprehensive guide, you’ll learn how today’s client-side technologies and web APIs work with various Java tools. Author Casimir Saternos provides the big picture of client-server development, and then takes you through many practical client-server architectures. You’ll work with hands-on projects in several chapters to get a feel for the topics discussed.

User habits, technologies, and development methods have drastically altered web app design in recent years. But the Web itself hasn’t changed. This book shows you how to build apps that conform to the web’s underlying architecture.

  • Learn the advantages of using separate client and server tiers, including code organization and speedy prototyping
  • Explore the major tools, frameworks, and starter projects used in JavaScript development
  • Dive into web API design and REST style of software architecture
  • Understand Java’s alternatives to traditional packaging methods and application server deployment
  • Build projects with lightweight servers, using jQuery with Jython, and Sinatra with Angular
  • Create client-server web apps with traditional Java web application servers and libraries

















rather than a single page. The focus in these terms is on the page, the client portion of an application. They make no specific statement about corresponding server-side devel‐ opment. There are JavaScript frameworks that are also associated with highly dynamic pages (such as Angular, Ember, and Backbone), but these are also concerned with the xi client tier. I wanted the title of this book to encompass more than front-end innovations and to recognize the corresponding

JavaScript MV* frameworks, you will want to review and possibly start with whatever project the community has produced and actively supports. Table 5-2 lists starter projects for several popular frameworks. Table 5-2. Starter projects for JavaScript MVC Frameworks Framework Starter project Backbone Backbone Boilerplate Angular Angular Seed Ember Ember Starter Kit Each of these frameworks is rather extensive and an exhaustive overview is not possible here. O’Reilly’s books on Angular and

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi 1. Change Begets Change. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Web Users Technology Software Development What Has Not Changed The Nature of the Web Server-Driven Web Development Considered Harmful Why Client-Server Web Applications? Code Organization/Software Architecture Flexibility of Design/Use of Open Source APIs

com‐ mand line. You can redirect the output to a file and open it with an editor that supports JSON formatting. There are also special pur‐ pose utilites (like jq) that can format JSON data piped to it. If you have Python installed, formatting is as simple as: curl http://localhost:8080/bookshop/books | python -mjson.tool With the web API in place, standard HTML pages can be created and used in place of (or in addition to) the jspx page created through the Roo scaffolding command. Create a file

area where an architect steers project direction. The power and constraints available to individual programmers throughout development of a project are influenced heavily by these decisions. Technologies and their associated workflows were created with a variety of values in mind. Productivity will inevitably be impacted this selection. In Software Tools (Addison-Wesley Professional, 1976), Brian Kernighan famously said, “Controlling complexity is the essence of computer programming.” The range

Download sample