PROGRAMMING LANGUAGES

Each programming language course can be modified to suit IT staff and any specific projects they may be working with. Many of our courses are tailored in this area as there are multiple variations and approaches to each course, taking into consideration various technologies involved in each project. This is where our instructors, who are also developers, have vital input in formulating a course to suit your business needs.

If you have requirements for other courses which you don’t see on our website, try our SEARCH button at the top of each web page, or contact us as the course you are looking for may very well be available and is not yet visible on our website.

Most of our courses are delivered as closed training events, however if you are interested in joining our public courses, have a look at our Course Schedule page where our scheduled course dates are listed.

Click on the headings below:

Java, Java EE

Internet Technologies

 

MORE PROGRAMMING LANGUAGES

SQL FUNDAMENTALS – GTPL72 – 2 days

 

This SQL training course is designed for students new to writing SQL queries. A typical student will need to learn SQL to build applications or to generate business reports. For the most part, the SQL learned in the course is applicable to all major databases. In the few cases in which there are differences between the databases, these differences will be pointed out.

Class Goals

  • Understand how relational databases work
  • Learn to use SQL to output reports
  • Learn to write queries getting data from multiple tables

More information…

AGILE WEB DEVELOPMENT USING ANGULARJS – GTIT30 4 days

AngularJS is a popular framework from Google, for creating dynamic and contemporary Web applications that require a large amount of well-structured JavaScript code. AngularJS uses the well-proven Model-View-Controller (MVC) pattern for creating rich and complex web pages that are quicker to develop and easier to maintain. AngularJS makes JavaScript programming fun and feasible!

What you’ll learn

  • JavaScript language features and best practice
  • Structure of AngularJS single page applications
  • Creating models, views, and controllers
  • Using data binding and templates
  • Using modules
  • Using services
  • Working with Ajax and REST
  • Testing techniques

More information…

PYTHON 3 FOR DEVELOPERS – GTIT29 – 5 days

 

This course combines the Introduction to Python 3 and Advanced Python 3 courses. The introductory course introduces the student to the Python language. Upon completion of this class, the student will be able to write non trivial Python programs dealing with a wide variety of subject matter domains.

TOPICS include Language components, the IDLE environment, control flow constructs, strings, I/O, collections, classes, modules, and regular expressions. The course is supplemented with many hands on labs using either Linux or Windows. The advanced course covers a handful of various Python advanced topics including high level data structures, network programming, writing GUI’s in Python, and CGI programming. This course is designed for anyone who needs to learn how to write programs in Python.

Objectives

Upon completion of this course, students will be able to:

  • Execute Python code in a variety of environments
  • Use correct Python syntax in Python programs
  • Use the correct Python control flow construct
  • Write Python programs using various collection data types
  • Write home grown Python functions
  • Use many of the standard Python modules such as os, sys, math, and time
  • Trap various errors via the Python Exception Handling model
  • Use the IO model in Python to read and write disk files
  • Create their own classes and use existing Python class
  • Understand and use the Object Oriented paradigm in Python programs
  • Use the Python Regular Expression capabilities for data verification
  • Write Network Programs in Python
  • Write CGI programs in Python
  • Write GUI programs in Python
  • Differentiate between the proper use of Python collection classes
  • Use advanced Data Structures
  • Become proficient in the use of bit variables
  • Use Python List comprehensions
  • Use Python generators
  • Use the most popular Python modules
  • Create and execute processes

More information…

INTRODUCTION TO PYTHON 3– GTIT19 – 3 days

This course introduces the student to the Python language. Upon completion of this class, the student will be able to write non trivial Python programs dealing with a wide variety of subject matter domains. Topics include language components, the IDLE environment, control flow constructs, strings, I/O, collections, classes, modules, and regular expressions. The course is supplemented with many hands on labs using either Linux or Windows.

