Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Informatica / lin.doc
Скачиваний:
74
Добавлен:
09.04.2015
Размер:
776.19 Кб
Скачать

Технологии программирования

Компьютер сам по себе не может решить ни одной задачи. Для того чтобы это стало возможным, нужно разработать алгоритм и написать соответствующую программу. Алгоритм, алгоритмический язык, программирование – центральные понятия информатики. Раздел информатики, посвященный методам и приемам составления про­грамм для компьютеров, называется программированием.

Этот раздел очень важен, и изучение информатики обязательно включает в себя освоение программирования, так как, в конечном счете, именно программа позволяет применить компьютер для решения конкретной задачи.

Алгоритм, программа

Понятие алгоритма является одним из центральных понятий ин­форматики. Слово «алгоритм» является синонимом слов способ, рецепт. Можно говорить в этом смысле об алгоритме нахождения корней квадратного уравнения, заданного своими коэффициентами, или об алгоритме разложения натурального числа на простые множители. В основе этих алгоритмов лежат простейшие математические и логические операции. Такие алгоритмы называются численными.

Довольно часто рассматриваются и нечисленные алгоритмы. На­пример, в роли данных могут выступать последовательности символов, а в роли операций – замена по некоторой таблице одних символов на другие. Примером такого алгоритма является алгоритм преобразования текста в его код Морзе.

Алгоритм – это описанный со всеми подробностями способ получения удовлетворяющих поставленному условию результатов по исходным данным.

Поиски и разработка алгоритмов всегда входили в круг важней­ших задач во все времена существования науки. За 300 лет интенсивного развития науки накоплено большое количество алгоритмов, однако мно­гие из них для решения практически интересных задач требуют колос­сального объема операций, что делает их практическое использование весьма затруднительным. Наличие современных компьютеров с произво­дительностью млн. и более оп/с кардинально изменило положение и позволило существенно расширить круг практически решаемых задач.

Компьютерная программа – это алгоритм, записанный в спе­циальных, понятных компьютеру, обозначениях.Соответствующую систему обозначений называют языком программирования. Точнее,язык программирования – это совокупность средств и правил представле­ния алгоритма в виде, приемлемом для компьютера.

В настоящее время число языков программирования превышает 3000 и продолжает расти. Обилие языков программирования объясняется рядом причин, важнейшая из которых – широкий спектр решаемых задач. Теоретически, для решения большинства задач можно использовать любой алгоритмический язык, однако на практике оказывается, что на одних языках написать программу для конкретной задачи гораздо легче, чем на других. Это связано с тем, что в языках программирования способ выражения тех или иных понятий приспособлен к потребностям конкрет­ного образа мыслей и конкретной сферы приложений. Рассмотрим ряд наиболее распространенных языков программирования.

ФОРТРАН(FORTRAN– FORmula TRANslator – переводчик формул) – разработан в середине 50-тых годов программистами фирмы IBM. В основном он используется для решения естественнонаучных задач и математических расчетов.

КОБОЛ(COBOL– Common Business Oriented Language – общий язык, ориентированный на деловые задачи) – детище Пентагона. Разработан в 1960г. совместными усилиями федерального правительства и производителей ЭВМ. Основной целью было создание языка, который могли бы легко понимать деловые люди, профессионально не связанные с программированием. Структура и словарь этого языка весьма близки к обычному английскому. КОБОЛ является основным языком для обработ­ки данных в таких учреждениях, как банки и страховые компании.

БЕЙСИК(BASIC– Beginner All-Purpose Symbolic Code – универсальный символический код для начинающих) – разработан в середине 60-тых годов профессором Дартмутского колледжа Джоном Кемени и Томасом Курцем. В следующее десятилетие он завоевал всеобщее признание вследствие компактности и пригодности для первых ПК с ограниченным объемом памяти.

ПАСКАЛЬ(PASCAL) – получил название в честь французского математика XYII века Блеза Паскаля. Этот язык разработан швейцарским ученым Никлаусом Виртом. Язык Паскаль считается важнейшим инстру­ментом для обучения методам структурного программирования, и с 1983г. этот язык введен в учебные курсы в средних школах США для учащихся, которые специализируются в области информатики.

Среди других наиболее распространенных алгоритмических язы­ков можно отметить АЛГОЛ,ЛИСП,СИ,АДА,МОДУЛА,ФОРТи др.

При выборе языка, наиболее подходящего для решения конкрет­ной задачи, следует учитывать ряд факторов, в том числе степень квали­фикации программиста, размер будущей программы, условия эксплуата­ции и сопровождения.

Каждый язык программирования имеет свой набор ключевых слов, состоящий из слов, букв, чисел или других символов. Ключевые словасоответствуют операциям или последовательностям операций, ко­торые должен произвести компьютер. Ключевые слова связываются друг с другом в соответствии с синтаксическими правилами, образуя предло­жения языка программирования.

Было бы удобно давать компьютеру задания на естественном языке – русском, английском или любом другом, но на данном этапе развития науки и вычислительной техники это невозможно. Компьютер не в состоянии понимать тонкости человеческого общения. Люди в разговорах сопровождают свои слова жестами и мимикой, используют подтекст, метафоры, недомолвки и другие приемы риторики, которые позволяют им говорить одно, а сообщать при этом нечто иное. Люди употребляют слова неоднозначного смысла, используя контекст, интона­цию и другие факторы, уточняющие смысл сказанного.

Человеческий разум способен разобраться в головоломках есте­ственного языка, но компьютер понимает пока только строгую, матема­тически точную систему общения. В такой системе каждый символ или группа символов должна всегда означать одно и то же, а каждое предло­жение обязано пониматься буквально.

Компьютер может обрабатывать только команды и данные, пред­ставленые в машинном коде, т.е. выраженые на языке нулей и единиц, непосредственно связанном с электронной «начинкой» компьютера. Однако написание программы в машинных кодах утомительно и требует особой тщательности, т.к. замена в какой-либо позиции1на0или наоборот может привести к самым неожиданным последствиям.

Дело несколько упрощается, если воспользоваться языком про­граммирования низкого уровня – языком ассемблера, который разрешает вместо двоичных кодов использовать мнемонические коды. Перевод ассемблерных программ в машинный код осуществляется с помощью программы, называемой ассемблером. Язык ассемблера, как и машинный код, учитывает специфику конкретного типа компьютера, и поэтому оба эти языка позволяют программисту максимально эффективно использо­вать аппаратные особенности машины.

Большинство программистов предпочитают пользоваться языка­ми высокого уровня, поскольку они гораздо ближе к естественному человеческому языку. Перевод конструкций алгоритмического языка в машинный код осуществляется с помощью транслятора– компиля­тора или интерпретатора.

Транслятор – это специальная программа, которая рассчита­на на конкретный язык и на конкретный тип компьютера. С точки зрения выполнения работы, компилятор и интерпретатор существенно различаются.Компиляторчитает всю программу целиком, делает ее перевод и создает законченный вариант программы на машинном языке, который затем загружается в компьютер и выполняется.Интерпретаторпереводит и выполняет программу строка за строкой.

После того, как исходная программа откомпилирована, ни она, ни компилятор больше не нужны. Откомпилированные программы рабо­тают быстрее, а интерпретируемые проще исправить и модифицировать. Часто для одного языка имеется и компилятор и интерпретатор. В этом случае при разработке и тестировании программы можно воспользовать­ся интерпретатором, а затем отлаженную программу откомпилировать, чтобы повысить скорость ее выполнения.

Языки высокого уровняявляютсяпроцедурными– в них логика программы строится на использовании функций и процедур, кото­рые можно вызвать из любого места программы. Затем появилисьобъ­ектные языки программирования. В них логика программы строится на объектах, каждый из которых имеет собственные свойства, методы и события, которые могут быть унаследованы потомками. При этом созда­ние программ многократно облегчается – вместо того, чтобы написать десяток страниц кода, достаточно просто объявить объект. Такие языки стали называтьобъектно-ориентированными(ООП – Объектно-Ориентированное Программирование).

Последним звеном эволюции языков программирования стали визуальные среды разработки программ. Вы просто выбираете объект-компонент, перетаскиваете его на форму, и уже в процессе разработки программы видите то, что должно получиться в результате. Примерно так же при редактировании текста в редакторе MS Word вы сразу видите то, что должно получиться при печати этого текста на лист бумаги. Среда разработки программ взяла на себя почти всю «черновую» работу по созданию кода. Программирование перестало быть трудоемким и превра­тилось в творческий процесс.

За удобство создания программ мы расплачиваемся увеличением размера исполняемого программного файла, которое особенно заметно при создании небольших программ, и практически незаметно при созда­нии сложных программных комплексов. Современные компьютеры имеют быстрый процессор, память и жесткие диски больших размеров, так что на это неудобство можно уже не обращать внимания. Разумеется, бывают исключения – если при создании программного кода критичес­кими являются размер исполняемого файла и скорость его исполнения, то лучше использовать Assembler или C. Такая необходимость возникает при написании операционных систем и драйверов. На современном рынке программного обеспечения, однако, более востребовано приклад­ное программирование. Утилиты, программы общего назначения, про­граммы для работы с базами данных. И здесь Delphi является бесспор­ным лидером среди визуальных сред разработки программ.

История Delphi начинается с 60-х годов, когда профессор Н.Вирт разработал язык высокого уровня Pascal. Это был лучший язык для изучения программирования, и для создания программ для операционной системы MS-DOS. Затем, в 1983 году, А. Хейлсберг совместно с другими программистами, которые только что организовали компанию Borland, разработал компилятор Turbo Pascal, который стал следующим шагом в эволюции Delphi. Затем появился Object Pascal, который уже использовал Объектно-Ориентированный подход к программированию. Когда появилась первая версия Windows – Windows 3.10, программисты Borland создали Delphi 1. Это уже была объектно-ориентированная среда для визуальной разработки программ, основанная на языке Object Pascal.

С появлением Windows 95 появилась Delphi 2, 3, 4, 5. Язык про­граммирования Object Pascal, который являлся стержнем Delphi, претер­пел такие существенные изменения, что с появлением Delphi 6 компания Borland, которая уже превратилась в корпорацию, официально объявила о переименовании Object Pascal в Delphi. Поэтому правы те, кто говорит, что Delphi – это визуальная среда разработки программ. Но правы и те, кто утверждает, что Delphi – это один из языков программирования.

Мы будем изучать Delphi 7, наиболее стабильную версию языка программирования для 32-разрядных версий Windows.

Соседние файлы в папке Informatica