СообЧа > База Знаний > Программирование

Вопрос

Подскажите, пожалуйста, когда говорят WINDOWS-программирование, что имеют в виду — программирование с помощью WIN32_API функции? И где это делают?

Ответ

Под термином WINDOWS-программирование можно подразумевать все, что угодно. Но в большинстве своем это означает «событийное» программирование. Именно эта концепция используется в Windows. Она кардинально отличается от того, как писались программы для DOS. Если в DOS программа представлялась единым целым и опрашивала в цикле клавиатуру, мышь, порты и пр., и в зависимости от того, нажата ли клавиша, передвинулась мышь, выполняла определенные действия, то в Windows этот процесс опроса берет на себя сама система и если произошло какое-то действие (событие), то сообщает (посылает вашей программе сообщение) об этом.

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

Знание WinAPI очень полезно, но в случае использования соответствующих систем программирования не является обязательным. Если использовать Borlan Pascal или Borland С++, то знание API просто необходимо. В случае использования т.н. RAD-систем (системы быстрой разработки приложений), таких как Delphi, С++ Builder, Visual Basic, Visual C++ и им подобных, знание WinAPI особо не требуется (но приветствуется). Все вышеперечисленные системы (а также множество других) являются ответом на вопрос «И где это делают?».

Goltsov Dmitry

1. Конечно можно двигать кнопочки в делфи и понятия не имея о том как все это работает, но тогда не забудьте поменятьь название своей профессии с программиста на разработчика.
2. Попробуйте написать простую прогу, которая считает, скажем, кол-во каких то букв в файле — если файл размером в (хотя бы) 30 МБ. Я посмотрю сколько у нее это займет времени(без нескольких потоков и проецирования файла в память)! Я не против библиотек типа ВЦЛ и МФЦ (если что большое, я пишу с МФЦ), но надо заглянут под корку!



Copyright © 2000-2004 Сообщество Чайников
Контактная информация