Java course Archives - SoftUni Global https://softuni.org/tag/java-course/ Learn Programming and Start a Developer Job Fri, 16 Dec 2022 13:26:06 +0000 en-US hourly 1 https://wordpress.org/?v=6.1.3 https://softuni.org/wp-content/uploads/2022/04/cropped-SoftUni-Global-Logo-Square-notext-32x32.png Java course Archives - SoftUni Global https://softuni.org/tag/java-course/ 32 32 Object-Relational Mapping (ORM) [Dev Concepts #19.2] https://softuni.org/dev-concepts/object-relational-mapping-orm/ https://softuni.org/dev-concepts/object-relational-mapping-orm/#respond Mon, 13 Dec 2021 09:21:00 +0000 https://softuni.org/?p=9218 In this short video, we will get familiar with the Object-Relational Mapping concept

The post Object-Relational Mapping (ORM) [Dev Concepts #19.2] appeared first on SoftUni Global.

]]>

In this lesson, you will become familiar with the Object-Relational Mapping technologies or the so-called ORMs. As a relative newcomer to programming, terms like ORMs can sound intimidating. The nice part about them is that they allow us to write code easier once we understand them.

Object-Relational Mapping technology is the idea of writing queries using your favorite programming language. We interact with a database using our language of choice instead of SQL.

Let’s say that we have an application. An ORM will convert the result of a database query into a class within our application. The selected columns will map to the class properties. On the other hand, if you push data towards the database, an ORM will map the properties of a class into columns of a table. When people say ORM, they refer to a framework that implements this technique. Here are some of the most frequently used ORM frameworksEntity Framework, Hibernate, Sequelize, and SQLAlchemy.

Lesson Topics

In this video we review the following topics:
  • ORM Technologies
  • Overview Live Demo – ToDo List

Lesson Slides

The post Object-Relational Mapping (ORM) [Dev Concepts #19.2] appeared first on SoftUni Global.

]]>
https://softuni.org/dev-concepts/object-relational-mapping-orm/feed/ 0
Databases: Mini Overview [Dev Concepts #19.1] https://softuni.org/dev-concepts/databases-mini-overview-19-1/ https://softuni.org/dev-concepts/databases-mini-overview-19-1/#respond Mon, 13 Dec 2021 05:30:00 +0000 https://softuni.org/?p=9264 In this lesson of the series Dev Concepts, we take a look at Databases!

The post Databases: Mini Overview [Dev Concepts #19.1] appeared first on SoftUni Global.

]]>

In this episode, Svetlin Nakov will explain to you what databases are.  That probably is not news to you, but the world creates a lot of data nowadays. By 2030, more than 465 exabytes of data will be created each day globally. That statistic is proof that handling data becomes essential, and that is where Databases come into the picture.

A database is a place for storing our data but in an organized structure.  Data is organized and stored in the form of tables. A table contains rows and columns. Each row in a table is a record, and column a field that describes the row.  For example, In a customer table, each row is a unique person, and fields like name and address describe this specific customer.

We usually say that our database is MySQL, MongoDB, SQLite, MS SQL Server, etc. That is wrong! They are not databases, but database management systems(DBMS)

The DBMS is the software that you install on your personal computer or a server, and then you would use it to manage a database. Modern software systems use a DBMS system to manage data instead of implementing the data management internally.

One of the most important DBMS are: 

  • Relational Database Management Systems (RDMS)
  • NoSQL Database Systems

Today’s demo will be done with RDMSystem. They consider the relationship between the tables by using primary keys and foreign keys. Thus, it offers an advantage over other DBMS by fetching and storing the data. It is used in enterprises for storing large amounts of data.

Examples of RDBMS are:

  • Microsoft SQL Server
  • SQLite

The next type of DBMS  is NoSQL. Non-relational databases do not store data in tables. Instead, there are multiple ways to store data in NoSQL databases, such as Key-value, Document-based, and Column-based. Each record does not have to be in the same structure as other records. Due to this, to add additional data, you can add more records without changing the structure of the entire database. Although there are many perks to NoSQL databases, SQL databases are still more commonly used at this point.

