Введение. Программирование все в большей степени становится занятием лишь для профессионалов
СОДЕРЖАНИЕ
Программирование все в большей степени становится занятием лишь для профессионалов. Объявленный в середине 1980-х гг. лозунг «Программирование – вторая грамотность» остался в прошлом. В понятие «компьютерная грамотность» сегодня входит, прежде всего, навык использования многообразных средств информационных технологий. При решении той или иной информационной задачи сначала следует попытаться подобрать адекватное программное средство (электронные таблицы, системы управления базами данных, математические пакеты и др.), и только если эти средства не позволяют решить поставленную задачу, использовать универсальные языки программирования.
Различают программистов двух категорий: прикладных и системных. Системные программисты – это разработчики базовых программных средств ЭВМ (операционных систем, трансляторов, сервисных средств и т.д.), являющиеся профессионалами высочайшего уровня. Прикладные программисты разрабатывают средства программного обеспечения ЭВМ, предназначенные для решения задач в отдельных областях деятельности (науке, технике, производстве, сфере обслуживания, обучении и т.д.). Требования к качеству прикладных программ, так же высоки, как и к качеству системных. Любая программа должна не только правильно решать задачу, но и иметь современный интерфейс, быть высоконадежной, дружественной к пользователю и т.д. Только такие программы могут выдержать конкуренцию на мировом рынке программных продуктов.
По мере развития компьютерной техники развивались методика и технология программирования. Сначала возникли командное и операторное программирование, в 1960-х гг. бурно развивались структурное программирование, линии логического и функционального программирования, а в настоящее время широко распространяются объектно-ориентированное и визуальное программирование.
Задача, которую следует ставить в начале изучения программирования, – это освоение основ его структурной методики с помощью языка Паскаль, который его автор – швейцарский профессор Никлаус Вирт – создавал именно для этого. Структурная методика до настоящего времени остается основой программистской культуры. Не освоив ее, человек, взявшийся изучать программирование, не имеет никаких шансов стать профессионалом.
Реализации языка Паскаль в версиях фирмы Borland для IBM, известные под названием TurboPascal, значительно расширили язык по сравнению с вариантом Н. Вирта. Начиная с версии 5.5 TurboPascal стал также и языком объектного программирования.
Содержание главы 2 настоящего учебника ориентировано на глубокое усвоение учащимися базовых понятий языков программирования высокого уровня в их реализации на языке Паскаль, что значительно облегчит изучение других языков программирования. В главе 4 излагаются основы объектно-ориентированного программирования на примере их реализации на языке Паскаль. Здесь же рассматривается язык программирования Delphi, являющийся объектно-ориентированным расширением языка Паскаль с реализацией технологии визуального программирования.
При подготовке к изучению данного курса желательно усвоение учащимися основ алгоритмизации в рамках школьного базового курса информатики. Обычно в школе алгоритмизация изучается с использованием учебных исполнителей, позволяющих успешно освоить основы структурной методики:
- построение алгоритмов из базовых структур;
- применение метода последовательной детализации.
Желательно также иметь представление об архитектуре ЭВМ на уровне машинных команд (достаточно на модельных примерах учебных компьютеров, изучаемых в школьной информатике, т.е. не обязательно знание реальных языков команд или ассемблера).
Это позволяет усвоить основные понятия программирования (переменной, присваивания); «входить в положение транслятора» и не делать ошибок, даже не помня каких-то деталей синтаксиса языка; предвидеть те «подводные камни», на которые может «напороться» программа в процессе выполнения. По существу все эти качества и отличают профессионального программиста от дилетанта.
Еще одно качество профессионала – это способность воспринимать красоту программы, т.е. получать эстетическое удовольствие от хорошо написанной программы. Нередко это чувство помогает интуитивно отличить неправильную программу от правильной. Однако основным критерием оценки программы должна быть, безусловно, не интуиция, а грамотно организованное тестирование.
Процесс изучения и практического освоения программирования подразделяется на три части:
- изучение методов построения алгоритмов;
- изучение языка программирования;
- изучение и практическое освоение определенной системы программирования.
Решению задач первой части посвящены главы 1 и 3 данного учебника. В главе 1 даются основные, базовые, понятия и принципы построения алгоритмов работы с величинами. В главе 3 излагаются некоторые известные методики полного построения алгоритмов, рассматриваются проблемы тестирования программ и оценки сложности алгоритмов.
Языки программирования ТурбоПаскаль и Delphi излагаются соответственно в главах 2 и 4 учебника. Однако подчеркнем, что данная книга – это, прежде всего, учебник по программированию, а не по языкам Паскаль и Delphi, поэтому исчерпывающего описания данных языков вы здесь не найдете, они излагаются в объеме, необходимом для начального курса программирования. Более подробное описание этих языков можно найти в книгах, указанных в списке литературы.
В данном учебнике нет инструкций по работе с конкретными системами программирования для изучаемых языков, с ними студенты должны познакомиться в процессе выполнения практических работ на ЭВМ, используя специальную литературу.
В главе 5 учебника содержатся задачи по программированию, которые можно использовать для организации практических и лабораторных занятий на любом из изучаемых языков.
Современное время вызывает потребность быстрого изучения и ни одного языка, а нескольких и быстрого переориентирования с одного на другой язык программирования. В связи с этим в даном учебнике будут рассматриваться несколько языков программирования, как упоминалось выше TurboPascal, а также C/C++ и C#. То есть будущий программист должен без труда выполнять одну и туже задачу в нескольких языках и так же переводить программу с одного языка в другой.
Дата добавления: 2015-09-18; просмотров: 1639;