Skip to content

Latest commit

 

History

History
99 lines (79 loc) · 8.85 KB

java-programming-language.md

File metadata and controls

99 lines (79 loc) · 8.85 KB

Java Programming Language

For Beginners

  1. Tutorial https://docs.oracle.com/javase/tutorial/
  2. Video Tutorial . https://www.udemy.com/java-tutorial/
  3. Even more tutorials https://www.javacodegeeks.com/2015/01/get-your-advanced-java-programming-degree-with-these-tutorials-and-courses.html
  4. Project Ideas: http://www.dreamincode.net/forums/topic/78802-martyr2s-mega-project-ideas-list/
  5. Introduction to Computer Science https://www.edx.org/course/introduction-computer-science-harvardx-cs50x
  6. https://www.javacodegeeks.com/2015/06/java-programming-tips-best-practices-beginners.html

Links

  1. Tutorials . http://www.baeldung.com/
  2. Spring Boot https://spring.io/guides/gs/spring-boot/
  3. Gradle https://www.tutorialspoint.com/gradle/
  4. gRPC https://github.com/grpc/grpc-java/tree/master/examples/src/main/java/io/grpc/examples/helloworld
  5. Why field injection is evil http://olivergierke.de/2013/11/why-field-injection-is-evil/
  6. FileInputStream / FileOutputStream Considered Harmful https://www.cloudbees.com/blog/fileinputstream-fileoutputstream-considered-harmful
  7. https://github.com/in28minutes/java-best-practices
  8. https://github.com/cxxr/better-java
  9. https://github.com/akullpp/awesome-java
  10. http://www.javapractices.com/home/HomeAction.do
  11. so you want to throw an Exception http://normanmaurer.me/blog/2013/11/09/The-hidden-performance-costs-of-instantiating-Throwables/
  12. https://github.com/Vedenin/useful-java-links
  13. https://martinfowler.com/bliki/MonolithFirst.html
  14. https://about.sourcegraph.com/go/grpc-in-production-alan-shreve/
  15. Spring 5 http://www.baeldung.com/spring-5-functional-web
  16. http://www.baeldung.com/swagger-2-documentation-for-spring-rest-api
  17. Spring Cloud for Microservices Compared to Kubernetes https://developers.redhat.com/blog/2016/12/09/spring-cloud-for-microservices-compared-to-kubernetes/

Golang for Java Developers

  1. https://github.com/fstab/go-programming-for-java-developers
  2. https://steveperkins.com/go-for-java-programmers/
  3. https://yourbasic.org/golang/go-java-tutorial/

Testing

IntelliJ IDEA

  1. https://www.jetbrains.com/toolbox/app/
  2. https://plugins.jetbrains.com/plugin/9696-java-stream-debugger
  3. https://plugins.jetbrains.com/plugin/9354-kubernetes-and-openshift-resource-support
  4. https://plugins.jetbrains.com/plugin/4455-key-promoter
  5. https://plugins.jetbrains.com/plugin/8277-protobuf-support
  6. https://plugins.jetbrains.com/plugin/6317-lombok-plugin
  7. https://plugins.jetbrains.com/plugin/7495--ignore
  8. https://plugins.jetbrains.com/plugin/4230-bashsupport
  9. https://plugins.jetbrains.com/top-downloads/idea
  10. https://www.voxxed.com/blog/presentation/presentation-42-intellij-idea-tips-tricks-45-minutes
  11. https://www.jetbrains.com/help/idea/sharing-your-ide-settings.html

Books

  1. Core Java, Volume I and II; Horstmann
  2. OCA/OCP Java SE 7 Programmer I & II Study Guide; Sierra & Bates
  3. Effective Java; Bloch
  4. Java Concurrency in Practice; Goetz
  5. Spring Boot in Action; Walls
  6. The Software Craftsman: Professionalism, Pragmatism, Pride; Mancuso
  7. Java Performance - The Definitive Guide - Scott Oaks
  8. Design Patterns; Gang of Four
  9. Head First, Design Patterns; Sierra, Robson, Bates & Freeman
  10. Clean Code; Martin
  11. The Pragmatic Programmer; Hunt
  12. Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne
  13. Introduction to Algorithms, Cormen

Package scope, hexagonal architecture, DDD, CQRS

  1. (PL) Keep IT clean: mid-sized building blocks and hexagonal architecture

    https://www.youtube.com/watch?v=ma15iBQpmHU

  2. (ENG) Keep IT clean: mid-sized building blocks and hexagonal architecture https://www.youtube.com/watch?v=KrLFs6f2bOA

  3. Slides: https://jakubn.gitlab.io/keepitclean/#1

  4. Sample code: https://github.com/jakubnabrdalik/hentai and https://github.com/jakubnabrdalik/hentai-cloudy-rental

  5. Hexagonal http://alistair.cockburn.us/Hexagonal+architecture

  6. Anemic vs Rich Model https://dzone.com/articles/anaemic-vs-rich-domain-objects-finding-the-balance

  7. CQRS https://martinfowler.com/bliki/CQRS.html

Java inside Docker

With Java 11 should be ok now. "The Java JVM until now doesn’t didn’t provide support to understand that it~~‘s~~ was running inside a container and that it has some resources like those that are memory and CPU restricted. Because of that, you can’t couldn’t let the JVM ergonomics take the decision by itself regarding the maximum heap size."