Database systems are a necessary component of most modern software systems, and software engineers must have at least basic database skills.

If you are new to programming, make sure to watch our Free Full Java Basics course! It will give you the necessary foundation to build upon and become a successful software engineer!

Lesson Topics

In this video we review the following topics:

  • Databases
    • DBMS
    • Relational Databases
    • NoSQL Databases
  • Web SQL – Example

Remember that coding is a skill, which should be practiced. To learn to code, you should write code, every day, for a long time. Watching tutorials is not enough. You should code! 

We would love to hear from you, so leave a comment below saying what topics you would like to see next. 

Lesson Slides

The post Databases: Mini Overview [Dev Concepts #19.1] appeared first on SoftUni Global.

]]>
https://softuni.org/dev-concepts/databases-mini-overview-19-1/feed/ 0
[12/13] Java Foundations Certification: Java API Classes https://softuni.org/code-lessons/java-foundations-certification-java-api-classes/ https://softuni.org/code-lessons/java-foundations-certification-java-api-classes/#respond Thu, 09 Dec 2021 17:02:13 +0000 https://softuni.org/?p=9189 Build a strong foundation of knowledge in Java programming! Prepare for your “Java Foundations” official exam by learning some of the most commonly used Java API Classes.

The post [12/13] Java Foundations Certification: Java API Classes appeared first on SoftUni Global.

]]>

In the current lesson, we take a closer look at the most frequently used Java API classes. Svetlin Nakov will explain all about the Math class, how to generate random numbers, the need for BigInteger and BigDecimal in programming, and how to work with date and time in Java. We will also look at two of the main Java classesArrays and Formatter.

The Math class contains methods for performing basic numeric operations, such as round, min, max, abs, ceil, etc.. The Arrays class contains various methods which facilitate array manipulation. String.format() allows us to return the formatted string by given locale, format, and arguments.

In this lesson you will find many helpful examples and exercises, so make sure to practice what you’ve learned! That’s the only way to grasp the concept at hand.

BigInteger and BigDecimal are used for handling large and small numbers with great precision. BigInteger will throw an exception when the result is out of range. BigDecimal gives the user complete control over the rounding behavior. 

Importing a single package allows us to work with the date and time API.
In this lesson you will find many helpful examples and exercises, so make sure to practice what you’ve learned! 

As always, we advise you to pause the video right before the solving part of each problem and try to do the exercises on your own first. Then, if you have difficulties, just watch the provided solutions in the video. If you still have questions, we’re always here to help! 

*The exercise descriptions are to be found in the PDF document at the end of this post.

Lesson Topics

This video covers the following topics:

1. The Judge System

  • The Exception class 
  • Types of exceptions and their hierarchy

2. The Math Class

3. The Random Class

4. The Arrays Class

  • Methods of the Arrays Class 
  • Example of Sorting an Array 

5. String Formatter

6. BigInteger and BigDecimal

7. Java Date and Time

 

Practical Exercises

Watch the video and solve the problemsTo better understand the material, do the coding exercises and implement the knowledge you acquired. Writing code is the only way to master the skill of code.

Submit your code in the SoftUni Judge System:

Exercises: Problem Description

Lesson Slides

The post [12/13] Java Foundations Certification: Java API Classes appeared first on SoftUni Global.

]]>
https://softuni.org/code-lessons/java-foundations-certification-java-api-classes/feed/ 0
React Native: Short Overview [Dev Concepts #18] https://softuni.org/dev-concepts/react-native-short-overview/ https://softuni.org/dev-concepts/react-native-short-overview/#respond Wed, 08 Dec 2021 09:21:42 +0000 https://softuni.org/?p=9154 Upgrade your knowledge of React with this React Native Dev Concepts lesson!

The post React Native: Short Overview [Dev Concepts #18] appeared first on SoftUni Global.

]]>

In this episode, we’ll focus on modern mobile app development, while using React Native

In the previous episode, we reviewed “React“ which is the number one web framework for 2021. Today we will be focusing on modern mobile app development technologies and React Native. 

