Courses
IT training Course Description
VidiaSoft offers regular schedule open enrollment software courses:
The training courses start at 9:00 o'clock in the morning and end at 16:30 in the afternoon.
Also, based on your request, evening training courses can be arranged. In this case the training courses
start at 17:00 o'clock and end at 22:30.
The courses are available as in-house (on-site) training for company groups or individuals. The off-site trainings
are delivered at out sites in Eindhoven, Utrecht, Amsterdam.
For the precise location please contact us at: info@vidiasoft.com
Object Oriented Analysis and Design with UML Course
This UML training course is aimed at system analysts and developers who
want to create a detailed object oriented implementation-free analysis
model of a computer system from the system requirements specification.
The industry best practice modeling techniques are based on
the Unified Modeling Language v2.x and are taught within
the context of a model-driven software development process.
The models produced are sufficient to form the basis for the design of systems
using a variety of different architectures.
The advantages that using these techniques has for estimation,
traceability, test development and project management is discussed.
Each technique is taught to the level required for competence on a real project.
Understanding is tested and improved with exercises based on a real-world project example.
The students will learn:
- The competence in object-oriented analysis and design (OOAD) to tackle a complete OO project
- The basics and the necessary detail of Object Orientation
- The basics and the necessary detail of the Unified Modeling Language
- The main principles of good OO design
- The major tasks which are appropriate to developing OO models and software
- How to model the dynamics of system data and functionality using UML
- How to model the static view of system using UML
Business Modeling with UML Course
This UML training course is aimed at business analysts
software managers and developers,
who want to understand the concept of business modeling for creating abstractions of their business that in turn can be used to communicate, improve, or innovate the business.
The students will learn:
- To get insight into how UML can be used to describe the complexities of a business instead of just software systems.
- What to do before you start producing the software
system.
- How to identifie the proper requirements using use cases.
- How to identify patterns that demonstrate how the processes, resources, rules, and goals of a business can be modeled.
- How UMLcan be used in a business context, and how business modeling can be integrated with software development.
Java Programming Introductory Course
This training course covers the fundamentals of programming in the Java programming language
That's why this course is also suitable as an introduction to C and C++.
It is recommended to follow the Java Advanced course to deepen the knowledge of and experience with Java.
The students will learn:
- The Object-Oriented Programming core concepts
behind object-oriented programming: objects, messages, classes, and inheritance
- The fundamentals of programming in the Java programming language
- The Primitive data types and operations in Java
- The Control statements
- Arrays
Java Programming Advanced Course
This training course covers the principles of object oriented programming in Java will be dealt with.
Other subjects are Exception handling and a short introduction to Graphical User Interface programming.
The students will learn:
- The exception mechanism and how it is used to handle errors and other exceptional conditions
- The Concurrency and how to write applications that perform multiple tasks simultaneously
- The Java Collections Framework and the core elements (generic programming):
- interfaces
- implementations
- algorithms
- The graphical capabilities of the core Java platform with a special focus on Swing
- Advanced Object-Oriented concepts in Java
C Programming Introductory Course
This training course provides you with an easy step by step guide to programming in C.
C is a general-purpose language which has been closely associated with the UNIX operating
system for which it was developed - since the system and most of the programs that run
it are written in C, but it has been used successfully for every type of programming problem
imaginable from operating systems to spreadsheets to expert systems.
The students will learn:
- The structure of C programs, control flow
- The Input/Output functions
- The data structures in C
- How to define a new type in C
- How to dynamically allocate memory in C
- How to use pointers, and arrays in C
- How to use the bit operators
- How to handle files in C
C Programming Advanced Course
This training course is designed to bring practicing C programmers up to the next level of C expertise.
Since one area where C syntax and semantics present a major hurdle is in the understanding of declaration syntax,
the course leads participants in the incremental design and implementation of their own parser for a specific grammar.
The students will learn:
- The standard terminology and study coding styles, portability and performance.
- The advanced aspects of the C programming language:
- Arrays & Pointer Arithmetic
- Function pointers
- The advanced aspects of pointers and arrays, including multi-dimensional arrays and array slicing
- Practical experience designing, coding and enhancing complete C programs.
- The scoping, storage duration and linkage issues, esp. as they apply across multiple source files in large projects.
- Learn the theory and implementation of several common data structures in C.
C++ Programming Introductory Course
This training course is designed for inexperienced programmers, with a basic knowledge of C, who will be developing applications in C++.
Knowledge of Object Oriented Analysis and Design, and of UML, although useful, is not needed, as these topics will
be covered in sufficient detail in the course where appropriate. The relationship between
C and C++ is explored, and the course includes a thorough overview of C syntax.
The students will learn:
- The background to object oriented thinking
- How to use base I/O in C++
- A more detailed look at input and output in C++
- About classes and inheritances in C++:
- Copy constructor and assignment operator
- Deep vs. shallow copying
- Virtual functions and virtual classes (compile time vs. run time binding)
- Introduction to implementing dynamic data structures using classes
- Friend classes and friend functions
- Static member variables and static member functions
- How to define operators and overload operators in C++
- How to use templates and the Standard Template Library
C++ Programming for C programmers Course
This training course course is designed to give a solid grounding in the key aspects of C++ and the Standard Template Library (STL)
to those who already have experience of programming in C or a similar language.
Where there is no background in C we recommend our Introduction to C++ Programming course instead,
as that course also covers the elements of C that are applicable to C++.
The course covers all of the important features of the language, ensuring an understanding of the principles which
underpin the design of effective, high-quality delivered software.
The students will learn:
- The C++ syntax and usage in detail
- To be aware of the influences that made C++ the language that it is
- The subset of C++ that object-oriented C++ would typically deploy, and why
- The subset of C++ that generic (template-based) C++ would typically deploy, and why
- The majority of C++'s traps and pitfalls in detail
- To be aware of the contents of the standard library, including the STL
- To practise using a range of provisions from the standard library, including streams, exceptions, containers, iterators,
algorithms, and function objects
C++ Programming Advanced Course
This training course has been developed for experienced C++ programmers who wish to increase their design
skills and expertise in using the language. The course provides them with a kit bag of techniques and
strategies to put them ahead of the pack.
The students will learn:
- The C++ object model; the mechanism that support object-oriented programming in C++
- A clear understanding of the basic implementation of the object-oriented features and the trade offs implicit in those features
- A full understanding of what is going on "under the hood" when you use C++:
- To Decide between global functions, friend functions and member functions
- To Code their own memory management routines by overloading operators new and delete
- To Write classes and functions with parametrized types
- To Understand and handle exceptions in C++ programs
- To Disambiguate data and functions using multiple inheritance
- To Understand the difference between various kinds of inheritance
- To Use pointers to class member functions
- To Understand the C++ mechanism to resolve overloaded functions
- How to use advanced features of the STL
- How to use patterns