Check out this 8-step guide to see how you can increase your productivity by skipping slow application redeploys and by implementing application profiling, as you code! Brought to you in partnership with ZeroTurnaround.
You can do it. Write Better Code.
It's hard, but there are tools, techniques, and tool kits to help.
I love Scala, Case Classes (okay the 22 field thing is an issue, especially when I want to model Twitter JSON) and val. That alone made it so much cleaner to write then Java. Write Scala code. Think Functionally. Use what you learn and like in Scala in Java.
Say you are at a large enterprise, they can't get off Java that easy. Hundreds of Java developers can't all be functional programmers writing Scala.
You can make Java 8 really strong.
Follow the Right Guidelines (12 Factor Apps, Reactive Programming, SOLID, TDD, AntiFragile, microservices)
Use the Right Infrastructure (Containers/Docker, CloudFoundry/PaaS, Mesos, YARN, NoSQL, Hadoop, Geode, Redis)
Use the Right Frameworks (Lagom, Spring Boot, Play, DropWizard, JHipster)
Use the Right Tools (IntelliJ, Gradle, SBT). Never create a singleton, toString method or JavaBean set/get from scratch.
Use the Right Libraries and Accelerators (Immutables, Google Auto, Cyclops-React, RetroFit, Spring Cloud Netflix, Guava, Project Lombok, Project Reactor, Chronicle Maps, LMAX Disruptor, Vertx)
Use the Functional Force (Java 8 Lambdas, Javaslang)
Use Java 8 for Big Data (Spark, Flink, Kakfa, Akka)
Use Java for Non-JEE Internal Apps (IoT, Android, Big Data, Deep Learning)
Remember, a few companies might still be using a little Java: Google, AOL, ebay, Square,... You may find a few repositories for Java here.
Oh and unlike, say, Perl, Java isn't afraid to do some serious upgrades and changes like adding cool things from other languages and just fixing stuff.
The Java Zone is brought to you in partnership with ZeroTurnaround. Check out this 8-step guide to see how you can increase your productivity by skipping slow application redeploys and by implementing application profiling, as you code!
,java 8 functional programming