The lesson includes a small demo React Native mobile app, which defines a JSX component and renders it in the Web browser. 

For front-end and client-side app development, mobile apps are important. To build our mobile application we need to combine development principles, concepts, platforms, technologies, frameworks, libraries, and tools. In this lesson, we will be reviewing the two major mobile app platforms that dominate the markets.

 

They are Android and ioS. Each one of them has its perks: 

  • Android devices are less expensive compared to iOS devices. They also provide more freedom and options for developers. 
  • iOS devices are slightly less popular, despite their high price. This market is more profitable because most apps follow a paid model. 

Mobile app development technologies are split into several categories: Android, iOS, and Hybrid. We have talked about the first two, but what are Hybrid technologies? They are based on JavaScript and HTML5 using an embedded Web browser. There are more mobile app dev technologies, but those are the well-known ones we will be talking about. 

Lesson Topics

In this video we review the following topics:
  • Mobile App Technologies 
  • Overview Live Demo – Summator

Lesson Slides

The post React Native: Short Overview [Dev Concepts #18] appeared first on SoftUni Global.

]]>
https://softuni.org/dev-concepts/react-native-short-overview/feed/ 0
React: Short Overview [Dev Concepts #17] https://softuni.org/dev-concepts/react-short-overview/ https://softuni.org/dev-concepts/react-short-overview/#respond Tue, 07 Dec 2021 09:29:25 +0000 https://softuni.org/?p=9127 In this lesson of the series Dev Concepts we take a look at React!

The post React: Short Overview [Dev Concepts #17] appeared first on SoftUni Global.

]]>

In the current lesson, we will review a highly popular JavaScript UI library, called “React“. In short, React.JS is a component-based front-end technology for the Web. The JSX components in React combine HTML and JavaScript to display the component UI, which is bound to the internal component state.

The lesson includes a small demo React app, which defines a JSX component and renders it in the Web browser.

Later in the lesson, you will find a slightly more complicated demo: how to create a simple React calculator, which sums two numbers. We will review each of the files inside the sample React app to understand better how it works internally.

So, what is React?

When we talk about user interface and front-end frameworks, it is worth mentioning React.

  • React is a powerful JavaScript library from Facebook for building Web user interfaces using HTML, CSS, and JavaScript. The UI is built from JSX components, which combine HTML + JavaScript using a built-in templating engine.
  • React is а component-based UI library.
  • With React, developers create reusable UI componentswhich have a lifecycle, internal state and behavior.

It is discussable whether React is a library or a frameworkIt is maybe somewhere in between.

By adding some additional components like React Router, MobX, Redux, Flux, React Toolbox, and some others, we can turn to React into a fully-functional Web front-end framework.

Lesson Topics

In this video we review the following topics:
  • React – Overview
  • Live Demo – Summator

Lesson Slides

The post React: Short Overview [Dev Concepts #17] appeared first on SoftUni Global.

]]>
https://softuni.org/dev-concepts/react-short-overview/feed/ 0
Desktop App with Windows Forms [Dev Concepts #16] https://softuni.org/dev-concepts/desktop-app-with-windows-forms/ https://softuni.org/dev-concepts/desktop-app-with-windows-forms/#respond Mon, 06 Dec 2021 12:37:25 +0000 https://softuni.org/?p=9097 Create a simple calculator with Windows Forms! Watch our new Dev Lesson to find out how.

The post Desktop App with Windows Forms [Dev Concepts #16] appeared first on SoftUni Global.

]]>

In this episode, you’ll learn how to create a desktop application using Windows Forms and C#.  
We will take a closer look at how GUI frameworks work with a live code example.

In programming, GUI means “graphical user interface“, which is a system to interact visually with the users through UI controls, such as forms, buttons, text boxes, and others.
In this session, we will show you a sample desktop app based on the Windows Forms GUI framework. We will build a simple calculator, which sums two numbers.

We will get familiar with the structure and the front-end part of the app: the main form, holding the UI controls. We will look at how the app is built, by extending a class from the UI framework, from a composition of components, and how event handlers are called from the framework to respond to user interactions.

