Created for SENDCos, SLTs, EWOs, Wellbeing Mentors, teachers and whole-school staff, our three hour training programme has been developed to enhance awareness of the challenges neurodivergent pupils and students experience within school and the factors that contribute to emotionally-based school avoidance (EBSA). Written to include contributions from parents and professionals, this interactive session identifies potential barriers to attendance, offers practical tools and strategies to break the EBSA cycle and explores simple but effective adjustments to help students reintegrate and access their education. Programme outline: What EBSA is (and what it's not...)home, individual and school related factors that may contribute towards EBSA EBSA research, studies and statisticsprevalence of neurodivergent students experiencing EBSA Impacts of EBSAon the student's education, wellbeing and future prospectswider impacts on parents and carers Common ND related barriers to attendance:Executive functioning difficultiesSensory processing difficultiesCommunication difficultiesSocial relationship difficultiesRigidity of thought and difficulties adapting to change Breaking the Cycle to prevent, minimise and manage EBSA:Spotting early/subtle signsWorking collaboratively with students/parents and carers/teachers and staffEffective information gatheringCreating a flexible, individual, person-centred support plan Communicating the plan Monitor and review This programme is delivered live, online via Zoom and, on completion, each participant will receive a certificate of attendance. If you have any questions, please ask and we will be happy to help.
Are you struggling with a Data Governance issue and wish you had a team of other Data Governance professionals you could bounce it around with? You’ve done Data Governance training and you know what you’re focusing on. While your team is supportive, you spend a lot of time dealing with, and driving forward, culture change, managing stakeholders, and fielding questions from people who have their own priorities and now need to do this ‘Data Governance stuff’ on top. It would be nice, once in a while, to have a conversation about how to achieve something free from internal issues. You want to talk about best practices and get some alternative ideas. That’s what my Data Governance Mastermind gives you: space to reflect with the support of your peers and practical solutions you can implement.
Duration 5 Days 30 CPD hours This course is intended for Network and security architects and consultants who design the enterprise and data center networks and NSX environments Overview By the end of the course, you should be able to meet the following objectives: Describe and apply a design framework Apply a design process for gathering requirements, constraints, assumptions, and risks Design a VMware vSphere virtual data center to support NSX requirements Create a VMware NSX Manager⢠cluster design Create a VMware NSX Edge⢠cluster design to support traffic and service requirements in NSX Design logical switching and routing Recognize NSX security best practices Design logical network services Design a physical network to support network virtualization in a software-defined data center Create a design to support the NSX infrastructure across multiple sites Describe the factors that drive performance in NSX This five-day course provides comprehensive training on considerations and practices to design a VMware NSX© environment as part of a software-defined data center strategy. This course prepares the student with the skills to lead the design of an NSX environment, including design principles, processes, and frameworks. The student gains a deeper understanding of the NSX architecture and how it can be used to create solutions to address the customer?s business needs. Course Introduction Introduction and course logistics Course objectives NSX Design Concepts Identify design terms Describe framework and project methodology Describe the role of VMware Cloud Foundation? in NSX design Identify customers? requirements, assumptions, constraints, and risks Explain the conceptual design Explain the logical design Explain the physical design NSX Architecture and Components Recognize the main elements in the NSX architecture Describe the NSX management cluster and the management plane Identify the functions and components of management, control, and data planes Describe the NSX Manager sizing options Recognize the justification and implication of NSX Manager cluster design decisions Identify the NSX management cluster design options NSX Edge Design Explain the leading practices for edge design Describe the NSX Edge VM reference designs Describe the bare-metal NSX Edge reference designs Explain the leading practices for edge cluster design Explain the effect of stateful services placement Explain the growth patterns for edge clusters Identify design considerations when using L2 bridging services NSX Logical Switching Design Describe concepts and terminology in logical switching Identify segment and transport zone design considerations Identify virtual switch design considerations Identify uplink profile and transport node profile design considerations Identify Geneve tunneling design considerations Identify BUM replication mode design considerations NSX Logical Routing Design Explain the function and features of logical routing Describe the NSX single-tier and multitier routing architectures Identify guidelines when selecting a routing topology Describe the BGP and OSPF routing protocol configuration options Explain gateway high availability modes of operation and failure detection mechanisms Identify how multitier architectures provide control over stateful service location Identify EVPN requirements and design considerations Identify VRF Lite requirements and considerations Identify the typical NSX scalable architectures NSX Security Design Identify different security features available in NSX Describe the advantages of an NSX Distributed Firewall Describe the use of NSX Gateway Firewall as a perimeter firewall and as an intertenant firewall Determine a security policy methodology Recognize the NSX security best practices NSX Network Services Identify the stateful services available in different edge cluster high availability modes Describe failover detection mechanisms Compare NSX NAT solutions Explain how to select DHCP and DNS services Compare policy-based and route-based IPSec VPN Describe an L2 VPN topology that can be used to interconnect data centers Explain the design considerations for integrating VMware NSX© Advanced Load Balancer? with NSX Physical Infrastructure Design Identify the components of a switch fabric design Assess Layer 2 and Layer 3 switch fabric design implications Review guidelines when designing top-of-rack switches Review options for connecting transport hosts to the switch fabric Describe typical designs for VMware ESXi? compute hypervisors with two pNICs Describe typical designs for ESXi compute hypervisors with four or more pNICs Differentiate dedicated and collapsed cluster approaches to SDDC design NSX Multilocation Design Explain scale considerations in an NSX multisite design Describe the main components of the NSX Federation architecture Describe the stretched networking capability in Federation Describe stretched security use cases in Federation Compare the Federation disaster recovery designs NSX Optimization and DPU-Based Acceleration Describe Geneve Offload Describe the benefits of Receive Side Scaling and Geneve Rx Filters Explain the benefits of SSL Offload Describe the effect of Multi-TEP, MTU size, and NIC speed on throughput Explain the available enhanced datapath modes and use cases List the key performance factors for compute nodes and NSX Edge nodes Describe DPU-Based Acceleration Define the NSX features supported by DPUs Describe the hardware and networking configurations supported with DPUs
Duration 5 Days 30 CPD hours This course is intended for Network and security architects and consultants who design the enterprise and data center networks and VMware NSX environments Overview By the end of the course, you should be able to meet the following objectives: Describe and apply a design framework Apply a design process for gathering requirements, constraints, assumptions, and risks Design a VMware vSphere virtual data center to support NSX-T Data Center requirements Create a VMware NSX Manager⢠cluster design Create a VMware NSX Edge⢠cluster design to support traffic and service requirements in NSX-T Data Center Design logical switching and routing Recognize NSX-T Data Center security best practices Design logical network services Design a physical network to support network virtualization in a software-defined data center Create a design to support the NSX-T Data Center infrastructure across multiple sites Describe the factors that drive performance in NSX-T Data Center This five-day course provides comprehensive training on considerations and practices to design a VMware NSX-T? Data Center environment as part of a software-defined data center strategy. This course prepares the student with the skills to lead the design of NSX-T Data Center offered in release 3.2, including design principles, processes, and frameworks. The student gains a deeper understanding of the NSX-T Data Center architecture and how it can be used to create solutions to address the customer?s business needs. Course Introduction Introduction and course logistics Course objectives Design Concepts Identify design terms Describe framework and project methodology Describe VMware Validated Design? Identify customers? requirements, assumptions, constraints, and risks Explain the conceptual design Explain the logical design Explain the physical design NSX Architecture and Components Recognize the main elements in the NSX-T Data Center architecture Describe the NSX management cluster and the management plane Identify the functions and components of management, control, and data planes Describe the NSX Manager sizing options Recognize the justification and implication of NSX manager cluster design decisions Identify the NSX management cluster design options NSX Edge Design Explain the leading practices for edge design Describe the NSX Edge VM reference designs Describe the bare-metal NSX Edge reference designs Explain the leading practices for edge cluster design Explain the effect of stateful services placement Explain the growth patterns for edge clusters Identify design considerations when using L2 bridging services NSX Logical Switching Design Describe concepts and terminology in logical switching Identify segment and transport zone design considerations Identify virtual switch design considerations Identify uplink profile, VMware vSphere© Network I/O Control profile, and transport node profile design considerations Identify Geneve tunneling design considerations Identify BUM replication mode design considerations NSX Logical Routing Design Explain the function and features of logical routing Describe NSX-T Data Center single-tier and multitier routing architectures Identify guidelines when selecting a routing topology Describe the BGP and OSPF routing protocol configuration options Explain gateway high availability modes of operation and failure detection mechanisms Identify how multitier architectures provide control over stateful service location Identify VRF Lite requirements and considerations Identify the typical NSX scalable architectures NSX Security Design Identify different security features available in NSX-T Data Center Describe the advantages of an NSX Distributed Firewall Describe the use of NSX Gateway Firewall as a perimeter firewall and as an intertenant firewall Determine a security policy methodology Recognize the NSX-T Data Center security best practices NSX Network Services Identify the stateful services available in different edge cluster high availability modes Describe failover detection mechanisms Explain the design considerations for integrating VMware NSX© Advanced Load Balancer? with NSX-T Data Center Describe stateful and stateless NSX-T Data Center NAT Identify benefits of NSX-T Data Center DHCP Identify benefits of metadata proxy Describe IPSec VPN and L2 VPN Physical Infrastructure Design Identify the components of a switch fabric design Assess Layer 2 and Layer 3 switch fabric design implications Review guidelines when designing top-of-rack switches Review options for connecting transport hosts to the switch fabric Describe typical designs for VMware ESXi? compute hypervisors with two pNICs Describe typical designs for ESXi compute hypervisors with four or more pNICs Describe a typical design for a KVM compute hypervisor with two pNICs Differentiate dedicated and collapsed cluster approaches to SDDC design NSX Multilocation Design Explain scale considerations in an NSX-T Data Center multisite design Describe the main components of the NSX Federation architecture Describe the stretched networking capability in Federation Describe stretched security use cases in Federation Compare Federation disaster recovery designs NSX Optimization Describe Geneve Offload Describe the benefits of Receive Side Scaling and Geneve Rx Filters Explain the benefits of SSL Offload Describe the effect of Multi-TEP, MTU size, and NIC speed on throughput Explain the available N-VDS enhanced datapath modes and use cases List the key performance factors for compute nodes and NSX Edge nodes
Duration 5 Days 30 CPD hours This course is intended for Data Warehouse AdministratorDatabase Administrators Overview Use the Oracle Database tuning methodology appropriate to the available toolsUtilize database advisors to proactively tune an Oracle Database InstanceUse the tools based on the Automatic Workload Repository to tune the databaseDiagnose and tune common SQL related performance problemsDiagnose and tune common Instance related performance problemsUse Enterprise Manager performance-related pages to monitor an Oracle DatabaseGain an understanding of the Oracle Database Cloud Service In the Oracle Database 12c: Performance Management and Tuning course, learn about the performance analysis and tuning tasks expected of a DBA: proactive management through built-in performance analysis features and tools, diagnosis and tuning of the Oracle Database instance components, and diagnosis and tuning of SQL-related performance issues. In this course, you will be introduced to Oracle Database Cloud Service. Introduction Course Objectives Course Organization Course Agenda Topics Not Included in the Course Who Tunes? What Does the DBA Tune? How to Tune Tuning Methodology Basic Tuning Diagnostics Performance Tuning Diagnostics Performance Tuning Tools Tuning Objectives Top Timed Events DB Time CPU and Wait Time Tuning Dimensions Time Model Dynamic Performance Views Using Automatic Workload Repository Automatic Workload Repository Overview Automatic Workload Repository Data Enterprise Manager Cloud Control and AWR Snapshots Reports Compare Periods Defining the Scope of Performance Issues Defining the Problem Limiting the Scope Setting the Priority Top SQL Reports Common Tuning Problems Tuning During the Life Cycle ADDM Tuning Session Performance Versus Business Requirements Using Metrics and Alerts Metrics and Alerts Overview Limitation of Base Statistics Benefits of Metrics Viewing Metric History Information Viewing Histograms Server-Generated Alerts Setting Thresholds Metrics and Alerts Views Using Baselines Comparative Performance Analysis with AWR Baselines Automatic Workload Repository Baselines Moving Window Baseline Baselines in Performance Page Settings Baseline Templates AWR Baseslines Creating AWR Baselines Managing Baselines with PL/SQL Using AWR-Based Tools Automatic Maintenance Tasks ADDM Performance Monitoring Using Compare Periods ADDM Active Session History New or Enhanced Automatic Workload Repository Views Emergency Monitoring Real-time ADDM Real-Time Database Operation Monitoring Overview Use Cases Defining a Database Operation Scope of a Composite Database Operation Database Operation Concepts Identifying a Database Operation Enabling Monitoring of Database Operations Identifying, Starting, and Completing a Database Operation Monitoring Applications What is a Service? Service Attributes Service Types Creating Services Managing Services in a Single-Instance Environment Where are Services Used? Using Services with Client Applications Services and Pluggable Databases Identifying Problem SQL Statements SQL Statement Processing Phases Role of the Oracle Optimizer Identifying Bad SQL Top SQL Reports SQL Monitoring What is an Execution Plan? Methods for Viewing Execution Plans Uses of Execution Plans Influencing the Optimizer Functions of the Query Optimizer Selectivity Cardinality and Cost Changing Optimizer Behavior Optimizer Statistics Extended Statistics Controlling the Behavior of the Optimizer with Parameters Enabling Query Optimizer Features Reducing the Cost of SQL Operations Reducing the Cost Index Maintenance SQL Access Advisor Table Maintenance for Performance Table Reorganization Methods Space Management Extent Management Data Storage Using SQL Performance Analyzer Real Application Testing: Overview Real Application Testing: Use Cases SQL Performance Analyzer: Process Capturing the SQL Workload Creating a SQL Performance Analyzer Task SQL Performance Analyzer: Tasks Parameter Change SQL Performance Analyzer Task Page SQL Performance Management Maintaining SQL Performance Maintaining Optimizer Statistics Automated Maintenance Tasks Statistic Gathering Options Setting Statistic Preferences Restore Statistics Deferred Statistics Publishing Automatic SQL Tuning Using Database Replay Using Database Replay The Big Picture System Architecture Capture Considerations Replay Considerations: Preparation Replay Considerations Replay Options Replay Analysis Tuning the Shared Pool Shared Pool Architecture Shared Pool Operation The Library Cache Latch and Mutex Diagnostic Tools for Tuning the Shared Pool Avoiding Hard Parses Reducing the Cost of Soft Parses Sizing the Shared Pool Tuning the Buffer Cache Oracle Database Architecture: Buffer Cache Buffer Cache: Highlights Database Buffers Buffer Hash Table for Lookups Working Sets Buffer Cache Tuning Goals and Techniques Buffer Cache Performance Symptoms Buffer Cache Performance Solutions Tuning PGA and Temporary Space SQL Memory Usage Performance Impact Automatic PGA Memory SQL Memory Manager Configuring Automatic PGA Memory Setting PGA_AGGREGATE_TARGET Initially Limiting the size of the Program Global Area (PGA) SQL Memory Usage Automatic Memory Oracle Database Architecture Dynamic SGA Granule Memory Advisories Manually Adding Granules to Components Increasing the Size of an SGA Component Automatic Shared Memory Management: Overview SGA Sizing Parameters: Overview Performance Tuning Summary with Waits Commonly Observed Wait Events Additional Statistics Top 10 Mistakes Found in Customer Systems Symptoms Oracle Database Cloud Service: Overview Database as a Service Architecture, Features and Tooling Software Editions: Included Database Options and Management Packs Accessing the Oracle Database Cloud Service Console Automated Database Provisioning Managing the Compute Node Associated With a Database Deployment Managing Network Access to Database as a Service Scaling a Database Deployment Performance Management in the Database Cloud Environment Performance Monitoring and Tuning What Can be Tuned in a DBCS Environment?
This Renewables Technical Surveying training short two day course is specifically designed for individuals and companies that want to train themselves and their staff on exactly how to carry out Renewables Technical Site Surveying prior to any renewables installation measures, this includes for heating systems, solar systems and EV Charge point installations. The course is primarily aimed at Energy Suppliers, Equipment Manufacturers, Renewable Installers, Domestic Energy Assessors, Retrofit Assessors, Retrofit Co-ordinators, Renewables sales staff and suitable individuals with a basic level of knowledge in varying building structures, heating systems and varying renewable technologies.
The aim of this programme is to help attendees create better quality technical documents in an organised and efficient manner. It will give those new to the topic an appreciation of how to approach the task professionally whilst those with more experience will be able to refresh and refine their skills. The programme comprises three complementary one-day modules: The programme presents a structured methodology for creating technical documents and provides a range of practical techniques that help delegates put principles into practice. Although not essential, it is strongly advised that delegates for modules 2 and 3 have already attended module 1, or another equivalent course. Note: the content of each module as shown here is purely indicative and can be adapted to suit your particular requirements. This course will: Explain the qualities and benefits of well written technical documents Present a structured approach for producing technical documents Review the essential skills of effective technical writing Demonstrate practical methods to help create better documents Provide tools and techniques for specification and report writing Review how technical documents should be issued and controlled Note: the content of each module as shown here is purely indicative and can be adapted to suit your particular requirements. Module 1: Essential skills for technical writers 1 Introduction to the programme Aims and objectives of the module Introductions and interests of participants 2 Creating effective technical documents What is technical writing? how does it differ from other writing? Key qualities of an effective technical document Communication essentials and the challenges faced by technical writers The lessons of experience: how the best writers write The five key steps : prepare - organise - write - edit - release (POWER) 3 Preparing to write Defining the document aims and objectives; choosing the title Understanding technical readers and their needs Getting organised; planning and managing the process Integrating technical and commercial elements The role of intellectual property rights (IPR), eg, copyright 4 Organising the content The vital role of structure in technical documents Deciding what to include and how to organise the information Categorising information: introductory, key and supporting Tools and techniques for scoping and structuring the document Creating and using document templates - pro's and con's 5 Writing the document Avoiding 'blinding them with science': the qualities of clear writing Problem words and words that confuse; building and using a glossary Using sentence structure and punctuation to best effect Understanding the impact of style, format and appearance Avoiding common causes of ambiguity; being concise and ensuring clarity Using diagrams and other graphics; avoiding potential pitfalls 6 Editing and releasing the document Why editing is difficult; developing a personal editing strategy Some useful editing tools and techniques Key requirements for document issue and control Module 2: Creating better specifications 1 Introduction Aims and objectives of the day Introductions and interests of participants The 'POWER' writing process for specifications 2 Creating better specifications The role and characteristics of an effective specification Specifications and contracts; the legal role of specifications Deciding how to specify; understanding functional and design requirements Developing the specification design; applying the principles of BS 7373 Getting organised: the key stages in compiling an effective specification 3 Preparing to write a specification Defining the scope of the specification; deciding what to include and what not Scoping techniques: scope maps, check lists, structured brainstorming The why/what/how pyramid; establishing and understanding requirements Clarifying priorities; separating needs and desires: the MoSCoW method Useful quantitative techniques: cost benefit analysis, QFD, Pareto analysis Dealing with requirements that are difficult to quantify 4 Organising the content The role of structure in specifications Typical contents and layout for a specification What goes where: introductory, key and supporting sections Creating and using model forms: the sections and sub sections Detailed contents of each sub-section Exercise: applying the tools and techniques 5 Writing the specification Identifying and understanding the specification reader Key words: will, shall, must; building and using a glossary Writing performance targets that are clear and unambiguous Choosing and using graphics Exercise: writing a specification 6 Editing and releasing the document Key editing issues for specifications Issue and control of specifications Module 3: Writing better reports 1 Introduction Aims and objectives of the day Introductions and interests of participants The 'POWER' technical writing process for technical reports 2 Creating better reports What is a technical report? types and formats of report The role and characteristics of an effective technical report Understanding technical report readers and their needs The commercial role and impact of technical reports Getting organised: the key stages in compiling a technical report 3 Preparing to write reports Agreeing the terms of reference; defining aims and objectives Being clear about constraints; defining what is not to be included Legal aspects and intellectual property rights (IPR) for reports Preparing the ground; gathering information and reference documents Keeping track of information: note making, cataloguing and cross referencing Tools and techniques for developing a valid and convincing argument 4 Organising the content The role of structure reviewed; some typical report structures Who needs what: identifying the varied needs of the readership What goes where: introductory, key and supporting sections Creating and using model forms: the sections and sub sections Detailed contents of each sub-section Exercise: applying the tools and techniques 5 Writing the report Planning the storyline: the report as a journey in understanding Recognising assumptions about the reader; what they do and don't know Converting complex concepts into understandable statements Presenting technical data and its analysis; the role of graphics Presenting the case simply whilst maintaining technical integrity Exercise: writing a technical report 6 Editing and releasing the report Key editing issues for technical reports Issue and control of technical reports
This Renewables Technical Surveying training short two day course is specifically designed for individuals and companies that want to train themselves and their staff on exactly how to carry out Renewables Technical Site Surveying prior to any renewables installation measures, this includes for heating systems, solar systems and EV Charge point installations. The course is primarily aimed at Energy Suppliers, Equipment Manufacturers, Renewable Installers, Domestic Energy Assessors, Retrofit Assessors, Retrofit Co-ordinators, Renewables sales staff and suitable individuals with a basic level of knowledge in varying building structures, heating systems and varying renewable technologies.
Duration 3 Days 18 CPD hours This course is intended for Java Developers with a minimum of 2 years of experience and individuals who want to become application security engineers/analysts/testers Individuals involved in the role of developing, testing, managing, or protecting wide area of applications. Overview In-depth understanding of secure SDLC and secure SDLC models Knowledge of OWASP Top 10, threat modelling, SAST and DAST Capturing security requirements of an application in development Defining, maintaining, and enforcing application security best practices The Certified Application Security Engineer (CASE) training and certification program provides a comprehensive application security approach which encompasses security activities involved in all the phases of Software Development Lifecycle (SDLC). Understanding Application Security, Threats, and AttacksSecurity Requirements GatheringSecure Application Design and ArchitectureSecure Coding Practices for Input ValidationSecure Coding Practices for Authentication and AuthorizationSecure Coding Practices for CryptographySecure Coding Practices for Session ManagementSecure Coding Practices for Error HandlingStatic and Dynamic Application Security Testing (SAST & DAST)Secure Deployment and Maintenance
Duration 5 Days 30 CPD hours This course is intended for In order to be successful in this course you should have incoming hands-on experience with another programming language. This course is not for non-developers or new developers. Possible roles that may attend this course include: Software Developers: Professionals who have been working with other programming languages and want to expand their skillset by learning Java and its object-oriented features. Web Developers: Those who work on web applications and want to enhance their back-end development capabilities with Java. Mobile App Developers: Developers who wish to enter the world of Android app development, where Java is a widely used language for creating mobile applications. Overview This 'skills-centric' course is about 50% hands-on lab and 50% lecture, designed to train attendees in core OO coding and Java development skills, 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 to: Understand what OO programming is and what the advantages of OO are in today's world Work with objects, classes, and OO implementations Understand the basic concepts of OO such as encapsulation, inheritance, polymorphism, and abstraction Understand not only the fundamentals of the Java language, but also its importance, uses, strengths and weaknesses Understand the basics of the Java language and how?it relates to OO programming and the Object Model Learn to use Java exception handling Understand and use classes, inheritance and polymorphism Understand and use collections, generics, autoboxing, and enumerations Become familiar with the concept of functional programming using Lambda Expressions Process large amounts of data using the Stream API introduced in Java 8 Discover the new Date/Time API Use the JDBC API for database access Work with annotations Take advantage of the Java tooling that is available with the programming environment being used in the class Java 8 Features: Lambda Expressions, Method and Constructor references, The Streams API, Collectors, The Optional class Geared for experienced developers, Basic Java Programming for Developers New to OO, this hands-on, workshop-style course will provide you with an immersive learning experience that will expand your skillset and open doors to new opportunities within the ever-growing technology landscape. Mastering Java and its powerful capabilities will provide you with the competitive edge you need to stand out in today's fast-paced development world. Working in a hands-on learning environment led by our expert coach, you?ll thoroughly explore the foundations of the Java platform, essential programming concepts, and advanced topics, ensuring you acquire a strong understanding of the language and its ecosystem. The object-oriented programming principles taught in this course promote code reusability and maintainability, enabling you to streamline development processes and reduce long-term costs. As you progress through the course, you will also gain familiarity with using an IDE, enhancing your development workflow and collaboration with other Java developers, enabling you to integrate seamlessly into new projects and teams. You?ll also gain practical experience in applying the concepts and techniques learned, solidifying your newly acquired skills and facilitating their direct application in real-world scenarios. You?ll exit this course empowered to create robust, scalable, and efficient Java-based applications that drive innovation and growth for your organization The Java Platform The Java Platform Lifecycle of a Java Program Responsibilities of JVM Documentation and Code Reuse Using the JDK Explain the JDK?s file structure Use the command line compiler to compile a Java class Use the command line Java interpreter to run a Java application class The IntelliJ Paradigm Introduce the IntelliJ IDE The Basics of the IntelliJ interface IntelliJ Projects and Modules Creating and running Java applications Writing a Simple Class Write a Java class that does not explicitly extend another class Define instance variables for a Java class Create object instances Primitives vs Object References Implement a main method to create an instance of the defined class Adding Methods to the Class Write a class with accessor methods to read and write instance variables Write a constructor to initialize an instance with data Write a constructor that calls other constructors of the class to benefit from code reuse Use the this keyword to distinguish local variables from instance variables Object-Oriented Programming Real-World Objects Classes and Objects Object Behavior Methods and Messages Inheritance, Abstraction, and Polymorphism Encapsulation Inheritance Method Overriding Polymorphism Essential Java Programming Essential Java Programming Language Statements Arithmetic operators Operators to increment and decrement numbers Comparison operators Logical operators Return type of comparison and logical operators Use for loops Switch Expressions Switch Expressions and yield Using Strings and Text Blocks Create an instance of the String class Test if two strings are equal Get the length of a string Parse a string for its token components Perform a case-insensitive equality test Build up a string using StringBuffer Contrast String, StringBuffer,and StringBuilder Compact Strings Text Blocks Specializing in a Subclass Constructing a class that extends another class Implementing equals and toString Writing constructors that pass initialization data to parent constructor Using instanceof to verify type of an object reference Pattern matching for instanceof Overriding subclass methods Safely casting references to a more refined type Fields and Variables Discuss Block Scoping Rules Distinguish between instance variables and method variables within a method Explain the difference between the terms field and variable List the default values for instance variables Final and Static fields and methods Local Variable type inference Using Arrays Declaring an array reference Allocating an array Initializing the entries in an array Writing methods with a variable number of arguments Records Data Objects in Java Introduce records as carrier of immutable data Defining records Java Packages and Visibility Use the package keyword to define a class within a specific package Discuss levels of accessibility/visibility Using the import keyword to declare references to classes in a specific package Using the standard type naming conventions Visibility in the Java Modular System Correctly executing a Java application class The Java modular system Defining Modules Inheritance and Polymorphism Write a subclass with a method that overrides a method in the superclass Group objects by their common supertype Utilize polymorphism Cast a supertype reference to a valid subtype reference Use the final keyword on methods and classes to prevent overriding Interfaces and Abstract Classes Define supertype contracts using abstract classes Implement concrete classes based on abstract classes Define supertype contracts using interfaces Implement concrete classes based on interfaces Explain advantage of interfaces over abstract classes Explain advantage of abstract classes over interfaces Static, default and private methods in interfaces Sealed classes Introduce Sealed classes The sealed and permits modifiers Sealed Interfaces Exception Handling Introduction to Exception Handling Introduce the Exception architecture Defining a try/catch blocks Checked vs Unchecked exceptions Exceptions Defining your own application exceptions Automatic closure of resources Suppressed exceptions Handling multiple exceptions in one catch Helpful Nullpointers Enhanced try-with-resources Java Developer's Toolbox Developing applications Introduce the wrapper classes Explain Autoboxing and Unboxing Converting String representations of primitive numbers into their primitive types Defining Enumerations Using static imports Deprecating methods Advanced Java Programming Introduction to Generics Generics and Subtyping Bounded Wildcards Generic Methods Legacy Calls To Generics When Generics Should Be Used Lambda Expressions and Functional Interface Understanding the concept of functional programming Writing lambda expressions Understanding functional interfaces Collections Provide an overview of the Collection API Review the different collection implementations (Set, List and Queue) Explore how generics are used with collections Examine iterators for working with collections Using Collections Collection Sorting Comparators Using the Right Collection Lambda expressions in Collections Bonus Topics: Time Permitting Streams Understanding the problem with collections in Java Thinking of program solutions in a declarative way Use the Stream API to process collections of data Understand the difference between intermediate and terminal stream operations Filtering elements from a Stream Finding element(s) within a Stream Collecting the elements from a Stream into a List takeWhile and dropWhile intermediate operations Collectors Using different ways to collect the items from a Stream Grouping elements within a stream Gathering statistics about numeric property of elements in a stream