24 lines
1.3 KiB
HTML
24 lines
1.3 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="UTF-8">
|
||
<title>Object Oriented Programming Features</title>
|
||
</head>
|
||
<body>
|
||
<h1 id="object-oriented-programming-features"><a class="header" href="#object-oriented-programming-features">Object-Oriented Programming Features</a></h1>
|
||
<!-- Old headings. Do not remove or links may break. -->
|
||
<p><a id="object-oriented-programming-features-of-rust"></a></p>
|
||
<p>Object-oriented programming (OOP) is a way of modeling programs. Objects as a
|
||
programmatic concept were introduced in the programming language Simula in the
|
||
1960s. Those objects influenced Alan Kay’s programming architecture in which
|
||
objects pass messages to each other. To describe this architecture, he coined
|
||
the term <em>object-oriented programming</em> in 1967. Many competing definitions
|
||
describe what OOP is, and by some of these definitions Rust is object oriented
|
||
but by others it is not. In this chapter, we’ll explore certain characteristics
|
||
that are commonly considered object oriented and how those characteristics
|
||
translate to idiomatic Rust. We’ll then show you how to implement an
|
||
object-oriented design pattern in Rust and discuss the trade-offs of doing so
|
||
versus implementing a solution using some of Rust’s strengths instead.</p>
|
||
</body>
|
||
</html>
|