The demo code is designed to run in a Windows environment, using Visual Studio and the .NET Framework. It can’t run on Mac or Linux. Sorry, this is a limitation of the Windows Forms technology.

Windows Forms is a classic software framework for the development of Desktop graphical user interface (GUI) apps for Microsoft Windows.

It is based on the .NET platform and the C# language.
Windows Forms provides a programming model and rich UI control library for building GUI apps.
Additionally, the Visual Studio IDE provides a powerful visual UI builder for Windows Forms, where developers design the user interface by dragging and dropping UI controls and configuring their properties and events. 

Windows Forms is an object-oriented framework. Your app is a “form“, which is an object-oriented classThis class inherits its functionality and behavior from a base class from the framework. Additional UI controls (such as labels, text boxes, and buttons) are added as data fields in the app classThe app UI controls are inserted into the tree of components, in the parent container.

Lesson Slides

The post Desktop App with Windows Forms [Dev Concepts #16] appeared first on SoftUni Global.

]]>
https://softuni.org/dev-concepts/desktop-app-with-windows-forms/feed/ 0
Libraries and Frameworks: What Is the Difference? [Dev Concepts #15] https://softuni.org/dev-concepts/libraries-frameworks-difference/ https://softuni.org/dev-concepts/libraries-frameworks-difference/#respond Fri, 03 Dec 2021 11:01:40 +0000 https://softuni.org/?p=9064 Learn the difference between libraries and frameworks in this Dev Concepts lesson!

The post Libraries and Frameworks: What Is the Difference? [Dev Concepts #15] appeared first on SoftUni Global.

]]>

In this episode, we’ll be talking about UI and component libraries that provide ready-to-use UI controls and program components, and software frameworks that provide a technical foundation for developing certain types of apps. Both libraries and frameworks speed-up software development and are used every day by millions of developers, so you as a developer, should understand these concepts very well.

 

In this session we will explain the main difference between a library and a framework, which in short is the following:

  • Libraries extend your app by plugging a software component in it. They use the traditional program flow.
  • Frameworks are foundations of functionality, which developers extend to build an app. They use the “inversion of control” program flow.

Finally, we will explain the concept of “inversion of control” (IoC) and its purpose in modern software development. Svetlin Nakov will give you an example of how UI frameworks take the program execution flow and call your code through events when the user interacts with the user interface. This is an “inverted” program flow – IoC.

Lesson Topics

In this video we review the following topics:
  • User Interface and Front-end Frameworks
  • Libraries vs Frameworks
  • Inversion of Control (IoC)

Lesson Slides

The post Libraries and Frameworks: What Is the Difference? [Dev Concepts #15] appeared first on SoftUni Global.

]]>
https://softuni.org/dev-concepts/libraries-frameworks-difference/feed/ 0
[11/13] Java Foundations Certification: Exception Handling https://softuni.org/code-lessons/java-foundations-certification-exception-handling/ https://softuni.org/code-lessons/java-foundations-certification-exception-handling/#comments Thu, 02 Dec 2021 10:21:20 +0000 https://softuni.org/?p=9024 Build a strong foundation of knowledge in Java programming! Learn all about handling exceptions in your code!

The post [11/13] Java Foundations Certification: Exception Handling appeared first on SoftUni Global.

]]>

In the current lesson, we take a close look at exception handling and why it’s important in software engineering.

What are exceptions? We’ve all seen one, there is no way to write completely bug-free code. In short an exception is a problem that arises during the execution of the program

Exceptions simplify code construction and maintenance and allow problematic situations to be processed at multiple levels.

In Java exceptions are objects. The base for all exceptions is the Throwable class – it contains information about the cause of the exception, its description, and the stack trace.

There are two types of exceptionschecked (also known as compile-time exceptions), and unchecked (also known as runtime exceptions).

Exceptions can be handled by the try-catch construction. The try-finally block is also used, especially when we want to ensure the execution of a given block of code. 

To raise an exception, we use the throw keyword. When an exception is thrown the program execution stops, and the execution travels over the stack until a matching catch block is reached to handle it. 

