• Professional Development
  • Medicine & Nursing
  • Arts & Crafts
  • Health & Wellbeing
  • Personal Development

72 C++ courses in Retford

C++ programming foundation

5.0(3)

By Systems & Network Training

C++ training course description A hands on introduction to programming in the C++ language. The course concentrates on aspects that will be new to experienced C programmers and so is not suitable for those without C knowledge. What will you learn Write C++ programs Debug C++ programs. Examine existing code and determine its function. Use classes, function overloading, operator overloading, inheritance and virtual functions within C++ programs. C++ training course details Who will benefit: Programmers needing to write C++ code. Programmers needing to maintain C++ code. Prerequisites: C programming foundation. Duration 5 days C++ training course contents The origins of C++ C++ as a better C, C++ and Object Oriented Programming, encapsulation, polymorphism, inheritance. C++ standards. Getting started Simple C++ programs. Classes Basics, constructor and destructor functions, member and friend functions. Using objects. Default, copy and conversion constructors. A better C Arrays, pointers and references, new and delete. Improved safety with smart pointers, Resource Acquisition in Initialization (RAII). Functions in C++ Function overloading, default arguments, inline functions, Lambda functions. Templates Template classes and functions. Standard Library Containers, Iterators, algorithms, function objects. Operator overloading Basics, binary operators, the this pointer, relational operators, unary operators. Members versus friends. Inheritance Base class access control, protected members, multiple inheritance, virtual base classes. More I/O Manipulators, customising inserters, extractors. File I/O. Virtual functions Pointers to derived classes, run time polymorphism. Exception handling Throwing errors, trying code and catching errors.

C++ programming foundation
Delivered in Internationally or OnlineFlexible Dates
£3,697

Advanced C++ programming

5.0(3)

By Systems & Network Training

Advanced C++ training course description The course will give a broad overview of the C++ Programming language, focusing on modern C++, up to C++17. This course will cover the use of the Standard Library, including containers, iterator, function objects and algorithms. From the perspective of application development, a number of design patterns will be considered. What will you learn Write C++ programs using the more esoteric language features. Utilise OO techniques to design C++ programs. Use the standard C++ library. Exploit advanced C++ techniques Advanced C++ training course details Who will benefit: Programmers needing to write C++ code. Programmers needing to maintain C++ code. Prerequisites: C++ programming foundation. Duration 5 days Advanced C++ training course contents Study of a string class Create a string class as a means to investigate many issues, involving the use of operator overloading and including overloading new and delete. Creation of the class will also require consideration of 'const correctness'. Exception handling Consider the issues involved in exception handling including the concept of exception safety. Templates Review definition of template functions, including template parameter type deduction. Introduction to template metaprogramming. Newer features including template template parameters and variadic templates. Creation of template classes. Design patterns Introduction to Design Patterns and consideration of a number of patterns, such as, factory method, builder, singleton and adapter. The standard C++ library (STL) Standard Library features, such as, Containers, Iterator, Function Objects and Algorithms. Introduction to Lambda expressions. C++ and performance The writing of code throughout the course will be oriented towards performant code, including use of R Value references and 'move' semantics. Pointers The use of pointers will be considered throughout the course. Smart pointers will be considered to improve program safety and help avoid the use of 'raw' pointers. Threading This section will consider the creation of threads and synchronisation issues. A number of synchronisation primitives will be considered. Async and the use of Atomic will also be considered. New ANSI C++ features Summarising some of the newer features to be considered are: Auto, Lambdas expression, smart pointers, variadic templates and folds, R Value references and tuple together with structured binding.

Advanced C++ programming
Delivered in Internationally or OnlineFlexible Dates
£3,697

Objective-C programming

5.0(3)

By Systems & Network Training

Objective-C programming training course description A hands on introduction that will allow you to master Objective-C and start using it to write powerful native applications for even the newest Macs and iOS devices! Using The step-by-step approach, will let you get comfortable with Objective-C's unique capabilities and Apple's Xcode 5 development environment. Make the most of Objective-C objects and messaging. Work effectively with design patterns, collections, blocks, foundation classes, threading, Git and a whole lot more. Every session builds on what you've already learned, giving a rock-solid foundation for real-world success! What will you learn Use Xcode 5. Declare classes, instance variables, properties, methods, and actions. Use arrays, dictionaries, and sets. Expand and extend classes with protocols, delegates, categories, and extensions. Use Apple's powerful classes and frameworks. Objective-C programming training course details Who will benefit: Developers wanting to learn Objective-C. Prerequisites: Software development fundamentals. Duration 5 days Objective-C programming training course contents PART 1: GETTING STARTED WITH OBJECTIVE-C The Developer Program: Objective-C, enrolling as an Apple Developer, setting up the development environment, Xcode. Your first project. OO programming with Objective-C: OO projects, Frameworks, classes and instances, encapsulation, accessors, Inheritance. OO features in Objective-C: Messages, methods, working with id, nesting messages, method signatures and parameters. allocating and initializing objects. Using Xcode: Xcode, source code control, git and Xcode, Using a Remote Repository. Compiler Directives: Projects, Compiler Directives, Prefix headers, main.m, .h files. PART 2: OBJECTIVE-C BASICS Messaging in a Testbed App: Setting Up the Testbed Apps, Adding a Text Field and Connecting It to Your Code, Sending a Message to the Text Field, Reviewing the Message Syntax. Declaring a Class in an Interface File: Context, Creating an Instance Variable with id, What Happens When Execution Stops, dynamic binding, Creating an Instance Variable for with the Class Name and with a Superclass Name, instance variable visibility. Properties in an Interface File: Interface Variables vs Properties, Declared Properties, Using Attributes. Implementing Properties. @synthesize, @dynamic. Methods in an Interface File: Methods in a Class, class and instance methods, Method declaration, returning complex data structures from Methods. Actions in an Interface File: Actions, Actions in OS X and iOS, disconnecting actions. Routing messages with selectors: Receiver and selector objects in messages, Objective-C Runtime, SEL and @selector (), performSelector, NSInvocation, testing whether an Instance can respond to a selector. Building on the Foundation: The Foundation Framework, Foundation Classes, Foundation Paradigms and Policies; Mutability, class clusters, notifications. Defining a Class in Implementation Files: Projects, dynamic typing, creating a new App, implementing a method, expanding Classses with init Methods. Organizing Data with Collections: Collecting Objects, Property Lists, Runtime, comparing the Collection Classes, Creating a Collection, Objective-C Literal Syntax, Enumerating collections, Testing Membership in a Collection, Accessing an Object in a Collection. Managing Memory and Runtime Objects: Managing objects in memory, managing reference counts manually and with ARC, variable qualifiers, variable autorelease. PART 3: EXPANDING AND EXTENDING CLASSES Protocols and Delegates: Subclassing, Protocols, Delegates, Looking Deeper Inside Protocols. Categories and Extensions: Comparing categories and protocols, categories vs subclasses, working with categories, class extensions, informal protocols. Associative References and Fast Enumeration: Objective-C 2.0 Time-Saving Features, Extending Classes by Adding Instance Variables (Sort of), Using Fast Enumeration. Blocks: Revisiting Blocks, Callbacks, Blocks, Exploring Blocks in Cocoa, Cocoa Blocks and Memory. PART 4: BEYOND THE BASICS Handling Exceptions and Errors: Exception and Error classes: NSException, NSError, Identifying exceptions, throwing exceptions, catching exceptions. Queues and Threading: Getting Started with Concurrency, Introducing Queues, Dispatch Sources, Using Dispatch Queues. Working with the Debugger: Logging Information, Console Logs, NSLog, Smart Breakpoints, enhancing breakpoints with messages. Using Xcode Debug Gauges for Analysis: Debug Gauges, Monitoing CPU and memory utilization, monitoring energy, Using Instruments. PART 5: OPTIONAL TOPICS C Syntax Summary: Data Types, Control Structures. Apps, Packages, and Bundles: Project Bundles, lproj Files, Asset Catalogs, plist Files, Precompiled Header Files (.pch). Archiving and Packaging Apps for Development and Testing: Archiving.

Objective-C programming
Delivered in Internationally or OnlineFlexible Dates
£4,997

Complete C programming

5.0(3)

By Systems & Network Training

Complete C programming training course description A hands-on introduction to programming in the ANSI C programming language. The course initially moves at a fast pace in order to spend as much time as possible on the subject of pointers - the area which cause the most bugs in C programs. What will you learn Write ANSI C programs Use the C libraries Debug C programs Examine existing code and determine its function. Complete C programming training course details Who will benefit: Programmers wishing to learn C. Programmers wishing to learn C++ or Java. Prerequisites: None, although experience in another high level language would be useful. Duration 5 days Complete C programming training course contents Getting started The compilation process, comments, main(), statement blocks, printf(). C data types and operators char, int, float and double, qualifiers, arithmetic and assignment operators, precedence, Associativity. Basic I/O C libraries, stdin and stdout, getchar(), putchar(), printf() formatting. Flow control if else, dangling elses, else if, while and for loops. switch statements, the null statement, break, continue and gotos. Functions Function calls, arguments and return types, function declarations (prototypes), function definitions, scope of variables. The preprocessor Preprocessor actions, macros, #include. Libraries and their relationship with header files. Conditional compilation. More data types and operators Logical, bitwise and other operators, type conversion, casting, typedefs and access modifiers. Arrays Declaring and handling arrays, common gotchas, multidimensional arrays. Pointers What are pointers? Why they are so important, declaring and using pointers,The three uses of the *,pointer example - scanf, pointers as arguments. More pointers Golden rules of pointers and arrays, pointers to arrays, pointer arithmetic, arrays of pointers, multiple indirection. Character/string manipulation Arrays of characters, string definition, working with strings, String library. Program arguments argc and argv, example uses,char *argv[] versus char ** argv. Program structure and storage classes Globals (externals), multi source programs, the look of a C program. Structures Declaration, the . and - operators, unions and bitfields. Library functions File handling, fopen and fclose, reading from and writing to files, fseek().calloc() and malloc()

Complete C programming
Delivered in Internationally or OnlineFlexible Dates
£3,697

Complete C# programming

5.0(3)

By Systems & Network Training

Complete C# programming training course description This training course teaches developers the programming skills that are required for developers to create Windows applications using the C# language. Students review the basics of C# program structure, language syntax, and implementation details, and then consolidate their knowledge throughout the week as they build an application that incorporates several features of the .NET Framework. What will you learn Use the syntax and features of C#. Create and call methods, catch and handle exceptions, and describe the monitoring requirements of large-scale applications. Implement a typical desktop application. Create class, define and implement interfaces, and create and generic collections. Read and write data to/from files. Build a GUI using XAML. Complete C# programming training course details Who will benefit: Programmers wishing to learn C#. Prerequisites: Developers attending this course should already have gained some limited experience using C# to complete basic programming tasks. Duration 5 days Complete C# programming training course contents Review of C# Syntax Overview of Writing Applications using C#, Datatypes, Operators, and Expressions. C# Programming Language Constructs. Hands on Developing the Class Enrolment Application. Methods, exceptions and monitoring apps Creating and Invoking Methods. Creating Overloaded Methods and Using Optional and Output Parameters. Handling Exceptions. Monitoring Applications. Hands on Extending the Class Enrolment Application Functionality. Developing a graphical application Implementing Structs and Enums. Organizing Data into Collections. Handling Events. Hands on Writing the Grades Prototype Application. Classes and Type-safe collections Creating Classes. Defining and Implementing Interfaces. Implementing Type-safe Collections. Hands on Adding Data Validation and Type-safety to the Grades Application. Class hierarchy using Inheritance Class hierarchies. Extending .NET framework classes. Creating generic types. Hands on Refactoring common functionality into the User Class. Reading and writing local data Reading and Writing Files. Serializing and Deserializing Data. Performing I/O Using Streams. Hands on Generating the Grades Report. Accessing a Database Creating and using entity data models. Querying and updating data by using LINQ. Hands on Retrieving and modifying grade data. Accessing remote data Accessing data across the web and in the cloud. Hands on Modifying grade data in the Cloud. Designing the UI for a graphical applicatione Using XAML to design a User Interface. Binding controls to data. Styling a UI. Hands on Customizing Student Photographs and Styling the Application. Improving performance and responsiveness Implementing Multitasking by using tasks and Lambda Expressions. Performing operations asynchronously. Synchronizing concurrent data access. Hands on Improving the responsiveness and performance of the application. Integrating with unmanaged code Creating and using dynamic objects. Managing the Lifetime of objects and controlling unmanaged resources. Hands on Upgrading the grades report. Creating reusable types and assemblies Examining Object Metadata. Creating and Using Custom Attributes. Generating Managed Code. Versioning, Signing and Deploying Assemblies. Hands on Specifying the Data to Include in the Grades Report. Encrypting and Decrypting Data Implementing Symmetric Encryption. Implementing Asymmetric Encryption. Hands on Encrypting and Decrypting Grades Reports.

Complete C# programming
Delivered in Internationally or OnlineFlexible Dates
£3,697

Introduction to Java programming

5.0(3)

By Systems & Network Training

Java training course description A comprehensive introduction of the Java language and environment. It is important to note that the course will assume that the delegates are already familiar with the C language as this enables more advanced features of the Java language to be covered in the course. The course will also give an overview of areas related to programming in Java. What will you learn Describe the Java architecture. Write Java applets and applications. Debug Java programs. Examine existing code and determine its function. Use multimedia extensions, the awt, multithreading, exceptions within Java Java training course details Who will benefit: Those wishing to program in Java. Prerequisites: Complete C programming Duration 5 days Java training course contents Review of UNIX fundamentals What is Java? What Java is, history of Java, reasons for success. The Java Virtual Machine, Bytecodes, getting up and running with Java, Java resources. Simple Java applications. C features in Java Java data structures, Java flow control, differences from C, arrays, strings and packages. OO features in Java Java classes and objects, inheritance, overloading, packages. Differences from C++. Java applets Applications vs. applets, HTML, the applet tag, applet methods, life cycle, testing and debugging. Multimedia applets Images, sounds, fonts, colours and animation. Java products The JDK in detail, other development environments. Javabeans and JDBC overviews. Abstract Window Toolkit JFC and Swing versus AWT. Event handling (JDK 1.1), GUIs, panels, buttons, lists, scrollbars, text areas, frames… Exception handling and multithreading Handling exceptions. Starting, pausing, stopping threads, producers, consumers, monitoring. More standard classes Java file I/O, Streams, The system class. The networking model, java.net classes. Security and Java Types of attack, the security manager, craplets, securing the network. Integrating legacy code with Java

Introduction to Java programming
Delivered in Internationally or OnlineFlexible Dates
£3,697

The Gold Card Training Programme for Experienced Workers

5.0(9)

By Optima Electrical Training

The NVQ Level 3 is designed to provide both new entrants and those seeking progression in their career, with the opportunity to develop the necessary skills to carry out job roles and responsibilities associated with the installation and maintenance of Electrotechnical systems.

The Gold Card Training Programme for Experienced Workers
Delivered In-Person in London + 2 more or UK WideFlexible Dates
£1,995

MEF Carrier Ethernet 2.0 Certification

5.0(3)

By Systems & Network Training