Upon completion of this course, students will be able to:

  • Execute Python code in a variety of environments
  • Use correct Python syntax in Python programs
  • Use the correct Python control flow construct
  • Write Python programs using various collection data types
  • Write home grown Python functions
  • Use many of the standard Python modules such as os, sys, math, and time
  • Trap various errors via the Python Exception Handling model
  • Use the IO model in Python to read and write disk files
  • Create their own classes and use existing Python classs
  • Understand and use the Object Oriented paradigm in Python programs
  • Use the Python Regular Expression capabilities for data verification

More information…

ADVANCED PYTHON 3– GTIT20 – 3 days

The Advanced Python course aims to take attendees beyond basic Python.

The course will enable  attendees to enable to produce more efficient, safer and maintainable code using standard Python idioms.

The course assumes you are happy with core Python concepts and syntax.

Target Audience

This course is for delegates wanting to further their knowledge of Python.

Course Prerequisites

Delegates should have taken an introductory Python course (such as the course below) or have six months of Python programming experience.

If you have any questions or doubts as to whether you meet the pre-requisites for this course, or indeed are wondering which course best suits you, please consult with us to discuss your suitability for course attendance.

More information…

INTRODUCTION TO PERL PROGRAMMING – GTPL1 – 4 days

Perl is a scripting language which allows for rapid prototyping of projects formerly done with a programming language or a shell. It incorporates all the functionality of C (including a UNIX system interface), the Shells, grep, sed, and awk. The topics in the course will aid all computer users – from end user to programmer to administrator alike.

More information…

ADVANCED PERL PROGRAMMING – GTPL2 – 5 days

The course begins with a thorough treatment of packages, modules, and libraries. Next, Perl references are studied. This gives students the necessary background to write object-oriented Perl. Various applications and areas that use object orientation are studied next. These modules include the Tk.pm module for building Graphical User Interfaces, the DBI.pm module, which provides a portable way of querying databases, the CGI.pm module for writing CGI programs, and the Socket.pm module used in client server networking applications. Finally a treatment of XML and Perl is undertaken.

More information…

OBJECT-ORIENTED PERL– GTPL4 – 3 days

This three-day course addresses the Object-Oriented features of Perl and provides students with the knowledge to create Object-Oriented Perl scripts.

More information…

CGI PROGRAMMING USING PERL– GTPL5 – 3 days

This course bridges the gap between using HTML to create static Web pages and using Perl CGI scripts to create dynamic Web pages. The course emphasizes using the Perl 5 CGI library routines to process HTML forms by providing extensive working examples and by students writing applications to illustrate the concepts presented. This course is not intended to be a substitute for a Perl programming course.

More information…

INTRODUCTION TO SQL PROGRAMMING – GTPL7 – 3 days

This course is an introduction to the SQL database language. After this course the student will be able to use SQL to define, manipulate and control access to their data. The course thoroughly covers SQL syntax and facilities.

The course begins with a general introduction to databases, including the principles of relational databases. Data retrieval is discussed in depth, covering all of the pertinent features of SQL, including joins. Data Manipulation Language is covered, including inserting, updating and deleting data. Transaction control and locking is discussed. Data Definition Language is covered, including creating, altering and dropping tables, and the use of integrity constraints. Views and indexes are covered. The course includes detailed coverage of Data Control Language. The course concludes with an introduction to the principles of relational database design.

The material is generic to SQL. An appendix provides a survival guide to working with Microsoft SQL Server.

More information…

SOFTWARE DEVELOPMENT FOR NON PROGRAMMERS – GTPL8 – 3 days

Introduction to Programming has a wealth of knowledge that aspiring programmers need to master before tackling their first programming language. This course consists of topics such as: hardware and software components of a computer system, the CPU, registers, operating systems, processes, number systems, data type formats, conversions among number bases, logic and reasoning, flow charting, pseudo code, control structures, differentiation among programming languages, from machine language to assemblers and compilers, data structures, libraries, networking, web programming, and a host of other topics. After learning the fundamentals, students will be given a chance to show their knowledge by writing some simple to intermediate programs in the C programming language.

More information…

C PROGRAMMING – GTPL9 – 5 days