In this lesson you will find many helpful examples and exercises, so make sure to practice what you’ve learned! That’s the only way to grasp the concept at hand.

Lesson Topics

This video covers the following topics:

1. What are Exceptions?

  • The Exception class 
  • Types of exceptions and their hierarchy

2. Handling Exceptions

3. Raising (throwing) Exceptions

4. Best Practices

5. Creating Custom Exceptions

Practical Exercises

Watch the video and solve the problemsTo better understand the material, do the coding exercises and implement the knowledge you acquired. Writing code is the only way to master the skill of code.

Submit your code in the SoftUni Judge System:

Exercises: Problem Description

Lesson Slides

The post [11/13] Java Foundations Certification: Exception Handling appeared first on SoftUni Global.

]]>
https://softuni.org/code-lessons/java-foundations-certification-exception-handling/feed/ 2
What Is Routing? [Dev Concepts #14] https://softuni.org/dev-concepts/what-is-routing/ https://softuni.org/dev-concepts/what-is-routing/#respond Wed, 01 Dec 2021 11:15:00 +0000 https://softuni.org/?p=9002 Learn all about routing in this Dev Concepts lesson!

The post What Is Routing? [Dev Concepts #14] appeared first on SoftUni Global.

]]>

In this video you will become familiar with the topic of “routing“, used for navigation in modern app development. In short, routing is the technology used to switch between different UI views (different app screens), based on changes of the current URL in the navigation bar. Routing is typically implemented through a routing library.

In this lesson, we will see how routing works in front-end apps. We will show you a sample routing library, which changes the view on the front-end, when the browser navigates to certain URL. Finally, we will demonstrate the concept of routing with a live coding example in JavaScript, so that we see how everything is done.

So, what is routing and why do we use it?

In front-end apps, routing is a technology for switching between different UI viewsbased on the changes of the current URL (holding the route).

In back-end apps, routing is a technology for switching between different server-side endpointsbased on the changes of the requested URL (holding the route).

Many front-end and back-end frameworks internally implement routing and invoke different functionality based on the URL and its components.

Routing libraries switch the view by URL like shown below.

  • This is the “home” URL: /
  • This is the “about” URL: /about
  • This is the “contact” URL: /contact

Different routes in the URL switch to different views.

This is briefly the concept of routing in Web apps.

Lesson Topics

In this video we review the following topics:

  • Overview of Routing and Routing Libraries
  • Live Demo – Navigation with Routing Library

Lesson Slides

The post What Is Routing? [Dev Concepts #14] appeared first on SoftUni Global.

]]>
https://softuni.org/dev-concepts/what-is-routing/feed/ 0
What Is Templating Engine? [Dev Concepts #13] https://softuni.org/dev-concepts/what-is-templating-engine/ https://softuni.org/dev-concepts/what-is-templating-engine/#respond Tue, 30 Nov 2021 09:39:00 +0000 https://softuni.org/?p=8980 Learn all about templating engine in this Dev Concepts lesson!

The post What Is Templating Engine? [Dev Concepts #13] appeared first on SoftUni Global.

]]>

In this lesson, you will become familiar with the concept of “templating engines“, which render input data into output document (like HTML) through a template. We will explain how templates combine markup code with programming constructs to visualize data in a target output format.

 

Along with the slides, at the end of the lesson, we have included a live code example, so you can see how we can render an HTML-based UI with a templating engine. We will use a JSON dataset and the Handlebars templating engine in JavaScript to render the dataset as HTML document.

 

Templating engines render data as HTML or other format through a template.
This is very useful, when you want to visualize data, which comes from the server-side or from a database.
The template is written in some templating language like Razor, Handlebars or Pug.
Typically, templates combine HTML with special tags.
Templates can render variables, iterate over a collection and perform conditional checks.
You will definitely use templating engines in some form, if you work with data and visualization.

Lesson Topics

In this video we review the following topics:
  • Overview of Templating Engines
  • Live Demo – Rendering UI with a Templating Engine

Lesson Slides

