DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
  1. DZone
  2. Software Design and Architecture
  3. Microservices
  4. Book Review: Full Stack Development With JHipster

Book Review: Full Stack Development With JHipster

This book takes you through the use of the JHipster development platform, from the domain language to the cloud, continuous integration, and deployment.

Carlos Rendon user avatar by
Carlos Rendon
·
Aug. 08, 18 · Review
Like (3)
Save
Tweet
Share
6.96K Views

Join the DZone community and get the full member experience.

Join For Free

Introduction

The world has had microservices madness for quite a while now. If you were put into a time capsule in 2010, at the height of Java EE, and suddenly woke up in 2018, you would probably feel overwhelmed by how the software architecture landscape has changed.

Everything nowadays is about microservice-style development and operations (DevOps — fun fact, the word was coined one year before you were placed in your capsule). Many mission-critical applications run "in the cloud" and bear no resemblance to the good old days of the monoliths and huge monsters you used to build. Now there are terms like containers, orchestration, and "Eventual Consistency." The world is a very different place indeed.

Enter JHipster. It is a development platform. It is many things, among them a Yeoman Code Generator. It is a "way of thinking" that takes Spring Boot's motto of "convention over configuration." It is a wizard-style console set of tools that, once you provide answers to some basic questions, proceeds to generate the scaffolding of your application, ready for you to focus on what matters most: your secret sauce, your business logic, your data model.

Even though JHipster is going to generate code for you, it doesn't force you into the world of microservices; you can start with a monolithic approach and then start slicing and dicing into a microservice if you so choose.

If the last two paragraphs did not fully paint the picture as to what JHipster is or what it can do for you, that's why this book is needed. JHipster comes with the potential of saving you a lot of time; but like every fancy tool, it requires an understanding of what the tool is capable as well as having some basic concepts.

Book Review

The two authors are leaders in the JHipster community. Deepu Sasidharan is a co-lead of JHipster, he was part of the initial team. Sendil Kumar is a core contributor and an open source enthusiast.

The authors begin with an introduction to modern web application development, with a quick refresher of terms, such as frontend and backend then promptly moving to architectural patterns and empowering you to choose which pattern is best for your app. Believe it or not, the authors don't have an agenda. They are not monolith haters. As a matter of fact, the first part of the book is them explaining how JHipster can help you (expedite) your journey toward that pattern in your app.

Right after, you're moved into a crash course of the different technologies available for you to choose to use on your web app; some names include Bootstrap, Angular, React, testing tools such as Karma. Then you move to the backend with Spring, Hibernate, etc. The idea here is mainly for you to have a very basic idea of what each technology (framework) means and is capable of doing.

Then you move to the different database options, divided into SQL based and non-SQL. This is particularly useful for you if you have been confined to SQL only.

After this, you're ready to get your hands dirty and start wielding the power of JHipster. Your first assignment is to create a monolithic application. You're guided through the wizard-style navigation of the JHipster console.

JHipster Domain Language

Now you're ready to start using some of the more powerful aspects of JHipster. Specifically, the JHipster Domain Language (JDL) is a powerful tool for generating and maintaining the code that represents your data model and the relationship between entities. The generator takes care of DTOs on the back and frontend. Then you step it up a notch with JDL studio, an online IDE that makes the process even easier.

Testing, Continuous Integration

Now is time to plug in your application into the world of Continuous Integration. You'll explore JHipster's ability to feed onto Jenkins and other tools alike.

To the Cloud and Beyond

Now it's time to start thinking on slicing that monolith of yours and transition onto a more distributed approach based on microservices. You start with Docker, the Docker hub. Then you learn that JHipster can also help you with the final stage of your cycle: deployment. It can help you deploy to AWS, Cloud Foundry, Heroku, etc. 

Lastly, you will get more into the weeds of running a microservice environment, you'll learn about how JHipster can help with orchestration, service discovery, health tracking. This part gets very detailed, which is good because the microservice landscape is wide. This is another tour de force in terms of the number of new technologies to which you'll be exposed. Don't worry you don't linger too long at each; the idea is just to have a broad picture of how the landscape looks. Then you can hone down particular spots of the landscape you want to explore.

Conclusion

The tour ends with a section on best practices as well as next steps. Throughout your journey, the book remains relevant and its cadence is enjoyable. At the end you'll feel like you are caught up, at least to get started after your time capsule journey; all those years from 2010 to 2018. You're up to date, or at least have a very good pulse of how things changed.

JHipster Book microservice application Continuous Integration/Deployment Open source app Software architecture Docker (software) Landscape (software)

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Taming Cloud Costs With Infracost
  • Deploying Java Serverless Functions as AWS Lambda
  • Using AI and Machine Learning To Create Software
  • Easy Smart Contract Debugging With Truffle’s Console.log

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends: