How to train Java programmers It was originally a training note prepared for newcomers in the foreign exchange IT department of Deutsche Bank. The book is divided into four parts. The first part comprehensively introduces the new features of Java 7. The second part explores key Java programming knowledge and technologies. The third part discusses new languages and multi-language programming on the JVM. The fourth part covers platform and multi-language programming. Knowledge put into practice. Starting from the introduction of the new features of Java 7, Java programmers' training covers the most important technologies in Java development, such as dependency injection, test-driven development and continuous integration, explores non-Java languages on the JVM, and explains in detail Multilingual projects, especially those involving the Groovy, Scala and Clojure languages. In addition, the book contains a large number of code examples to help readers understand the Java language and platform from practice.
How to practice as a Java programmer Table of Contents:
Part One Developing with Java 7
Chapter 1 First introduction to Java 7
1.1 Language and Platform
1.2 Coin project: everything is concentrated
1.3 Modifications in the Coin project
1.4 Summary
Chapter 2 New I/O
2.1 A brief history of Java I/O
2.2 The cornerstone of file I/O: Path
2.3 Processing directories and directory trees
2.4 NIO.2 file system I/O
2.5 Asynchronous I/O operations
2.6 Integration of Socket and Channel
2.7 Summary
Part 2 Key Technologies
Chapter 3 Dependency Injection
3.1 Knowledge injection: understanding IoC and DI
3.2 Standardized DI in Java
3.3 DI reference implementation in Java: Guice 3
3.4 Summary
Chapter 4 Modern Concurrency
4.1 Introduction to Concurrency Theory
4.2 Block Structure Concurrency (Before Java 5)
4.3 Building blocks of modern concurrent applications
4.4 Control Execution
4.5 Branch/Merge Framework
4.6 Java Memory Model
4.7 Summary
Chapter 5 Class Files and Bytecode
5.1 Class loading and class objects
5.2 Using method handles
5.3 Check class files
5.4 Bytecode
5.5 invokedynamic
5.6 Summary
Chapter 6 Understanding Performance Tuning
6.1 Performance terminology
6.2 Pragmatic performance analysis method
6.3 What went wrong? Why we worry
6.4 A timing problem from hardware
6.5 Garbage Collection
6.6 JIT compilation of HotSpot
6.7 Summary
Part 3 Multi-language programming on JVM
Chapter 7 Alternative JVM Languages
7.1 Is Java too stupid? Pure slander
7.2 Language Ecology
7.3 Multi-language programming on JVM
7.4 How to choose a good non-Java language
7.5 JVM support for alternative languages
7.6 Summary
Chapter 8 Groovy: Java’s Dynamic Companion
8.1 Getting started with Groovy
8.2 Groovy 101: Syntax and Semantics
8.3 Differences from Java--Newbie Trap
8.4 Groovy features that Java does not have
8.5 Cooperation between Groovy and Java
8.6 Summary
Chapter 9 Scala: Simple but not simple
9.1 A quick tour of Scala
9.2 Can Scala be used in my project
9.3 Let the code bloom again with Scala
9.4 Scala Object Model: Similar but Different
9.5 Data structures and collections
9.6 Introduction to actors
9.7 Summary
Chapter 10 Clojure: Programming Safer
10.1 Introduction to Clojure
10.2 Finding Clojure: Syntax and Semantics
10.3 Using functions and loops
10.4 Clojure Sequences
10.5 Interoperability between Clojure and Java
10.6 Clojure Concurrency
10.7 Summary
Part 4 Multilingual Project Development
Chapter 11 Test Driven Development
11.1 Overview of TDD
11.2 Test avatars
11.3 ScalaTest
11.4 Summary
Chapter 12 Build and Continuous Integration
12.1 Meet Maven 3
12.2 Maven 3 Getting Started Project
12.3 Build Java7developer project with Maven 3
12.4 Jenkins: Meeting CI needs
12.5 Maven and Jenkins code metrics
12.6 Leiningen
12.7 Summary
Chapter 13 Rapid Web Development
13.1 Problems with Java Web Framework
13.2 Criteria for selecting a web framework
13.3 Getting started with Grails
13.4 Grails Quick Start Project
13.5 Dive into Grails
13.6 Getting Started with Compojure
13.7 Am I an otter
13.8 Summary
Chapter 14 Stay Excellent
14.1 Expectations for Java 8
14.2 Multi-language programming
14.3 Future concurrency trends
14.4 New directions for JVM
14.5 Summary
Appendix A java7developer: Source code installation
Appendix B glob pattern syntax and examples
Appendix C Installing alternative JVM languages
Appendix D Download and Installation of Jenkins
Appendix E java7developer: Maven POM
All resources on this website are contributed and published by netizens, or reprinted by major download sites. Please check the integrity of the software yourself! All resources on this website are for learning and reference only. Please do not use them for commercial purposes, otherwise you will be responsible for all consequences incurred! If there is any infringement, please contact us to delete and remove it. Contact information: admin@php.cn