Studies
Admissions
The Institute
Resources
Studies
Admissions
The Institute
Resources
Studies
Admissions
The Institute
Resources

CS407

Foundations of Programming: Java

Barcelona Campus
Feb 22, 2021 - Mar 12, 2021
Students learn the Java programming language’s basic functionality during this course, including the most important parts of the Standard Library.
Barcelona Campus
Feb 22, 2021 - Mar 12, 2021
Vladimir Mazin

Faculty

Vladimir Mazin

Msc. Data Science at Harbour.Space University

Course length

3 weeks

Duration

3 hours
per day

Total hours

45 hours

Credits

4 ECTS

Language

English

Course type

Offline

Fee for single course

€1500

Fee for degree students

€750

Skills you’ll learn

Computer ScienceProgrammingJavaScriptCreate classes in JavaStandard library
OverviewCourse outlineCourse materialsPrerequisitesMethod & grading

Overview

This is an introductory course where students will be offered to know the Java programming language’s basic functionality. We will start with the following essential parts: compilation and running of Java-programmes, a language syntax, a type system, the basics of object-oriented programming. Then we will discuss the most important parts of the standard library, including changes that came into play with Java 11. To get a better understanding of the topics, there will be test questions and practical exercises.

Learning highlights

  • Get to know the basic functionality of Java programming language: be able to compile and run Java programmes
  • Learn how to use programming building blocks with Java and other C-family languages
  • Be familiar with the OOP principles
  • Understand how the Java virtual machine works
  • Know the most important parts of the Java standard library

Course outline

15 classes

Dive into the details of the course and get a sense of what each class will cover.
Monday
Tuesday
Wednesday
Thursday
Friday
Monday
1

Class 1

Introduction to Java: What is Java, Hello World, Getting to know IDE, Hello World using Maven

Tuesday
2

Class 2

Primitive types, Typecasting, Basic I/O, Conditionals

Wednesday
3

Class 3

Loops + Practice

Thursday
4

Class 4

Arrays and strings: Memory management, Varargs, comparing arrays, printing arrays, strings

Friday
5

Class 5

Class declaration: Classes, fields, constructors, methods

Monday
6

Class 6

Basics of OOP, Packages and access modifiers, Types of classes

Tuesday
7

Class 7

Inheritance, Class object, Abstract classes and interfaces

Wednesday
8

Class 8

Introduction to Exceptions, Exception handling, Try-catch, Logging

Thursday
9

Class 9

Under the hood of Java classes JVM, Java bytecode, Garbage collection, Reflection API

Friday
10

Class 10

Mid-course ​test

Monday
11

Class 11

Access to the file system, Byte stream: java.io.File, java.nio.Path, InputStream and OutputStream, Wrapper classes

Tuesday
12

Class 12

Character Stream, Advanced features: Reader, Writer, Wrapper classes, Formatted I/O, Running processes, Serialization

Wednesday
13

Class 13

Generics, Collections

Thursday
14

Class 14

Functional interfaces, Stream API

Friday
15

Class 15

Final ​test ​and ​review

Methodology

The course sessions consist of lectures given by the professor and practical seminars where students complete a programming assignment under the professor’s supervision. Homework is assigned after each session to strengthen the understanding of the material. The lectures will start with homework analysis, where we discuss the solutions. There will be one midterm test at the end of the second week and a final exam at the end of the course. After the first week for the weekend, there will be a programming assignment and it will also be after the second week for the weekend.

Grading

The final grade will be composed of the following criteria:
40% - Homework
15% - Mid-term test
30% - Final test
15% - Participation
Vladimir Mazin

Faculty

Vladimir Mazin

Msc. Data Science at Harbour.Space University

In 2012 with scientific research in Algebra, Vladimir won 1st place at the National contest in Russia, the Intel-Avangard, and became a finalist of the Intel ISEF.

After school, he enrolled for Bachelors at ITMO University for the programme of Applied Math and Programming. During his Bachelor's, he participated in several educational projects: in 2013 he was a coordinator of the national science fair for school students - BalticSEF; in 2014 he was a teacher in the LCME summer school, teaching two courses on maths. In the last years of his Bachelors, Vladimir entered the centre of additional higher education, Computer Science Center, for the programme of Software Engineering. In the end of summer of 2015, he completed a 3-month internship as a Software Developer.

See full profile

Apply for this course

Snap up your chance to enroll before all spaces fill up.

Foundations of Programming: Java

by Vladimir Mazin

Total hours

45 Hours

Dates

Feb 22 - Mar 12, 2021

Fee for single course

€1500

Fee for degree students

€750

How to secure your spot

Complete the form below to kickstart your application

Schedule your Harbour.Space interview

If successful, get ready to join us on campus

FAQ

Will I receive a certificate after completion?

Yes. Upon completion of the course, you will receive a certificate signed by the director of the program your course belonged to.

Do I need a visa?

This depends on your case. Please check with the Spanish or Thai consulate in your country of residence about visa requirements. We will do our part to provide you with the necessary documents, such as the Certificate of Enrollment.

Can I get a discount?

Yes. The easiest way to enroll in a course at a discounted price is to register for multiple courses. Registering for multiple courses will reduce the cost per individual course. Please ask the Admissions Office for more information about the other kinds of discounts we offer and what you can do to receive one.