4 added
30 removed
Original
2026-01-01
Modified
2026-02-21
1
-
<p>Course updated on December 29, 2025</p>
1
+
<h2>Didn't find the right course?</h2>
2
-
<p><a>Subscribe</a></p>
2
+
<p>Leave a request for a free consultation and get help choosing a learning program</p>
3
-
<p>Access this and all courses with a subscription</p>
3
+
<p>Free</p>
4
-
<p>What's included</p>
4
+
<p>Leave a request →</p>
5
-
<p>8 lessons (video and/or text)</p>
6
-
<p>6 exercises in the simulator</p>
7
-
<p>Extended materials for 8 lessons</p>
8
-
<h2>Description</h2>
9
-
<p>Programming is not just about computing: any nontrivial program models within itself the domain for which it was designed. For example, Hexlet works with the Course, Project, Student and other entities; they can interact and are somewhat related. This is what is called an abstraction. In this course, we will learn more about what an abstraction is and how to build it.</p>
10
-
<h2>You will learn</h2>
11
-
<ul><li><p>Determine the domain entities and set the proper relations between them</p>
12
-
</li>
13
-
<li><p>Select the correct data structure for storing entities</p>
14
-
</li>
15
-
<li><p>Correctly design abstraction interfaces</p>
16
-
</li>
17
-
<li><p>Identify the invariants and stick to them</p>
18
-
</li>
19
-
<li><p>Use indexed and associative arrays properly</p>
20
-
</li>
21
-
</ul><h2>Challenges</h2>
22
-
<h2>Recommended programs</h2>
23
-
<ul><li><p>Run code right in the browser</p>
24
-
</li>
25
-
<li><p>Lifetime access</p>
26
-
</li>
27
-
<li><p>Learn at your own pace</p>
28
-
</li>
29
-
</ul><p><a>Subscribe</a></p>
30
-
<p>Access this and all courses with a subscription</p>