Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.03.26;
Скачать: [xml.tar.bz2];

Вниз

Важно! Вопрос не по программированию. Delphi или VB?   Найти похожие ветки 

 
isasa ©   (2006-02-27 23:13) [40]

atruhin ©   (27.02.06 18:18) [34]
А разве есть в VB проблеммы с колбэками? На VBA я без проблем использовал, перечислял установленные в системе шрифты, и отображал в экселе.

В VBA (Office) те же "проблемы" с variant(dim i,j as integer) :)


 
Petr V. Abramov ©   (2006-02-27 23:39) [41]

Delphi - это круто.
 Но писАть учитесь на VB.Net
 Но если хотите учиться программировать, учитесь на Delphi. А потом - смело на VB.Net


 
palva ©   (2006-02-28 00:47) [42]

Dmitrij_K   (27.02.06 14:46) [3]
> Delphi создает чисто машинный код, непосредственно исполняемый компьютером, в то время как VB транслирует исходный код в промежуточную форму (р-код).

Эта информация устарела лет этак на 10, поскольку относится к 3-й версии VB (см. далее имя файла VBRUN300.DLL с номером версии). А сейчас пишут на 6-й версии, которая позволяет выбрать, во что компилировать EXE: в p-код или native-код. По скорости выполнения код VB ничем не уступит Delphi. Проведите эксперименты и убедитесь. Библиотека, которую приходится таскать вместе с приложением называется теперь msvbvm60.dll и занимает 1386496 байт. Зато пустое оконное приложение занимает несколько десятков килобайт.

С Callback в VB тоже проблем нет: имеется оператор AddressOf. Он правда не документирован, но это другой вопрос.


 
Real ©   (2006-02-28 03:23) [43]


> ...VB все гораздо проще делать; типа, бейсик автоматом проверяет
> синтаксис строки, при переходе на следующую...


Ужасно-неудобная настройка принятая в васике по умолчанию. Бывает, надо несколько строк налепить по схожему шаблону, в любой другом языке - копи/пэст, а васик - не! Окошко выбросит, исходник красным перекрасит... Хорошо еще это опция выключается... Но кто сказал что это относится к УДОБСТВАМ, тому я согласен - лучше писать только на ВБ.


 
vidiv ©   (2006-02-28 04:23) [44]

Я тоже начинал с vb. Мне так хотелось писать програмки с окошками под windows, делал презентации с фоном на весь экран и делал там уже скрипты. Потом только получил заветный delphi 5 и с тех пор на нем и пишу. Нежалею.


 
MegaVolt ©   (2006-03-01 12:18) [45]

Вот статья со сравнением по скорости различных сред программирования:
http://www.rsdn.ru/article/devtools/perftest.xml


 
Megabyte ©   (2006-03-01 15:22) [46]

Хоть и считаю себя убежденным дельфистом, недавно открыл для себя VB. :)
Просто в книжке по COM/COM+ были примеры на С++ и VB(клиенты на VB замечательно писать; + инициализация и деинициализация системы времени выполнения COM происходит автоматически). Думаю, будет полезно знание этого языка. Тем более часто применяется VBA там, где используются программы из MS Office(отчеты в Excel).
Короче, с Дельфи он не конкурирует, а дополняет имхо.


 
Курдль ©   (2006-03-01 15:34) [47]

Считаю подобный вопрос смехотворным, однако прошу уточнить, где это обсуждалось про "try не работает...". И еще какие косяки в Делфи замечены профессионалами от VB?
Я сам уже на делфях почти не работаю, но отношусь к этой среде крайне уважительно.


 
Danilka ©   (2006-03-01 15:50) [48]

http://russian.joelonsoftware.com/Articles/HowMicrosoftLosttheWaronA.html