MEF Carrier Ethernet training course description The course progresses from a overview of the Carrier Ethernet service and how it works onto looking at the concepts in depth. Service attributes and management follow with the course finishing with studies of practical Carrier Ethernet. What will you learn Discuss and understand key Carrier Ethernet Concepts. Understand tasks related to designing, deploying and maintaining a Carrier Ethernet network. Offer effective solutions to implementing a Carrier Ethernet enterprise network given available customer resources and requirements. Carry out informed discussions using industry Carrier Ethernet 'vocabulary. Pass the MEF CECP 2.0 professional accreditation exam. MEF Carrier Ethernet training course details Who will benefit: Anyone working with Carrier Ethernet Prerequisites: The course attendees need to be conversant with data networks, as well as Ethernet and IP technologies. Duration 5 days MEF Carrier Ethernet training course contents Section One: Introduction to Carrier Ethernet Introduction to Carrier Ethernet: What is Carrier Ethernet? Evolution, advantages, The MEF, MEF specifications; UNI, EVC, OVC, EPL/EVPL, EP-LAN/ EVP-LAN, EP-Tree/EVP-Tree, etc, overview. How Carrier Ethernet Works: Service Frame Handling. Carrier Ethernet at Customer Premises, metro and core. Carrier Ethernet Workings, UNI attributes, Service Attributes (EVC and EVC per UNI attributes), Bandwidth Profiles, service multiplexing, L2 protocol processing; Carrier Ethernet equipment, CPE, aggregation and homing nodes, core equipment; management systems. The Setting Up of a Carrier Ethernet Service: Step 1: Choose service type, EPL/EVPL, EP-LAN/EVP-LAN, EPTree/EVP-Tree, EVLine...; Step 2: CPE tasks, UNI-C tasks (UNI attributes, service attributes (EVC and EVC per UNI) and bandwidth profiles), UNI-N tasks (L2 protocol handling). Step 3: Non-CPE tasks, Access, metro and core connections set up. Section Two: Carrier Ethernet Concepts in depth Carrier Ethernet Definitions in Depth: UNI, UNI I & II, UNI-N and UNI-C, etc.; NNI/ENNI; EVC; OVC, OVC type (P2P, M2M, Rooted MP), OVC end point (root, leaf, trunk), OVC end point map, OVC end point bundling; Service types in detail, EPL/EVPL, EP-LAN/EVP-LAN, EP-Tree/EVP-Tree, EVLine, Access EPL, Access EVPL . Carrier Ethernet Service Frame Handling: Unicast, multicast and broadcast frame delivery, Tagged, untagged and priority; Tagging, C and S-Tags, 802.3, 802.1d, 802.1q, 802.1ad, 802.1ah evolution, VLAN ID translation/preservation. CoS preservation. Other Key Carrier Ethernet Concepts: MTU, MTU at UNI, MTU at ENNI; Physical Layer Attributes, FE, GbE and 10GbE, Service Multiplexing and Bundling Concept and detail, rules and implications; Hairpin Switching Managing Bandwidth in a Carrier Ethernet Network: Token Bucket Algorithm, EIR, CIR, CBS, EBS, Coupling Flag; Frame Colors, recoloring, Color Awareness attribute, Color Forwarding; Bandwidth Profiles, rules and concepts. MEF CoS identifiers, DEI bit (in S-Tag), PCP bit (in C-Tag or S-Tag), or DSCP (in IP header), Multiflow bandwidth concepts; CoS Label/Color Identification. Section Three: Carrier Ethernet Service Attributes Overview: Carrier Ethernet 2.0; Blueprint C Service Attributes: Per UNI, Physical interfaces, Frame format, Ingress/egress Bandwidth Profiles, CEVLAN ID/EVC Map, UNI protection. EVC per UNI, Ingress/egress Bandwidth Profiles, etc.; Per EVC, CEVLAN ID Preservation, CoS ID Preservation, Relationship between SLA and SLP, Class of Service, etc. OVC, ENNI, OVC End Point per UNI and OVC End Point per ENNI, Ingress/egress bandwidth profiles, etc. Section Four: Managing Carrier Ethernet Networks Overview: MEF Service Lifecycle.Carrier Ethernet maintenance: Port, Link & NE failure, Service Protection Technologies, Fault Identification and Recovery, LAG, Active/Standby EVC, Single EVC with transport protection, G.8031, G.8032, MPLS FRR. SOAMs: Connectivity fault management, connectivity Monitoring, Loopback, Linktrace; Performance Management, Frame Delay, Inter Frame Delay Variation, Availability, Frame Loss Ratio, Resiliency, HLI, DMM, DMR, SLM, SLR; Key Concepts, Single vs dual ended, ordered UNI pair calculations. LOAMs: Link discovery, link monitoring, etc. Terminology and Concepts: MEG levels, MIPs. Section Five: Practical Carrier Ethernet Carrier Ethernet Transport Technologies:Layer 1: SDH. Layer 2: Bridging, provider bridging, PBB, PBBTE. Layer 2.5: MPLS VPWS, MPLS VPLS, MPLS-TP. Carrier Ethernet Access Technologies: fiber, SDH, active fiber, PON, GPON, 10G PON, OTN, WDM; copper, PDH, G-SDSL, 10Pass-TS, HFC; packet radio. Optimising mobile backhaul with Carrier Ethernet Key challenges solutions: Market pressure, LTE evolution, elements and architecture (RAN BS, NC, GWIF.), synchronization, bandwidth management. Circuit Emulation over Ethernet: Purpose, needs and applications. Synchronization: Phased, ToD, External Reference source, SynchE ,NTP, IEEE-1588 v2/ PTP, ACR; MEF Service Definitions for emulated circuits. Applying what you know: Practical examples and scenarios, Carrier Ethernet solutions; Practice Scenarios, Given a scenario, determine appropriate Ethernet services

