Mastering Modern Perl: Writing Efficient and Maintainable Code

Want to learn how to code? Delve into Modern Perl, get hands-on experience with best practices, and confidently build efficient, maintainable, and scalable code using Perl's rich features.

Intermediate

166 Lessons

35h

Certificate of Completion

Want to learn how to code? Delve into Modern Perl, get hands-on experience with best practices, and confidently build efficient, maintainable, and scalable code using Perl's rich features.

AI-POWERED

Explanations

AI-POWERED

Explanations

This course includes

405 Playgrounds
30 Challenges
13 Quizzes

This course includes

405 Playgrounds
30 Challenges
13 Quizzes

Course Overview

Modern Perl is a mindset. It’s an approach to writing great software with the Perl programming language. It’s how effective Perl programmers write powerful, maintainable, scalable, concise, and excellent code. It takes advantage of Perl’s extensive library of free software (the CPAN) and language features designed to multiply your productivity. In this course, you will cover a wide range of topics, including Perl's philosophy, the basics of the Perl language, object-oriented programming, exception handling...Show More

What You'll Learn

An understanding of the philosophy behind Perl’s design.

A deep understanding of the Perl programming language.

The ability to build Modern Perl mindset and write idiomatic Perl code.

An understanding of the best practices for writing reliable and maintainable Perl code.

The ability to leverage CPAN to improve productivity and write better Perl code.

What You'll Learn

An understanding of the philosophy behind Perl’s design.

Show more

Course Content

1.

Introduction to Modern Perl

Get familiar with writing effective Perl using modern tools and techniques.
2.

The Perl Philosophy

Unpack the core of Perl's philosophy, documentation, expressivity, context, implicit ideas, and context-related exercises.
3.

Perl Identifiers and Variables

Break apart Perl identifiers, variables, strings, numbers, lists, and Unicode handling.
4.

Control Flow: Conditionals and Looping

Break down complex control flow and looping constructs in Perl. Apply efficient coding practices.
5.

Data Structures

Deepen your knowledge of Perl’s scalars, arrays, hashes, coercion, and practical exercises.
6.

Packages and References

9 Lessons

Investigate Perl packages and references for efficient, maintainable code and data structures.
7.

Operators

5 Lessons

Piece together the parts of Perl operators’ characteristics, types, and practical exercises.
8.

Functions

21 Lessons

Get familiar with using Perl functions, parameters, namespaces, closures, and AUTOLOAD for dynamic method handling.
9.

Regular Expressions and Matching

17 Lessons

Grasp the fundamentals of using Perl's powerful regex features for efficient text processing.
10.

Objects

16 Lessons

Break apart key OOP concepts in Perl using Moose for efficient, maintainable code.
11.

Style and Efficacy

10 Lessons

Enhance your skills in writing maintainable, idiomatic, and effective Perl code, handling exceptions, and using pragmas.
12.

Managing Real Programs

18 Lessons

Deepen your knowledge of efficient program management in Perl, focusing on testing, file handling, and modular design.
13.

Perl Beyond Syntax

4 Lessons

Investigate advanced Perl idioms, effective code management, and safely handling global variables for maintainable code.
14.

What to Avoid

7 Lessons

Preempt errors by avoiding Perl's barewords, indirect objects, and complex prototypes.
15.

Perl and Its Community

3 Lessons

Step through Perl's rich community, CPAN resources, and efficient installation management tools.
16.

Next Steps with Perl

3 Lessons

Discover the logic behind essential Perl modules, CPAN tools, and continuous learning strategies.
17.

Appendix

1 Lesson

Examine essential Perl testing modules for enhancing software quality and maintainability.

Trusted by 1.4 million developers working at companies

Anthony Walker

@_webarchitect_

Emma Bostian 🐞

@EmmaBostian

Evan Dunbar

ML Engineer

Carlos Matias La Borde

Software Developer

Souvik Kundu

Front-end Developer

Vinay Krishnaiah

Software Developer

Eric Downs

Musician/Entrepeneur

Kenan Eyvazov

DevOps Engineer

Anthony Walker

@_webarchitect_

Emma Bostian 🐞

@EmmaBostian

Hands-on Learning Powered by AI

See how Educative uses AI to make your learning more immersive than ever before.

Instant Code Feedback

Evaluate and debug your code with the click of a button. Get real-time feedback on test cases, including time and space complexity of your solutions.

AI-Powered Mock Interviews

Adaptive Learning

Explain with AI

AI Code Mentor