Название: Introduction to Ada Автор: Raphael Amiard, Gustavo A. Hoffmann Издательство: AdaCore Год: Apr 28, 2023 Страниц: 277 Язык: английский Формат: pdf (true), mobi, epub Размер: 10.2 MB
This book will teach you the basics of the Ada programming language and is intended for those who already have a basic understanding of programming techniques. You will learn how to apply those techniques to programming in Ada.
Today, Ada is heavily used in embedded real-time systems, many of which are safety critical. While Ada is and can be used as a general-purpose language, it will really shine in low-level applications:
• Embedded systems with low memory requirements (no garbage collector allowed). • Direct interfacing with hardware. • Soft or hard real-time systems. • Low-level systems programming.
Specific domains seeing Ada usage include Aerospace & Defense, civil aviation, rail, and many others. These applications require a high degree of safety: a software defect is not just an annoyance, but may have severe consequences. Ada provides safety features that detect defects at an early stage — usually at compilation time or using static analysis tools. Ada can also be used to create applications in a variety of other areas, such as:
• Video game programming • Real-time audio • Kernel modules
This is a non-comprehensive list that hopefully sheds light on which kind of programming Ada is good at. In terms of modern languages, the closest in terms of targets and level of abstraction are probably C++ and Rust.
Ada is a multi-paradigm language with support for object orientation and some elements of functional programming, but its core is a simple, coherent procedural/imperative language akin to C or Pascal. One important distinction between Ada and a language like C is that statements and expressions are very clearly distinguished. In Ada, if you try to use an expression where a statement is required then your program will fail to compile. This rule supports a useful stylistic principle: expressions are intended to deliver values, not to have side effects. It can also prevent some programming errors, such as mistakenly using the equality operator = instead of the assignment operation := in an assignment statement.
Introduction Imperative Language Subprograms Modular Programming Strongly Typed Language Records Arrays More About Types Access Types More About Records Fixed-Point Types Privacy Generics Exceptions Tasking Design by contracts Interfacing With C Object Oriented Programming Standard Library: Containers Standard Library: Dates & Times Standard Library: Strings Standard Library: Files & Streams Standard Library: Numerics Appendices
Внимание
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.