В(Б)ыродки [(V)Bastards]
"Visual Basic одновременно и любим и презираем миллионами. Visual Basic считается идеальным средством быстрой разработки прототипов программы, для разработки приложений баз данных и вообще для компонентного способа создания программ, работающих под управлением операционной системы Windows" (
http://ru.wikipedia.org/wiki/Visual_Basic)
"...Жил да был черный кот за углом, и кота ненавидел весь дом..." -
вы не находите, что положение VB-программистов во многом похоже?
Споры о выборе языков программирования частенько напоминают схватки религиозных фанатиков. Разве что, меняется место: вместо улиц - форумы и авторитетные онлайновые и оффлайновые издания. Ну и, разумеется, все обходится без крови.
Приверженцы ассемблера дерутся с ярыми "Сишниками", а те, в свою очередь, с наслаждением поливают грязью любителей Object Pascal. Немного в сторонке стоят апологеты Java и других "экзотических" языков. Но когда в такой дискуссии появляется сторонник Visual Basic или вообще какого бы то ни было диалекта Бейсика, начинается невообразимое. Бывшие противники объединяются в коалицию и бьют бедного... (по каким органам они только его не бьют!) И хотя аргументов "за" порой гораздо больше, чем "против", приговор окончателен и (вот беда!) обжалованию не подлежит: "Visual Basic - это НЕ настоящий язык программирования".
Почему же нет? "Просто НЕТ" - отвечают они. - "В нем нет того-то, того-то, того-то и чего-то там еще! Это язык для недоумков, не сумевших изучить Си (Си++, Паскаль...)!" Говорящие так, на самом деле излагают свое мнение не полностью. В оригинале оно звучит как-то так: "Быть может, этот язык и не так плох, как о нем отзываются. Но эти в(б)ыродки [VB-программисты] так плодятся... Они пишут программы так быстро... Нам не успеть! А как же мы? Неужели программа без указателей - это программа? Неужели мы останемся без дела? и т.д." - и эти бесконечные "неужели" и определяют мнение.
Когда мне говорят: "А что, на этом языке можно писать программы?", я обычно задаю ответный вопрос: "А что, нельзя?" или "А вы пробовали?" И тут выясняется, что горе-специалисты по выбору "языка программирования мечты" и не пробовали - видимо, незачем. Ведь и так все ясно. Язык - для дебилов, приговор - к стенке! А всем программерам с завтрашнего дня судом предписано начать писать программы в опкодах БЭСМа-6.
А если серьезно, то давно уже пора определить, для чего нужен VB, а для чего - нет.
Итак, этот язык создавался для быстрой разработки приложений (RAD, Rapid Application Development) в ущерб быстроте выполнения и тонкости управления процессом работы. Это значит, что в нем изначально не предусмотрена работа с указателями, ассемблерные вставки и вызов "хитрых" интерфейсов COM (например, реализующих только IUnknown) без соответствующих вспомогательных средств. Другое дело, всё это можно реализовать как внутренними средствами VB вкупе с вызовами функций Win32 API, так и внутренними средствами других языков программирования.
Visual Basic идеально подходит для разработки небольших и среднего размера программных комплексов, работающих с умеренными объемами данных. А в простоте работы с различными СУБД из VB6 по-моему не сравнялся еще ни один язык программирования.
Если вам нужно профессиональное решение с использованием низкоуровневых трюков, можно использовать связку "Visual Basic - DLL на другом языке", где в роли "другого языка" может выступать любой, компилирующий DLL-файлы и поддерживающий конвенцию вызова stdcall
Естественно, можно использовать с той же целью (вызов функций) и COM-интерфейсы.
Так что те, кто говорит, что VB является бесполезным и маломощным языком, по меньшей мере, неправы.
/Всё сказанное относится в большей степени к Visual Basic 5 и 6 версии (т.н. VB Classic), Visual Basic .NET - тема особого разговора/