Если вы занимались  разработкой настольных приложений в ранних версиях Windows,  то Microsoft предлагал вам два пути: написать код на С, напрямую вызывающий Windows API, и самостоятельно управлять вашей памятью, или использовать Visual Basic, который будет управлять памятью за вас. Эти две среды разработки я использую чаще  всего последние  лет тринадцать, я знаю их вдоль и поперек, и мой опыт показывает значительно большую продуктивность Visual Basic. Часто я писал один и тот же код, на С++, вызывая Windows API, и на Visual Basic. На  С++ всегда требовалось в три-четыре раза больше работы. Почему? Управление памятью. Самый легкий путь понять почему – взглянуть на документацию к любой функции Windows API, возвращающую строку. Посмотрите внимательно как много дискуссий о том, кто должен выделить память под эту строку, и как вам договариваться о размере выделяемой памяти. Обычно, вы вызываете функцию дважды, в первый раз вы сообщаете, что выделили ноль байт, и она возвращает вам ошибку «недостаточно выделенной памяти», а также говорит, сколько памяти вам необходимо выделить. Это в том случае, если вам повезло,  и не надо  не вызывать функцию, возвращающую список строк или даже структуру переменной длины. В любом случае, простая операция  открытия файла, записи строки и его закрытия займет страницу кода, если используется чистый Windows API. На Visual Basic подобная операция займет три строки.

Итак, у нас два мира программирования. Большинство решило, что мир управляемого кода лучше мира кода неуправляемого.  Visual Basic был (и вероятно остается) первым из числа самых продаваемых языков программирования всех времен; для разработки под Windows программисты отдают предпочтение ему, а не С или С++, не смотря на то что, крутые программисты избегали его, так как в названии присутствует слово «Basic» (элементарный), хотя это был весьма современный язык с чертами объектно-ориентированности, с очень малым количеством оставшейся грязи (номера строк и оператор LET исчезли как утренний туман). Еще одна проблема  заключалась в необходимости снабжать программу специальной VB-библиотекой, что имело значение при передаче программ по модему, но хуже того, позволяло другим программистам увидеть, что ваше приложение  было разработано (какой  стыд!)  на Visual Basic.


 
Курдль ©   (2006-03-01 15:52) [49]


> Danilka ©   (01.03.06 15:50) [48]


А кто сказал, что Windows API - это правда последней инстанции?


 
Никита ©   (2006-03-01 15:54) [50]

VB мертв. Delphi\Pascal forever


 
Danilka ©   (2006-03-01 16:02) [51]

[49] Курдль ©   (01.03.06 15:52)
Ты о чем? :)
Я увидел крики о том, как фигово, что низзя в ВБ пользовать ВинАПИ, калл-бак функции и асм, вот и решил вставить то, что читал ранее и с чем, вобщем-то, согласен.
Жаль, Джоэль на Дельфи не работал.

[50] Никита ©   (01.03.06 15:54)
> VB мертв


Из той-же ссылки:

И вот пришел .NET. Это был великий проект, супер-пупер унифицирующий проект, призванный расчистить эту кашу раз и навсегда.  Конечно, с управлением памятью. Останется и Visual Basic, но он заполучит новый язык, по духу фактически тот же Visual Basic, но с новым С-подобным синтаксисом фигурных скобок и точек с запятой. Самое главное, новый гибрид Visual Basic и С будет называться Visual C#, так что вам больше не придется говорить, что вы программируете на Бейсике. Все эти ужасные Windows функции, ошибки обратной совместимости, и  недоступная для понимания семантика возврата строк будут выброшены и заменены единым объектно-ориентированным интерфейсом только с одним видом строк. Одна библиотека для управления всем. Это было прекрасно. И технически они этого добились. .NET – великая среда разработки, управляющая вашей памятью, с богатым, полным  и непротиворечивым интерфейсом с операционной системой и богатой, суперполной и элегантной объектной библиотекой базовых операций.

:))


 
Никита ©   (2006-03-01 16:09) [52]

Лично мне не нравится С подобный синтаксис, но кому как....


 
Курдль ©   (2006-03-01 16:16) [53]


> Danilka ©   (01.03.06 16:02) [51]
> Я увидел крики о том, как фигово, что низзя в ВБ пользовать
> ВинАПИ, калл-бак функции и асм, вот и решил вставить то,
>  что читал ранее и с чем, вобщем-то, согласен.

А! Ясно. Сами языки вообще друг от друга мало чем отличаются (если не брать LISP и какой-нить Prolog). Радикально отличаются среды.

Java, например - вылитый C#, однако...
Power Builder силно похож на VC++, однако...


 
seg   (2006-03-01 16:19) [54]

Java, например - вылитый C#, однако...

