Duration 4 Days 24 CPD hours This course is intended for This is an introductory-level C++ programming course designed for developers with experience programming in C or other languages. Practical hands-on prior programming experience and knowledge is required. Overview This 'skills-centric' course is about 50% hands-on lab and 50% lecture, designed to train attendees in basic coding with C++, coupling the most current, effective techniques with the soundest industry practices. Our engaging instructors and mentors are highly experienced practitioners who bring years of current 'on-the-job' experience into every classroom. Working in a hands-on learning environment, guided by our expert team, attendees will learn: Writing procedural programs using C++ Using private, public and protected keywords to control access to class members Defining a class in C++ Writing constructors and destructors Writing classes with const and static class members Overloading operators Implementing polymorphic methods in programs Writing programs using file I/O and string streams Using manipulators and stream flags to format output Using the keyword template to write generic functions and classes Writing programs that use generic classes and functions Writing programs that use algorithms and containers of the Standard Library Apply object-oriented design techniques to real-world programming problems Using algorithms and containers of the Standard Library to manipulate string data Understand how C++ protects the programmer from implementation changes in other modules of an application Using try() blocks to trap exceptions Using catch() blocks to handle exceptions Defining exceptions and using throw to trigger them Introduction to C++ Programming / C++ Essentials is a skills-focused, hands-on C++ training course geared for experienced programmers who need to learn C++ coupled with sounds coding skills and best practices for OO development. Students will leave this course armed with the required skills to put foundation-level C++ programming skills right to work in a practical environment. The central concepts of C++ syntax and style are taught in the context of using object-oriented methods to achieve reusability, adaptability and reliability. Emphasis is placed on the features of C++ that support abstract data types, inheritance, and polymorphism. Students will learn to apply the process of data abstraction and class design. Practical aspects of C++ programming including efficiency, performance, testing, and reliability considerations are stressed throughout. Comprehensive hands on exercises are integrated throughout to reinforce learning and develop real competency Moving from C to C++ (Optional) New Compiler Directives Stream Console I/O Explicit Operators Standard Libraries Data Control Capabilities Handling Data New Declaration Features Initialization and Assignment Enumerated Types The bool Type Constant Storage Pointers to Constant Storage Constant Pointers References Constant Reference Arguments Volatile Data Global Data Functions Function Prototypes and Type Checking Default Function Data Types Function Overloading Problems with Function Overloading Name Resolution Promotions and Conversions Call by Value Reference Declarations Call-by-Reference and Reference Types References in Function Return Constant Argument Types Conversion of Parameters Using Default Initializers Providing Default Arguments Inline Functions Operator Overloading Advantages and Pitfalls of Overloading Member Operator Syntax and Examples Class Assignment Operators Class Equality Operators Non-Member Operator Overloading Member and Non-Member Operator Functions Operator Precedence This Pointer Overloading the Assignment Operator Overloading Caveats Creating and Using Objects Creating Automatic Objects Creating Dynamic Objects Calling Object Methods Constructors Initializing Member consts Initializer List Syntax Allocating Resources in Constructor Destructors Block and Function Scope File and Global Scope Class Scope Scope Resolution Operator :: Using Objects as Arguments Objects as Function Return Values Constant Methods Containment Relationships Dynamic Memory Management Advantages of Dynamic Memory Allocation Static, Automatic, and Heap Memory Free Store Allocation with new and delete Handling Memory Allocation Errors Controlling Object Creation Object Copying and Copy Constructor Automatic Copy Constructor Conversion Constructor Streaming I/O Streams and the iostream Library Built-in Stream Objects Stream Manipulators Stream Methods Input/Output Operators Character Input String Streams Formatted I/O File Stream I/O Overloading Stream Operators Persistent Objects Introduction to Object Concepts The Object Programming Paradigm Object-Orientated Programming Definitions Information Hiding and Encapsulation Separating Interface and Implementation Classes and Instances of Objects Overloaded Objects and Polymorphism Declaring and Defining Classes Components of a Class Class Structure Class Declaration Syntax Member Data Built-in Operations Constructors and Initialization Initialization vs. Assignment Class Type Members Member Functions and Member Accessibility Inline Member Functions Friend Functions Static Members Modifying Access with a Friend Class Templates Purpose of Template Classes Constants in Templates Templates and Inheritance Container Classes Use of Libraries Strings in C++ Character Strings The String Class Operators on Strings Member Functions of the String Class Inheritance Inheritance and Reuse Composition vs. Inheritance Inheritance: Centralized Code Inheritance: Maintenance and Revision Public, Private and Protected Members Redefining Behavior in Derived Classes Designing Extensible Software Systems Syntax for Public Inheritance Use of Common Pointers Constructors and Initialization Inherited Copy Constructors Destructors and Inheritance Public, Protected, Private Inheritance Exceptions Types of Exceptions Trapping and Handling Exceptions Triggering Exceptions Handling Memory Allocation Errors C++ Program Structure Organizing C++ Source Files Integrating C and C++ Projects Using C in C++ Reliability Considerations in C++ Projects Function Prototypes Strong Type Checking Constant Types C++ Access Control Techniques Polymorphism in C++ Definition of Polymorphism Calling Overridden Methods Upcasting Accessing Overridden Methods Virtual Methods and Dynamic Binding Virtual Destructors Abstract Base Classes and Pure Virtual Methods Multiple Inheritance Derivation from Multiple Base Classes Base Class Ambiguities Virtual Inheritance Virtual Base Classes Virtual Base Class Information The Standard Template Library STL Containers Parameters Used in Container Classes The Vector Class STL Algorithms Use of Libraries
Duration 5 Days 30 CPD hours This course is intended for This course is intended for students new to computer programming or experienced programmers who are new to client-side web development. Overview After completing this course, you will be able to: Describe the technologies involved in web development. Create HTML pages with links and images. Explain the benefits of CSS. Style HTML pages with CSS. Explain the concepts of objects, methods, and properties. Work with JavaScript variables. Create their own custom functions in JavaScript. Write flow control logic in JavaScript. Write JavaScript code that listens for and handles events, such as mouse clicks and page loads. Create forms with HTML and validate them with JavaScript. Use regular expressions in JavaScript for advanced form validation. This course is intended for IT professionals interested in becoming client-side web developers. who need to get a jump start on all three technologies. The course includes more than 30 exercises, providing a rapid hands-on introduction to the three major client-side languages: HTML, CSS, and JavaScript. Students should be prepared to cover a lot of ground quickly.This material updates and replaces course Microsoft course 20480 which was previously published under the title Programming in HTML5 with JavaScript and CSS3. Module 1: A Quick Overview of Web Development HTML is Part of a Team Client-side Programming Server-side Programming Web Development Technologies Module 2: Introduction to HTML Exercise: A Simple HTML Document Getting Started with a Simple HTML Document HTML Elements, Attributes, and Comments The HTML Skeleton Viewing the Page Source Special Characters HTML Elements and Special Characters History of HTML The lang Attribute Module 3: Paragraphs, Headings, and Text Paragraphs Heading Levels Breaks and Horizontal Rules Exercise: Paragraphs, Headings, and Text The div Tag Creating an HTML Page Quoted Text Preformatted Text Inline Semantic Elements Exercise: Adding Inline Elements Module 4: HTML Links Links Introduction Text Links Absolute vs. Relative Paths Targeting New Tabs Email Links Exercise: Adding Links Lorem Ipsum The title Attribute Linking to a Specific Location on the Page Targeting a Specific Location on the Page Module 5: HTML Images Inserting Images Image Links Adding Images to the Document Exercise: Adding Images to the Page Providing Alternative Images Module 6: HTML Lists Unordered Lists Ordered Lists Definition Lists Exercise: Creating Lists Module 7: Crash Course in CSS Benefits of Cascading Style Sheets CSS Rules Selectors Combinators Precedence of Selectors How Browsers Style Pages CSS Resets CSS Normalizers External Stylesheets, Embedded Stylesheets, and Inline Styles Exercise: Creating an External Stylesheet Exercise: Creating an Embedded Stylesheet Exercise: Adding Inline Styles div and span Exercise: Styling div and span Media Types Units of Measurement Inheritance Module 8: CSS Fonts font-family @font-face font-size font-style font-variant font-weight line-height font shorthand Exercise: Styling Fonts Module 9: Color and Opacity About Color and Opacity Color and Opacity Values Color Opacity Exercise: Adding Color and Opacity to Text Module 10: CSS Text letter-spacing text-align text-decoration text-indent text-shadow text-transform white-space word-break word-spacing Exercise: Text Properties Module 11: JavaScript Basics JavaScript vs. EcmaScript The HTML DOM JavaScript Syntax Accessing Elements Where Is JavaScript Code Written? JavaScript Objects, Methods, and Properties Exercise: Alerts, Writing, and Changing Background Color Module 12: Variables, Arrays, and Operators JavaScript Variables A Loosely Typed Language Google Chrome DevTools Storing User-Entered Data Exercise: Using Variables Constants Arrays Exercise: Working with Arrays Associative Arrays Playing with Array Methods JavaScript Operators The Modulus Operator Playing with Operators The Default Operator Exercise: Working with Operators Module 13: JavaScript Functions Global Objects and Functions Exercise: Working with Global Functions User-defined Functions Exercise: Writing a JavaScript Function Returning Values from Functions Module 14: Built-In JavaScript Objects Strings Math Date Helper Functions Exercise: Returning the Day of the Week as a String Module 15: Conditionals and Loops Conditionals Short-circuiting Switch / Case Ternary Operator Truthy and Falsy Exercise: Conditional Processing Loops while and do?while Loops for Loops break and continue Exercise: Working with Loops Array: forEach() Module 16: Event Handlers and Listeners On-event Handlers Exercise: Using On-event Handlers The addEventListener() Method Anonymous Functions Capturing Key Events Exercise: Adding Event Listeners Benefits of Event Listeners Timers Typing Test Module 17: The HTML Document Object Model CSS Selectors The innerHTML Property Nodes, NodeLists, and HTMLCollections Accessing Element Nodes Exercise: Accessing Elements Dot Notation and Square Bracket Notation Accessing Elements Hierarchically Exercise: Working with Hierarchical Elements Accessing Attributes Creating New Nodes Focusing on a Field Shopping List Application Exercise: Logging Exercise: Adding EventListeners Exercise: Adding Items to the List Exercise: Dynamically Adding Remove Buttons to the List Items Exercise: Removing List Items Exercise: Preventing Duplicates and Zero-length Product Names Manipulating Tables Module 18: HTML Forms How HTML Forms Work The form Element Form Elements Buttons Exercise: Creating a Registration Form Checkboxes Radio Buttons Exercise: Adding Checkboxes and Radio Buttons Fieldsets Select Menus Textareas Exercise: Adding a Select Menu and a Textarea HTML Forms and CSS Module 19: JavaScript Form Validation Server-side Form Validation HTML Form Validation Accessing Form Data Form Validation with JavaScript Exercise: Checking the Validity of the Email and URL Fields Checking Validity on Input and Submit Events Adding Error Messages Validating Textareas Validating Checkboxes Validating Radio Buttons Validating Select Menus Exercise: Validating the Ice Cream Order Form Giving the User a Chance Module 20: Regular Expressions Getting Started Regular Expression Syntax Backreferences Form Validation with Regular Expressions Cleaning Up Form Entries Exercise: Cleaning Up Form Entries A Slightly More Complex Example
Duration 4 Days 24 CPD hours This course is intended for This in an intermediate-level Java development course geared for students experienced with Java and Spring programming essentials. This course does not cover Java or Spring development basics. Overview Working within in an engaging, hands-on learning environment, guided by our expert team, attendees will: Understand the ReactiveX specification Understand the basics of Reactive Programming Discuss the advantages and limitations of Observables Write a client application capable of handling Reactive events Apply operators to event streams to filter, modify and combine the objects emitted by event publishers Select the appropriate type of Event Source Use both Cold and Hot Observables Deal with backpressure problems in reactive programming Develop a reactive web application using Spring WebFlux Define application flows of a WebFlux application Use the WebClient API to work with both synchronous and streaming APIs Develop Unit and Integration tests to test WebFlux endpoints Creating a reactive REST endpoint Become familiar with the basics of WebSockets Create a WebSocket endpoint using Spring Create a WebSocket client Understand the basics of NoSQL Become familiar with the basics of MongoDB Understand how the data in MongoDB can be retrieved using a Reactive API Define Spring Data MongoDB repositories Query the MongoDB using Spring Data Define a reactive repository using MongoDB Explore the Spring Data R2DBC API to perform reactive CRUD operations against a relational database Spring Data reative allow us to implement database operations relying on Reative Programming APIs. While the Spring R2DBC initiative aims to bring reactive programming to relational databaes, several NoSQL databases already provide this possibility. After an introduction to NoSQL and the MongoDB, this courses covers the APIs available to communicate with this NoSQL database using both blocking and reactive APIs.Introdcution to Reactive Spring is a comprehensive Java training workshop geared for experienced developers who wish to explore concurrent, asynchronous and reactive programming APIs and techniques using Spring. After an introduction to reactive programming, Reactive Streams and the Project Reactor APIs, this course will show how this APIs are integrated into Spring. Spring 5 includes Spring WebFlux, providing a reactive programming model for web applications, including support for Reactive REST APIs. Spring WebSocket assists in the creation of web applications which provide a full-duplex, two-way communication between client and server. Introduction to Reactive Programming Reactive Manifesto Introduce ReactiveX ReactiveX implementations The Observer, Iterator pattern and functional programming Discuss hot and cold publishers Reactive Streams API Introduce the Reactive Streams specification Publisher and Subscribers java.util.concurrent.Flow Transformation of Messages (Processor) Controlling messages Tutorial: Setup Eclipse for Using Maven Introduction Introduce the Reactor Building blocks Flux and Mono Creating observables Subscribing to a stream Testing Event Sources (introduction) Testing reactive implementations StepVerifier : test sequence of emitted items Defining expectations TestPublisher: produce test data to test downstream operators Reactive Operators Introduce Operators Show the use of marble diagrams Explain some commonly used operators Callback operators Schedulers (Multithreading) Thread usage of subscriber and consumer Using the subscribeOn method Introduce the Scheduler interface Using the observeOn method Backpressure Strategies for dealing with Backpressure ?reactive pull? backpressure Exception Handling Handling errors in onError Exception handling strategies Using onErrorReturn or onErrorNext operators Using the retry operators The Global Error Handler Spring Data Review Quick review of Spring Data repositories Query return types Defining Query methods Pagination and sorting R2DBC Reactive Relational Database Connectivity DatabaseClient Performing CRUD operations Reactive Query annotated methods Spring WebFlux: Introduction Annotated Controllers Functional Endpoints WebFlux configuration Creating a reactive REST endpoint Defining flows Defining the application flow Actions Defining decision Navigating flows RouterFunction View Technologies View technologies Using Thymeleaf to create the view View Configuration Spring WebClient: Introduction to WebClient Working with asynchronous and streaming APIs Making requests Handling the response Lab: WebClient WebTestClient Testing WebFlux server endpoints Testing controllers or functions Define integration tests Introduction to Spring Reactive WebSockets Be familiar with the basics of WebSockets Understand the HTTP handshake and upgrade Name some of the advantages of WebSockets Defining the WebSocket WebSocket Message Handling WebSocketSession Implementing the WebSockethandler Creating a Browser WebSocket Client WebSocket STOMP Streaming (or Simple) text-orientated messaging protocol Introduce SockJS Connecting to the STOMP endpoint Configuring the message broker STOMP destinations Reactive WebSocket Reactive WebSocket support Implement the reactive WebSocketHandler BigData Introduce Big Data Explain the need for enhanced data storage Introduction to MongoDB JavaScript Object Notation Overview Introduce Binary JSON (BSON) Starting the database Creating Collections and Documents Executing ?simple? database commands Introduce the ObjectID Searching for documents using query operators Updating and deleting documents MongoDB Compass Spring and MongoDB MongoDB Support in Spring Data MongoClient and MongoTemplate Spring Data MongoDB configuration @EnableMongoRepositories Adding documents to the database The @Document and @Field annotations Polymorphism and the _class property The Criteria object Spring Data MongoDB MongoRepository Field naming strategy Using JSON queries to find documents The @PersistenceConstructor annotation Reactive Repositories with MongoDB Using reactive repositories ReactiveMongoTemplate RxJava or Reactor Additional course details: Nexus Humans Introduction to Reactive Spring (TT3355 ) training program is a workshop that presents an invigorating mix of sessions, lessons, and masterclasses meticulously crafted to propel your learning expedition forward. This immersive bootcamp-style experience boasts interactive lectures, hands-on labs, and collaborative hackathons, all strategically designed to fortify fundamental concepts. Guided by seasoned coaches, each session offers priceless insights and practical skills crucial for honing your expertise. Whether you're stepping into the realm of professional skills or a seasoned professional, this comprehensive course ensures you're equipped with the knowledge and prowess necessary for success. While we feel this is the best course for the Introduction to Reactive Spring (TT3355 ) course and one of our Top 10 we encourage you to read the course outline to make sure it is the right content for you. Additionally, private sessions, closed classes or dedicated events are available both live online and at our training centres in Dublin and London, as well as at your offices anywhere in the UK, Ireland or across EMEA.
The importance of building services to the success of an organisation has never been greater and continues to grow. Developers and occupiers are becoming more aware of the contribution that building services make to the well being of occupants and hence their perception of the quality of the working environment. Those involved with the design, construction, maintenance and operation will increasingly be required to deliver building services that demonstrable contribution to the occupier's business. Energy efficiency, carbon management and occupant satisfaction depend substantially on the way building services are designed, managed and operated. To optimise these aspects, an informed strategic approach is essential. Tried and tested techniques and processes are available that, when applied holistically, will deliver substantial benefits. This course reviews best practice in the area and inspires participants to ensure that building services perform at their optimal level. To provide a better understanding of how building services can be designed, managed and operated to: Maximise occupant comfort, satisfaction and wellbeing Add value and contribute to the success of the business of the occupier Improve health safety Reduce operating cost, energy use, carbon emissions and environmental impact Optimise cost and value Provide strategies for continuous improvement and sustainable operation 1 Building services fundamentals The function of services in commercial buildings and their importance to the core business 2 Techniques and processes for optimising cost and value Programmed operation evaluation Continuous commissioning Lifetime product management Performance-based service Energy efficiency and the scope for environmental improvement 3 Making the business case and preparing the strategy Motivating decision-makers Empowering those who have to deliver the results Managing business risk 4 Strategy implementation and monitoring results Ensuring that rich and robust feedback is available to support continuous improvement and strategy enhancementWhen to get feedbackWhyHowWhat to do with it 5 Case histories and 'air time' Sharing experience and addressing specific issues of interest to participants Course review Close
The course covers investigation and risk assessment of asbestos-contaminated soils and sites, including waste classification and land remediation. It will cover the current HSE and EA legislation and guidance, assessing risk to health from asbestos in soils and how to assess the land, analysis types and interpretation, and remedial actions.
The course covers investigation and risk assessment of asbestos-contaminated soils and sites, including waste classification and land remediation. It will cover the current HSE and EA legislation and guidance, assessing risk to health from asbestos in soils and how to assess the land, analysis types and interpretation, and remedial actions.
Overview Learn about contract triggers, including European vs. American style, and variations like one-touch, no-touch, and double no-touch options. Who the course is for Risk managers IT System developers Traders and derivatives teams Consultants and brokers Course Content To learn more about the day by day course content please click here To learn more about schedule, pricing & delivery options, book a meeting with a course specialist now
Overview A review of the most enduringly popular structured equity-linked products. This 1 day hands-on programme will help you gain familiarity with 1st generation & 2nd generation structured products convexity – and their applications. Discover techniques for maximising the participation rate to enhance returns for investors. Explore the trade-offs between coupon payments and gearing, and how they affect the risk-return profile of the notes. Explore ladder structures, their relationship to lookbacks, and the benefits they offer to investors. Learn about accumulators, their structuring, and the reasons behind their controversy in the market. Who the course is for Structured Products Desks, Financial Engineers, Product Controllers Traders, Dealing Room Staff and Sales People Risk Managers, Quantitative Analysts and Middle Office Managers Fund Managers, Investors, Senior Managers Researchers and Systems Developers Course Content To learn more about the day by day course content please click here To learn more about schedule, pricing & delivery options, book a meeting with a course specialist now
Overview This 2-day programme covers the latest techniques used for fixed income attribution. This hands-on course enables participants to get a practical working experience of fixed income attribution, from planning to implementation and analysis. After completing the course you will have developed the skills to: Understand how attribution works and the value it adds to the investment process Interpret attribution reports from commercial systems Assess the strengths and weaknesses of commercially available attribution software Make informed decisions about the build vs. buy decision Present results in terms accessible to all parts of the business Who the course is for Performance analysts Fund and portfolio managers Investment officers Fixed Income professionals (marketing/sales) Auditors and compliance Quants and IT developers Course Content To learn more about the day by day course content please click here To learn more about schedule, pricing & delivery options, book a meeting with a course specialist now
Duration 1 Days 6 CPD hours This course is intended for This course is designed for non-technical business executives who are tasked with making business decisions about emerging technologies in their businesses. Overview You will learn:Blockchain Cloud BasicsIoT OverviewMobility and Ambient ComputingMachine Learning and Deep LearningChatbots, Robotics, and More This course is designed for non-technical business executives looking to learn and understand emerging technologies. Blockchain Cloud BasicsIoT OverviewMobility and Ambient ComputingMachine Learning and Deep LearningChatbots, Robotics, and More