Be a Java professional. Let's implement a database server.
4.5 (10 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
157 students enrolled

Be a Java professional. Let's implement a database server.

Learn Java. Gain routine in implementation, creation and handling of complex projects
4.5 (10 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
157 students enrolled
Created by Ferenc Tollas
Last updated 1/2020
English
English [Auto-generated]
Current price: $12.99 Original price: $19.99 Discount: 35% off
16 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 16 hours on-demand video
  • 4 articles
  • 7 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • At the end of the course, students will learn Java language better and will have a great experience in implementing, handling complex projects, create and monitor applications regarding memory and CPU usage and they gain an important ability: gain routine in implementation, creation and handling complex projects.
  • Be a professional Java developer
Requirements
  • Junior Java knowledge
Description

Hi, 

welcome to my training. This training will be an interesting journey, in which we will develop a database server together, which can store data by schema, can index the data and of course we can run different searches in database. We will perform many refactoring as the we add more and more features to the server (unit tests helps in refactoring) and our architecture will be more and more mature.


We will code, debug and figure out some solutions together, so I hope this will be an interesting journey for you too.

Why is this training material useful? If you know the Java language basics, if you can create projects with an IDE, then as Junior java programmer it is always good to participate in a bigger project,  create a complex project with help. This training will help improving your programming skill, you will learn Java language better.


What we will do together?


- we will start with basic file operations

- develop a server which can store only a person related data

- refactor the server to be a generic one

- write test application for server, 

- use a web server to open the server’s API via rest

- create a multi threaded client for stress testing the server

- check the code coverage, we try to achieve better coverage

At the end the Database project will provide many possibilities to make the server even better, so after the training you can still work/exercise with the help of the project.

I’m going to add more and more chapters to the training, I will develop further the database, so you can continuously check the training material for new chapters. 

At the end of the course, students will have a great experience in handling complex projects, create and monitor applications regarding memory and CPU usage and they gain an important ability:  routine in creation and handling complex projects.


Who this course is for:
  • Junior and Intermediate Java developers, who would like to enrich their Java knowledge
  • Junior developers who want to learn Java language and gain experience in creating and handling complex projects
Course content
Expand all 143 lectures 16:00:24
+ Basic file handling
8 lectures 35:22
Short explanation about why we use RandomAccessFile
01:17
Create project and implement FileHandler
02:35
Implement add method
09:53
Create test application
03:38
Implement read method
09:44
Create test for read function
03:42
What we have learned in this section
00:57
+ Implement Index component
9 lectures 38:06
ArrayList or LinkedList? Short explanation.
00:56
Index implementation
05:16
Use Index component in database server
06:11
Load database content to index
05:26
Create DBServer component
12:50
Bug fix in Indexer
05:27
What we have learned in this section
00:41
Rate the course
00:16
+ Unit tests, implement delete method
5 lectures 18:31
Implement delete method
05:32
Refactor, unit tests
05:30
More unit tests
05:20
Add debug messages
01:46
What we have learned in this section
00:23
+ Add update features
9 lectures 01:15:06
Implement update by row
14:48
Implement update by name
04:51
Implement index load
12:02
Implementation part 2
09:37
Add debug information.Part 1
26:30
Add debug information. Part 2
02:19
Add unit tests for update
04:05
What we have learned in this section
00:38
Rate the course
00:16
+ Implement searches
9 lectures 53:39
Simple search
12:26
Implement Leveinshtein algorithm
08:34
Implement search with Leveinshtein algorithm
16:03
Search with regular expression
05:13
Add unit tests
01:34
Run code inspection
04:11
What we have learned in this section
00:51
Rate the course
00:16
+ Defragmentation
10 lectures 48:45
Theory
01:27
Create code which fragments database
05:07
Implement defragmentation. Part 1
16:42
Implement defragmentation. Part 2
04:31
Implement defragmentation. Part 3
04:32
Java logging in nutshell
01:07
Add logging
12:45
Run code inspection
01:32
What we have learned in this section
00:46
Rate the course
00:16
+ Add multithreading
4 lectures 27:13
Java threads in nutshell
01:01
Implement test application for multithreading
06:02
Implement multithreading in database. Part 1
15:23
Implement multithreading in database. Part 2
04:47