Great course for every aspiring programmer:
- learn programming from scratch,
- an introduction to Java - the most popular programming language,
- use professional tools and learn specialist terminology,
- an opportunity to learn from professional Java developers,
- 1190 EUR
- instalment payment plans available for private persons
more information here
- instalment payment plans available for private persons
Our course is intended for those who:
- have never programmed but are willing to start
- have basic computer knowledge (can copy files, create directories, type quickly)
- decided to choose Java as their first programming language
All who already have some programming experience are invited to join our Java developer course or one of the specialist Java trainings .
Programming is not only about knowing one or more programming languages. It’s mainly about understanding the concepts and technologies, independent of the language used:
- fundamentals of networking and operating systems,
- methods of modelling and storing data (for example in relational databases),
- creating projects,
- using version control systems,
- using templates etc.
Our training - unlike many - covers all of issues listed above. The participants not only learn Java, but they also acquire broad, practical knowledge concerning programmers’ work and the proccess of creating applications. Seven days of intensive training together with studying at home (with possibility to consult our trainer) give solid basics for further education and self-studying.
Participants might continue their education and sign up for more complex and advanced Java trainings, specialist trainings or other trainings from web technologies - although we really encourage to repeat and expand the knowledge acquired during the training through self-study: being skillful and practising will be even more neccessary than additional knowledge.
Download detailed course programme
FAQ
- Q: Can somebody who was always bad at Maths become a programmer?
- A: Programming has nothing to do with maths - it requires only some logical thinking.
- Q: What personality traits are useful for learning programming?
- A: Chiefly, dedication (willingness to spend a lot of time practising - like with learning foreign languages, playing an instrument or driving) and attention to details (as is the case with law or philosophy).
- Q: Will I be buying some specialist programs or tools?
- A: No, professional Java developers usually use tools available for free (open source license). Our trainers will show you all the tools you need to use - and also how to get, install and configure them.
- Q: How long does it take to learn programming?
- A: As with every complex skill, it will take your whole life to truly master it. Technologies appear and go away, in most practical IT fields 5-years' knowledge is already obsolete. On the other hand, the situation isn’t hopeless - the more technologies the developer knows the easier it becomes to learn new ones.
- Q: Can I start working as a developer immediately after I complete this course?
-
A: No. After passing the driving licence you can’t become professional driver, completing language course doesn’t mean you can work as a translator. It’s the same with programming.
Training participants will be able to do some programming tasks (like simple corrections or changes in existing programs) and start gaining on theirown the necessary practical experience.
Nevertheless, the course might become a great basis for starting a job in which advanced programming tools are used but which is not exactly the programmer’s job (for example tasks connected with reporting, data analysis, creating advanced solutions based on tools like Google Script, Excel, Access etc.). - Q: Do I have to do any homeworks during the course?
- A: Yes. It’s important to build some habits and to automate some actions - it’s exactly the same as learning foreign languages or playing musical instrument. Spending a lot of time on practising is inevitable. That’s why the trainer will be giving some homework, although we don’t evaluate our students, so delivering the homework is not obligatory.
- Q: Is it better to sign for day or weekend classes? Why there is such a long break between the sessions?
- A: Both modes are difficult, and the break between sessions is indispensable for self-studying at home. Learning how to program requires not only the knowledge, but mainly practice. Day mode is more intensive, so it requires greater involvement. When taking part in day sessions, one should be ready to spend about one hour in the evening on practising the current topics from the course. During the break between the sessions it’s important to spend at least 2-3 hours a day on self-studying (with the possibility to consult with the trainer via emails or receive some additional home tasks).
- Q: What preparations should I make to spend time during the training the most effectively? Is there any book that I should read?
- A: Definitely the best thing you can do before this training is to practise quick typing. Programming is mainly about working with a text editor - if the user deals with the manual aspect of writing, then he can spend more energy on intelectual aspect of programming.
Course programme
- Introduction to programming
- How to communicate with a computer?
- Machine code and source code
- Programming languages, compilers, interpreters
- Process, program, application
- A look at the modern world of programming technologies
- Types of applications: frontend vs backend, batch, graphical, web and mobile applications; adequate technologies
- Overview of programming languages and paradigms
- Java platform – why it was created, its place in today’s IT world, characteristics and applications
- Libraries and frameworks
- How to communicate with a computer?
- Configuration of the work environment
- Installation and configuration of the Java platform
- Basics of working with the command line
- Compiling and starting
- Interactive jshell interpreter
- Installation and configuration of the selected development environment (IDE)
- Overview of Java-specific environments
- Advantages of IDE and techniques that allow for efficient work
- Installation and configuration of the Java platform
- First steps in Java
- Building a program in Java
- Project structure: source and compiled files, directories, packages, classes
- Code formatting and naming conventions
- Simple methods of communicating with the user: standard input and output, dialog boxes
- Basic programming techniques
- Variables and types
- Basic data types: integers and fractions, strings, logical type
- Arithmetic and logical expressions
- Java control statements
- Conditional statements: if, switch
- Loops: while, for
- Writing simple algorithms
- Tables
- Elements of the procedural programming style
- Methods in Java
- Creating parameterised functions and procedures
- Isolating repetitive code fragments; basics of refactoring
- Variables and types
- Object-oriented programming in Java
- Object-oriented programming style
- What are objects, what are classes?
- References to real-world concepts
- Technical objects and classes
- Components of classes, structure of objects
- Memory structure of the Java virtual machine; stack and heap; references to objects
- Inheritance and interfaces
- Extending classes and overriding methods
- Polymorphism, substitution principle
- Interfaces and abstract classes
- Encapsulation
- Visibility modifiers
- Techniques and benefits of encapsulation
- Exceptions in Java
- Object-oriented programming style
- Applications with graphical user interface
- GUI in object-oriented programming: graphical components as objects
- Swing technology as one of the possibilities of creating GUI in Java
- Event handling in a window application
- Building the user interface in two ways: by writing appropriate code in Java and using a graphical editor
- The most important tool classes of the Java SE platform
- Strings
- String class: possibilities and limitations
- Building strings
- Text processing, including the basics of regular expressions
- Collections: lists, sets, dictionaries; Java Collections Framework
- Use in algorithms and data processing schemes
- The impact of the proper selection of data structures on application performance
- Basics of functional programming techniques: lambdas and streams
- Date and time support
- File handling
- Binary and text files, bytes and characters, character encodings
- I/O streams and basic file handling in Java programs (with more emphasis on text files)
- The Files class and operating on entire files
- Popular formats for saving structured data and the basics of their handling in Java: CSV, XML, JSON
- Access to remote Web API / Rest API services
- Strings