К содержимому
learnspaceYOUR NEXT CHAPTER
ПРОСТРАНСТВО ОБУЧЕНИЯ
ГлавнаяКаталог курсовМоё обучениеCoursera

Знания без границ

Учитесь у лучших университетов и компаний мира.

Открыть Coursera
Интеграция
Пространство университета
Моё пространствоСтраница курса
↵
ЯЛичный кабинетСтудент
© 2026 LearnSpaceКаждый день — возможность узнать больше.Помощь
Advanced Rust – Lifetimes, Iterators, Testing & Randomness · LearnSpace
Назад в каталог
courseraПрограммирование

Advanced Rust – Lifetimes, Iterators, Testing & Randomness

Курс от Packt
Продвинутый≈ 33.2 чАнглийский
О курсеНавыкиПрограммаПреподаватели

О курсе

This course features Coursera Coach! A smarter way to learn with interactive, real-time conversations that help you test your knowledge, challenge assumptions, and deepen your understanding as you progress through the course. Unlock the full potential of Rust programming with advanced topics that are crucial for mastering this language. Through practical lessons on lifetimes, iterators, testing, and randomness, you will gain the deep understanding needed to write more efficient, reliable, and maintainable code. This course explores complex concepts such as non-lexical lifetimes, iterator traits, and the rand crate, while helping you strengthen your problem-solving skills. The course starts with an in-depth exploration of lifetimes, walking you through concrete examples, invalid lifetimes, and generic lifetimes. You'll then dive into the world of iterators, learning how to handle collections, map, filter, fold, and perform other operations. The next section covers Rust’s testing framework, where you will learn everything from writing unit tests to using advanced testing techniques like test-driven development (TDD) and integration tests. Finally, you'll explore randomness, mastering the rand crate and how to apply it to your applications. This course is aimed at intermediate to advanced Rust programmers who wish to refine their skills and apply best practices in real-world projects. It assumes familiarity with basic Rust concepts such as ownership, borrowing, and basic syntax. The difficulty level is advanced, as it explores the nuances of Rust for developers who want to deepen their expertise. By the end of the course, you will be able to implement complex features using lifetimes, iterators, and closures, write effective unit and integration tests, and leverage randomness and time manipulation in Rust applications.

Навыки, которые вы освоите

Memory Management

Программа курса

9 модулей · 172 учебных материалов

01Lifetimes23 материалов

Lifetimes

Introduction to the Course 'Advanced Rust – Lifetimes, Iterators, Testing & Randomness'ЧтениеFull Specialization ResourcesЧтениеConcrete Lifetimes for Values IВидеоConcrete Lifetimes for Values IIВидео

Учитесь у экспертов

Packt - Course Instructors

Преподаватель курса

Advanced Rust – Lifetimes, Iterators, Testing & Randomness
В каталоге вашей программы

Инвестируйте в себя

Новые знания — в удобное для вас время.

Начать на Coursera

Обучение откроется на Coursera
в новой вкладке

Обучение на Coursera

≈ 33.2 ч

9 модулей

Язык: Английский

Субтитры: Арабский, Французский, Итальянский, Корейский, Немецкий, Индонезийский, Испанский, Японский, Казахский

Часть программы вашего университета
Concrete Lifetimes for ReferencesВидео
Non-Lexical LifetimesВидео
Invalid Lifetimes IВидео
Invalid Lifetimes IIВидео
Functions Cannot Return References to Owned Values or ParametersВидео
References as Function ParametersВидео
Intro to Generic LifetimesВидео
Lifetimes and ReferentsВидео
Lifetime Elision Rules IВидео
Multiple Parameters IВидео
Multiple Parameters IIВидео
Lifetime Elision Rules IIВидео
Lifetimes in StructsВидео
Multiple LifetimesВидео
The static LifetimeВидео
Project SolutionВидео
Section ReviewВидео
Understanding Rust LifetimesDIALOGUE
Lifetimes - AssessmentЗадание
02Closures18 материалов

Closures

Nested FunctionsВидеоIntro to ClosuresВидеоClosure ShortcutsВидеоThe Fn Trait HierarchyВидеоClosures that Capture Immutable ReferencesВидеоClosures that Capture Mutable ReferencesВидеоClosures with OwnershipВидеоThe move KeywordВидеоThe unwrap_or_else MethodВидеоDefining a Method that Accepts a Closure I (FnOnce Trait)ВидеоThe String.retain MethodВидеоDefining a Method that Accepts a Closure II (FnMut Trait)ВидеоThe Fn TraitВидеоPassing in a Function to Fn Trait ParameterВидеоProject SolutionВидеоSection ReviewВидеоUnderstanding Closures in RustDIALOGUEClosures - AssessmentЗадание
03Iterators41 материалов

Iterators

Manual IterationВидеоThe Iterator and IntoIterator TraitsВидеоThe IntoIterator Trait in ActionВидеоExhausting the IteratorВидеоThe for Loop with IteratorВидеоWhy Iterator Can Be ImmutableВидеоThe iter MethodВидеоThe iter_mut MethodВидеоHashMap IterationВидеоString IterationВидеоSolving a Problem with IterationВидеоThe for_each MethodВидеоThe map Method IВидеоThe collect MethodВидеоThe map Method IIВидеоThe filter and find Methods IВидеоThe filter and find Methods IIВидеоThe any and all MethodsВидеоThe cloned MethodВидеоThe filter_map MethodВидеоThe flatten MethodВидеоThe flat_map MethodВидеоThe enumerate MethodВидеоThe partition MethodВидеоThe zip MethodВидеоThe fold MethodВидеоThe reduce MethodВидеоThe sum, product, max, min, and count MethodsВидеоThe last, nth, nth_back, and position MethodsВидеоThe take, rev, skip, and step_by MethodsВидеоThe sort and sort_by_key MethodsВидеоThe lines MethodВидеоCollecting Command Line Arguments IВидеоCollecting Command Line Arguments IIВидеоReading DirectoryВидеоThe FromIterator TraitВидеоProject: WordleВидеоProject SolutionВидеоSection ReviewВидеоIterating Over SequencesDIALOGUEIterators - AssessmentЗадание
04Testing26 материалов

Testing

Intro to TestingВидеоWriting a Test and the assert_eq! MacroВидеоThe tests Module and the cfg AttributeВидеоTest FailuresВидеоThe assert! MacroВидеоTesting Inequality with the assert_ne! MacroВидеоThe pretty_assertions CrateВидеоTrait Requirements for Types in TestingВидеоCustom Failure MessagesВидеоThe should_panic AttributeВидеоUsing Result Enum in TestsВидеоRunning A Subset of TestsВидеоIgnoring TestsВидеоShowing Printed Output from Passing TestsВидеоAdding MovieTheater StructВидеоDependency Injection IВидеоDependency Injection IIВидеоIntegration TestsВидеоDocumentation TestsВидеоTest OptionsВидеоFixtures with the rstest CrateВидеоTest-Driven DevelopmentВидеоProject SolutionВидеоSection ReviewВидеоTesting Rust ProgramsDIALOGUETesting - AssessmentЗадание
05 Randomness with rand Crate7 материалов
Intro to the rand CrateВидеоThe ThreadRng StructВидеоRandomizing Vector Elements with shuffle MethodВидеоProject SolutionВидеоSection ReviewВидеоUsing Randomness in Rust with the Rand CrateDIALOGUE Randomness with rand Crate - AssessmentЗадание
06Datetimes with Chrono Crate12 материалов
The NaiveDate StructВидеоThe TimeDelta StructВидеоAdding and Subtracting TimeВидеоThe NaiveTime and NaiveDateTime StructsВидеоThe DateTime StructВидеоConverting TimezonesВидеоThe parse_from_str FunctionВидеоThe Format MethodВидеоProject SolutionВидеоSection ReviewВидеоWorking with Dates and Times in RustDIALOGUEDatetimes with Chrono Crate - AssessmentЗадание
07Regular Expressions with Regex Crate18 материалов
Intro to the Regex CrateВидеоThe Find and Find_iter MethodsВидеоSearching for DigitsВидеоAlphanumeric CharactersВидеоWhitespaceВидеоWord BoundariesВидеоThe Dot MetacharacterВидеоSquare Brackets with CharactersВидеоNumber of Matches IВидеоNumber of Matches IIВидеоOr LogicВидеоAnchorsВидеоCapture GroupsВидеоThe Replace_all MethodВидеоProject SolutionВидеоSection ReviewВидеоWorking with Regex in RustDIALOGUERegular Expressions with Regex Crate - AssessmentЗадание
08Smart Pointers: Box23 материалов
Raw PointersВидеоRaw Pointers and Unsafe CodeВидеоSmart PointersВидеоThe Box Smart PointerВидеоIntro to Linked ListsВидеоDefining the LinkedListВидеоCreating the LinkedListВидеоBox vs Regular References IВидеоBox vs Regular References IIВидеоVectors are Smart PointersВидеоIntro to Binary Search TreesВидеоCreating a Binary Search TreeВидеоThe Deref and DerefMut Traits IВидеоThe Deref and DerefMut Traits IIВидеоThe Drop TraitВидеоDeref CoercionsВидеоTrait Objects IВидеоTrait Objects II: Handling Multiple ErrorsВидеоCustom Error TypesВидеоProject SolutionВидеоSection ReviewВидеоBuilding Recursive Data Structures with BoxDIALOGUESmart Pointers: Box - AssessmentЗадание
09Congratulations!4 материалов

Congratulations!

CongratulationsВидеоConclusion to the Course 'Advanced Rust – Lifetimes, Iterators, Testing & Randomness'ЧтениеFull Course Practice AssessmentЗаданиеFull Course AssessmentЗадание