This course provides students with a comprehensive study of the C programming language. Classroom lectures stress the strengths of C, which provide programmers with the means of writing efficient, maintainable, and portable code.

More information…

ADVANCED C PROGRAMMING – GTPL10 – 5 days

This course broadens the skills of a C language programmer by introducing sophisticated problem solving techniques including the advanced use of pointers, abstract data types, data structures, portability, and optimization techniques. Skills are reinforced by hands-on laboratory exercises.

More information…

C ++ PROGRAMMING – GTPL11 – 5 days

C++ is the object oriented superset of ANSI C. This course provides students with a comprehensive study of the C++ Programming Language. The course stresses the object paradigm including classes, inheritance, virtual functions, and templates in the development of C++ programs. Lab exercises reinforce the lectures.

More information…

C ++ for NON C PROGRAMMERS – GTPL12 – 5 days

This course provides students with a comprehensive study of the C++ programming language while teaching those parts of C relevant to C++. Classroom lectures are supplemented with many hands-on exercises, which stress the following C++ topics: data abstraction, class design, operator overloading, inheritance, polymorphism and I/O.

More information…

ADVANCED C ++ PROGRAMMING – GTPL13 – 5 days

This course broadens the skills of a C++ language programmer by examining sophisticated C++ concepts such as templates, exceptions, memory management, advanced inheritance issues, disambiguation of overloaded functions, private and protected inheritance, binary I/O and class libraries.

More information…

C++11 AND C++14 DEVELOPMENT – GTPL17 – 3 days

Course Description

Thought you knew C++? Think again! The C++11 standard is a huge leap forward in the language and STL. Largely inspired by Boost, the C++11 standard introduces support for lambdas, multithreading, vastly improved object construction mechanisms, and much more beside. This course takes a deep and detailed look at all the new features on offer in C++11, along with the incremental additional changes in C++14.

What you’ll learn

  • Working with C++11 smart pointers
  • Functional programming in C++11
  • Defining and using lambda expressions
  • Using C++11 container classes
  • Implementing code applications in C++11
  • Using miscellaneous C++ language features
  • What’s new in C++ 14

 

Target Audience

This course is suitable for developers with at least 6 months experience in C++, who want to learn about the new language features and APIs available in C++11/14.

 

Course Prerequisites

3-6 months C++ programming experience

More information…

REQUIREMENTS MANAGEMENT AND USE CASES – GTPL14 – 2 days

This course is an introduction to management of requirements in software projects. It starts by introducing the concepts and ideal for someone who is going to be involved in the requirements management phase of a software project. Hands on exercises allow the students to apply the principles learned throughout the course.

More information…

BEHAVIOUR DRIVEN DEVELOPMENT – GTLP15 – 3 DAYS

Course Description

This course explains what behaviour-driven design is all about, describes why it’s a beneficial approach to application specification and development, and leads you through the process of how to do BDD in practice.

What you’ll learn

  • What is BDD
  • Defining requirements
  • Feature analysis
  • Automation, management, and reporting
  • Testable architecture

 

Target Audience

This course is aimed at product owners, architects, functional managers, test managers, and developers needing insight into BDD practices.

 

Course Prerequisites

Software development roles catered for: product owners, architects, functional managers, test managers, developers

More information..

BEHAVIOUR DRIVEN DEVELOPMENT USING CUCUMBER – GTLP16 – 3 DAYS

Course Description

This course explains what behaviour-driven design is all about, describes why it’s a beneficial approach to application development and testing, and shows how to do BDD using Cucumber. Cucumber is the leading framework for BDD in Java, and it ties in well with a host of application types and Java technology APIs. You’ll learn all about these integrations during the course.

What you’ll learn

  • What is BDD
  • Achieving BDD using Cucumber
  • Understanding Cucumber API and features
  • Using Cucumber with databases, DI containers, and Web/REST applications

 

Target Audience

This course is suitable for Java developers wishing to learn how to implement systems using BDD/TDD with Cucumber.

 

Course Prerequisites

Familiarity coding and/or testing Java applications

More information..