- Виды программ
- Консольные приложения
- Оконные приложения
- Драйверы
- Интерфейсы
- Библиотеки
- Резидентные программы
- Системные программы
- Консольное приложение против dll против приложения Windows и т. Д.
- Решение
- Консольное приложение
- Содержание
- Особенности текстового интерфейса
- Реализация текстового интерфейса
- Примеры консольных программ
- См. также
- Смотреть что такое «Консольное приложение» в других словарях:
- Windows для новичка: что такое консольные приложения
Виды программ
| Основы программирования Каждый профессионал когда-то был чайником. Наверняка вам знакомо состояние, когда “не знаешь как начать думать, чтобы до такого додуматься”. Наверняка вы сталкивались с ситуацией, когда вы просто не знаете, с чего начать. Эта книга ориентирована как раз на таких людей, кто хотел бы стать программистом, но совершенно не знает, как начать этот путь. Подробнее. |
Прежде чем создавать свои компьютерные программы, вы должны знать, какие они бывают и для чего предназначены. Видов программ не так много. Различия между программами можно назвать условными, так как по сути любая программа — это двоичный файл. Но мы так глубоко копать пока не будем, и поговорим о том, чем отличаются программы друг от друга с точки зрения пользователя.
Мы уже знаем, какие программы можно создавать в Lazarus. Но сегодня мы будем классифицировать программы с несколько иной точки зрения. Ниже перечислены основные виды программ с краткими описаниями.
Консольные приложения
Консольное приложение — это программа, которая работает с командной строкой. То есть это обычное окно, где пользователь может ввести какую-то команду и получить результат. Здесь нет никаких кнопочек и прочих прелестей Windows.
Пример консольного приложения — это командный интерпретатор, который есть в любой операционной системе. В Windows 95/98/ME — это программа command.com (впрочем, он есть и в более поздних версиях Windows). В Windows 2000 и выше — это программа cmd.exe.
Примеры работы с командной строкой см. в статье Кое что о ДОС.
Оконные приложения
Оконное приложение — это привычная всем программа Windows. То есть это окошко с разными кнопочками и полями для ввода-вывода данных. На сегодняшний день это, пожалуй, самый распространённый вид программ. Именно оконные приложения создают большинство программистов.
Драйверы
Драйвер — это программа, которая обычно служит для “стыковки” компьютерного железа (например, видеокарты) с операционной системой или другой программой. Иногда драйвером называют программу, которая “стыкует” две других программы между собой. Хотя сейчас такие программы принято называть интерфейсами (например, COM-интерфейс или DDE-интерфейс).
Когда я говорю “стыкует”, то я имею ввиду, что драйвер позволяет организовать правильный обмен данными между компьютерным железом и ОС. То есть операционная система обращается не напрямую к железу, а через драйвер.
Зачем так сделано? Дело в том, что производителей, например, видеокарт, существует огромное количество. И все они делают их по своим внутренним стандартам. И операционная система не может знать всё обо всех видеокартах. Поэтому есть определённые общепринятые стандарты, которые поддерживаются операционной системой. И производитель “железа” делает какую угодно “железяку”, а затем просто пишет программу-драйвер, которая соответствует общепринятым стандартам и “стыкует” эту “железяку” с операционной системой.
Это позволяет извращённым умам делать разные смешные штуки. Например, можно написать “кривой” драйвер, который будет определять USB-мышку как флэшку. Конечно, работать такая “флэшка” не будет, но зато будет прикольно)))
Интерфейсы
Интерфейс — это программа, которая обычно служит для “стыковки” одной программы с другой. Например, вы хотите получить данные из чужой программы. Как это сделать? Если чужая программа поддерживает какой-нибудь стандартный интерфейс (например, DDE), то вы можете использовать этот интерфейс для получения данных из чужой программы.
Библиотеки
Библиотека — это двоичный файл, который хранит разные методы и объекты. Пока это вам ни о чём не говорит. Но просто знайте, что свои процедуры вы можете сохранить в библиотеку, а затем использовать её в других своих программах. Также вы можете использовать в своих программах чужие библиотеки и наоборот — распространять свои библиотеки, чтобы другие программисты могли их использовать в своих программах.
Удобство использования библиотек заключается в том, что они не привязаны к языку программирования. Например, вы можете написать библиотеку на языке С++, а использовать её потом в программах, которые пишите на Паскале.
Резидентные программы
Резидентная программа — это программа, которая работает в фоновом режиме (то есть не видна пользователю и пользователь может о ней даже не подозревать). В фоновом режиме работают, например, антивирусы (и вирусы тоже))).
Системные программы
В общем-то это обычные программы, которые могут быть как консольными, так и оконными приложениями. Сюда же я бы отнёс резидентные программы, библиотеки и драйверы. Пожалуй, это будет не совсем правильно. Однако эта статья для начинающих. Поэтому я не хочу перегружать читателей информацией, которую они пока плохо понимают. Давайте пока будем думать, что это куча разных вспомогательных программ, которые необходимы для нормальной работы системы и оборудования.
Пока на этом всё. Домашнего задания не будет. Просто подумайте о том, как огромен мир программирования, и сколько всего вам надо будет ещё изучить)))
Консольное приложение против dll против приложения Windows и т. Д.
Когда я запускаю новый проект в Visual Studio, у меня есть несколько вариантов на выбор: приложение Windows, консольное приложение, dll, статическая библиотека. Какие именно различия и когда я должен использовать какие?
(Извините, если это глупый вопрос, я новичок в C ++.) Заранее спасибо.
Решение
Консольное приложение.
Создайте исполняемую программу (файл [.exe]) с консольной подсистемой. Это означает, что каждый экземпляр запущенной программы будет снабжен соответствующим консольным окном. Либо существующий, либо новый.
Приложение для Windows.
Создайте исполняемую программу с консольной или графической подсистемой. Подсистема GUI используется по умолчанию. Отличие от консольной подсистемы заключается в том, что консольное окно не создается автоматически при запуске программы.
Статическая библиотека.
Это своего рода библиотека, в которой код, используемый некоторым приложением, копируется в исполняемый файл этого приложения.
DLL.
Динамически связанная библиотека. Это своего рода библиотека, код которой не копируется в каждый с использованием исполняемого файла. Вместо этого код динамически помещается в память каждого запущенного экземпляра. Благодаря этой функции один файл DLL может использоваться несколькими программами. Другая особенность заключается в том, что код в DLL может быть действительно закрытым и использовать собственную библиотеку времени выполнения.
Консоль и GUI-подсистема могут быть очень легко изменены в свойствах проекта после того, как проект будет создан.
Статическая библиотека по сравнению с DLL на самом деле не переключается после создания.
Обратите внимание, что с подсистемой GUI компоновщик Microsoft (в отличие, например, компоновщик цепочки инструментов GCC) по умолчанию не принимает стандарт main , Чтобы заставить его принять стандарт, укажите точка входа mainCRTStartup в настройках компоновщика. При использовании стандартных шаблонов проектов это необходимо сделать после создания проекта.
Кроме того, если вы хотите стандартное поведение, то это хорошая идея, чтобы отключить предварительно скомпилированные заголовки в мастере создания проекта. Можно отключить и после создания проекта. Но это проще и наименее хлопотно сделать это уже при создании.
Консольное приложение
Текстовый интерфейс пользователя (англ. Text user interface, TUI ; также Character User Interface, CUI ) — система средств взаимодействия пользователя с компьютером, основанная на использовании текстового (буквенно-цифрового) режима дисплея или аналогичных устройств — например, командная строка. Приложения, использующие текстовый интерфейс, называют консольными программами.
Содержание
Особенности текстового интерфейса
На программном уровне для ввода и вывода информации консольные программы используют стандартные устройства ввода-вывода (stdin, stdout, stderr), хотя могут открывать и другие файлы, сетевые соединения и совершать иные действия, доступные в выполняющей их среде. Вывод печатных символов в stdout и stderr приводит к появлению этих символов на устройстве вывода, то есть к их получению пользователем.
В простейшем случае консольная программа использует интерфейс командной строки, однако многие из таких программ с помощью управляющих последовательностей терминалов создают более дружественный интерфейс, приближающийся к графическому (см.: меню (информатика)).
Некоторые консольные программы пригодны лишь для определённой реализации текстового интерфейса, например, текстовые программы операционных систем, особенно библиотека
Реализация текстового интерфейса
В принципе, консольная программа не обязана заботиться о реализации самого взаимодействия с пользователем, ограничиваясь вводом-выводом на стандартные устройства, использованием библиотек типа программных интерфейсов. Собственно взаимодействие с пользователем обычно осуществляет операционная система или иное программное обеспечение.
Классической реализацией текстового интерфейса, восходящей к первой половине XX века, является алфавитно-цифровое устройство ввода-вывода, например, комплект из клавиатуры и АЦПУ (телетайпа). Впоследствии вместо АЦПУ стали применять мониторы, снабжённые знакогенератором, что позволило быстро и удобно организовывать диалог с пользователем. Подобными устройствами снабжён или может быть снабжён почти каждый современный компьютер. Такие комплекты из монитора и клавиатуры (иногда с добавлением мыши) называются консолью компьютера.
В соответствии с традицией использования консольными программами клавиатуры и АЦПУ для ввода и вывода соответственно взаимодействие таких программ с пользователем свелось к чтению из stdin и выводу на stdout. Таким образом, появилась возможность перенаправлять потоки ввода-вывода, осуществляя взаимодействие с пользователем посредством иных устройств, в том числе подключенных через сеть, а также при помощи специальных программ-эмуляторов терминала, например, рисующих окно с текстом в графическом интерфейсе пользователя (текстовое окно).
В 1970-х годы и позднее выпускались даже специальные устройства, реализующие текстовый интерфейс — текстовые терминалы, подключаемые через последовательный порт к компьютеру напрямую или через модем. С распространением персональных компьютеров функции текстового терминала, как правило, выполняет компьютер, тот, на котором выполняется консольная программа, или другой. Программы ssh (а также Интернет или локальную сеть. Программы konsole и многие другие реализуют текстовый интерфейс посредством текстового окна в среде X Window System.
Альтернативный подход к консольному выводу был использован в персональных компьютерах, в частности (хотя не только), IBM PC под управлением памяти, связанной со знакогенератором монитора, приводя к немедленному изменению видимых на мониторе данных. Такие программы могут также работать в среде Microsoft Windows. Более того, Windows имеет поддержку текстовых окон, во многом превосходящую имевшуюся в DOS, в том числе и для приложений собственно Windows.
Примеры консольных программ
- Любая программа, осуществляющая получение данных от пользователя путём чтения stdin и отправку данных пользователю путём записи в stdout, по определению является консольной программой. Однако, такие программы могут обходиться и безо всякого пользователя, например обрабатывая данные из файлов.
- Текстовые программы для видеопамять Microsoft Windows.
- Unix shell, а также все утилиты, предназначенные для работы в этой среде.
- Midnight Commander (UNIX), FAR Manager (Windows).
- pppstatus, top, htop (UNIX).
См. также
Wikimedia Foundation . 2010 .
Смотреть что такое «Консольное приложение» в других словарях:
консольное приложение — [Интент] Текстовые терминалы В старых компьютерных системах консолью называлось устройство для вывода системных сообщений: АЦПУ или монитор. Впоследствии вместо АЦПУ стали применять мониторы, снабжённые знакогенератором, что позволило быстро и… … Справочник технического переводчика
Терминал сбора данных — Типичный PDT Терминалы сбора данных (англ. Portable data terminal), сокращенно ТСД это компактные мобильные переносные компьютеры, оснащенные дисплеем и разнообразными устройствами ввода данных: клавиатурой, сканером штрихкодовых или RFID м … Википедия
Раздувание программного обеспечения — (англ. software bloat, bloatware) тенденция новых программ быть больше по объёму и требовать больше системных ресурсов по сравнению со старыми[источник не указан 267 дней]. Никлаус Вирт в 1996 году написал статью… … Википедия
TTY-абстракция — Стиль этой статьи неэнциклопедичен или нарушает нормы русского языка. Статью следует исправить согласно стилистическим правилам Википедии. У этого термина существуют и другие значения, см. Tty. Подсистема TTY, или TTY абстракция это одна из … Википедия
Ассоциативный массив — (словарь) абстрактный тип данных (интерфейс к хранилищу данных), позволяющий хранить пары вида «(ключ, значение)» и поддерживающий операции добавления пары, а также поиска и удаления пары по ключу: INSERT(ключ, значение) FIND(ключ)… … Википедия
Free Pascal — Compiler Free Pas … Википедия
Half-Life TV — (HLTV) технология от Valve Software, позволяющая просматривать и записывать сетевые сражения игр на базе Half Life. Было произведено соединение с игровым сервером, загружена карта (англ. … Википедия
Astroburn — Внешний вид Astroburn … Википедия
MTASC — Логотип MTASC Тип Компилятор исходного кода Разработчик Motion Twin Операционная система Microsoft Windows, Linux, Mac OS X Последняя версия … Википедия
Turbo51 — command line output Тип Compiler … Википедия
Windows для новичка: что такое консольные приложения
Каждый второй опытный пользователь, услышав от новичка фразу «А что такое консольная программа?», начинает скрежетать зубами. Поэтому если вы — новичок, то лучше прочитать эту статью, чтобы не напороться на этого второго из двух опытных, а если вы уже опытный пользователь, то имеет смысл подсунуть заметку новичку, чтобы тот нашёл ответ на свой вопрос.
Итак, что же скрывается за этим страшным словосочетанием — консольное приложение? Приложение, как вы знаете, это в мире Windows не то, что к чему-то прикладывается, а компьютерная программа. Word, Excel, пасьянс «Косынка» и Internet Explorer — это всё приложения. Приложения бывают разными. Не только в том смысле, что Word отличается от «Блокнота», но и по принципу организации своего пользовательского интерфейса. Интерфейс — это внешний вид программы, и в Windows он бывает двух типов. Первый — это графический, второй — текстовый. Графический интерфейс система подсовывает вам под нос ежедневно. Все программы, имеющие красивые разноцветные окна, имеют и графический интерфейс. Даже Word и «Блокнот», хоть и работают с текстом, но интерфейс имеют графический. Где же тогда в наши дни можно увидеть программу, работающую в режиме текстового интерфейса?
Для того, чтобы увидеть текстовый пользовательский интерфейс (его ещё называют интерфейсом командной строки — прочитав этот абзац до конца, вы узнаете, почему), не нужно делать каких-то особенно сложных действий. Нажмите кнопку «Пуск», выберите пункт «Выполнить», наберите в строке появившегося окна текст «command» и нажмите кнопку «Выполнить». Вы увидите перед собой окно с серым текстом на чёрном фоне — примерно такое же, как изображено на иллюстрации к статье. Это — командная строка, одна из самых старых вещей в современном персональном компьютере.
Дело в том, что ещё не так давно, около двадцати лет назад, мощности компьютеров, стоящих у пользователей дома и на работе, не хватало на отображение даже такой несложной графики, как окна (что и говорить о трёхмерных видеоиграх!). Поэтому компьютеру и пользователям приходилось общаться с помощью текста. Пользователь вводил специальные команды — например, команда dir в первой из систем производства Microsoft, DOS, позволяла просмотреть список файлов и папок в определённой директории, а команда ver показывала версию операционной системы, с которой работал пользователь. Программы, которые запускал пользователь, тоже, естественно, работали в текстовом режиме.
Командная строка, как вы видите, сохранилась в Windows до сих пор. Команды, которые можно выполнить из неё, подробно описаны в справке Windows. А приложения, которые выполняются в текстовом режиме, теперь называются консольными.
Почему же командная строка продолжает жить, несмотря на свой почтенный возраст? Во-первых, есть множество программ, которым не нужен графический интерфейс — например, программы по взлому паролей, которые просто подбирают комбинации символов, пока то, что закрыто паролем, не откроется. Кроме того, командная строка приходит на помощь тем пользователям, которые выучили назубок её команды и быстро набирают с клавиатуры, — для них она гораздо более быстрый способ работать с компьютером, чем графический интерфейс.
Консольных программ масса, и они используются часто для того, чтобы упростить рутинные действия пользователя. Дело в том, что с ними можно обращаться точно так же, как и с обычными командами. А те, в свою очередь, можно записать в специальный текстовый файл с расширением BAT или CMD (такой файл называется командным), и их можно потом выполнить все залпом как обычную программу — достаточно в «Проводнике» дважды кликнуть по этому файлу мышью.