UDEMY
UDEMY Logo

Java Programming Essentials (5-Course Bundle) 

  • Offered byUDEMY

Java Programming Essentials (5-Course Bundle)
 at 
UDEMY 
Overview

Build your first app with Java, the all-time favorite language for application development

Duration

11 hours

Total fee

3,499

Mode of learning

Online

Credential

Certificate

Java Programming Essentials (5-Course Bundle)
 at 
UDEMY 
Highlights

  • Earn a certificate of completion from Udemy
  • Learn from 1 downloadable resources
  • Get full lifetime access of the course material
  • Comes with 30 days money back guarantee
Read more
Details Icon

Java Programming Essentials (5-Course Bundle)
 at 
UDEMY 
Course details

Who should do this course?
  • This course is for anyone who wants to get ahead in Java programming
What are the course deliverables?
  • Understand programming syntax, variables, and expressions to create your algorithms
  • Use Object Oriented Programming concepts for efficient programming
  • Understand some of the fundamental concepts behind key algorithms
  • Correctly implement basic and complex data structures
  • Master graph representations and learn about different graph algorithms
  • Utilize the functional programming paradigm on practical problems in Java
  • Focus on the pros and cons of alternative Reactive frameworks, Reactor, and RxJava
  • Build efficient and elegant code with popular parallel Java frameworks, including ForkJoin and Streams
More about this course
  • Java is one of the most well-known programming languages out there, primarily due to how adaptable and perfect it is
  • This course will be your companion as you build robust and efficient applications with the latest features of Java 11
  • Next, you will be introduced to algorithms, big O notation, bubble, merge, quicksort, and other popular programming patterns
  • By the end of the course, you will know how to correctly implement common algorithms and data structures within your applications
  • This course takes a thought-leadership approach, gently introduces you to Functional Programming, and takes you all the way to becoming a master of the paradigm

Java Programming Essentials (5-Course Bundle)
 at 
UDEMY 
Curriculum

Learning Java 11

The Course Overview

Setup, Installation, and Runthrough of IntelliJ IDEA

Writing Your First Java Code

Understanding the Programming Basics

Uses of Variables and Types

Using Expressions

Working with More Expressions

IF Statements

WHILE Loops

FOR Loops

Using Switch Statements

Understanding Arrays

Understanding Methods

Exception Handling

Files Input and Output

Introduction to Classes and Objects

Enum Class

Understanding Inheritance

Understanding Abstraction

Java Interfaces

Recursive Methods

ArrayList and LinkedList

TreeSet and HashSet

HashMap and TreeMap

Multi-Dimensional Arrays

Beginning Java Data Structures and Algorithms

Course Overview

Lesson Overview

Developing Our First Algorithm

Measuring Algorithmic Complexity with Big O Notation

Identifying Algorithms with Different Complexities

Summary

Lesson Overview

Introducing Bubble Sorting

Understanding Quick Sort

Using Merge Sort

Getting Started with Fundamental Data Structures

Summary

Lesson Overview

Introducing Hash Tables Part 1

Introducing Hash Tables Part 2

Getting Started with Binary Search Trees

Traversing a Binary Search Tree

Summary

Lesson Overview

Introducing Greedy Algorithms

Getting Started with Divide and Conquer Algorithms

Understanding Dynamic Programming

Summary

Lesson Overview

Naive Search Algorithms

Getting Started with the Boyer-Moore String Searching Algorithm

Introducing Other String Matching Algorithms

Summary

Lesson Overview

Representing Graphs

Traversing a Graph

Calculating Shortest Paths

Prime Numbers in Algorithms

Other Concepts in Graphs

Summary

Hands-on Functional Programming with Java

The Course Overview

What Is Functional Programming?

Implementing Anonymous Classes (Example A)

Lambda Expression (Lambda Version of Example A)

Differentiating Interfaces versus Functional Interfaces

Implementing the Syntax of Lambda Expressions

Replacing Anonymous Classes

Using Method References

Best Practices for Using Lambda Expressions

Introduction to the Collections Framework

Implementing the Set Interface Using HashSet and LinkedHashSet

Implementation of the SortedSet Interface

Deploying the List Interface

Working with the Queue Interface

Introduction and Implementations of Maps

Understanding the Stream API and Constructing Streams

Intermediate Stream Operations

Terminal Stream Operations and the Optional Class

Implementing Stream Operations in Examples

Operations on Collections and Creating Collections Using Collectors

Hands-on Collection Sorting Using Streams

Advanced Filtering and Mapping Using Streams

Using Reduce for Advanced Transformations

Implementing flatMap in Examples

Advanced Grouping of Objects Using Streams

Advanced Joining and Partitioning of Objects Using Streams

Benefits of Concurrent Streams and Concurrency in General

Implementing Parallel Streams

Parallel Stream Operations

Comparing Sequential to Parallel Streams

Hands-on reactive programming with java 12

The Course overview

Flow: The Main Entry Point of Every Reactive App

Subscriber versus Publisher: When to Use Which

Hot Publisher: Why It Is Hard to Take Control Over It

Cold Publisher: Pairing with Back Pressure

Consuming Messages: Creating a Subscriber

Using Publisher to Emit Stock Events

Testing Stock Reactive Flow

Handling Errors in Subscriber

Flow.Processor API for the Skeleton of Transformation

Using SubmissionPublisher for Proxying Event to Another Publisher in the Chain

Plugging the TransformProcessor for Transformation Logic

Testing Stock Transformation Logic

Leveraging Subscription Object for Controlling the Number of Fetched Stocks

Controlling the Speed of Consumer with AtomicInteger

Creating Overproducing Publisher

Testing Backpressure in Stock Exchange Application

RxJava ? Observables Abstractions

RxJava ? Advanced Operations ? flatMap

Reactor ? Flux

Reactor ? Combining Publishers

Reactive Spring Boot

Creating Reactive Data Access Layer

Creating Reactive Controller

Testing Reactive Microservices

Java Concurrency and Multithreading in Practice

The Course Overview

Executing Tasks in Parallel with ForkJoinPool

Joining the Results of the Tasks

RecursiveAction and RecursiveTask

Exception Handling and Cancelling a Task

Callable and Future

Thread and Thread Pool

CompletableFuture

Sequential Streams

Parallel Streams

Overview: Publishers, Subscribers, and Subscriptions

Subscriber: Consuming Messages

Publisher and SubmissionPublisher: Providing Messages

Processor: Transforming Messages

Threads: Thread Lifecycle

Structured Locks (The "synchronized" Keyword)

Working with Locks

Object#wait(), notify(), and the New onSpinWait()

Possible Problems: Data Races, Deadlock, Livelock, and Resource Starvation

Atomic Types and the Compare-and-Set Approach

Concurrent Collections: ConcurrentHashMap, ConcurrentLinkedQueue

Blocking Queues

Copy-on-Write Collections

Wrap Up and Next Steps

Java Programming Essentials (5-Course Bundle)
 at 
UDEMY 
Entry Requirements

Eligibility criteriaUp Arrow Icon
Conditional OfferUp Arrow Icon
  • Not mentioned

Other courses offered by UDEMY

549
50 hours
– / –
3 K
10 hours
– / –
549
4 hours
– / –
599
10 hours
– / –
View Other 2346 CoursesRight Arrow Icon
qna

Java Programming Essentials (5-Course Bundle)
 at 
UDEMY 

Student Forum

chatAnything you would want to ask experts?
Write here...