Curated list of frequently used terms every Java developer needs to memorize
Last modified: 16 Oct, 2021
Below are few frequently used or referred terms that every Java developer comes across in Lexicographical order. This is a quick one-stop reference guide created for myself or for others who wish to brush up on these !!
A
Agile Development
Agile is an iterative approach to project management and software development that helps teams deliver value to their customers faster and with fewer headaches.
Scrum is a framework that helps teams work together. Much like a rugby team (where it gets its name) training for the big game, scrum encourages teams to learn through experiences, self-organize while working on a problem, and reflect on their wins and losses to continuously improve.
A sprint is a short, time-boxed period when a scrum team works to complete a set amount of work. Sprints are at the very heart of scrum and agile methodologies, and getting sprints right will help your agile team ship better software with fewer headaches
Below are the four scrum ceremonies that occur in each sprint.
- Spring Planning
- Daily Scrum
- Sprint Review
- Sprint Retrospective
Aspect Oriented Programming (AOP)
B
Bill Of Materials (BOM)
C
Cloud Native
The term cloud native refers to the concept of building and running applications to take advantage of the distributed computing offered by the cloud delivery model. Cloud native apps are designed and built to exploit the scale, elasticity, resiliency, and flexibility the cloud provides.
Container
A container is a software package that contains everything the software needs to run. This includes the executable program as well as system tools, libraries, and settings
Continuous integration (CI)
A software engineering practice in which frequent, isolated changes are immediately tested and reported on when they are added to a larger code base.
Continuous Delivery (CD)
A software engineering approach in which continuous integration, automated testing, and automated deployment capabilities allow software to be developed and deployed rapidly, reliably, and repeatedly with minimal human intervention.
Cross-Origin Resource Sharing (CORS)
D
Distributed Tracing
Distributed System
Domain-Driven Design
Dependency Injection
DevOps
DevOps is about removing the barriers between traditionally siloed teams, development and operations. Under a DevOps model, development and operations teams work together across the entire software application life cycle, from development and test through deployment to operations
E
F
Fault isolation
Fault Tolerant
G
H
I
Inversion of Control
Infrastructure as Code (IaC)
J
K
L
M
Monolithic
Microservices
N
O
Object Oriented Programming
Object Oriented programming (OOP) is a programming paradigm that relies on the concept of classes and objects. It is used to structure a software program into simple, reusable pieces of code blueprints (usually called classes), which are used to create individual instances of objects.