Duration 4 Days 24 CPD hours This course is intended for This course is geared for experienced skilled Java developers, software developers, data scientists, machine learning experts or others who wish to transtion their coding skills to Scala, learning how to code in Scala and apply it in a practical way. This is not a basic class. Overview Working in a hands-on learning environment led by our expert instructor you'll: Get comfortable with Scala's core principles and unique features, helping you navigate the language confidently and boosting your programming skills. Discover the power of functional programming and learn techniques that will make your code more efficient,maintainable, and enjoyable to write. Become proficient in creating dynamic web applications using the Play Framework, and easily connect to databases with the user-friendly Slick library. Master concurrency programming with Akka, empowering you to build scalable and fault-tolerant applications that excel in performance. Enhance your testing skills using ScalaTest and ScalaCheck, ensuring the reliability and quality of your Scala applications, while having fun in the process. Explore the fascinating world of generative AI and GPT technologies, and learn how to integrate them into your projects,adding a touch of innovation and intelligence to your Scala solutions. If your team requires different topics, additional skills or a custom approach, our team will collaborate with you to adjust the course to focus on your specific learning objectives and goals. Discover the power of Scala programming in our comprehensive, hands-on technical training course designed specifically for experienced object-oriented (OO) developers. Scala is a versatile programming language that combines the best of both OO and functional programming paradigms, making it ideal for a wide range of projects, from web applications to big data processing and machine learning. By mastering Scala, you'll be able to develop more efficient, scalable, and maintainable applications. Fast Track to Scala Programming for OO / Java Developers is a four day hands-on course covers the core principles of Scala, functional programming, web application development, database connectivity, concurrency programming, testing, and interoperability between Scala and Java. Additionally, you'll explore cutting-edge generative AI and GPT technologies, learning how to integrate them into your Scala applications for intelligent suggestions or automation. Throughout the course you?ll explore the latest tools and best practices in the Scala ecosystem, gaining valuable knowledge and experience that can be directly applied to your day-to-day work. With 50% of the course content dedicated to hands-on labs, you'll gain practical experience applying the concepts you've learned across various projects, such as building functional web applications, connecting to databases, designing modular components, and implementing concurrency. Upon completing the course, you'll have a solid understanding of the language and its features, empowering you to confidently apply your new skills in data science and machine learning projects. You'll exit well-prepared to create efficient, scalable, and maintainable Scala applications, regardless of the complexity of your projects. Introduction to Scala Scala features and benefits Comparing Scala with Java and other OO languages Installing Scala and setting up the development environment Object-Oriented Programming in Scala Classes and objects Traits, mixins, and inheritance Companion objects and factories Encapsulation and polymorphism Functional Programming Basics Pure functions and referential transparency Higher-order functions and currying Immutability and persistent data structures Pattern matching and recursion Having Fun with Functional Data Structures Lists, sets, and maps in Scala Folding and reducing operations Stream processing and lazy evaluation For-comprehensions Building Web Applications in Functional Style Introduction to Play Framework Functional web routing and request handling JSON handling with Play-JSON Middleware and functional composition Connecting to a Database Introduction to Slick library Database configuration and setup Querying and updating with Slick Transactions and error handling Building Scalable and Extensible Components Modular architecture and design patterns Dependency injection with MacWire Type classes and type-level programming Implicit parameters and conversions Concurrency Programming & Akka Introduction to Akka framework and Actor model Actor systems and message passing Futures and Promises Supervision and fault tolerance Building Confidence with Testing Introduction to ScalaTest and ScalaCheck Unit testing and property-based testing Test-driven development in Scala Mocking and integration testing Interoperability between Scala and Java Calling Java code from Scala Using Java libraries in Scala projects Converting Java collections to Scala collections Writing Scala code that can be called from Java Using Generative AI and GPT Technologies in Scala Programming Overview of GPT and generative AI Integrating GPT with Scala applications Use cases and practical examples
Duration 4 Days 24 CPD hours This course is intended for This course is geared for experienced skilled Java developers, software developers, data scientists, machine learning experts or others who wish to transtion their coding skills to Scala, learning how to code in Scala and apply it in a practical way. This is not a basic class. Overview Working in a hands-on learning environment led by our expert instructor you'll: Get comfortable with Scala's core principles and unique features, helping you navigate the language confidently and boosting your programming skills. Discover the power of functional programming and learn techniques that will make your code more efficient, maintainable, and enjoyable to write. Become proficient in creating dynamic web applications using the Play Framework, and easily connect to databases with the user-friendly Slick library. Master concurrency programming with Akka, empowering you to build scalable and fault-tolerant applications that excel in performance. Enhance your testing skills using ScalaTest and ScalaCheck, ensuring the reliability and quality of your Scala applications, while having fun in the process. Explore the fascinating world of generative AI and GPT technologies, and learn how to integrate them into your projects, adding a touch of innovation and intelligence to your Scala solutions. If your team requires different topics, additional skills or a custom approach, our team will collaborate with you to adjust the course to focus on your specific learning objectives and goals. Discover the power of Scala programming in our comprehensive, hands-on technical training course designed specifically for experienced object-oriented (OO) developers. Scala is a versatile programming language that combines the best of both OO and functional programming paradigms, making it ideal for a wide range of projects, from web applications to big data processing and machine learning. By mastering Scala, you'll be able to develop more efficient, scalable, and maintainable applications. Fast Track to Scala Programming for OO / Java Developers is a four day hands-on course covers the core principles of Scala, functional programming, web application development, database connectivity, concurrency programming, testing, and interoperability between Scala and Java. Additionally, you'll explore cutting-edge generative AI and GPT technologies, learning how to integrate them into your Scala applications for intelligent suggestions or automation. Throughout the course you?ll explore the latest tools and best practices in the Scala ecosystem, gaining valuable knowledge and experience that can be directly applied to your day-to-day work. With 50% of the course content dedicated to hands-on labs, you'll gain practical experience applying the concepts you've learned across various projects, such as building functional web applications, connecting to databases, designing modular components, and implementing concurrency. Upon completing the course, you'll have a solid understanding of the language and its features, empowering you to confidently apply your new skills in data science and machine learning projects. You'll exit well-prepared to create efficient, scalable, and maintainable Scala applications, regardless of the complexity of your projects. Introduction to Scala Scala features and benefits Comparing Scala with Java and other OO languages Installing Scala and setting up the development environment Object-Oriented Programming in Scala Classes and objects Traits, mixins, and inheritance Companion objects and factories Encapsulation and polymorphism Functional Programming Basics Pure functions and referential transparency Higher-order functions and currying Immutability and persistent data structures Pattern matching and recursion Having Fun with Functional Data Structures Lists, sets, and maps in Scala Folding and reducing operations Stream processing and lazy evaluation For-comprehensions Building Web Applications in Functional Style Introduction to Play Framework Functional web routing and request handling JSON handling with Play-JSON Middleware and functional composition Connecting to a Database Introduction to Slick library Database configuration and setup Querying and updating with Slick Transactions and error handling Building Scalable and Extensible Components Modular architecture and design patterns Dependency injection with MacWire Type classes and type-level programming Implicit parameters and conversions Concurrency Programming & Akka Introduction to Akka framework and Actor model Actor systems and message passing Futures and Promises Supervision and fault tolerance Building Confidence with Testing Introduction to ScalaTest and ScalaCheck Unit testing and property-based testing Test-driven development in Scala Mocking and integration testing Interoperability between Scala and Java Calling Java code from Scala Using Java libraries in Scala projects Converting Java collections to Scala collections Writing Scala code that can be called from Java Using Generative AI and GPT Technologies in Scala Programming Overview of GPT and generative AI Integrating GPT with Scala applications Use cases and practical examples Additional course details: Nexus Humans Fast Track to Scala Programming Essentials for OO / Java Developers (TTSCL2104) 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 Fast Track to Scala Programming Essentials for OO / Java Developers (TTSCL2104) 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 The EXIN BCS Artificial Intelligence Foundation certification is focused on individuals with an interest in, (or need to implement) AI in an organization, especially those working in areas such as science, engineering, knowledge engineering, finance, education or IT services. Overview You will be able to Describe how Artificial (AI) is Part of 'Universal Design', and 'The Fourth Industrial Revolution' Demonstrate Understanding of the Artificial Intelligence (AI) Intelligen Agent Description Explain the Benefits of Artificial Intelligence (AI) Describe how we Learn from Data - Functionality, Software and Hardware Demonstrate an Understanding that Artificial Intelligence (AI) (in Particular, Machine Learning (ML)) will Drive Humans and Machines to Work Together Describe a ''Learning from Experience'' Agile Approach to Projects Candidates should be able to demonstrate a knowledge and understanding in the application of ethical and sustainable Artificial Intelligence (AI):- Human-centric Ethical and Sustainable Human and Artificial Intelligence (AI) Ethical and Sustainable Human and Artificial Intelligence (AI) Recall the General Definition of Human and Artificial Intelligence (AI) Describe what are Ethics and Trustworthy Artificial Intelligence (AI) Describe the Three Fundamental Areas of Sustainability and the United Nationïs Seventeen Sustainability Goals Describe how Artificial Intelligence (AI) is Part of 'Universal Design', and 'The Fourth Industrial Revolution' Understand that Machine Learning (ML) is a Significant Contribution to the Growth of Artificial Intelligence (AI) Artificial Intelligence (AI) and Robotics Demonstrate Understanding of the Artificial Intelligence (AI) Intelligent Agent Description Describe what a Robot is Describe what an intelligent Robot is Applying the Benefits of Artificial Intelligence (AI) ? Challenges and Risks Describe how Sustainability Relates to Human-Centric Ethical Artificial Intelligence (AI) and how our Values will Drive our use of Artificial Intelligence (AI) and will Change Humans, Society and Organizations Explain the Benefits of Artifical Intelligence (AI) Describe the Challenges of Artificial Intelligence (AI) Projects Demonstrate Understanding of the Risks of Artificial Intelligence (AI) Projects List Opportunities for Artificial Intelligence (AI) Identify a Typical Funding Source for Artificial Intelligence (AI) Projects and Relate to the NASA Technology Readiness Levels (TRLs) Starting Artificial Intelligence (AI): how to Build a Machine Learning (ML) Toolbox ? Theory and Practice Describe how we Learn from Data - Functionality, Software and Hardware Recall which Rypical, Narrow Artificial Intelligence (AI) Capability is Useful in Machine Learning (ML9 and Artificial Intelligence (AI) AgentsïFunctionality The Management, Roles and Responsibilities of Humans and Machines Demonstrate an Understanding that Artificial Intelligence (AI) (in Particular, Machine Learning (ML)) will Drive Humans and Machines to Work Together List Future Directions of Humans and Machines Working Together Describe a ''Learning from Experience'' Agile Approach to Projects
Duration 1 Days 6 CPD hours This course is intended for To gain the most from attending this course you should possess the following incoming skills: Basic knowledge of programming concepts and syntax in Python. Familiarity with common data formats such as CSV, JSON, and XML. Experience using command-line interfaces and basic text editing tools. Understanding of basic machine learning concepts and algorithms. Overview Working in an interactive learning environment, led by our engaging expert, you will: Gain a solid understanding of prompt engineering concepts and their applications in software development and AI-driven solutions. Master the techniques for preprocessing and cleaning text data to ensure high-quality inputs for AI models like GPT-4. Develop expertise in GPT-4 tokenization, input formatting, and controlling model behavior for various tasks and requirements. Acquire the ability to design, optimize, and test prompts effectively, catering to diverse business applications and use cases. Learn advanced prompt engineering techniques, such as conditional text generation and multi-turn conversations, to create more sophisticated AI solutions. Practice creating prompts to generate, run, and test code in a chosen programming language using GPT-4 and OpenAI Codex. Understand the ethical implications and best practices in responsible AI deployment, ensuring fair and unbiased AI applications in software development. Prompt Engineering offers coders and software developers a competitive edge by empowering them to develop more effective and efficient AI-driven solutions in their projects. By harnessing the capabilities of cutting-edge AI models like GPT-4, coders can automate repetitive tasks, enhance natural language understanding, and even generate code suggestions, boosting productivity and creativity. In addition, mastering prompt engineering can contribute to improved job security, as professionals with these in-demand skills are highly sought after in the rapidly evolving tech landscape. Quick Start to Prompt Engineering for Coders and Software Developers is a one day course designed to get you quickly up and running with the prompting skills required to out AI to work for you in your development efforts. Guided by our AI expert, you?ll explore key topics such as text preprocessing, data cleansing, GPT-4 tokenization, input formatting, prompt design, and optimization, as well as ethical considerations in prompt engineering. In the hands-on labs you?ll explore tasks such as formatting inputs for GPT-4, designing and optimizing prompts for business applications, and implementing multi-turn conversations with AI. You?ll work with innovative tools like the OpenAI API, OpenAI Codex, and OpenAI Playground, enhancing your learning experience while preparing you for integrating prompt engineering into your professional toolkit. By the end of this immersive course, you?ll have the skills necessary to effectively use prompt engineering in your software development projects. You'll be able to design, optimize, and test prompts for various business tasks, integrate GPT-4 with other software platforms, and address ethical concerns in AI deployment. Introduction to Prompt Engineering Overview of prompt engineering and its importance in AI applications Major applications of prompt engineering in business Common challenges faced in prompt engineering Overview of GPT-4 and its role in prompt engineering Key terminology and concepts in prompt engineering Getting Things Ready: Text Preprocessing and Data Cleansing Importance of data preprocessing in prompt engineering Techniques for text cleaning and normalization Tokenization and n-grams Stop word removal and stemming Regular expressions and pattern matching GPT-4 Tokenization and Input Formatting GPT-4 tokenization and its role in prompt engineering Understanding and formatting GPT-4 inputs Context windows and token limits Controlling response length and quality Techniques for handling out-of-vocabulary tokens Prompt Design and Optimization Master the skills to design, optimize, and test prompts for various business tasks. Designing effective prompts for different tasks Techniques for prompt optimization GPT-4 system and user parameters for controlling behavior Importance of prompt testing and iteration Best practices for prompt engineering in business applications Advanced Techniques and Tools in Prompt Engineering Learn advanced techniques and tools for prompt engineering and their integration in business applications. Conditional text generation with GPT-4 Techniques for handling multi-turn conversations Overview of tools for prompt engineering: OpenAI API, OpenAI Codex, and OpenAI Playground Integration of GPT-4 with other software platforms and tools Monitoring and maintaining prompt performance Code Generation and Testing with Prompt Engineering Develop the skills to generate, integrate, and test AI-generated code effectively, enhancing productivity and creativity in software development projects. Introduction to code generation with AI models like GPT-4 Designing prompts for code generation across programming languages Techniques for specifying requirements and constraints in prompts Generating and interpreting code snippets using AI-driven solutions Integrating generated code into existing projects and codebases Best practices for testing and validating AI-generated code Ethics and Responsible AI Understand the ethical implications of prompt engineering and the importance of responsible AI deployment in business. Ethical considerations in prompt engineering Bias in AI systems and its impact on prompt engineering Techniques to minimize bias and ensure fairness Best practices for responsible AI deployment in business applications Monitoring and addressing ethical concerns in prompt engineering
Duration 3 Days 18 CPD hours This course is intended for Professionals who want unparalleled creative freedom, productivity, and precision for producing superb 3D modeling. Overview Fundamental concepts and workflows for creating 3D models using AutoCAD, Represent a design by creating solid primitives, solid or surface models from cross-sectional geometry, or composite models from multiple solid models, Complete a solid model design by adding the necessary features to detail, duplicate, and position 3D models, Convert 2D objects to 3D objects, Document a 3D design by creating 2D drawings for production and visualization, Communicate design ideas using visual styles, lights, model walk-through tools, and renderings. In this course, you will learn the fundamental concepts and workflows for creating 3D models using AutoCAD. IntroductionAdvanced Text Objects Annotation Scale Overview Using Fields Controlling the Draw Order Working with Tables Working with Linked Tables Creating Table Styles Projects - Advanced AnnotationDynamic Blocks Working with Dynamic Blocks Creating Dynamic Block Definitions Dynamic Block Authoring Tools Additional Visibility Options Attributes Inserting Blocks with Attributes Editing Attribute Values Defining Attributes Redefining Blocks with Attributes Extracting Attributes Projects - Advanced Blocks & AttributesOutput and Publishing Output For Electronic Review Autodesk Design Review Publishing Drawing Sets Other Tools for Collaboration eTransmit Hyperlinks Cloud Collaboration and 2D Automation Connecting to the Cloud Sharing Drawings in the Cloud Attach Navisworks Files Attach BIM 360 Glue Models Introduction to Sheet Sets Overview of Sheet Sets Creating Sheet Sets Creating Sheets in Sheet Sets Adding Views to Sheets Importing Layouts to Sheet Sets Publishing & Customizing Sheet Sets Transmitting and Archiving Sheet Sets Publishing Sheet Sets Customizing Sheet Sets Custom Blocks for Sheet Sets Projects - Sheet SetsManaging Layers Working in the Layer Properties Manager Creating Layer Filters Setting Layer States CAD Standards CAD Standards Concepts Configuring Standards Checking Standards Layer Translator System Setup Options Dialog Box System Variables Dynamic Input Settings Drawing Utilities Managing Plotters Plot Styles Introduction to Customization Why Customize? Creating a Custom Workspace Customizing the User Interface Using the Customize User Interface (CUI) Dialog Box Customizing the Ribbon Customizing the Quick Access Toolbar Customizing Menus Keyboard Shortcuts Macros & Custom Routines Custom Commands & Macros Running Scripts Action Recorder Editing Action Macros Loading Custom Routines
Duration 2 Days 12 CPD hours This course is intended for This class is intended for network engineers and network admins that are either using Google Cloud Platform or are planning to do so. The class is also for individuals that want to be exposed to software-defined networking solutions in the cloud. Overview Configure Google VPC networks, subnets, and routers Control administrative access to VPC objects Control network access to endpoints in VPCsInterconnect networks among GCP projects Interconnect networks among GCP VPC networks and on-premises or other-cloud networks Choose among GCP load balancer and proxy options and configure them Use Cloud CDN to reduce latency and save money Optimize network spend using Network TiersConfigure Cloud NAT or Private Google Access to provide instances without public IP addresses access to other services Deploy networks declaratively using Cloud Deployment Manager or Terraform Design networks to meet common customer requirements Configure monitoring and logging to troubleshoot networks problems Learn about the broad variety of networking options on Google Cloud. This course uses lectures, demos, and hands-on labs to help you explore and deploy Google Cloud networking technologies, including Virtual Private Cloud (VPC) networks, subnets, and firewalls; interconnection among networks; load balancing; Cloud DNS; Cloud CDN; and Cloud NAT. You'll also learn about common network design patterns and automated deployment using Cloud Deployment Manager or Terraform. Google Cloud VPC Networking Fundamentals Recall that networks belong to projects. Explain the differences among default, auto, and custom networks. Create networks and subnets. Explain how IPv4 addresses are assigned to Compute Engine instances. Publish domain names using Google Cloud DNS. Create Compute Engine instances with IP aliases. Create Compute Engine instances with multiple virtual network. Controlling Access to VPC Networks Outline how IAM policies affect VPC networks. Control access to network resources using service accounts. Control access to Compute Engine instances with tag-based firewall rules. Sharing Networks across Projects Outline the overall workflow for configuring Shared VPC. Differentiate between the IAM roles that allow network resources to be managed. Configure peering between unrelated VPC Networks. Recall when to use Shared VPC and when to use VPC Network Peering. Load Balancing Recall the various load balancing services. Configure Layer 7 HTTP(S) load balancing. Whitelist and blacklist IP traffic with Cloud Armor. Cache content with Cloud CDN. Explain Layer 4 TCP or SSL proxy load balancing. Explain regional network load balancing. Configure internal load balancing. Recall the choices for enabling IPv6 Internet connectivity for Google Cloud load balancers. Determine which Google Cloud load balancer to use when. Hybrid Connectivity Recall the Google Cloud interconnect and peering services available to connect your infrastructure to Google Cloud. Explain Dedicated Interconnect and Partner Interconnect. Describe the workflow for configuring a Dedicated Interconnect. Build a connection over a VPN with Cloud Router. Determine which Google Cloud interconnect service to use when. Explain Direct Peering and Partner Peering. Determine which Google Cloud peering service to use when. Networking Pricing and Billing Recognize how networking features are charged for. Use Network Service Tiers to optimize spend. Determine which Network Service Tier to use when. Recall that labels can be used to understand networking spend. Network Design and Deployment Explain common network design patterns. Configure Private Google Access to allow access to certain Google Cloud services from VM instances with only internal IP addresses. Configure Cloud NAT to provide your instances without public IP addresses access to the internet. Automate the deployment of networks using Deployment Manager or Terraform. Launch networking solutions using Cloud Marketplace. Network Monitoring and Troubleshooting Configure uptime checks, alerting policies and charts for your network services. Use VPC Flow Logs to log and analyze network traffic behavior.
Duration 5 Days 30 CPD hours This course is intended for This course is intended for both novice and experienced programmers. Some experience in C++, C# or Java is helpful. Overview After completing this course, you will be able to: Write and test JavaScript code in modern browsers. Understand and work with the browser's Document Object Model (DOM). Work DOM objects and write code to respond to events. Add jQuery to their projects and use jQuery to manipulate the DOM and to make Ajax calls. Understand Ajax and Web Services, including HTTP Verbs and asynchronous Ajax calls. Work with XML and JSON data formats. Understand and use RESTful Web Services including ODATA queries. Work with Anonymous Functions, Self-Invoking Functions and Closures. Understand the role of the Window and Navigator objects. Describe and understand variables, 'variable hoisting', and JavaScript objects. This course is an in depth hands-on study of JavaScript. The course includes detailed hands-on labs and Q&A labs. The labs include multiple projects that update an existing web site. This course is similar to the retired Course 20480: Programming in HTML5 with JavaScript and CSS3. Module 1: Basic Scripting JavaScript Basics JavaScript or ECMAScript? Which Version of JavaScript am I Using? Shims, Shivs, and Polyfills Writing and Testing JavaScript Editors and the F12 Tools Key Parts of a Script Module 2: The Document Object Model The DOM Accessing Objects from the DOM Responding to Events Adding Elements to the DOM Module 3: Introduction to jQuery jQuery Downloading the jQuery Library jQuery Versions Linking to the Library Selecting Elements using jQuery Working with the Data Returned by jQuery Setting CSS Properties Running a Function Against the jQuery Return Set Module 4: Ajax and Web Services Web Services HTTP Verbs Data Formats ? XML and JSON Ajax RESTful Web Services OData OData Queries OData Updates Module 5: Diving in Deeper Is JavaScript Compiled? Data Types and Objects Extending Data Types Variables, Scopes and Hoisting Functions The ?this? Keyword Errors Recursion
Duration 1 Days 6 CPD hours This course is intended for This class is intended for the following: Individuals preparing for the Associate Cloud Engineer examination. Recommended experience: 6 months+ hands-on experience with GCP This one-day instructor-led course helps prospective candidates structure their preparation for the Associate Cloud Engineer exam. The session will cover the structure and format of the examination, as well as its relationship to other Google Cloud certifications. Through lectures, demos, and hands-on labs, candidates will familiarize themselves with the domains covered by the examination. An Associate Cloud Engineer deploys applications, monitors operations, and manages enterprise solutions. With a shortage of cloud expertise in the job market, one which is projected to last for the next several years, Google Cloud certifications can be a way to differentiate yourself from the rest and prove you have not only the technical knowledge but the skills required to do the job. This course by itself will not prepare a candidate to pass the Associate Cloud Engineer certification exam. It will, however, help the candidate better understand the areas covered by the exam and navigate the recommended resources provided by Google and Qwiklabs for preparing to take the exam, so they can formulate their own personal study plan. This one-day instructor-led course helps prospective candidates structure their preparation for the Associate Cloud Engineer exam. The session will cover the structure and format of the examination, as well as its relationship to other Google Cloud certifications. Through lectures, demos and hands-on labs, candidates will familiarize themselves with the domains covered by the examination. An Associate Cloud Engineer deploys applications, monitors operations, and manages enterprise solutions. With a shortage of cloud expertise in the job market, one which is projected to last for the next several years, Google Cloud certifications can be a way to differentiate yourself from the rest and prove you have not only the technical knowledge, but the skills required to do the job. This course by itself will not prepare a candidate to pass the Associate Cloud Engineer certification exam. It will, however, help the candidate better understand the areas covered by the exam and navigate the recommended resources provided by Google and Qwiklabs for preparing to take the exam, so they can formulate their own personal study plan.
Duration 3 Days 18 CPD hours This course is intended for If you have worked in C++ but want to learn how to make the most of this language, especially for large projects, this course is for you. Overview By the end of this course, you'll have developed programming skills that will set you apart from other C++ programmers. After completing this course, you will be able to: Delve into the anatomy and workflow of C++ Study the pros and cons of different approaches to coding in C++ Test, run, and debug your programs Link object files as a dynamic library Use templates, SFINAE, constexpr if expressions and variadic templates Apply best practice to resource management This course begins with advanced C++ concepts by helping you decipher the sophisticated C++ type system and understand how various stages of compilation convert source code to object code. You'll then learn how to recognize the tools that need to be used in order to control the flow of execution, capture data, and pass data around. By creating small models, you'll even discover how to use advanced lambdas and captures and express common API design patterns in C++. As you cover later lessons, you'll explore ways to optimize your code by learning about memory alignment, cache access, and the time a program takes to run. The concluding lesson will help you to maximize performance by understanding modern CPU branch prediction and how to make your code cache-friendly. Anatomy of Portable C++ Software Managing C++ Projects Writing Readable Code No Ducks Allowed ? Types and Deduction C++ Types Creating User Types Structuring our Code No Ducks Allowed ? Templates and Deduction Inheritance, Polymorphism, and Interfaces Templates ? Generic Programming Type Aliases ? typedef and using Class Templates No Leaks Allowed ? Exceptions and Resources Exceptions in C++ RAII and the STL Move Semantics Name Lookup Caveat Emptor Separation of Concerns ? Software Architecture, Functions, and Variadic Templates Function Objects and Lambda Expressions Variadic Templates The Philosophers' Dinner ? Threads and Concurrency Synchronous, Asynchronous, and Threaded Execution Review Synchronization, Data Hazards, and Race Conditions Future, Promises, and Async Streams and I/O File I/O Implementation Classes String I/O Implementation I/O Manipulators Making Additional Streams Using Macros Everybody Falls, It's How You Get Back Up ? Testing and Debugging Assertions Unit Testing and Mock Testing Understanding Exception Handling Breakpoints, Watchpoints, and Data Visualization Need for Speed ? Performance and Optimization Performance Measurement Runtime Profiling Optimization Strategies Cache Friendly Code