Создание программ без программирования
Возможно ли создание программ без программирования? Данный вопрос все чаще стал встречаться на просторах Сети. На эту тему стали появляться даже форумы. Возможно, это связано с творческим кризисом разработчиков. Так, в последнее время они подсовывают нам один и тот же продукт, меняя только цифры в версии программы. Здесь вам ни новых идей, ни стабильности проекта. Вот и приходится все брать в свои руки.
Первым делом нужно определиться с идеей. Кажется, что это самый простой этап на пути создания программы, но это только на первый взгляд. Как только вы решите перейти от идеи к ее воплощению, как сразу же перед вами возникнут следующие вопросы:
1. Нужна ли будущая программа пользователям (если создаете не для себя, конечно).
2. Нет ли продукта лучше, чем тот, что делаю я.
3. Техническая поддержка. Хватит ли сил отвечать на вопросы типа: "У меня не загружается".
Казалось бы, всего три вопроса, однако желание создать собственную программу здесь может и пропасть. Если же ваша идея лучше существующих аналогов (или их нет вовсе), а желание не пропадает, значит, наступило время для поиска инструмента реализации нашей задумки.
На вооружение я взял программу c российским гражданством "Алгоритм" за версией 1.1. Забегая немного вперед, скажу, что продуктов вроде "Майкрософт офис" или "Фотошоп" здесь получить не удастся, а вот пару офисных утилит сделать – это пожалуйста, плюс логику программирования поймете.
От слов к делу
Когда вы запустите программу, вам предложат пройти курс обучения. Не отказывайтесь, оно здесь несложное и навыков программирования не требует. Даже если с первого раза кое-что не поймете, то в процессе работы все станет на свои места. Интерфейс программы прост, весь процесс работы сводится к созданию объектов и присвоения им значений. Причем около 70% той же работы вы будете проделывать мышью! Но как говорится: "Учиться лучше на примерах". В преддверии грядущей Windows7 я решил создать соответствующий текстовый редактор (тюнингованный блокнот). Кроме стандартных операций, моя программа должна будет поддерживать стили, плюс внутреннее переключение окон. Но обо всем по порядку.
Загрузившись, программа автоматически создаст первый объект "форма". Свойства этого объекта можно посмотреть/поменять в правом нижнем окошке. По сути, форма – это оболочка, на которой в будущем будут располагаться остальные объекты (кнопки, рисунки). В поле "текст" (в окне свойств), меняем слово "Алгоритм" на название вашей будущей программы, в моем случае это "7book". Цвет фона я выбрал темно-бирюзовый, размер формы выставил 580х620. Далее на левой панели кликаем по значку "Текстовое поле". В параметре "многострочность" ставим значение "да" (если оставить "нет", то текст будет печататься только горизонтально без перехода на новую строку). Теперь растягиваем объект и перемещаем так, чтобы он занимал большую часть формы, но при этом сверху у нас осталось место для логотипа программы, а справа — для будущего меню. Значения: "имя", "текст" и "положение" меняем на: "текстовое поле", "7book" и "левый край" соответственно. Все, фундамент заложен (просто, не так ли?). Запустив предварительный просмотр программы, мы можем ввести первые символы. Однако сохранить набранный текст пока не удастся. Чтобы это поправить, закрываем тестовое окно и создаем кнопку, кликнув по соответствующему значку левой панели. На выбор будет предложено три варианта внешнего вида кнопки. Пока остановим свой выбор на классической. Значение "имя" меняем на "сохранение документа".
Логическое программирование
Итак, в первой части мы получили окно с полем для ввода текста и пока еще не работающей кнопкой для сохранения документа. Теперь приступим к программированию (да, да вы не ослышались), оно здесь представлено следующим образом:
когда на объекте "имя объекта"
совершат действие "название действия",
тогда у объекта "имя объекта"
в свойстве "выбор свойства"
значение изменится на "ввод значения".
Как видите, ничего сложного, а если еще учесть, что все это вы будете делать мышью, то проблем вообще возникнуть не должно. Но возвратимся к нашей кнопке. Мы остановились на том, что этот объект будет у нас ответственен за сохранение документа. То есть если рассудить логически и перевести данную задумку на местный язык, то это должно выглядеть так — при нажатии левой клавишей мыши по кнопке "сохранить" предложить пользователю директорию для сохранения данных. Просто? Теперь о том, как реализовать это в программе. Делаем клик по объекту, затем вызываем "конструктор действий" (кнопка с плюсиком на правой панели). Используя клавиши переключения окон конструктора (зеленые стрелочки), переходим на вкладку "операции с файлами". Далее, как и планировали:
Объект: "сохранение документа"
Действие: "клик левой кнопкой"
Операция: "дать пользователю сохранить файл"
Данные для сохранения: "текстовое поле"
Все, жмем Ок!
Повторив те же действия с небольшими изменениями, создаем кнопку "открыть документ".
Немного болтовни
Перед вами свежеиспеченный текстовый редактор. Да не просто текстовый редактор, а ваш текстовый редактор! Идея, воплощенная в жизнь! Тысячи строк программного кода, одиннадцать бессонных ночей и семь опустошенных банок с кофе (все это можете указать в справке к продукту, рядом с номером электронного кошелька). Надеюсь, на этом ваша фантазия и желание не закончились. Как я уже говорил в начале статьи, кроме стандартных операций мой редактор будет поддерживать стили и переключение между окнами. Реализовав это на своем примере, постараюсь ближе познакомить вас с конструктором. Будем считать, что немного отвлек вас от фраз типа: "кликните сюда, создайте то". Поэтому продолжим.
Создание стиля
Представим ситуацию, что данным продуктом стали интересоваться пользователи. Но всем не угодишь. Кто-то захочет себе черный фон программы, кто- то синий и т.д. Поэтому сделаем так, чтобы каждый пользователь смог легко поменять цвет. Для этого создаем кнопку размером 25х25. Поле "текст" оставляем пустым, цвет заливки меняем на тот, в который будет окрашиваться фон (объект форма). Имя даем в соответствии с цветом, в данном случае "черный цвет".
Программируем:
когда на объекте "черный цвет"
совершат действие "клик левой кнопкой",
тогда у объекта "форма"
в свойстве "цвет фона"
значение изменится на "выбираем черный цвет".
Создав энное количество таких кнопок, интерфейс программы будет подстраиваться под любого пользователя (и снова все просто:).
Последние шаги, придание шарма
Порой при работе с текстовым редактором возникает необходимость открыть второй документ, но при этом не потерять первый. Решить эту проблему можно одновременным открытием двух программ, но зачем, если все это можно реализовать в одной. Для этого создаем две кнопки с именами "документ1" и "документ2" соответственно. Затем открываем файловый менеджер и переходим в папку с проектом. Здесь создаем два текстовых файла с аналогичными именами. Возвращаемся в "Алгоритм". Сейчас нужно добиться следующего: при нажатии на кнопку "документ2" содержимое первого документа должно сохраниться в созданный нами ранее текстовый файл. При нажатии же кнопки "документ1" сохраненные ранее данные должны вернуться назад, но при этом должно сохраниться содержимое второго документа. Немного запутанно, но реализуется все довольно-таки просто. Чтобы не запутаться, рекомендую начать со второй кнопки.
когда на объекте "документ2"
совершат действие "клик левой кнопкой",
операция "сохранить файл",
путь к файлу "папка с программой" (в пустом поле набираем "документ1.txt")
данные для сохранения "текстовое поле"
ОК!
Данные первого документа сохранили, теперь проделываем то же самое с первой кнопкой. Только ее содержимое должно сохраняться в файл "документ2". Поехали.
когда на объекте "документ1"
совершат действие "клик левой кнопкой",
операция "сохранить файл",
путь к файлу "папка с программой" (в пустом поле набираем "документ2.txt")
данные для сохранения "текстовое поле"
ОК!
Сохранить-то сохранили, но нужно еще и открыть. То есть при переходе ко второму документу, кроме операции сохранения данных, должна происходить операция открытия того самого второго документа. Импровизируем!
когда на объекте "документ2"
совершат действие "клик левой кнопкой",
операция "загрузить файл",
путь к файлу "папка с программой" (в пустом поле набираем "документ2.txt")
загрузить в "текстовое поле"
ОК!
Повторив со второй кнопкой, переходите к итогу.
Итого
Несмотря на размер получившейся статьи, буквально через пару вечеров знакомства с программой для реализации вышенаписанного вам понадобится около пяти минут свободного времени. Дальше все зависит от вашей фантазии. Конечно, программа не дает пользователю желанную свободу, но на первое время ее вполне достаточно. Теперь на вопрос: "Можно ли создать программу без знания языков программирования?" смело можно ответить: "Да, причем работая практически одной лишь мышью!".
Денис Купцов аKа Firma, Kd-v@tut.by
Первым делом нужно определиться с идеей. Кажется, что это самый простой этап на пути создания программы, но это только на первый взгляд. Как только вы решите перейти от идеи к ее воплощению, как сразу же перед вами возникнут следующие вопросы:
1. Нужна ли будущая программа пользователям (если создаете не для себя, конечно).
2. Нет ли продукта лучше, чем тот, что делаю я.
3. Техническая поддержка. Хватит ли сил отвечать на вопросы типа: "У меня не загружается".
Казалось бы, всего три вопроса, однако желание создать собственную программу здесь может и пропасть. Если же ваша идея лучше существующих аналогов (или их нет вовсе), а желание не пропадает, значит, наступило время для поиска инструмента реализации нашей задумки.
На вооружение я взял программу c российским гражданством "Алгоритм" за версией 1.1. Забегая немного вперед, скажу, что продуктов вроде "Майкрософт офис" или "Фотошоп" здесь получить не удастся, а вот пару офисных утилит сделать – это пожалуйста, плюс логику программирования поймете.
От слов к делу
Когда вы запустите программу, вам предложат пройти курс обучения. Не отказывайтесь, оно здесь несложное и навыков программирования не требует. Даже если с первого раза кое-что не поймете, то в процессе работы все станет на свои места. Интерфейс программы прост, весь процесс работы сводится к созданию объектов и присвоения им значений. Причем около 70% той же работы вы будете проделывать мышью! Но как говорится: "Учиться лучше на примерах". В преддверии грядущей Windows7 я решил создать соответствующий текстовый редактор (тюнингованный блокнот). Кроме стандартных операций, моя программа должна будет поддерживать стили, плюс внутреннее переключение окон. Но обо всем по порядку.
Загрузившись, программа автоматически создаст первый объект "форма". Свойства этого объекта можно посмотреть/поменять в правом нижнем окошке. По сути, форма – это оболочка, на которой в будущем будут располагаться остальные объекты (кнопки, рисунки). В поле "текст" (в окне свойств), меняем слово "Алгоритм" на название вашей будущей программы, в моем случае это "7book". Цвет фона я выбрал темно-бирюзовый, размер формы выставил 580х620. Далее на левой панели кликаем по значку "Текстовое поле". В параметре "многострочность" ставим значение "да" (если оставить "нет", то текст будет печататься только горизонтально без перехода на новую строку). Теперь растягиваем объект и перемещаем так, чтобы он занимал большую часть формы, но при этом сверху у нас осталось место для логотипа программы, а справа — для будущего меню. Значения: "имя", "текст" и "положение" меняем на: "текстовое поле", "7book" и "левый край" соответственно. Все, фундамент заложен (просто, не так ли?). Запустив предварительный просмотр программы, мы можем ввести первые символы. Однако сохранить набранный текст пока не удастся. Чтобы это поправить, закрываем тестовое окно и создаем кнопку, кликнув по соответствующему значку левой панели. На выбор будет предложено три варианта внешнего вида кнопки. Пока остановим свой выбор на классической. Значение "имя" меняем на "сохранение документа".
Логическое программирование
Итак, в первой части мы получили окно с полем для ввода текста и пока еще не работающей кнопкой для сохранения документа. Теперь приступим к программированию (да, да вы не ослышались), оно здесь представлено следующим образом:
когда на объекте "имя объекта"
совершат действие "название действия",
тогда у объекта "имя объекта"
в свойстве "выбор свойства"
значение изменится на "ввод значения".
Как видите, ничего сложного, а если еще учесть, что все это вы будете делать мышью, то проблем вообще возникнуть не должно. Но возвратимся к нашей кнопке. Мы остановились на том, что этот объект будет у нас ответственен за сохранение документа. То есть если рассудить логически и перевести данную задумку на местный язык, то это должно выглядеть так — при нажатии левой клавишей мыши по кнопке "сохранить" предложить пользователю директорию для сохранения данных. Просто? Теперь о том, как реализовать это в программе. Делаем клик по объекту, затем вызываем "конструктор действий" (кнопка с плюсиком на правой панели). Используя клавиши переключения окон конструктора (зеленые стрелочки), переходим на вкладку "операции с файлами". Далее, как и планировали:
Объект: "сохранение документа"
Действие: "клик левой кнопкой"
Операция: "дать пользователю сохранить файл"
Данные для сохранения: "текстовое поле"
Все, жмем Ок!
Повторив те же действия с небольшими изменениями, создаем кнопку "открыть документ".
Немного болтовни
Перед вами свежеиспеченный текстовый редактор. Да не просто текстовый редактор, а ваш текстовый редактор! Идея, воплощенная в жизнь! Тысячи строк программного кода, одиннадцать бессонных ночей и семь опустошенных банок с кофе (все это можете указать в справке к продукту, рядом с номером электронного кошелька). Надеюсь, на этом ваша фантазия и желание не закончились. Как я уже говорил в начале статьи, кроме стандартных операций мой редактор будет поддерживать стили и переключение между окнами. Реализовав это на своем примере, постараюсь ближе познакомить вас с конструктором. Будем считать, что немного отвлек вас от фраз типа: "кликните сюда, создайте то". Поэтому продолжим.
Создание стиля
Представим ситуацию, что данным продуктом стали интересоваться пользователи. Но всем не угодишь. Кто-то захочет себе черный фон программы, кто- то синий и т.д. Поэтому сделаем так, чтобы каждый пользователь смог легко поменять цвет. Для этого создаем кнопку размером 25х25. Поле "текст" оставляем пустым, цвет заливки меняем на тот, в который будет окрашиваться фон (объект форма). Имя даем в соответствии с цветом, в данном случае "черный цвет".
Программируем:
когда на объекте "черный цвет"
совершат действие "клик левой кнопкой",
тогда у объекта "форма"
в свойстве "цвет фона"
значение изменится на "выбираем черный цвет".
Создав энное количество таких кнопок, интерфейс программы будет подстраиваться под любого пользователя (и снова все просто:).
Последние шаги, придание шарма
Порой при работе с текстовым редактором возникает необходимость открыть второй документ, но при этом не потерять первый. Решить эту проблему можно одновременным открытием двух программ, но зачем, если все это можно реализовать в одной. Для этого создаем две кнопки с именами "документ1" и "документ2" соответственно. Затем открываем файловый менеджер и переходим в папку с проектом. Здесь создаем два текстовых файла с аналогичными именами. Возвращаемся в "Алгоритм". Сейчас нужно добиться следующего: при нажатии на кнопку "документ2" содержимое первого документа должно сохраниться в созданный нами ранее текстовый файл. При нажатии же кнопки "документ1" сохраненные ранее данные должны вернуться назад, но при этом должно сохраниться содержимое второго документа. Немного запутанно, но реализуется все довольно-таки просто. Чтобы не запутаться, рекомендую начать со второй кнопки.
когда на объекте "документ2"
совершат действие "клик левой кнопкой",
операция "сохранить файл",
путь к файлу "папка с программой" (в пустом поле набираем "документ1.txt")
данные для сохранения "текстовое поле"
ОК!
Данные первого документа сохранили, теперь проделываем то же самое с первой кнопкой. Только ее содержимое должно сохраняться в файл "документ2". Поехали.
когда на объекте "документ1"
совершат действие "клик левой кнопкой",
операция "сохранить файл",
путь к файлу "папка с программой" (в пустом поле набираем "документ2.txt")
данные для сохранения "текстовое поле"
ОК!
Сохранить-то сохранили, но нужно еще и открыть. То есть при переходе ко второму документу, кроме операции сохранения данных, должна происходить операция открытия того самого второго документа. Импровизируем!
когда на объекте "документ2"
совершат действие "клик левой кнопкой",
операция "загрузить файл",
путь к файлу "папка с программой" (в пустом поле набираем "документ2.txt")
загрузить в "текстовое поле"
ОК!
Повторив со второй кнопкой, переходите к итогу.
Итого
Несмотря на размер получившейся статьи, буквально через пару вечеров знакомства с программой для реализации вышенаписанного вам понадобится около пяти минут свободного времени. Дальше все зависит от вашей фантазии. Конечно, программа не дает пользователю желанную свободу, но на первое время ее вполне достаточно. Теперь на вопрос: "Можно ли создать программу без знания языков программирования?" смело можно ответить: "Да, причем работая практически одной лишь мышью!".
Денис Купцов аKа Firma, Kd-v@tut.by
Компьютерная газета. Статья была опубликована в номере 06 за 2009 год в рубрике soft