Lectures of the Technosphere. Perl Programming (Fall 2015)
Today, we invite you to familiarize yourself with one of the courses in Technosphere, which is dedicated to Perl programming. This course is open - any student or graduate student of the Moscow State University named after M.V. Lomonosov. Also in the Technosphere there are several more open courses , on September 1, they will be recorded. This semester is waiting for you a nice addition: they will be supported by methodological material that will contain enough information so that you can recall the material of any lecture and, if necessary, study it more deeply.
The goal of the Perl Programming course is to learn the capabilities of a language (its strengths and weaknesses), learn how to write software products in this language, learn how to quickly navigate in someone else's code. Under the cut are all the lectures in video format and a brief description of them.
Lecture 1. Introduction
')
The history of the creation of the Perl language. Performance comparison Examples of projects. Documentation (perldoc). Setting the environment. Run scripts (perlrun). Deparse module. Module Data :: Dumper. DDP module. Debugging perl-scripts (perldebug).
Unicode support (definitions, strings and octets, conversions, UTF8-flag, input / output). Regular expressions (match, search and replace, transliteration, character classes, modifiers, groups, looks, captures, quantifiers, work with unicode, debugging).
Lecture 5. Communication with the outside world
Work with files. Perl IO backend. The interaction of processes. Work with sockets. Serialization (data conversion to binary, JSON, CBOR, MSGPACK, Storable, XML). Parsing input parameters.
HTTP protocol. CGI, mod_perl, FastCGI, PSGI. Web frameworks. Security mechanisms in applications.
Lecture 9. Asynchronous event programming
Operation of the operating system (parallelism and pseudo-parallelism, process state and context switching, degree of multitasking, system call, blocking I / O operations). Handling N parallel connections (accept + fork, C10k, non-blocking I / O operations, event loop). AnyEvent (closures, delayed functions, AnyEvent, Guard interface). Coro.
Lecture 10. Accelerate Pearl. Expanding "C"
Generation of XS-modules. Macro processor. Types of data from the inside. Work with a stack. Typemaps. Perl embedding (perlembed).
Lecture 11-12. Testing. Performance analysis
Functional testing. Performance Testing Stress Testing. Usability Testing. Testing user interface. Security testing Localization testing Compatibility testing. Profiling. Benchmarks. Pure Perl leak detection. Search for leaks in XS.
Subscribe to our youtube channel Tehnostrim Mail.Ru ! There you will find all the lectures, master classes and broadcasts of our educational projects.