The post What Is Templating Engine? [Dev Concepts #13] appeared first on SoftUni Global.

]]>
https://softuni.org/dev-concepts/what-is-templating-engine/feed/ 0
[10/13] Java Foundations Certification: OOP Principles https://softuni.org/code-lessons/java-foundations-certification-oop-principles/ https://softuni.org/code-lessons/java-foundations-certification-oop-principles/#respond Mon, 29 Nov 2021 08:46:00 +0000 https://softuni.org/?p=8930 Build a strong foundation of knowledge in Java programming! Learn the four pillars of the Object-Oriented Programming!
Encapsulation, Inheritance, Abstraction and Polymorphism

The post [10/13] Java Foundations Certification: OOP Principles appeared first on SoftUni Global.

]]>

In the current lesson, you will learn the four pillars of Object-Oriented Programming (OOP).

Svetlin Nakov will explain to you what are the four main OOP Principles. He talks about the concepts of encapsulation, inheritance, abstraction, and polymorphism. Later, you will learn how to compare different objects in Java using equals() and compareTo() methods. Make sure that you understand everything since this is one of the most important topics in the programming world!

You will find many helpful examples and exercises, so make sure to practice what you’ve learned!

As always, we advise you to pause the video right before the solving part of each problem and try to do the exercises on your own first. Then, if you have difficulties, just watch the provided solutions in the video.

*The exercise descriptions are to be found in the PDF document at the end of this post.

Lesson Topics

This video covers the following topics:

1. Principles of OOP

  • Encapsulation
  • Inheritance
  • Abstraction
  • Polymorphism

2. Comparing Objects in Java

  • Using equals() and compareTo() methods
  • Defining equals() and compareTo() methods
 

Practical Exercises

Watch the video and solve the problemsTo better understand the material, do the coding exercises and implement the knowledge you acquired. Writing code is the only way to master the skill of code.

Submit your code in the SoftUni Judge System:

Exercises: Problem Description

Lesson Slides

The post [10/13] Java Foundations Certification: OOP Principles appeared first on SoftUni Global.

]]>
https://softuni.org/code-lessons/java-foundations-certification-oop-principles/feed/ 0
Overview of AJAX and REST [Dev Concepts #12] https://softuni.org/dev-concepts/overview-of-ajax-and-rest/ https://softuni.org/dev-concepts/overview-of-ajax-and-rest/#respond Fri, 26 Nov 2021 09:39:00 +0000 https://softuni.org/?p=8871 Learn all about AJAX and REST in this Dev Concepts lesson!

The post Overview of AJAX and REST [Dev Concepts #12] appeared first on SoftUni Global.

]]>

In this episode, we explain the gist of AJAX and REST, which are widely-used technologies in Web programming. We demonstrate how to use the JavaScript Fetch API to call back-end services and interact with server-side components.

The lesson also includes a live code demonstration of AJAX and REST, so that you get a deeper understanding of their application.

What exactly is AJAX?

AJAX stands for “Asynchronous JavaScript and XML“.
This acronym doesn’t describe its nature well, but this is for historical reasons, from the time when XML was popular.
A better description of the AJAX technology is the following:
AJAX is a technology for asynchronous execution of HTTP requests from client-side JavaScript code. JavaScript front-end apps use AJAX calls to access the back-end services and APIs and consume data from the Web server over the HTTP protocol.
In most scenarios, the AJAX technology is used to consume RESTful APIs from the back-end server.
 
RESTful APIs are Web services, invoked through the HTTP protocol.
A “Web service” is remote functionality, that can be invoked over the Internet.
REST stands for “Representational State Transfer“. It is an architectural concept and industry standard about how to build Web services.
RESTful services typically implement the CRUD operations (create, read, update, delete) over а certain data collection.
The HTTP methods GET, POST, PUT, PATCH, and DELETE are used to retrieve, create, replace, modify and delete data.

Lesson Topics

In this video we review the following topics:

  • AJAX and RESTful APIs
  • Live Demo – AJAX and REST

Lesson Slides

The post Overview of AJAX and REST [Dev Concepts #12] appeared first on SoftUni Global.

]]>
https://softuni.org/dev-concepts/overview-of-ajax-and-rest/feed/ 0