Наоборот C# - клон Java.


 
Курдль ©   (2006-03-01 16:21) [55]


> seg   (01.03.06 16:19) [54]
> Наоборот C# - клон Java.

Тогда Java клон С++ :)


 
Курдль ©   (2006-03-01 16:25) [56]

...
А С++ - клон С+
С+ - клон С
С - клон В
В - клон А
А - навороченный MASM, который является клоном ASM-а


 
wicked ©   (2006-03-01 16:27) [57]

> Курдль ©   (01.03.06 16:25) [56]
> ...
> А С++ - клон С+
> С+ - клон С
> С - клон В
> В - клон А
> А - навороченный MASM, который является клоном ASM-а

а ASM тогда клон чего?..... и куда приткнуть PDP-11?...... ;)


 
Никита ©   (2006-03-01 16:28) [58]

Visual Assembler не хотите попробовать? :))))))))))))))


 
Курдль ©   (2006-03-01 16:28) [59]

PDP-11 это разве не ОС?


 
isasa ©   (2006-03-01 16:33) [60]

Курдль ©   (01.03.06 16:28) [59]

PDP-11 это разве не ОС?


Была ОС РВ, и в ней был MASM, Fortran, и с года эдак 1989 Pascal.


 
Курдль ©   (2006-03-01 16:35) [61]

PDP-11, это кажись вообще процессор. К нему, кажись, была ОС RSX-11M, с которой наши слизали РАФОС и ОСРВ/


 
isasa ©   (2006-03-01 16:45) [62]

Курдль ©   (01.03.06 16:35) [61]
PDP-11, это кажись вообще процессор.


Да процессор. Аналог СМ 1420.


 
Lamer@fools.ua ©   (2006-03-01 18:10) [63]

Дополнение к [36].

>>Сергей М. ©   (27.02.06 16:11) [27]
>"А уж о какой оптимизации native-кода при этом может идти речь - одному БГ известно."

Вот пример дизассемблированного кода (исходник на C# 2.0, программа отлаживается на P4):

           toolbar.FloatingLocation = m_floatingLocation;
00000091  lea         eax,[edi+14h]
00000094  cmp         ecx,dword ptr [eax]
00000096  sub         esp,8
00000099  movq        xmm0,mmword ptr [eax]
0000009d  movq        mmword ptr [esp],xmm0

000000a2  mov         ecx,esi
000000a4  cmp         dword ptr [ecx],ecx
000000a6  call        FFF92E84
000000ab  nop              
           toolbar.FloatingSize = m_floatingSize;
000000ac  lea         eax,[edi+1Ch]
000000af  cmp         ecx,dword ptr [eax]
000000b1  sub         esp,8
000000b4  movq        xmm0,mmword ptr [eax]
000000b8  movq        mmword ptr [esp],xmm0

000000bd  mov         ecx,esi
000000bf  cmp         dword ptr [ecx],ecx
000000c1  call        FFF92E98
000000c6  nop


Как видно, в наличии имеется использование SSE регистров.


 
DesertAlex   (2006-03-03 18:11) [64]


> Считаю подобный вопрос смехотворным, однако прошу уточнить,
>  где это обсуждалось про "try не работает...". И еще какие
> косяки в Делфи замечены профессионалами от VB?
> Я сам уже на делфях почти не работаю, но отношусь к этой
> среде крайне уважительно.


try не работал только из под делфи (exe  работал), пока не снял галочку в тулс\дебагер опшнс\ленгвич эксепшенс - стоп он делфи эксепшонс...

сорри, что не по английски :-)



Страницы: 1 2 вся ветка

Форум: "Прочее";
Текущий архив: 2006.03.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.59 MB
Время: 0.038 c
15-1141229111
Pazitron_Brain
2006-03-01 19:05
2006.03.26
Комментированные PHP скрипты


10-1115220240
Evloev Oleg
2005-05-04 19:24
2006.03.26
Многопоточность и COM


5-1127808522
Unknown user
2005-09-27 12:08
2006.03.26
сообщение WM_LBUTTONDBLCLK


3-1138953184
Alexey V.
2006-02-03 10:53
2006.03.26
Login MSACCESS


2-1142145894
Glex
2006-03-12 09:44
2006.03.26
Какой движок БД не требует никаких библиотек после компиляции?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский