Основной инструментарий программиста

Все в нашем мире состоит из простейших элементов. Живые организмы состоят из клеток, различные материалы - из молекул, а те, в свою очередь, из атомов. Дома - из кирпичей и бетона, досок и гвоздей. Любой процесс можно разложить на какие-либо элементарные составляющие, и т. д. и т. п. Так же и программу - какой бы язык не был выбран, какая бы парадигма не была использована при разработке, каким бы способом не записывался бы исходный текст, он в любом случае будет состоять из тех или иных элементарных, более не делимых составляющих. В случае C++ наиболее крупной единицей, с которой имеет дело компилятор языке − это исходный файл, содержащий текст программы на языке С++. Обычно (и в подавляющем большинстве случае) это обычный текстовый файл, имеющий расширение .cpp, или .cc, или .cxx (в разных системах и средах программирования на C++ существуют разные соглашения на этот счет). В реальности при компиляции одного файла с исходном текстом, в самом процессе его компиляции может участвовать множество файлов. Достигается такой эффект за счет использования описанной в предыдущей главе директивы #include. При этом компилятор воспринимает все это множество файлов так, как будто бы это один большой текстовый файл, состоящий из содержимого всех «включенных» в него других файлов. И называется такой виртуальный текстовый файл «единицей трансляции». Основное (и единственное) содержимое любой единицы трансляции − это набор объявлений и определений, вместе составляющий правильный текст на C++. И, наконец, некоторые виды определений (определения функций, например) содержат последовательности выражений и операторов, непосредственно транслируемых в машинные инструкции.

Собственно, объявления, определения, выражения и операторы − это своего рода «строительные кирпичи» программ на большинстве императивных языков программирования. Это то, что составляет основной инструментарий программиста. Это то, что необходимо освоить в первую очередь. И именно этой теме будет посвящено следующие несколько глав.

 
doc/cpp/teachbook/beginning/basetools.txt · Последние изменения: 2009/08/19 23:46 От flex_ferrum
 
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki