Hi-Tech  ->  Программы  | Автор: | Добавлено: 2015-03-23

Что такое программирование

Я увлекаюсь программированием с 2001 года. Однажды мой папа предложил мне попробовать писать простенькие программы на языке Pascal, руководствуясь курсом лекций по Pascal для начинающих, который он купил на диске. После долгого изучения у меня начало получаться писать программы вроде калькулятора, рисования программным методом и другие. Так же, мне стало интересно разрабатывать программы с оконным интерфейсом, которые позволяют пользователю управлять ей с помощью мышки (нажатие на кнопки, текстовые поля, сворачивание окна и др. ). Тогда я стал заниматься языком Visual Basic, так как по этому языку программирования у меня тоже было руководство (обучение) и примеры программ. Некоторое время я программировал на Visual Basic, но мне стало не хватать его функциональных возможностей.

В 2002-2003 гг. я заинтересовался языком программирования Delphi. По существующим на тот момент у меня справочникам я начал делать первые шаги. Удобство и лёгкость составления программ, функциональность привлекли меня в среде этого языка. Я стал покупать книги по Delphi и вот уже довольно долгое время отдаю предпочтение программированию на нём.

За последние 5-6 лет я разработал много программ самого разного характера (для своего удовольствия), но в последнее время я стал заниматься разработкой приложений практического значения, которыми могли бы пользоваться другие люди. Я сам нахожу идеи создания новых программ, ставлю цель, которой хочу добиться и пытаюсь выполнить задачу. На возникающие у меня вопросы я нахожу ответы в книгах, переписываюсь с другими программистами в интернет - форумах, копаюсь на сайтах. На написание программ (в зависимости от степени её сложности) у меня уходит от 3-4 дней до месяца. Многие, уже завершённые мной программы я со временем дорабатываю, добавляю новые функции, исправляю найденные ошибки, и если учитывать эти доработки, то некоторые мои проекты разрабатываются от 6 до 12 мес.

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

Будущую профессию я хочу связать именно с разработкой систем автоматического управления технологическими процессами. Я считаю, что эта профессия (инженера по АСУ ТП) востребована, так как сейчас греет глобальная информатизация общества, которая является одной из доминирующих тенденций 21 века, и как следствие этого ведущие страны уже переходят на уровень постиндустриального развития, где практически всем, включая производство, управляет автоматика. А именно программисты разрабатывают программы, при помощи которых управляется оборудование. Цель моей работы: научиться определять надобность и функциональность будущей программы, а так же подбирать инструменты, которые понадобятся для её разработки и сколько времени это займёт. В соответствии с целью, я поставил перед собой следующие задачи:

• подобрать и систематизировать литературу по теме;

• разработать алгоритмы для интересующих программ.

Теоретическая часть. Программирование

1. 1 Что такое программирование

1. 1. 1 Язык программирования — формальная знаковая система, предназначенная для записи программ. Программа обычно представляет собой некоторый алгоритм в форме, понятной для исполнителя (например, компьютера). Язык программирования определяет набор лексических, синтаксических и семантических правил, используемых при составлении компьютерной программы. Он позволяет программисту точно определить то, на какие события будет реагировать компьютер, как будут храниться и передаваться данные, а также какие именно действия следует выполнять над этими данными при различных обстоятельствах.

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

1. 1. 2 Основные свойства языков программирования

Создатели языков по-разному толкуют понятие язык программирования. К наиболее распространенным утверждениям, признаваемым большинством разработчиков, относятся следующие:

Функция: язык программирования предназначен для написания компьютерных программ, которые применяются для передачи компьютеру инструкций по выполнению того или иного вычислительного процесса и организации управления отдельными устройствами.

Задача: язык программирования отличается от естественных языков тем, что предназначен для передачи команд и данных от человека компьютеру, в то время, как естественные языки используются для общения людей между собой. В принципе, можно обобщить определение «языков программирования» — это способ передачи команд, приказов, четкого руководства к действию; тогда как человеческие языки служат также для обмена информацией.

Исполнение: язык программирования может использовать специальные конструкции для определения и манипулирования структурами данных и управления процессом вычислений.

1. 1. 3 Стандартизация языков программирования

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

Для многих широко распространённых языков программирования созданы международные стандарты. Специальные организации проводят регулярное обновление и публикацию спецификаций и формальных определений соответствующего языка. В рамках таких комитетов продолжается разработка и модернизация языков программирования, и решаются вопросы о расширении или поддержке уже существующих и новых языковых конструкций.

1. 2 О языках программирования

Как уже говорилось выше, существуют множества языков программирования, например C++, C#, Pascal, Fortran, Cobol, Basic, Visual Basic, Delphi и многие другие. Пока мы остановимся на языке Pascal (Паскаль), как на одном из простых, распространённых и в то же время мощных и функциональных языков программирования.

1. 2. 1 История создания

ПАСКАЛЬ (Pascal), алголоподобный язык программирования, который ввел в широкое употребление понятие типа данных и принципы структурного программирования. Свое название получил в честь французского математика 17 века Блеза Паскаля.

Первая версия языка Паскаль была разработана швейцарским ученым Никлаусом Виртом, сотрудником Высшей технической школы в Цюрихе, в 1968. Изначально Вирт ставил перед собой задачу создания учебного языка программирования, который бы строился на небольшом количестве базовых понятий, имел простой синтаксис, допускал перевод программ в машинный код простым компилятором. Язык Паскаль обеспечивает возможность создания больших программ, поддерживая их строгую логическую структуру. Однако для коротких программ Паскаль может оказаться излишне громоздким.

Признание программистов и простых пользователей этот язык получил после появления диалекта Турбо Паскаль, созданного американской фирмой Борланд. Паскаль считается важнейшим инструментом для обучения методам структурного программирования и с 1983 введен во всех средних школах США в учебные курсы для учащихся, которые специализируются в области информатики. Наличие специальных методик создания трансляторов с Паскаля упростило их разработку и способствовало широкому распространению языка.

1. 2. 2 Первоначальные сведения о программировании на языке Pascal

Для программной обработки в ЭВМ данные представляются в виде величин и их совокупностей.

Величина — это элемент данных с точки зрения их семантического (смыслового) содержания или обработки. Смысловое (семантическое) разбиение данных производится во время постановки задачи и разработки алгоритма ее решения (входные, выходные и промежуточные). Исходные (входные) — это данные, известные перед выполнением задачи, из условия. Выходные данные — результат решения задачи. Переменные, которые не являются ни аргументом, ни результатом алгоритма, а используются только для обозначения вычисляемого промежуточного значения, называются промежуточными. Вместе с тем, архитектура ЭВМ, используемое программное обеспечение требуют указать имена и типы данных — целый, вещественный, логический и символьный.

Итак, с понятием величины связаны следующие характеристики (атрибуты):

1. имя — это ее обозначение и место в памяти;

2. тип — множество допустимых значений и множество применимых операций к ней;

3. значение — динамическая характеристика, может меняться многократно в ходе исполнения алгоритма. Во время выполнения алгоритма в каждый конкретный момент величина имеет какое-то значение или не определена.

1. 2. 3 Язык программирования «Паскаль» (Pascal)

Постоянной называется величина, значение которой не изменяется в процессе исполнения алгоритма, а остается одним и тем же, указанным в тексте алгоритма. Переменной называется величина, значение которой меняется в процессе исполнения алгоритма.

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

Различают переменные следующих простых типов: целые (Integer, Byte, ShortInt, Word, LongInt), вещественные (Real, Comp, Double, Single, Extended), логический (Boolean), символьный (Char), перечисляемый, диапазонный.

Рисунок 1. Иерархия типов в языке Pascal

Объявления служат для компилятора источником информации о свойствах величин, используемых в программе, и установления связи между этими величина и их идентификаторами, фиксируя тем самым конкретный смысл, предписанный различным идентификаторам в программе. Согласно объявленным переменным и их количеству компилятор резервирует необходимый объем памяти для хранения значений величин, над которыми выполняются требуемые операции.

Описание переменной: имя переменной (идентификатор) : тип;

Пример описания:

Var D, C, N : Integer;

LogPer : Boolean;

A, B : Real;

K : Char;

Тип переменной определяет диапазон допустимых значений, принимаемых величинами этого типа; набор операций, допустимых над данной величиной и объем памяти, отводимой под эту переменную.

1. 2. 4 Язык программирования «Дельфи» (Delphi)

Развитием Pascal (Turbo Pascal) является язык Delphi. Но для того, чтобы понять, что общее имеют Pascal и Delphi, мы познакомимся с корпорацией Borland.

БОРЛАНД (полн. Borland Software)

Это американская корпорация, создает системы разработки, развертывания и интегрирования приложений для персональных компьютеров. Головной офис расположен в Силиконовой долине, в Скоттс-Вэлли (Калифорния).

Компания была основана в мае 1983 Филиппом Каном (Philip Kahn). Borland стала известна благодаря одному из первых в мире интегрированных инструментов для разработчика Turbo Pascal, который эволюционировал в среду разработки Delphi. В 1998 Borland была переименована в Inprise Corporation, но в 2000 вернулась к прежнему названию. Borland поставляет инструментальные средства, представленные семействами Delphi, C++ Builder, JBuilder (инструментарий для языка Java), Kylix (средства разработки под Linux) и InterBase (СУБД), ориентированные на малые и большие компании, занимающиеся разработками программного обеспечения, на создателей корпоративных информационных систем. Программные продукты и услуги корпорации упрощают разработку приложений масштаба предприятия, их развертывания и управления. Borland сама разрабатывает масштабируемое интеграционное программное обеспечение для корпоративных клиентов, предоставляя законченные решения для разработки, интеграции, развертывания и управления приложениями на основе сервера Borland Application Server.

Теперь понятно, что Borland не только усовершенствовала язык Pascal до более функционального Turbo Pascal, но и продолжила разработки, вследствие которых получился совершенно новый продукт Delphi. Эта среда для объектно-ориентированного программирования, т. е. программист может с необычайной лёгкостью писать визуальные (оконные) приложения и выстраивать интерфейс программы по своему вкусу. Этот язык предоставляет пользователю не только широкий набор инструментов для программирования, но и различные средства отладки (исправления неисправностей).

Этот язык развивался, появлялись новые версии, и в 2002 году Borland выпустила Delphi 7. Этот продукт уже во многом отличался от своих предшественников и стал целой системой, средой полномасштабной разработки приложений, с помощью которой можно писать программы практически любого уровня сложности и специализации.

Ещё позже, в 2006 году, Borland выпускает пакет ПО, «студию разработчика» Borland Developer Studio 2006. Этот пакет включает в себя разработку приложений на языках C++, C#, Delphi, Delphi. NET.

Практическая часть. Мои разработки

Предоставленные ниже программы я разрабатывал в среде Delphi 7.

2. 1 Программа «by Flash Blocker» 2008-2009 г

Эта программа предназначена для защиты компьютера посредством съёмного носителя (флешки) от несанкционированного доступа. При запуске системы, эта программа определяет, подключен ли носитель и того ли он типа, что указан в настройках программы.

Если носитель успешно определён, как носитель пользователя, который защищал компьютер при помощи этой программы, то компьютер разблокируется и им можно будет пользоваться.

Если же носитель не тот, то блокируется мышь, клавиатура и другие устройства ввода, т. е. пользователь не сможет воспользоваться компьютером. Идёт отсчёт времени в течение 30 секунд, и если не вставлен правильный носитель для разблокировки, то компьютер выключается.

Принцип работы:

Для использования этой программы удобно пользоваться «флешкой». При запуске программа определяет метку тома, букву, серийный номер и файловую систему носителя («флешки»), и если эти данные не соответствуют данным, внесённым в настройках, то программа блокирует все устройства ввода, включая мышь и клавиатуру. Если данные соответствуют, то программа продолжает свою работу. Если программа запущена и извлечён этот носитель («флешка»), то компьютер блокируется и ждёт, пока не будет опять вставлен ключевой носитель.

2. 2 Программа «Chemical Elements» 2008 г

Эта программа предназначена для просмотра периодической таблицы химических элементов Д. И. Менделеева . Здесь выводится некоторая информация о каждом химическом элементе. Базу элементов можно дополнять и редактировать самостоятельно. Для каждого химического элемента выводится такая информация, как обозначение, название элемента, относительная атомная и молярная масса, название основных соединений, валентность и др.

Принцип действия основывается на применении базы данных химических элементов и управления ею.

2. 3 Программа «Baser» 2008 г

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

В инструментарий программы входят: линия, прямоугольник, заполненный прямоугольник, окружность, точка и создание рамки. Также есть возможность выбора цвета рисования. Рисуя в программе, сразу и на ваших глазах составляется программа на языке BASIC, которую вы можете назвать любым именем и сохранить. Сохранённый файл мы можете открыть в программе BASIC и просмотреть результат во время выполнения.

Таким образом, я написал контрольную по информатике за 5 минут.

2. 4 Программа «Barer» 2009 г

Моя мама работает на заводе «Амурдормаш» инженером-конструктором. И однажды она обратилась ко мне с просьбой написать программу, которая высчитывала бы по определённым параметрам комплектацию барьерного ограждения (дорог) и массу элементов комплекта по отдельности. Я принялся за работу, и уже на следующий день программа была готова . После того, как мама испытала программу и сказала недостатки, я исправил их и после ещё нескольких тестирований конечный продукт был готов. Всего на написание программы у меня ушло около 3-4 дней.

Функциональность программы:

В программе задаётся количество пар начальных-концевых участков барьерного ограждения, длины рабочих участков барьерного ограждения с различным шагом стоек для каждого. После нажатия на кнопку «Расчитать» выводится окно для сохранения файла с результатами вычислений. Результаты сохраняются в табличном виде и их можно редактировать в таких программах, как Microsoft Word, Microsoft Excel и др.

2. 5 Программа «АС КО(у)» 2008-2009 г

Этот проект разрабатывался для средних школ. Суть его состоит в том, что учитель может, заполнив таблицу (электронный журнал), отправить оценки ученика его родителям по SMS с компьютера. При этом обязательно требуется интернет-соединение .

Принцип действия:

Сначала в настройках программы заносится список пользователей (учителей), которые могут пользоваться программой. У каждого пользователя имеется свой пароль для входа. Администратор в этой программе составляет список предметов, учеников и телефонов номеров родителей для тех классов, которые будут пользоваться услугой SMS-оповещения родителей об успеваемости. После всех проделанных настроек учитель может начать работу.

В программе он записывает те оценки, которые получили ученики по каждому предмету. Далее он выбирает, за какой период выставлялись оценки (за неделю, месяц, четверть, день). После всего учитель нажимает в окошке «Отправить» на кнопку «Всем» и начнётся процесс отсылки SMS-сообщений всем родителям об успеваемости их детей. Также можно выборочно отправить оценки или произвольное сообщение конкретным родителям. Пока программа тестировалась на отсылке SMS на «Билайн».

2. 6 Программа «Media Master» февраль 2009 г

Я часто сталкиваюсь с такой проблемой, как поиск песни, которая была у меня на компьютере, а где сейчас – неизвестно. Тогда у меня возникла идея написать программу, которая сканировала бы мои музыкальные компакт-диски и записывала в базу данных, какие песни там находятся. За 2 дня я сделал первую версию программы. Она умела сканировать музыкальные файлы с выбранного каталога, копировать песни на жёсткий диск, сортируя по исполнителю, по году, по жанру и т. п. Сохранённую базу можно просматривать в этой же программе, можно искать песню по её названию, по исполнителю, по году и т. п. .

Позже я добавил в программу такие функции, как проигрывание выбранной в базе песни, добавление её в «плейлист» проигрывателя Winamp, открытие папки, содержащей выбранную песню. Ещё позже я реализовал такую удобную функцию, как управление проигрывателем «Winamp» из окна программы.

Теперь я создал базы всех моих музыкальных дисков и могу в доли секунды найти интересующую меня песню и просмотреть, где она располагается. По моему мнению, эта программа незаменима ди-джеям на радио, в клубах и ресторанах.

2. 7 Программа «RusJoan Infromer» 2008 г

На летней практике я разрабатывал интернет-сайт для школы. После того, как сайт был готов, я решил написать программку, которая отображала бы погоду в прогрессе, новости России и мира и новости школы. И я добился своей цели за пару дней. Программа минимальна по размерам окна, может сворачиваться в системный трей.

2. 8 Программа «The Real Chat» 2008 г

Эта программа – чат по локальной сети. На одном компьютере устанавливается серверная часть этой программы. На других компьютерах, соединенных в сеть – клиентская часть. Клиентские компьютеры соединяются по локальной сети к серверному компьютеру, и они могут общаться между другими компьютерами в режиме «online». При этом они могут видеть, кто находится в сети, менять свой статус, менять цветовое оформление программы и др.

2. 9 Программа «Remote Disc Reader & Remote Screen Viewer» 2008-2009 г

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

Заключение

Таким образом, при проектировании и разработке программ, имеющих практическое значение, я овладел огромным материалом, который, безусловно, пригодится мне в будущем. Конечно, я сталкивался со многими трудностями. Ответы на интересующие меня вопросы я находил в учебных материалах по Delphi, в книгах и интернете. Я добился своей цели. Теперь я умею определять надобность будущей программы, временные рамки её разработки. Те программы, которые создал (блокировщик компьютера при помощи флешки, база данных химических элементов, рисование мышкой на BASIC, расчёт комплектации барьерного ограждения, система оповещения родителей по SMS об успеваемости их детей, сортировщик музыкальных файлов, чат по локальной сети, обозреватель удалённого компьютера) я использую почти каждый день. Если мне нужна какая-либо программа, выполняющая определённые действия, я не спешу искать её у знакомых или в интернете. Гораздо интереснее самому создать то, чем будешь пользоваться, и возможно будут пользоваться другие. Полученный багаж знаний я буду использовать в следующих моих проектах. В дальнейших моих планах стоит изучение языка C++, как одного из самых распространенных, очень функциональных и мощных языков программирования.

Комментарии


Войти или Зарегистрироваться (чтобы оставлять отзывы)