Форум: "Потрепаться";
Текущий архив: 2003.05.22;
Скачать: [xml.tar.bz2];
Вниз
От VCL к API Найти похожие ветки
← →
Материнская зарплата (2003-04-30 03:31) [0]Подкиньте кто нибудь статейки и ссылки по WinAPI. Я решил сделать большой шаг - полностью перейти на WinAPI
← →
Serious Sam (2003-04-30 09:32) [1]Н-да. "Смелый экперимент молодых троллей"
С зарплатой придётся попрощаться...
← →
pasha676 (2003-04-30 10:07) [2]Переход полностью на API такой же идиотизм, как заявление "хочу перейти полностью на машинный код". Имхо конечно.
← →
Axis_of_Evil (2003-04-30 10:18) [3]Ежели VCL дано, пользуйся.
← →
il (2003-04-30 11:20) [4]Хотя, если ты раньше вирусы на VCL писал, то это, пожалуй, здравый шаг :)
← →
han_malign (2003-04-30 11:22) [5]Бей провокаторов...
← →
Sergey13 (2003-04-30 11:39) [6]2Материнская зарплата (30.04.03 03:31)
>Подкиньте кто нибудь статейки и ссылки по WinAPI. Я решил сделать большой шаг - полностью перейти на WinAPI
Т.е. ты еще ничего не читал по теме, а перейти уже решился? Оригинально. 8-)
← →
АлексейК (2003-04-30 11:42) [7]Бурные и громкие апплодисменты.....
Хотя дисассемблируется такой код IDE, просто прелесно, усе названия апишных ф-ий как на ладони.
← →
Ru (2003-04-30 12:01) [8]www.atrussk.ru - если щас работает
← →
DVM (2003-04-30 12:22) [9]
> Переход полностью на API такой же идиотизм, как заявление
> "хочу перейти полностью на машинный код". Имхо конечно.
Ничего "идиотского" в этом нет. Идиотами становятся те, кто всю жизнь пишет программы на языке высокого уровня да еще с использованием каких-либо высокоуровневых библиотек, совершенно не задумываясь о том, как работает операционная ситема, для которой он пишет программы или как работает процессор. И при этом считают себя крутыми программерами.
← →
Игорь Шевченко (2003-04-30 12:31) [10]
> И при этом считают себя крутыми программерами.
И имеют на то полное основание. Так как они свои задачи программируют, и поверь, делают это достаточно хорошо. А считать себя крутым программером, от того, что ты знаешь десяток или сотню функций WinApi - это больший идиотизм.
← →
DVM (2003-04-30 12:54) [11]
> Игорь Шевченко
При всем моем уважении к голубому значку, осмелюсь поспорить.
Я не о том, чтобы знаешь десяток или сотню функций WinApi, а о том, что надо понимать внутренне устройство той системы и той машины для которой пишешь программы. Современные языки программирования (особенно Delphi) навязывают такой стиль программирования (проектирования?), что программирующий в ней (а особенно новичок) порой не имеет даже представления о том как работает его программа, как работает система, как работает процессор. Теряются (не развиваются) алгоритмические навыки.
К тому же обходится только VCL можно до поры до времени. Так или иначе с WinApi человек придет при решении более сложных задач.
VCL ограничен в возможностях. Не все можно сделать используя VCL.
Но Delphi, конечно же, превосходная среда программирования, VCL - отличная библиотека.
P.S. Себя я к программистам не отношу (и программистом не работаю), но программирование - это мое, что-ли хобби. Но с некоторых пор я стал сторонником программирования на "чистом" языке, без VCL/MFC - это тоже мое хобби.
Насчет идиотов я погорячился (ответ автору вопроса), ведь сам я тоже использую VCL :)
← →
Danilka (2003-04-30 12:55) [12]Если не ошибаюсь, в форуме "ВинАПИ" наибольшее кол-во ответов у Игоря Шевченко...
По-моему любая крайность - плохо.
Изобретать велосипед, делать то, что уже давно сделано - глупо.
Но и незнание того, что происходит на самом деле, за пределами VCL-обертки, в этом тоже нет ничего хорошего.
← →
DVM (2003-04-30 13:04) [13]
> Danilka
Полностью согласен! Кроме одного:
> Изобретать велосипед, делать то, что уже давно сделано -
> глупо.
Можно изобрести ЛУЧШЕ!
← →
Игорь Шевченко (2003-04-30 13:12) [14]Danilka © (30.04.03 12:55)
В любом случае, переходить на "чистый API" - это глупо.
> Но и незнание того, что происходит на самом деле, за пределами
> VCL-обертки, в этом тоже нет ничего хорошего.
А зачем ? Умный Borland специально придумал обертку вокруг функций и механизмов WinAPI, для того, чтобы программист мог сосредоточиться на своей задаче и своем алгоритме, а не писал дополнительный, не имеющий никакого отношения к его задаче, код для того, чтобы пользоваться возможностями Windows.
← →
DVM (2003-04-30 13:18) [15]
> А зачем ?
Рухнет Borland - и такой "программист" останется не у дел. Все таки Delphi - продукт одной компании, дела которой не так хороши как у Microsoft. Windows писана все таки на C (даже не ++ в большей своей части).
← →
stone (2003-04-30 13:20) [16]
> Рухнет Borland - и такой "программист" останется не у дел.
>
С какой стати? Программисты, они в разных областях работают, многие из этих областей никакого отношения к АПИ не имеют
← →
DVM (2003-04-30 13:27) [17]
> С какой стати? Программисты, они в разных областях работают,
> многие из этих областей никакого отношения к АПИ не имеют
Вот именно, В РАЗНЫХ ОБЛАСТЯХ! И программист должен знать (по крайней мере разбираться) не только в коконе VCL, который изолировал его от мира.
← →
Иван Шихалев (2003-04-30 13:29) [18]> надо понимать внутренне устройство той системы
> и той машины для которой пишешь программы.
Тот, кто понимает - полностью на WinAPI не переходит. Даже если не может воспользоваться VCL (как я на Free Pascal"е).
← →
pasha676 (2003-04-30 13:30) [19]2DVM
Не согласен. Конечно АПИ знать надо, и систему тоже. Но писать все проекты на чистом АПИ - это извращение и садомазохизм.
Я например знаю АПИ в необходимом мне объеме. Если чего не знаю, смотрю хэлпы и справочники. Пока хватало.
> Рухнет Borland - и такой "программист" останется не у дел.
> Все таки Delphi - продукт одной компании, дела которой не
> так хороши как у Microsoft. Windows писана все таки на C
> (даже не ++ в большей своей части).
Если ты такой глобальный программист, то как ты можешь привязываться исключительно в виндоуз? Под другими системами тоже надо программить.
ЗЫ Уже давно пришел к мнению, что чаще всего удобней связываться с внешними устройствами или железками через Си или API, а интерфейс делать на дельфи. И даже не пытайся меня убедить, что для проги решения квадратного уравнения окно, кнопки и др. элементы надо строго писать на API. Это маразм.
← →
MalkoLinge (2003-04-30 13:40) [20]
> > Изобретать велосипед, делать то, что уже давно сделано
> -
В основном так говорят люди, не способные этот велосипед изобрести :)
← →
Игорь Шевченко (2003-04-30 13:41) [21]DVM © (30.04.03 13:27)
Вот был Windows 3.1, потом Windows 95. Всем, кто писал "на API" пришлось переучиваться гораздо больше, чем тем, кто писал на языках высокого уровня.
← →
DVM (2003-04-30 13:41) [22]
> Иван Шихалев
Да я и не ратую за отказ от VCL - наоборот. Я просто хочу сказать, что нельзя не замечать того, что находится вне VCL, хотя Delphi такую возможность и предоставляет.
> pasha676
> Если ты такой глобальный программист, то как ты можешь привязываться
> исключительно в виндоуз? Под другими системами тоже надо
> программить.
Разумеется. А разве ни кого не смущает тот факт, что все мы с вами поставлены в зависимость от одной корпорации (MS или Borland)?
> И даже не пытайся меня убедить, что для проги решения квадратного
> уравнения окно, кнопки и др. элементы надо строго писать
> на API. Это маразм.
Я и не буду пытаться. Но уметь сделать что-то без VCL надо!
← →
Игорь Шевченко (2003-04-30 13:44) [23]DVM © (30.04.03 13:41)
> Я и не буду пытаться. Но уметь сделать что-то без VCL надо!
Зачем ? Реальный пример нужности такой задачи можешь привести ?
← →
Mike Kouzmine (2003-04-30 13:44) [24]Уметь и делать - разные вещи. Я, например, умею стрелять из гаубицы....
← →
DVM (2003-04-30 13:47) [25]
> Игорь Шевченко
> Вот был Windows 3.1, потом Windows 95. Всем, кто писал "на
> API" пришлось переучиваться гораздо больше, чем тем, кто
> писал на языках высокого уровня.
К сожалению, здесь вы правы.
← →
DVM (2003-04-30 13:48) [26]
> Mike Kouzmine
А я крючком вязать салфетки.
← →
Ru (2003-04-30 13:49) [27]>DVM © (30.04.03 13:18)
http://deep.webm.ru/forum/reply.php?num=1.2&id=4541
← →
Ru (2003-04-30 13:49) [28]>DVM © (30.04.03 13:18)
http://deep.webm.ru/forum/reply.php?num=1.2&id=4541
http://deep.webm.ru/forum/reply.php?num=1.2&id=5129
← →
Mike Kouzmine (2003-04-30 13:51) [29]DVM © (30.04.03 13:48) Счастливый.. А я так и не научился..
← →
DVM (2003-04-30 14:00) [30]
> Игорь Шевченко
> Зачем ? Реальный пример нужности такой задачи можешь привести
> ?
Пожалуйста. Любая задача, в которой не требуется развитый пользовательский интерфейс, или нет вообще ни одного окна в VCL особо не нуждается.
Или вот еще пример. Я утверждаю, что нельзя применяя VCL создать окно, подобное окну Progman. Ну не работает функция SetShellWindow c VCL формами - ну хоть тресни. Бился месяц.
function SetShellWindow(hWnd: HWND): dword; stdcall; external "User32.dll" name "SetShellWindow";
← →
nikkie (2003-04-30 14:02) [31]>Игорь Шевченко
>> Я и не буду пытаться. Но уметь сделать что-то без VCL надо!
>Зачем ? Реальный пример нужности такой задачи можешь привести ?
например, надо разрабатывать на VC++.
>Вот был Windows 3.1, потом Windows 95. Всем, кто писал "на API" пришлось переучиваться гораздо больше, чем тем, кто писал на языках высокого уровня.
я под Win3.1 не писал, но мне почему-то кажется, что программирование на API практически не изменилось. расскажи, в чем проблема-то?
>pasha676
>Но писать все проекты на чистом АПИ - это извращение и садомазохизм.
ключевое слово здесь - "все". и согласиться можно только при условии, что есть выбор между VC++ и дельфи.
сам я на дельфи на чистом API не пишу. а на C - пишу. там это и легче делать, благодаря message crackers.
← →
Игорь Шевченко (2003-04-30 14:09) [32]nikkie © (30.04.03 14:02)
> я под Win3.1 не писал, но мне почему-то кажется, что программирование
> на API практически не изменилось. расскажи, в чем проблема-то?
Win32.hlp, Porting Code from 16-bit Windows to 32-bit Windows - там много интересного.
> сам я на дельфи на чистом API не пишу. а на C - пишу. там
> это и легче делать, благодаря message crackers.
Там VCL нету - вот в чем беда :)
← →
DVM (2003-04-30 14:09) [33]
> nikkie
> благодаря message crackers.
да это точно.
← →
DVM (2003-04-30 14:20) [34]Короче итог:
"Кому нравится поп, а кому попова дочь!"
Автор вопроса просил ссылки и инфу о WinApi:
Книжки
"Программирование для Windows 95". Автор Ч. Петзолд.
"Азбука программирования в Win32 API". Автор П. Румянцев.
"Работа с файлами в Win32 API". Автор П. Румянцев.
"Проектирование интерфейса пользователя средствами Win32 API". Автор Ганеев.
http://www.bcbdev.ru/winapi.htm
Сайт посвященный программированию на Api в Delphi:
http://web.ict.nsc.ru/~cancel/delphi/
← →
Игорь Шевченко (2003-04-30 14:25) [35]И этого, Рихтера в список добавить. Windows для профессионалов.
← →
Mystic (2003-04-30 14:45) [36]Как всегда не назвали самое основное :)
http://msdn.microsoft.com
без остального жить можно, а без этого --- никак! ;)
← →
i-C3H7OH (2003-04-30 15:01) [37]на АПИ писать прикольно. как будто решаешь головоломку. как что с чем взаимодействует, чего перехватывать, чего возвращать.. и видеть РЕЗУЛЬТАТ. это как конструктор (для детей:). там нет ничего сложного, сверх естественного.. если знаешь основы, конечно.. основы я узнал не сразу.
ну конечно если там ч-н припрет, то быстренько создаем форму, накидаем компонентиков - это быстро и в этом огромный плюс, а потом если есть желание можно и на АПИ переделать.
я лично с ВинАпи начал ознакомится конкретно поиздевавшись над примером из книги Краснова ОпенГЛ в проектах Делфи. там в начале есть.. етого хватило, чтобы понять принцып, концепцию...
← →
pasha676 (2003-04-30 15:36) [38]2nikkie
> ключевое слово здесь - "все". и согласиться можно только
> при условии, что есть выбор между VC++ и дельфи.
Кажется мы говорим о Дельфи. И разумеется ключевое слово "все". Иногда надо и/или удобней писать на API. Мне, например, работать с портами удобней на API. Исторически так сложилось. И вообще с железками я считаю надо работать на API и/или Си, возможно работать на API для увелечения быстродействия, уменьшения объема exe или по организационным причинам. Но как написано в топике "полностью перейти на АПИ" - нафиг нафиг.
2DMV
> Короче итог:
> "Кому нравится поп, а кому попова дочь!"
Нет. Итог - каждую задачу необходимо решать рациональными средствами. Не надо писать СУБД на ассемблере для организации домашней телефонной книги. Наиболее универсальные и гибкие подходы лежат в использовании нескольких языков для разных задач или подзадач.
← →
DVM (2003-04-30 15:43) [39]
> pasha767
> в использовании нескольких языков для разных задач или подзадач.
Ну! А я о чем!
← →
Юрий Зотов (2003-04-30 21:57) [40]То, что для каждую задачу лучше всего решать наиболее подходящими для нее средствами - ну, слава Богу, к этому все же пришли.
А вот по этому пункту все же возражу:
> DVM © (30.04.03 12:54)
> Современные языки программирования (особенно Delphi)
> навязывают такой стиль программирования (проектирования?),
> что программирующий в ней (а особенно новичок) порой не имеет
> даже представления о том как работает его программа, как
> работает система, как работает процессор.
Delphi все же никому ничего не навязывает. Она экономит нам время, только и всего. Но при этом вовсе не заставляет пользоваться исключительно VCL. Хотите - пишите на чистом API, хотите - на Ассемблере. И все это в среде Delphi.
А новички... так на то они и новички, чтобы мало что понимать. Delphi здесь, вроде как, тоже ни при чем.
Страницы: 1 2 вся ветка
Форум: "Потрепаться";
Текущий архив: 2003.05.22;
Скачать: [xml.tar.bz2];
Память: 0.55 MB
Время: 0.008 c