Duration 3 Days 18 CPD hours This course is intended for Java Fundamentals is designed for tech enthusiasts who are familiar with some programming languages and want a quick introduction to the most important principles of Java. Overview After completing this course, you will be able to: Create and run Java programs Use data types, data structures, and control flow in your code Implement best practices while creating objects Work with constructors and inheritance Understand advanced data structures to organize and store data Employ generics for stronger check-types during compilation Learn to handle exceptions in your code Since its inception, Java has stormed the programming world. Its features and functionalities provide developers with the tools needed to write robust cross-platform applications. Java Fundamentals introduces you to these tools and functionalities that will enable you to create Java programs. The course begins with an introduction to the language, its philosophy, and evolution over time, until the latest release. You'll learn how the javac/java tools work and what Java packages are - the way a Java program is usually organized. Once you are comfortable with this, you'll be introduced to advanced concepts of the language, such as control flow keywords. You'll explore object-oriented programming and the part it plays in making Java what it is. In the concluding lessons, you'll be familiarized with classes, typecasting, and interfaces, and understand the use of data structures, arrays, strings, handling exceptions, and creating generics. Introduction to Java The Java Ecosystem Our First Java Application Packages Variables, Data Types, and Operators Variables and Data Types Integral Data Types Type casting Control Flow Conditional Statements Looping Constructs Object-Oriented Programming Object-Oriented Principles Classes and Objects Constructors The this Keyword Inheritance Overloading Constructor Overloading Polymorphism and Overriding Annotations References OOP in Depth Interfaces Typecasting The Object Class Autoboxing and Unboxing Abstract Classes and Methods Data Structures, Arrays, and Strings Data Structures and Algorithms Strings The Java Collections Framework and Generics Reading Data from Files The Java Collections Framework Generics Collection Advanced Data Structures in Java Implementing a Custom Linked List Implementing Binary Search Tree Enumerations Set and Uniqueness in Set Exception Handling Motivation behind Exceptions Exception Sources Exception Mechanics Best Practices
Duration 4 Days 24 CPD hours This course is intended for This course is appropriate for anyone who wants to create applications or modules to automate and simplify common tasks with Perl. Overview Working within in an engaging, hands-on learning environment, guided by our expert web development, PHP practitioner, students will learn to: Create a working script that gets input from the command line, the keyboard, or a file Use arrays to store and process data from files Create formatted reports Use regular expressions Use the appropriate types of variables and data structures Refactor duplicate code into subroutines and modules What is available in the standard library Use shortcuts and defaults, and what they replace Introduction to Perl Programming Essentials is an Introductory-level practical, hands-on Perl scripting training course that guides the students from the basics of writing and running Perl scripts to using more advanced features such as file operations, report writing, the use of regular expressions, working with binary data files, and using the extensive functionality of the standard Perl library. Students will immediately be able to use Perl to complete tasks in the real world. Session: An Overview of Perl What is Perl? Perl is compiled and interpreted Perl Advantages and Disadvantages Downloading and Installing Perl Which version of Perl Getting Help Session: Creating and running Perl Programs Structure of a Perl program Running a Perl script Checking syntax and warnings Execution of scripts under Unix and Windows Session: Basic Data and I/O Numeric and Text literals Math operators and expressions Scalar variables Default values Writing to standard output Command line arguments Reading from the standard input Session: Logic and Loops About flow control The if statement and Boolean values Using unless and elsif Statement modifiers warn() and die() The conditional construct Using while loop and its variants Using the for loop Exiting from loops Session: Lists and Arrays The list data type Accessing array elements Creating arrays List interpolation Arrays and memory Counting elements Iterating through an array List evaluation Slices and ranges Session: Reading and writing text files File I/O Overview Opening a file Reading text files Writing to a text file Arrays and file I/O Using the <> operator Session: List functions Growing and shrinking arrays The split() function Splitting on whitespace Assigning to literal lists The join() function The sort() function Alternate sort keys Reversing an array Session: Formatting output Using sprintf() and printf() Report formatting overview Defining report formats The write() function Advanced filehandle magic Session: Hashes Hash overview Creating hashes Hash attributes Traversing a hash Testing for existence of elements Deleting hash elements Session: References What is a reference? The two ways to create references References to existing data References to anonymous data Dereferencing scalar, array, and ash references Dereferencing elements of arrays and hashes Multidimensional arrays and other data structures Session: Text and Regular Expressions String length The substr() function The index() and rindex() functions String replication Pattern matching and substitution Regular expressions Session: Raw file and data access Opening and closing raw (binary) files Reading raw data Using seek() and tell() Writing raw data Raw data manipulation with pack() and unpack() Session: Subroutines and variable scope Understanding packages Package and Lexical variables Localizing builtin variables Declaring and calling subroutines Calling subroutines Passing parameters and returning values Session: Working with the operating system Determining current OS Environment variables Running external programs User identification Trapping signals File test operators Working with files Time of day Session: Shortcuts and defaults Understanding $_ shift() with no array specified Text file processing Using grep() and Using map() Command-line options for file processing Session: Data wrangling Quoting in Perl Evaluating arrays Understanding qw( ) Getting more out of the <> operator Read ranges of lines Using m//g in scalar context The /o modifier Working with embedded newlines Making REs more readable Perl data conversion Session: Using the Perl Library The Perl library Old-style library files Perl modules Modules bundled with Perl A selection of modules Getting modules from ActiveState Getting modules from CPAN Using Getopt::Long Session: Some Useful Tools Sending and receiving files with Net::FTP Using File::Find to search for files and directories Grabbing a Web page Some good places to find scripts Perl man pages for more information Zipping and unzipping files
Duration 2 Days 12 CPD hours This course is intended for This course is designed for people who want to learn the Python programming language in preparation for using Python to develop software for a wide range of applications, such as data science, machine learning, artificial intelligence, and web development. Overview In this course, you will develop simple command-line programs in Python. You will: Set up Python and develop a simple application. Declare and perform operations on simple data types, including strings, numbers, and dates. Declare and perform operations on data structures, including lists, ranges, tuples, dictionaries, and sets. Write conditional statements and loops. Define and use functions, classes, and modules. Manage files and directories through code. Deal with exceptions. Though Python has been in use for nearly thirty years, it has become one of the most popular languages for software development, particularly within the fields of data science, machine learning, artificial intelligence, and web development?all areas in which Python is widely used. Whether you're relatively new to programming, or have experience in other programming languages, this course will provide you with a comprehensive first exposure to the Python programming language that can provide you with a quick start in Python, or as the foundation for further learning. You will learn elements of the Python 3 language and development strategies by creating a complete program that performs a wide range of operations on a variety of data types, structures, and objects, implements program logic through conditional statements and loops, structures code for reusability through functions, classes, and modules, reads and writes files, and handles error conditions. Lesson 1: Setting Up Python and Developing a Simple Application Topic A: Set Up the Development Environment Topic B: Write Python Statements Topic C: Create a Python Application Topic D: Prevent Errors Lesson 2: Processing Simple Data Types Topic A: Process Strings and Integers Topic B: Process Decimals, Floats, and Mixed Number Types Lesson 3: Processing Data Structures Topic A: Process Ordered Data Structures Topic B: Process Unordered Data Structures Lesson 4: Writing Conditional Statements and Loops in Python Topic A: Write a Conditional Statement Topic B: Write a Loop Lesson 5: Structuring Code for Reuse Topic A: Define and Call a Function Topic B: Define and Instantiate a Class Topic C: Import and Use a Module Lesson 6: Writing Code to Process Files and Directories Topic A: Write to a Text File Topic B: Read from a Text File Topic C: Get the Contents of a Directory Topic D: Manage Files and Directories Lesson 7: Dealing with Exceptions Topic A: Handle Exceptions Topic B: Raise Exceptions
Duration 5 Days 30 CPD hours This course is intended for This introductory-level Python course is geared for experienced users who want to use Python in web development projects, or system administrators and web site administrators who want to use Python to support their server installations, as well as anyone else who wants to automate or simplify common tasks with the use of Python scripts. Basic familiarity with any programming or scripting language would be helpful, along with a working, user-level knowledge of Unix/Linux, Mac, or Windows. Overview This course is approximately 50% hands-on, combining expert lecture, real-world demonstrations and group discussions with machine-based practical labs and exercises. Our engaging instructors and mentors are highly experienced practitioners who bring years of current 'on-the-job' experience into every classroom. Throughout the hands-on course students, will learn to write essential Python scripts using the most current and efficient skills and techniques. Working in a hands-on learning environment, guided by our expert team, attendees will learn to: Create working Python scripts following best practices Use python data types appropriately Read and write files with both text and binary data Search and replace text with regular expressions Get familiar with the standard library and its work-saving modules Use lesser known but powerful Python data types Create 'real-world', professional Python applications Work with dates, times, and calendars Know when to use collections such as lists, dictionaries, and sets Understand Pythonic features such as comprehensions and iterators Write robust code using exception handling Mastering Python Programming is an introductory and beyond-level practical, hands-on Python training course that leads the student from the basics of writing and running Python scripts to more advanced features such as file operations, regular expressions, working with binary data, and using the extensive functionality of Python modules. Extra emphasis is placed on features unique to Python, such as tuples, array slices, and output formatting. This comprehensive, practical course provides an in-depth exploration of working with the programming language, not an academic overview of syntax and grammar. Students will immediately be able to use Python to complete tasks in the real world. An overview of Python What is python? Python Timeline Advantages/Disadvantages of Python Getting help with pydoc The Python Environment Starting Python Using the interpreter Running a Python script Python scripts on Unix/Windows Editors and IDEs Getting Started Using variables Builtin functions Strings Numbers Converting among types Writing to the screen Command line parameters Flow Control About flow control White space Conditional expressions Relational and Boolean operators While loops Alternate loop exits Array types About array types (AKA sequences) Lists and list methods Tuples Indexing and slicing Iterating through a sequence Nested sequences Sequence functions, keywords, and operators List comprehensions Generator Expressions Working with files File overview Opening a text file Reading a text file Writing to a text file Reading and writing raw (binary) data Converting binary data with struct Dictionaries and Sets About dictionaries Creating dictionaries Iterating through a dictionary About sets Creating sets Working with sets Functions Defining functions Parameters Global and local scope Nested functions Returning values Sorting The sorted() function Alternate keys Lambda functions Sorting collections Using operator.itemgetter() Reverse sorting Errors and Exception Handling Syntax errors Exceptions Using try/catch/else/finally Handling multiple exceptions Ignoring exceptions Modules and Packages The import statement Module search path Creating Modules Using packages Function and Module aliases An Introduction to Python Classes About o-o programming Defining classes Constructors Methods Instance data Properties Class methods and data Regular Expressions RE syntax overview RE Objects Searching and matching Compilation flags Groups and special groups Replacing text Splitting strings Using the Standard Library The sys module Launching external programs Math functions Random numbers Reading CSV data Dates and Times Working with dates and times Translating timestamps Parsing dates from text Formatting dates Calendar data Working with the File System Paths, directories, and filenames Checking for existence Permissions and other file attributes Walking directory trees Creating filters with fileinput Using shutil for file operations Advanced Data Handling Defaultdict and Counter Prettyprinting data structures Compressed archives (zip, gzip, tar, etc.) Persistent data Network Programming Using requests Grabbing web content Sending email Using SSH for remote access Using FTP Writing real-life applications Reading input files a la Unix Parsing command-line options Detecting the current platform Implementing logging Additional course details: Nexus Humans Mastering Python Programming (TTPS4820) 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 Mastering Python Programming (TTPS4820) 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 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
Duration 5 Days 30 CPD hours This course is intended for This course is intended for individuals who are Java programmers and have worked with databases and with object-oriented programming techniques, who are now ready to create more complex and advanced programs using Java SE 7. Overview Upon successful completion of this course, students will be able to: - create and manage custom classes. - control program flow by writing code to respond to specific criteria. - implement object-oriented programming techniques to create reusable and reliable programs. - work with Java utility class libraries. - use the capabilities of the Java I/O package to read and write data to external files or media. - use collection APIs in Java to manage data. - use generics to enforce compile-time type checking. - use multi-threaded programs to help handle multiple tasks concurrently. - manage Java applications for memory efficiency and create distributable versions of a Java application. Students will work with advanced features of Java. Working with Classes Create Classes Create Variables Write an Expression Work with Arrays Work with Static Class Members Define Methods Use Enumerated Data Types Controlling Program Flow Work with Conditional Statements Work with Looping Statements Handle Exceptions Handle Chained Exceptions Write and Enable Assertions Implementing Object-Oriented Programming Concepts Extend a Class Overload and Override Methods Work with Interfaces Create Inner Classes Examine Object-Oriented Design Concepts Working with Java Utility Class Libraries Work with Strings Format and Parse Strings Work with Dates, Numbers, and Currencies Using the Java I/O Package Work with the File Class Work with Byte Streams Work with Character Streams Read Files Write to a File Manipulate I/O Objects Using Collections Work with the Collection Interface Work with the Set Collection Work with List Collections Work with Queues Work with the Map Collection Work with Collection Utilities Working with Generics Declare Generics Implement Generics Using Multi-Threaded Programs Create a Multi-Threaded Program Synchronize Threads Managing Java Applications Implement Garbage Collection Deploy a Java Application Additional course details: Nexus Humans Java Programming (Java SE 7) 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 Java Programming (Java SE 7) 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 5 Days 30 CPD hours This course is intended for Experienced Programmers and Systems Administrators. Overview Throughout the course students will be led through a series of progressively advanced topics, where each topic consists of lecture, group discussion, comprehensive hands-on lab exercises, and lab review. This course is ?skills-centric?, designed to train attendees in core Python and web development skills beyond an intermediate level, coupling the most current, effective techniques with best practices. Working within in an engaging, hands-on learning environment, guided by our expert Python practitioner, students will learn to: ? Create working Python scripts following best practices ? Use python data types appropriately ? Read and write files with both text and binary data ? Search and replace text with regular expressions ? Get familiar with the standard library and its work-saving modules ? Use lesser-known but powerful Python data types ? Create 'real-world', professional Python applications ? Work with dates, times, and calendars ? Know when to use collections such as lists, dictionaries, and sets ? Understand Pythonic features such as comprehensions and iterators ? Write robust code using exception handling An introductory and beyond-level practical, hands-on Python training course that leads the student from the basics of writing and running Python scripts to more advanced features. An Overview of Python What is python? 1 -- An overview of Python What is python? Python Timeline Advantages/Disadvantages of Python Getting help with pydoc The Python Environment Starting Python Using the interpreter Running a Python script Python scripts on Unix/Windows Editors and IDEs Getting Started Using variables Built-in functions Strings Numbers Converting among types Writing to the screen Command line parameters Flow Control About flow control White space Conditional expressions Relational and Boolean operators While loops Alternate loop exits Sequences About sequences Lists and list methods Tuples Indexing and slicing Iterating through a sequence Sequence functions, keywords, and operators List comprehensions Generator Expressions Nested sequences Working with files File overview Opening a text file Reading a text file Writing to a text file Reading and writing raw (binary) data Converting binary data with struct Dictionaries and Sets About dictionaries Creating dictionaries Iterating through a dictionary About sets Creating sets Working with sets Functions Defining functions Parameters Global and local scope Nested functions Returning values Sorting The sorted() function Alternate keys Lambda functions Sorting collections Using operator.itemgetter() Reverse sorting Errors and Exception Handling Syntax errors Exceptions Using try/catch/else/finally Handling multiple exceptions Ignoring exceptions Modules and Packages The import statement Module search path Creating Modules Using packages Function and Module aliases Classes About o-o programming Defining classes Constructors Methods Instance data Properties Class methods and data Regular Expressions RE syntax overview RE Objects Searching and matching Compilation flags Groups and special groups Replacing text Splitting strings The standard library The sys module Launching external programs Math functions Random numbers The string module Reading CSV data Dates and times Working with dates and times Translating timestamps Parsing dates from text Formatting dates Calendar data Working with the file system Paths, directories, and filenames Checking for existence Permissions and other file attributes Walking directory trees Creating filters with fileinput Using shutil for file operations 17 ? Advanced data handling Defaultdict and Counter Prettyprinting data structures Compressed archives (zip, gzip, tar, etc.) Persistent data Advanced data handling Defaultdict and Counter Prettyprinting data structures Compressed archives (zip, gzip, tar, etc.) Persistent data Network services Grabbing web content Sending email Using SSH for remote access Using FTP Writing real-life applications Parsing command-line options Detecting the current platform Trapping signals Implementing logging Python Timeline Advantages/Disadvantages of Python Getting help with pydoc
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
Duration 3 Days 18 CPD hours This course is intended for This course is appropriate for advanced users, system administrators and web site administrators who want to use Python to support their server installations, as well as anyone else who wants to automate or simplify common tasks with the use of Python scripts. Students can apply the course skills to use Python in basic web development projects or automate or simplify common tasks with the use of Python scripts. Overview This skills-focused course is about 50% hands-on lab to lecture ratio, combining expert lecture, real-world demonstrations and group discussions with machine-based practical labs and exercises. Working in a hands-on learning environment led by our expert instructor, you'll learn how to: Create working Python scripts following best practices Use python data types appropriately Read and write files with both text and binary data Search and replace text with regular expressions Work with with the standard library and its work-saving modules Create 'real-world', professional Python applications Know when to use collections such as lists, dictionaries, and sets Work with Pythonic features such as comprehensions and iterators Write robust code using exception handling Introduction to Python Programming Basics is a hands-on Python programming course that teaches you the key skills you?ll need to get started with programming in Python to a solid foundational level. The start of the course will lead you through writing and running basic Python scripts, and then guide you through how to use more advanced features such as file operations, regular expressions, working with binary data, and using the extensive functionality of Python modules. Extra emphasis is placed on features unique to Python, such as tuples, array slices, and output formatting. This course provides you with an excellent kick start for users new to Python and scripting, enabling you to quickly use basic Python skills on the job in a variety of ways. You?ll be able use Python in basic web development projects, or use it to automate or simplify common tasks with the use of Python scripts. The course also serves as a solid primer course / foundation for continued Python study in support for next level web development with Python, using Python in DevOps, Python for data science / machine learning or Python for systems admin or networking support. Python Quick View What is Python? Python timeline Advantages/disadvantages Installing Python Getting help The Python Environment Starting Python Using the interpreter Running a Python script Editors and IDEs Getting Started with Python Using variables Builtin functions String data Numberic data Converting types Console input/output Command line parameters Flow Control About flow control The if statement Relational and Boolean operators while loops Exiting from loops Array Types About array types Lists and list methods Tuples Indexing and slicing Iterating through a sequence Sequence functions, keywords, and operators List comprehensions and generators Working with Files File overview Opening a text file Reading a text file Writing to a text file Dictionaries and Sets About dictionaries Creating dictionaries Iterating through a dictionary About sets Creating sets Working with sets Functions Defining functions Returning values Parameters and arguments Variable scope Sorting The sorted() function Custom sort keys Lambda functions Sorting in reverse Using min() and max() Errors and Exception Handling Exceptions Using try/catch/else/finally Handling multiple exceptions Ignoring exceptions Modules and Packages Creating Modules The import statement Module search path Using packages Function and module aliases Getting Started with Object Oriented Programming and Classes About object-oriented programming Defining classes Constructors Understanding self Properties Instance Methods and data Class methods and data Inheritance Additional course details: Nexus Humans Introduction to Python Programming Basics (TTPS4800) 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 Python Programming Basics (TTPS4800) 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 4 Days 24 CPD hours This course is intended for This is an introductory-level Java programming course, designed for experienced developers who wish to get up and running with Java, or who need to reinforce sound Java coding practices, immediately. Overview Working in a hands-on learning environment, guided by our expert team, attendees will learn to: 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 features Work with the Modular system (Project Jigsaw) Understand and use classes, inheritance and polymorphism Understand and use collections, generics, autoboxing, and enumerations Process large amount of data using Lambda expressions and the Stream API Abstract, static and private methods in interfaces Take advantage of the Java tooling that is available with the programming environment being used in the class Specific Java 11 features covered: Using the Local Variable Type in Lambda expressions; Updates made to the String AP Time Permitting: Quick look ahead - Java 12, Java 13, Java 14 and Beyond If you're an experienced OO developer (coming from a C# or C++ background, etc.) who needs to transition to programming in Java, this fast-paced, hands-on course will get you there quickly. Fast Track to Java Programming for OO Experienced Developers is a four-day, lab-intensive class where you'll quickly be immersed in working with the latest Java 11 programming techniques, using best practices for writing solid, robust (and well-written!) modern object-oriented applications. In addition to learning excellent, current coding skills in Java, you'll explore the new improved features for better performance and new capabilities for addressing rapid application development that Java 11 brings to the table. This course includes several key aspects that were introduced in Java 9, Java 10, and Java 11 including the Java Modular System, Local Variable Type Inference, and several API updates. This course also includes a Quick Look at what?s next in Java ? Java 12, Java 13, Java 14 and beyond. The Java Platform Java Platforms Lifecycle of a Java Program Responsibilities of JVM Documentation and Code Reuse Using the JDK Setting Up Environment Locating Class Files Compiling Package Classes Source and Class Files Java Applications The Eclipse Paradigm Workbench and Workspace Views Editors Perspectives Projects Writing a Simple Class Classes in Java Class Modifiers and Types Class Instance Variables Primitives vs. Object References Creating Objects Adding Methods to the Class Passing Parameters into Methods Returning a Value from a Method Overloaded Methods Constructors Optimizing Constructor Usage Language Statements Operators Comparison and Logical Operators Looping Continue and Break Statements The switch Statement The for-each() Loop Using Strings 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 Specializing in a Subclass Extending a Class Casting The Object Class Default Constructor Implicit Constructor Chaining Fields and Variables Instance vs. Local Variables: Usage Differences Data Types Default Values Block Scoping Rules Final and Static Fields Static Methods Using Arrays Arrays Accessing the Array Multidimensional Arrays Copying Arrays Variable Arguments Local-Variable Type Inference Type inference Infering Types of Local Variables The var Reserved Type name Benefits of Using var Backward Compatibility Java Packages and Visibility Class Location of Packages The Package Keyword Importing Classes Executing Programs Visibility in the Modular System Java Naming Conventions Inheritance and Polymorphism Polymorphism: The Subclasses Upcasting vs. Downcasting Calling Superclass Methods from Subclass The final Keyword Interfaces and Abstract Classes Separating Capability from Implementation Abstract Classes Implementing an Interface Abstract Classes vs. Interfaces Introduction to Exception Handling Exception Architecture Throwing Exceptions Checked vs. Unchecked Exceptions Exceptions Handling Multiple Exceptions Automatic Closure of Resources Creating Your Own Exceptions Utility Classes Wrapper Classes Autoboxing/Unboxing Enumeration Syntax Using Static imports Introduction to Generics Generics and Subtyping Bounded Wildcards Generic Methods Legacy Calls to Generics When Generics Should Be Used Lambda Expressions and Functional Interface Lambda Expression Syntax Functional Interfaces Type Inference in Java 8 Method references Collections Characterizing Collections Collection Interface Hierarchy The Set, List and Queue Interfaces Map Interfaces Using Collections Collection Sorting Comparators Using the Right Collection Lambda expressions in Collections Streams Processing Collections of data The Stream interface Reduction and Parallelism Filtering collection data Sorting Collection data Map collection data Find elements in Stream Numeric Streams Create infinite Streams Sources for using Streams Collectors Creating Collections from a Stream Group elements in the Stream Multi-level grouping of elements Partitioning Streams Introduction to the Module System Introduce Project Jigsaw Classpath and Encapsulation The JDK internal APIs Java 9 Platform modules Defining application modules Define module dependencies Implicit dependencies Implied Readability Exporting packages Java Date/Time The Date and Calendar classes Introduce the new Date/Time API LocalDate, LocalDateTime, etc. Formatting Dates Working with time zones Manipulate date/time values Java 12 and beyond Provide an overview of changes since Java 11 Introduce Preview Features Records (Java 14) Switch Expressions (Java 12, Java 13, Java 14) Text Blocks (Java 13, Java 14) Helpful NullPointerExceptions (Java 14) Pattern Matching for instanceof (Java 14) Additional course details: Nexus Humans Fast Track to Core Java Programming for Object Oriented Developers (TT2104-J11) 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 Core Java Programming for Object Oriented Developers (TT2104-J11) 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.