Duration 4 Days 24 CPD hours This course is intended for Application developers who want to increase their understanding of Spring and Spring Boot with hands-on experience and a focus on fundamentals Overview By the end of the course, you should be able to meet the following objectives: Spring configuration using Java Configuration and Annotations Aspect oriented programming with Spring Testing Spring applications using JUnit 5 Spring Data Access - JDBC, JPA and Spring Data Spring Transaction Management Simplifying application development with Spring Boot Spring Boot auto-configuration, starters and properties Build a simple REST application using Spring Boot, embedded Web Server and fat JARs or classic WARs Implementing REST client applications using RestTemplate and WebClient Spring Security Enable and extend metrics and monitoring capabilities using Spring Boot actuator Utilize Spring Boot enhancements to testing This course offers hands-on experience with the major features of Spring and Spring Boot, which includes configuration, data access, REST, AOP, auto-configuration, actuator, security, and Spring testing framework to build enterprise and microservices applications. On completion, participants will have a foundation for creating enterprise and cloud-ready applications. Introduction to Spring Java configuration and the Spring application context @Configuration and @Bean annotations @Import: working with multiple configuration files Defining bean scopes Launching a Spring Application and obtaining Beans Spring JAVA Configuration: A Deeper Look External properties & Property sources Environment abstraction Using bean profiles Spring Expression Language (SpEL) Annotation-based Dependency Injection Component scanning Autowiring using @Autowired Java configuration versus annotations, mixing. Lifecycle annotations: @PostConstruct and @PreDestroy Stereotypes and meta-annotations Factory Pattern in Spring Using Spring FactoryBeans Advanced Spring: How Does Spring Work Internally? The Spring Bean Lifecycle The BeanFactoryPostProcessor interception point The BeanPostProcessor interception point Spring Bean Proxies @Bean method return types Aspect-oriented programming What problems does AOP solve? Defining pointcut expressions Implementing various types of advice Testing a Spring-based Application Spring and Test-Driven Development Spring 5 integration testing with JUnit 5 Application context caching and the @Dirties Context annotation Profile selection with @Active Profiles Easy test data setup with @Sql Data Accss and JDBC with Spring How Spring integrates with existing data access technologies Data Access Exception hierarchy Spring?s Jdbc Template Database Transactions with Spring Transactions overview Transaction management with Spring Transaction propagation and rollback rules Transactions and integration testing Spring Boot Introduction Introduction to Spring Boot Features Value Proposition of Spring Boot Creating a simple Boot application using Spring Initializer website Spring Boot Dependencies, Auto-configuration, and Runtime Dependency management using Spring Boot starters How auto-configuration works Configuration properties Overriding auto-configuration Using Command Line Runner JPA with Spring and Spring Data Quick introduction to ORM with JPA Benefits of using Spring with JPA JPA configuration in Spring Configuring Spring JPA using Spring Boot Spring Data JPA dynamic repositories Spring MVC Architecture and Overview Introduction to Spring MVC and request processing Controller method signatures Using @Controller, @RestController and @GetMapping annotations Configuring Spring MVC with Spring Boot Spring Boot packaging options, JAR or WAR Rest with Spring MVC An introduction to the REST architectural style Controlling HTTP response codes with @ResponseStatus Implementing REST with Spring MVC, @RequestMapping, @RequestBody and @ResponseBody Spring MVC?s HttpMessageConverters and automatic content negotiation Spring Security What problems does Spring Security solve? Configuring authentication Implementing authorization by intercepting URLs Authorization at the Java method level Understanding the Spring Security filter chain Spring security testing Actuators, Metrics and Health Indicators Exposing Spring Boot Actuator endpoints Custom Metrics Health Indicators Creating custom Health Indicators External monitoring systems Spring Boot Testing Enhancements Spring Boot testing overview Integration testing using @SpringBootTest Web slice testing with MockMvc framework Slices to test different layers of the application Spring Security Oauth (Optional Topic) OAuth 2 Overview Implementing OAuth 2 using Spring Security OAuth Reactive Applications with Spring (Optional Topic) Overview of Reactive Programming concepts Reactive Programming support in Spring Using Spring?s reactive WebClient Additional course details:Notes Delivery by TDSynex, Exit Certified and New Horizons an VMware Authorised Training Centre (VATC) Nexus Humans VMware Spring: Core Training 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 VMware Spring: Core Training 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.
Duration 2 Days 12 CPD hours This course is intended for Experienced DataStage developers seeking training in more advanced DataStage job techniques and who seek techniques for working with complex types of data resources. Overview Use Connector stages to read from and write to database tables Handle SQL errors in Connector stages Use Connector stages with multiple input links Use the File Connector stage to access Hadoop HDFS data Optimize jobs that write to database tables Use the Unstructured Data stage to extract data from Excel spreadsheets Use the Data Masking stage to mask sensitive data processed within a DataStage job Use the Hierarchical stage to parse, compose, and transform XML data Use the Schema Library Manager to import and manage XML schemas Use the Data Rules stage to validate fields of data within a DataStage job Create custom data rules for validating data Design a job that processes a star schema data warehouse with Type 1 and Type 2 slowly changing dimensions This course is designed to introduce you to advanced parallel job data processing techniques in DataStage v11.5. In this course you will develop data techniques for processing different types of complex data resources including relational data, unstructured data (Excel spreadsheets), and XML data. In addition, you will learn advanced techniques for processing data, including techniques for masking data and techniques for validating data using data rules. Finally, you will learn techniques for updating data in a star schema data warehouse using the DataStage SCD (Slowly Changing Dimensions) stage. Even if you are not working with all of these specific types of data, you will benefit from this course by learning advanced DataStage job design techniques, techniques that go beyond those utilized in the DataStage Essentials course. Accessing databases Connector stage overview - Use Connector stages to read from and write to relational tables - Working with the Connector stage properties Connector stage functionality - Before / After SQL - Sparse lookups - Optimize insert/update performance Error handling in Connector stages - Reject links - Reject conditions Multiple input links - Designing jobs using Connector stages with multiple input links - Ordering records across multiple input links File Connector stage - Read and write data to Hadoop file systems Demonstration 1: Handling database errors Demonstration 2: Parallel jobs with multiple Connector input links Demonstration 3: Using the File Connector stage to read and write HDFS files Processing unstructured data Using the Unstructured Data stage in DataStage jobs - Extract data from an Excel spreadsheet - Specify a data range for data extraction in an Unstructured Data stage - Specify document properties for data extraction. Demonstration 1: Processing unstructured data Data masking Using the Data Masking stage in DataStage jobs - Data masking techniques - Data masking policies - Applying policies for masquerading context-aware data types - Applying policies for masquerading generic data types - Repeatable replacement - Using reference tables - Creating custom reference tables Demonstration 1: Data masking Using data rules Introduction to data rules - Using the Data Rules Editor - Selecting data rules - Binding data rule variables - Output link constraints - Adding statistics and attributes to the output information Use the Data Rules stage to valid foreign key references in source data Create custom data rules Demonstration 1: Using data rules Processing XML data Introduction to the Hierarchical stage - Hierarchical stage Assembly editor - Use the Schema Library Manager to import and manage XML schemas Composing XML data - Using the HJoin step to create parent-child relationships between input lists - Using the Composer step Writing Hierarchical data to a relational table Using the Regroup step Consuming XML data - Using the XML Parser step - Propagating columns Topic 6: Transforming XML data - Using the Aggregate step - Using the Sort step - Using the Switch step - Using the H-Pivot step Demonstration 1: Importing XML schemas Demonstration 2: Compose hierarchical data Demonstration 3: Consume hierarchical data Demonstration 4: Transform hierarchical data Updating a star schema database Surrogate keys - Design a job that creates and updates a surrogate key source key file from a dimension table Slowly Changing Dimensions (SCD) stage - Star schema databases - SCD stage Fast Path pages - Specifying purpose codes - Dimension update specification - Design a job that processes a star schema database with Type 1 and Type 2 slowly changing dimensions Demonstration 1: Build a parallel job that updates a star schema database with two dimensions Additional course details: Nexus Humans KM423 IBM InfoSphere DataStage v11.5 - Advanced Data Processing 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 KM423 IBM InfoSphere DataStage v11.5 - Advanced Data Processing 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.
Duration 3 Days 18 CPD hours This course is intended for This in an intermediate and beyond-level course is geared for experienced Python developers looking to delve into the exciting field of Natural Language Processing. It is ideally suited for roles such as data analysts, data scientists, machine learning engineers, or anyone working with text data and seeking to extract valuable insights from it. If you're in a role where you're tasked with analyzing customer sentiment, building chatbots, or dealing with large volumes of text data, this course will provide you with practical, hands on skills that you can apply right away. Overview This course combines engaging instructor-led presentations and useful demonstrations with valuable hands-on labs and engaging group activities. Throughout the course you'll: Master the fundamentals of Natural Language Processing (NLP) and understand how it can help in making sense of text data for valuable insights. Develop the ability to transform raw text into a structured format that machines can understand and analyze. Discover how to collect data from the web and navigate through semi-structured data, opening up a wealth of data sources for your projects. Learn how to implement sentiment analysis and topic modeling to extract meaning from text data and identify trends. Gain proficiency in applying machine learning and deep learning techniques to text data for tasks such as classification and prediction. Learn to analyze text sentiment, train emotion detectors, and interpret the results, providing a way to gauge public opinion or understand customer feedback. The Hands-on Natural Language Processing (NLP) Boot Camp is an immersive, three-day course that serves as your guide to building machines that can read and interpret human language. NLP is a unique interdisciplinary field, blending computational linguistics with artificial intelligence to help machines understand, interpret, and generate human language. In an increasingly data-driven world, NLP skills provide a competitive edge, enabling the development of sophisticated projects such as voice assistants, text analyzers, chatbots, and so much more. Our comprehensive curriculum covers a broad spectrum of NLP topics. Beginning with an introduction to NLP and feature extraction, the course moves to the hands-on development of text classifiers, exploration of web scraping and APIs, before delving into topic modeling, vector representations, text manipulation, and sentiment analysis. Half of your time is dedicated to hands-on labs, where you'll experience the practical application of your knowledge, from creating pipelines and text classifiers to web scraping and analyzing sentiment. These labs serve as a microcosm of real-world scenarios, equipping you with the skills to efficiently process and analyze text data. Time permitting, you?ll also explore modern tools like Python libraries, the OpenAI GPT-3 API, and TensorFlow, using them in a series of engaging exercises. By the end of the course, you'll have a well-rounded understanding of NLP, and will leave equipped with the practical skills and insights that you can immediately put to use, helping your organization gain valuable insights from text data, streamline business processes, and improve user interactions with automated text-based systems. You?ll be able to process and analyze text data effectively, implement advanced text representations, apply machine learning algorithms for text data, and build simple chatbots. Launch into the Universe of Natural Language Processing The journey begins: Unravel the layers of NLP Navigating through the history of NLP Merging paths: Text Analytics and NLP Decoding language: Word Sense Disambiguation and Sentence Boundary Detection First steps towards an NLP Project Unleashing the Power of Feature Extraction Dive into the vast ocean of Data Types Purification process: Cleaning Text Data Excavating knowledge: Extracting features from Texts Drawing connections: Finding Text Similarity through Feature Extraction Engineer Your Text Classifier The new era of Machine Learning and Supervised Learning Architecting a Text Classifier Constructing efficient workflows: Building Pipelines for NLP Projects Ensuring continuity: Saving and Loading Models Master the Art of Web Scraping and API Usage Stepping into the digital world: Introduction to Web Scraping and APIs The great heist: Collecting Data by Scraping Web Pages Navigating through the maze of Semi-Structured Data Unearth Hidden Themes with Topic Modeling Embark on the path of Topic Discovery Decoding algorithms: Understanding Topic-Modeling Algorithms Dialing the right numbers: Key Input Parameters for LSA Topic Modeling Tackling complexity with Hierarchical Dirichlet Process (HDP) Delving Deep into Vector Representations The Geometry of Language: Introduction to Vectors in NLP Text Manipulation: Generation and Summarization Playing the creator: Generating Text with Markov Chains Distilling knowledge: Understanding Text Summarization and Key Input Parameters for TextRank Peering into the future: Recent Developments in Text Generation and Summarization Solving real-world problems: Addressing Challenges in Extractive Summarization Riding the Wave of Sentiment Analysis Unveiling emotions: Introduction to Sentiment Analysis Tools Demystifying the Textblob library Preparing the canvas: Understanding Data for Sentiment Analysis Training your own emotion detectors: Building Sentiment Models Optional: Capstone Project Apply the skills learned throughout the course. Define the problem and gather the data. Conduct exploratory data analysis for text data. Carry out preprocessing and feature extraction. Select and train a model. ? Evaluate the model and interpret the results. Bonus Chapter: Generative AI and NLP Introduction to Generative AI and its role in NLP. Overview of Generative Pretrained Transformer (GPT) models. Using GPT models for text generation and completion. Applying GPT models for improving autocomplete features. Use cases of GPT in question answering systems and chatbots. Bonus Chapter: Advanced Applications of NLP with GPT Fine-tuning GPT models for specific NLP tasks. Using GPT for sentiment analysis and text classification. Role of GPT in Named Entity Recognition (NER). Application of GPT in developing advanced chatbots. Ethics and limitations of GPT and generative AI technologies.
Duration 1 Days 6 CPD hours This course is intended for This overview-level course is ideally suited for professionals seeking an introduction to microservices architecture and its application within a business context. Ideal attendee roles include software developers, system architects, technical managers, and IT professionals who are part of teams transitioning to a microservices approach. It's also an excellent starting point for non-technical roles such as product owners or business analysts who work closely with technical teams and want to better understand and become conversant in the language and principles of microservices. Overview This course combines engaging instructor-led presentations and useful demonstrations with engaging group activities. Throughout the course you'll explore: Understand the Basics of Microservices: Get to know the fundamental principles and characteristics of microservices and how they revolutionize traditional software development approaches. Explore the Design of Microservices: Gain an overview of how microservices are designed based on business requirements and what makes them unique in the software architecture world. Overview of Managing and Scaling Microservices: Get an introduction to how microservices are managed and scaled independently, and understand the significance of these features in your business operations. Familiarize with the Microservices Ecosystem: Learn about the typical patterns, best practices, and common pitfalls in the microservices world, setting a foundation for future learning and implementation. Introduction to Microservices in a Business Context: Acquire a basic understanding of how microservices can be aligned with specific business capabilities, and get a glimpse into how they can coexist with legacy systems in a business setting. Microservices have rapidly emerged as a popular architectural style, breaking down applications into small, independent services that can be developed, deployed, and scaled individually. Microservices offer a robust method to address a variety of projects, such as e-commerce platforms and content management systems, enhancing scalability and boosting productivity. This technology, when employed correctly, can greatly increase software delivery speed and system resilience, making it a crucial skill set for modern technology professionals.Understanding Microservices - A Technical Overview is a one-day course ideally suited for technical professionals seeking an introduction to microservices architecture and its application within a business context. Under the guidance of an industry expert, this engaging class combines lecture-style learning with lively demonstrations, case study review and group discussions.Throughout the course you?ll explore the principles and characteristics that define microservices, how to identify suitable projects for a microservices approach, the factors to consider when designing them, and the strategies to effectively manage and scale them within complex systems. You?ll also learn about the best practices, patterns, and anti-patterns, arming you with the knowledge to make the right architectural choices. This course also explores the real-world implementation of microservices in a business enterprise. We'll discuss how to align the application of microservices with your organization's specific business capabilities, and offer strategies for smoothly integrating this technology within existing legacy systems. Introduction to Microservices Understand what microservices are and their role in modern software development. Introduction to Microservices: what they are and why they matter. Monolithic vs Microservices: highlighting the shift and benefits. Key principles and characteristics of microservices. Identifying suitable applications for microservices transformation. Demo: Analyzing a sample application and identifying potential microservices Architecting and Managing Microservices Learn the basic strategies for scaling and managing microservices. Scaling Microservices: from a single service to hundreds. Key components of a microservices architecture. Introduction to resilience patterns: Circuit-Breakers and Bulkheads. Load management and provisioning in a microservices setup. Understanding the role of cloud services in microservices. Optional Demo: Illustrating how a microservice-based application scales in real-time Designing Microservices Learn the key aspects to consider when designing microservices. Defining microservice boundaries: Deciding the scope of a microservice. Communication patterns in microservices. Understanding Microservice endpoints. Exploring data stores and transaction boundaries in microservices. Overcoming challenges in Microservices design. Demo: Designing microservices for a hypothetical business requirement Implementing Microservices in a Business Enterprise Understand the process and considerations for implementing microservices in an enterprise context. Assessing enterprise readiness for microservices. Building the business case for microservices: strategic advantages and potential challenges. Aligning microservices with business capabilities. Organizational changes: Team structures and processes for microservices. Dealing with Legacy Systems: Strategies for microservices integration. Demo: Exploring a case study of successful microservices implementation in a business enterprise The Microservices Ecosystem Understand the key tools and best practices in the Microservices ecosystem. Understanding the typical Microservices Stack. Monitoring and Logging in Microservices. Introduction to Docker: Containerization of Microservices. Deployment strategies in a Microservices setup. Introduction to Orchestration in Microservices Demo: Containerizing and deploying a simple microservice Microservices Deployment Strategies Understand various ways to safely introduce changes in a microservices environment. The concept of Blue-Green Deployment: changing services without downtime. Canary Releases and Feature Toggles: slowly rolling out changes to users. Database changes in a microservices environment: keeping data consistent. Demo: Examining various deployment strategies Microservices Best Practices and DevOps Learn key strategies to ensure a smooth operation of your microservices setup. The DevOps culture in Microservices: collaboration for efficiency. Defining a Minimum Viable Product in a Microservices setup: building small, delivering fast. Dealing with data in a distributed setup: managing Data Islands. The importance of Continuous Integration/Continuous Delivery in a microservices setup. Governance: Keeping track of your services and their consumers. Demo: Visualizing a simple continuous delivery pipeline Microservices Patterns and Anti-Patterns Learn about common do's and don'ts when working with microservices. Understanding patterns that help with efficient microservices operation. Recognizing and avoiding anti-patterns that can hinder performance. Dealing with common challenges: dependencies between services, managing service boundaries. Demo: Examples of real-world patterns and anti-patterns Simple Overview of OAuth and OpenID for Microservices Introduction to OAuth and OpenID: What they are and why they matter in Microservices. The role of tokens in OAuth 2.0: How they help in securing communications. A simplified look at OpenID Connect: Linking identities across services. Demo
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 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 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.