Lectures on JavaScript and Node.js in KPI
Comrades engineers, as promised in the announcement , half of the lectures (and this is 51) are already available for viewing on YouTubeand I will continue to record them in 2019. Some of them will need to be re-recorded, because in the first lectures the sound is not the best and because I still haven't done very simple topics. It was better to come up with complex and relevant topics that I myself am more interested in telling. I would not say that this is a course for beginners; rather, this is a course for those who already know the syntax. During this time, many suggestions have been received on how to improve the way of presenting the material: divide into shorter lectures, prepare tasks for practical development, record seminars and answers to students' questions, add analysis of a number of controversial and holivar topics to the program. But not all at once, I already devote a third of my life to this.
Below are the topics of lectures with links, grouped by sections. The next 50 topics are already there and I will soon publish the schedule of lectures for 2019, but if anyone wants to request a topic, then offer in the comments.
Survey Lectures
- The approach to the study of programming (speech at the bottom of the Faculty of Computer Science KPI)
- Map Specialty Software Engineer
Basic course (22 lectures)
- Basic JavaScript syntax
- Basic JavaScript syntax, continued
- Environment Setup: Node.js, npm, git, eslint
- Functions, lambdas, contexts, closures
- Arrays, objects, classes, prototypes
- Composition, currying, partial application
- Higher order functions, callbacks, events
- Work with strings, templates and unicode
- Code Performance Measurement and Optimization
- Impurities, wrappers, decorators, memoization
- Collections, sets, hash tables
- Projection and display of datasets
- Data Structures: Lists, Stack, Queue, Deck
- Serialization and deserialization
- Using Proxy and Symbol
- Iteration, loops and iterators
- Function and object cheating, error handling
- Regular expressions and parsing
- Factories and object pools
- Typed Arrays
- Singleton Template (Singleton)
- Functional objects, functors and monads
Asynchronous programming (9 lectures)
- Asynchronous programming in Node.js
- Timers, Timeouts, EventEmitter
- Asynchronous functions async, await, thenable, error handling
- Asynchronous adapters: promisify, callbackify, asyncify ...
- Asynchronous data collectors
- Asynchronous programming on callback
- Non-blocking asynchronous iteration
- Asynchrony with async.js library
- Promis asynchrony
Architecture and paradigms (7 lectures)
- Architectural programming approach
- Modules, layers, project structure, sandboxes
- Inversion of management and dependency injection
- Layers, Connectivity, and Code Connectivity
- Data Access Layer, Cursor, Transaction
- Functional programming
- Reactive programming
Lectures on Node.js (11 lectures)
- Node.js Introduction to Technology
- Overview of the embedded Node.js API
- Client server on Node.js TCP and UDP, DNS
- Work with files, buffers and file streams
- Interprocess Communication in Node.js
- HTTP server on Node.js (routing, cluster, IP sticky)
- Console and command line
- High-load distributed applications on Node.js
- WebSocket server on Node.js (spreadsheets and chat)
- Monitoring the file system in Node.js
- Memory leaks, garbage collection and profiling
Only registered users can participate in the survey. Sign in , please.