MEF Carrier Ethernet 2.0 Certification
Delivered in Internationally or OnlineFlexible Dates
£4,997

C&G 2396 Electrical Design Course

5.0(9)

By Optima Electrical Training

This Level 4 City and Guilds 2396-01 Design and Verification of Electrical Installations course has been designed to help develop the skills and up date the knowledge of the requirements to enable you to professionally design, erect and then verify an electrical installation. This course is aimed at those who will have responsibility for designing, supervising, installing and testing electrical installations. Further information can be found here: C&G 2396 Electrical Design Course — Optima Electrical Training (optima-ect.com)

C&G 2396 Electrical Design Course
Delivered In-Person in London + 2 more or UK WideFlexible Dates
£1,195

The Gold Card Training Programme

5.0(9)

By Optima Electrical Training

The Gold Card Training Programme is the most comprehensive electrician course available. We offer weekday, weekend and evening delivery options. JIB ECS (Gold) Card is quickly becoming a necessity when seeking work on commercial sites, or sub-contracting to larger contractors.

The Gold Card Training Programme
Delivered In-Person in London + 2 more or UK WideFlexible Dates
£8,995
123...8

Educators matching "C++"

Show all 5
Education And Skills Training & Development

education and skills training & development

Doncaster

Welcome to the Education and Skills Training & Development Ltd's privacy notice. Education and Skills Training & Development Ltd respects your privacy and is committed to protecting your personal data. This privacy notice will inform you as to how we look after your personal data when you visit our website (regardless of where you visit it from) and tell you about your privacy rights and how the law protects you. This privacy notice is provided in a layered format so you can click through to the specific areas set out below. Please also use the Glossary to understand the meaning of some of the terms used in this privacy notice. 1. IMPORTANT INFORMATION AND WHO WE ARE 2. THE DATA WE COLLECT ABOUT YOU 3. HOW IS YOUR PERSONAL DATA COLLECTED 4. HOW WE USE YOUR PERSONAL DATA 5. DISCLOSURES OF YOUR PERSONAL DATA 6. INTERNATIONAL TRANSFERS 7. DATA SECURITY 8. DATA RETENTION 9. YOUR LEGAL RIGHTS 10. GLOSSARY 1. Important information and who we are Purpose of this privacy notice This privacy notice aims to give you information on how Education and Skills Training & Development Ltd collects and processes your personal data through your use of this website, including any data you may provide through this website when you sign up to our newsletter, purchase a product or service, take part in a competition or enrol yourself or one of your employees onto one of our courses. This website is not intended for children and we do not knowingly collect data relating to children. It is important that you read this privacy notice together with any other privacy notice or fair processing notice we may provide on specific occasions when we are collecting or processing personal data about you so that you are fully aware of how and why we are using your data. This privacy notice supplements the other notices and is not intended to override them. Controller Education and Skills Training & Development Ltd is the controller and responsible for your personal data (collectively referred to as "COMPANY", "we", "us" or "our" in this privacy notice). We have appointed a data protection officer (DPO) who is responsible for overseeing questions in relation to this privacy notice. If you have any questions about this privacy notice, including any requests to exercise your legal rights, please contact the DP] using the details set out below. Contact details Our full details are: Full name of legal entity: Education and Skills Training & Development Ltd Name or title of DPO : James Hart Email address: james.hart@education-and-skills.com Postal address: 5C Oxford House, Sixth Avenue, Doncaster DN9 3GG Telephone number: 01302 802220 You have the right to make a complaint at any time to the Information Commissioner's Office (ICO), the UK supervisory authority for data protection issues (www.ico.org.uk). We would, however, appreciate the chance to deal with your concerns before you approach the ICO so please contact us in the first instance. Changes to the privacy notice and your duty to inform us of changes This version was last updated on 1st July 2018 and is reviewed annually. It is important that the personal data we hold about you is accurate and current. Please keep us informed if your personal data changes during your relationship with us. Third-party links This website may include links to third-party websites, plug-ins and applications. Clicking on those links or enabling those connections may allow third parties to collect or share data about you. We do not control these third-party websites and are not responsible for their privacy statements. When you leave our website, we encourage you to read the privacy notice of every website you visit. 2. The data we collect about you Personal data, or personal information, means any information about an individual from which that person can be identified. It does not include data where the identity has been removed (anonymous data). We may collect, use, store and transfer different kinds of personal data about you which we have grouped together follows: · Identity Data includes first name, maiden name, last name, username or similar identifier, marital status, title, date of birth, national insurance number and gender. · Contact Data includes billing address, delivery address, email address and telephone numbers. · Financial Data includes bank account and payment card details. · Transaction Data includes details about payments to and from you and other details of products and services you have purchased from us. · Technical Data includes internet protocol (IP) address, your login data, browser type and version, time zone setting and location, browser plug-in types and versions, operating system and platform and other technology on the devices you use to access this website. · Profile Data includes your username and password, purchases or orders made by you, your interests, preferences, feedback and survey responses. · Usage Data includes information about how you use our website, products and services. · Marketing and Communications Data includes your preferences in receiving marketing from us and our third parties and your communication preferences. We also collect, use and share Aggregated Data such as statistical or demographic data for any purpose. Aggregated Data may be derived from your personal data but is not considered personal data in law as this data does not directly or indirectly reveal your identity. For example, we may aggregate your Usage Data to calculate the percentage of users accessing a specific website feature. However, if we combine or connect Aggregated Data with your personal data so that it can directly or indirectly identify you, we treat the combined data as personal data which will be used in accordance with this privacy notice. We do not collect any Special Categories of Personal Data about you (this includes details about your race or ethnicity, religious or philosophical beliefs, sex life, sexual orientation, political opinions, trade union membership, information about your health and genetic and biometric data). Nor do we collect any information about criminal convictions and offences. If you fail to provide personal data Where we need to collect personal data by law, or under the terms of a contract we have with you and you fail to provide that data when requested, we may not be able to perform the contract we have or are trying to enter into with you (for example, to provide you with goods or services). In this case, we may have to cancel a product or service you have with us but we will notify you if this is the case at the time. 3. How is your personal data collected? We use different methods to collect data from and about you including through: · Direct interactions. You may give us your Identity, Contact and Financial Data by filling in forms or by corresponding with us by post, phone, email or otherwise. This includes personal data you provide when you: · apply for our products or services; · enrol on one of our courses – government funded or not · create an account on our website; · subscribe to our service or publications; · request marketing to be sent to you; · enter a competition, promotion or survey; or · give us some feedback. · Automated technologies or interactions. As you interact with our website, we may automatically collect Technical Data about your equipment, browsing actions and patterns. We collect this personal data by using cookies, server logs and other similar technologies. We may also receive Technical Data about you if you visit other websites employing our cookies. · Third parties or publicly available sources. We may receive personal data about you from various third parties and public sources as set out below: · Technical Data from the following parties: (a) analytics providers such as Google based outside the EU; (b) advertising networks based inside the EU; and (c) search information providers based inside OR outside the EU. · Contact, Financial and Transaction Data from providers of technical, payment and delivery services based inside OR outside the EU. · Identity and Contact Data from data brokers or aggregators based inside OR outside the EU. · Identity and Contact Data from publicly availably sources such as Companies House and the Electoral Register based inside the EU. · Achievement of prior qualifications from the Learner Records Service and Department of Education via the ESFA or Student Loans Company 4. How we use your personal data We will only use your personal data when the law allows us to. Most commonly, we will use your personal data in the following circumstances: · Where we need to perform the contract we are about to enter into or have entered into with you. · Where it is necessary for our legitimate interests (or those of a third party) and your interests and fundamental rights do not override those interests. · Where we need to comply with a legal or regulatory obligation. Generally we do not rely on consent as a legal basis for processing your personal data other than in relation to sending third party direct marketing communications to you via email or text message. You have the right to withdraw consent to marketing at any time by contacting us. Purposes for which we will use your personal data We have set out below, in a table format, a description of all the ways we plan to use your personal data, and which of the legal bases we rely on to do so. We have also identified what our legitimate interests are where appropriate. Note that we may process your personal data for more than one lawful ground depending on the specific purpose for which we are using your data. Please contact us if you need details about the specific legal ground we are relying on to process your personal data where more than one ground has been set out in the table below.