PDA

Просмотр полной версии : Помогите выбрать


skzi
01.03.2007, 00:30
Помогите пожалуйста выбрать между Delphi и С++ !


Я студент 1 курса, знаю Pascal. Читаю ваш форум не из-за любопытства взлома, а из-за любопытства защищаться от этих взломов. Ломал пару сайтов. В скором времени начнем изучать С++ в институте. Assembler уже малеху начали.

Мне нужны только основные + и - каждого языка. Пожалуйста отпишитесь люди которые знакомы с обоими языками. Какой легче или труднее, какие возможности и т.д.

Заранее благодарен.

sni4ok
01.03.2007, 00:38
Помогите пожалуйста выбрать между Delphi и С++ !


выбирай с++, поскольку:
1. с++ кросплатформенный, а дэлфи нет.
2. с++ main stream(а значит и работу найти проще, в том числе и на новые проекты, а не на поддержку старых) и в ближайшее время с++ не умрёт окончательно, а вотдэльфи уже наладом дышит.
3. для с++ доступна куча компиляторов и средств разработки, также куда больший выбор доступных библиотек чем в дэльфи.
4. ну и средств языка у него на мой взгляд в с++ побольше:)

думаю этого достаточно, чтобы не думать изучать дэлфи даже в самом страшном сне?

BlackCats
01.03.2007, 01:19
а я бы порекомендовал сначала делфи... т.к. ты знаеш уже основу - паскаль - тебе до делфи рукой подать.. выучиш делфи быстренько и начинаеш С++

*[poison]*
01.03.2007, 01:35
Помогите пожалуйста выбрать между Delphi и С++ !


Я студент 1 курса, знаю Pascal. Читаю ваш форум не из-за любопытства взлома, а из-за любопытства защищаться от этих взломов. Ломал пару сайтов. В скором времени начнем изучать С++ в институте. Assembler уже малеху начали.

Мне нужны только основные + и - каждого языка. Пожалуйста отпишитесь люди которые знакомы с обоими языками. Какой легче или труднее, какие возможности и т.д.

Заранее благодарен.

Мой тебе совет, учи сразу С++, ничего трудного там нету, почти все языки по логике одинаковы, только по синтаксису отличаются.

nc.STRIEM
01.03.2007, 03:04
Delphi - сосет!
C++ - рулит!

taha
01.03.2007, 13:57
Delphi - сосет!
C++ - рулит!
бред
nc.STRIEM каждому своё

незя сравнивать Delphi и C, это разные вещи! Дельфи это среда, С это язык. У каждого свои особенности и недостатки.

по поводу веса Delphi есть замечательная стать Hex'a (читайте кому не лень)

Размышления на тему Delphi...
Автор: Hex
Много раз возникал вопрос "Почему exe, сделаные в делфи, такие большие?" Щас отвечу и все будет ясно.


Сделаем такой примерчик:
Поцепим на форму один Memo и одну кнопку. Напишем такой код:

procedure TForm1.Button1Click(Sender: TObject);
begin
Asm
int 3
end;
memo1.Lines.savetoFile('hz.txt');
end;

Я поставил int 3 чтоб было легко найти то место, где будет вызваться memo1.Lines.savetoFile.
Запускаем нашу супер прогу. Делаем bpint 3. Жмем на нашу единственную кнопку. Попадем в айс. Сменим eip на адрес следующей команды. На жеж не надо чтоб int 3 выполнилось. И пройдем до адреса 44FC41. Увидим такое:

EAX=00BC3544 EBX=00BC3604 ECX=004284A8 EDX=0044FC50 ESI=00BC1A18
EDI=0068F4AC EBP=0068F470 ESP=0068F330 EIP=0044FC41 o d I s z a P c
CS=015F DS=0167 SS=0167 ES=0167 FS=0F3F GS=0000 DS:00BC3544=00427080
-----PROJECT1!CODE+0004EC50-----------------------byte--------------PROT---(0)--

0167:0044FC50 68 7A 2E 74 78 74 00 00-55 8B EC 33 C0 55 68 7D hz.txt..U..3.Uh}^
-------------------------------------------------------------------------PROT32-
015F:0044FC2F INT 3
015F:0044FC30 MOV EAX,[ESI+000002F0]
015F:0044FC36 MOV EAX,[EAX+00000220]
015F:0044FC3C MOV EDX,0044FC50
015F:0044FC41 MOV ECX,[EAX]
015F:0044FC43 CALL [ECX+74]

В edx лежит адрес строки 'hz.txt'. Больше тут смотреть неначто.

Теперь сделаем из нашего кода вот такую вещь:

procedure TForm1.Button1Click(Sender: TObject);
begin
Asm
int 3
end;
memo1.Lines.LoadfromFile('hz.txt');
end;

При вызове этого мы в айсе увидим следующее:

EAX=00BC3544 EBX=00BC3604 ECX=00427080 EDX=0044FC4C ESI=004283A4
EDI=0068F4AC EBP=0068F470 ESP=0068F334 EIP=0044FC40 o d I s z a P c
CS=015F DS=0167 SS=0167 ES=0167 FS=3D37 GS=0000 DS:004270E8=00414ECC
-----PROJECT1!CODE+0004EC4C-----------------------byte--------------PROT---(0)--
0167:0044FC4C 68 7A 2E 74 78 74 00 00-55 8B EC 33 C0 55 68 79 hz.txt..U..3.Uhy^
-------------------------------------------------------------------------PROT32-
015F:0044FC2C INT 3
015F:0044FC2D MOV EAX,[EAX+000002F0]
015F:0044FC33 MOV EAX,[EAX+00000220]
015F:0044FC39 MOV EDX,0044FC4C
015F:0044FC3E MOV ECX,[EAX]
015F:0044FC40 CALL [ECX+68]

Один интересный момент! В принципе тут все одинаково с предидущим кодом. Только изменился адрес строки и значение ECX, а также теперь идет CALL [ECX+68], вместо CALL [ECX+74]... А теперь делаем такую подлость: удаляем для чистоты эксперимента файл "hz.txt". Запускаем прогу, где у нас идет
memo1.Lines.LoadfromFile('hz.txt');
И когда дойдем до
015F:0044FC40 CALL [ECX+68]
изменим его на
015F:0044FC40 CALL [ECX+74]
И выполним.
Ну как? нравится? был создан hz.txt! Т.е. выполнилась
memo1.Lines.savetoFile('hz.txt');

Вот так-то! При компиляции exe файлов делфи пихает все процедуры и свойства юзаемых компонентов даже если они не юзаются. Благодаря этому файлы временами имеют гигантские размеры.
Какие можно сделать выводы? Програмировать надо на СИ, потому что там оно лишнего не вставляет. Или писать все на апи. Правда тогда от делфи останется тока синтаксис. Но главное я считаю не в этом :) Главное - это то, что демки написанные на делфи, это выходит далекоооо не демки :) Надо тока постараться, там уже все есть, только дописать отсталось :)

по поводу Си - он конечно хорош, но лично я предпочиаю MASM. Си тоже макро-ассемблер, только уж очень макро.

[ADD]
кста борландский си, тоже самое что и Delphi и вес один и дизасм почти тот же (только сигнатуры Иды дают понять что это разные вещи =))) ).

TaNkist
01.03.2007, 15:13
ИМХО, попахивает холиваром.
По поводу статьи: Насколько я знаю MFC такая же штука, как VCL в Delphi. Проги с использование MFC меньше весят, т.к. microsoft включила runtime-библиотеки в состав Windows.
1. с++ кросплатформенный, а дэлфи нет.
Забываешь про Kulix.
2. с++ main stream(а значит и работу найти проще, в том числе и на новые проекты, а не на поддержку старых) и в ближайшее время с++ не умрёт окончательно, а вотдэльфи уже наладом дышит.
Откуда такие сведения?

taha
01.03.2007, 15:18
вообще если писать на чистом API, то проблем с весом и всяких проблем с библами не будет.

ИМХО какая разница if(){} или IF ... THEN
всё одно

cmp reg1,reg2
je @F

Prod
01.03.2007, 17:17
Почему крупные и серьезные проекты пишуться на С/С++???

Friackazoid
01.03.2007, 22:11
Учи с++ не прогадаешь

Хотя можешь убить двух зайцев: учить с++ на Borland Builder. Саму среду от Delphi не отличить.

Fata1ex
01.03.2007, 22:27
Лучше С++ конечно. Делфи и правда уже вымирает...

B1t.exe
02.03.2007, 00:03
А я свое скажу:

Вообше то по международному стандарту признан самый популярный язык - С++ !
самый крутой и мошный - это Delphi .
(Это НЕ мое мнение, а всемирный стандарт)

а мое мнение и выбор: ассемблер ! он самый мошный !!!
просто он НЕ популярен, потаму что как-то никто так особо не хчоет на него кодить, из за неудобства и "трудности".

ZaCo
02.03.2007, 00:30
>>по поводу веса Delphi есть замечательная стать Hex'a (читайте кому не лень)
хватит постить ахинею, сначала читайте то, что выкладывайте. такая проблема как эффективность компилятора сейчас мало кого волнует, современные среды разработки имеют множество опций компиляции\линковки, что позволяет даже в делфи создавать эффективный код, но как было замечено в чудесной статье Hex'а через задницу. так что это не основная проблема. проблема языка делфи (для тех кто хочет придраться - читаем как обджект паскаль) в том что у него даже стандарта, насколько мне известно, нет. И, пожалуй самое главное. к словам sni4ok могу добавить то, что с++ (не знаю можно ли это отнести к самому языку, но по крайней мере любая нормальная среда) обладает набором самых необходимых хидеров для работы со списками\сортировкой и так далее. это позволяет в короткие сроки сделать за короткое время быстро-работающую программу без построения велосипеда с нуля. а сорец будет легко корректироваться другими программистами без каких-либо затрат. в делфи же все проблемы, как это видно, решаются методом компонент:). то есть чтобы работать с сокетами бравые хэкеры используют tserversocket (или как там товарищи?) из-за этого им уже приходится использовать форму и прочую лабуду. О возможностях ООП в делфи по сравнению с с++ вообще говорить не приходится.
---

Вообше то по международному стандарту признан самый популярный язык - С++ !
самый крутой и мошный - это Delphi .
(Это НЕ мое мнение, а всемирный стандарт)


это по какому стандарту так признали, по ansi мб? :D
да, с++ это попса. надо на асм ВСЕМ пересаживаться. че нам как дуракам "новые" технологии типа хорошей организации ООП и прочих прелестей современного программирования. мы хэкеры времен второй мировой. nc. Stream помнишь как мы в 41 под танком с тобой лежали? асм там обсуждали?
---
>>он самый мошный !!!
ну раз ты такой умный, то давай и инструкции в уме считай все, и исполняемый файл в хекс-редакторе пиши.это вообще очень мощно.

_Great_
02.03.2007, 00:58
самый крутой и мошный - это Delphi .
мне почему-то кажется, что самый мощный ассемблер ввиду своей низкоуровневости.
это по какому стандарту так признали, по ansi мб?
=))))))) Завтра пропишем в ANSI :D

_Great_
02.03.2007, 01:00
Кстати, может вы еще коров и апельсины сравнивать будете? Дельфи и С++ вещи разные, под разные цели предназначенные. Сранивать смысла 0.
Сколько это можно повторять?

sni4ok
02.03.2007, 01:03
Насколько я знаю MFC такая же штука, как VCL в Delphi.


MFC это одна платформазависимая и не самая удачная библиотека среди огромного колличества достойных кросплатформенных вариантов(таких как Qt, WxWidgets и др.), для дельфи же ничего такого просто нет.

_Great_
02.03.2007, 01:08
дельфи скорее для написания программок типа блокнота, чтобы особо не заморачиваться. сишник изначально был языком более низкого уровня и до сих пор считается низкоуровневым языком и цели у него другие - драйвера, системные утилиты и прочее прочее проче..
хотя можно конечно и драйвер на дельфи написать, и загрузчик даже. только смысла извращаться так нету)
если си занимает промежуточное положение, то асм стопудов язык низкого уровня и писать гуи на нем такое же извращение, как и писать драйвера на дельфи.

Вот, собственно, и все, что я хотел сказать по этому поводу, спорить о том, что лучше, а что хуже - бессмысленно и породит только многостраничный никому не нужный флуд.

Спасибо за внимание.

fYt
02.03.2007, 02:44
Я конечно не специалист, но вот какое понятие имею о делфе:)

Delphi

Программирование на делфе сводится к тому, чтобы найти нужный компонент и кинуть его на свою форму, строишь по кирпичикам, программирование сведено к минимуму и упрощено, для быстрой разработки небольших программ.
Компонент+Компонент=Програ мма.

С/С++

Написали уже выше. Поняв синтаксис с/с++, легче и быстрее можно освоить перл, рнр.


ЯП надо выбирать исходя из задачи. Так что учи все.:)

taha
02.03.2007, 11:33
такая проблема как эффективность компилятора сейчас мало кого волнует, современные среды разработки имеют множество опций компиляции\линковки, что позволяет даже в делфи создавать эффективный код


ну ну набросал компонентов, получил файл в 30 метров, сидишь и думаешь "30 mb, да я крутой пограммист ".
я уже сказал.

вообще если писать на чистом API, то проблем с весом и всяких проблем с библами не будет.

ИМХО какая разница if(){} или IF ... THEN
всё одно

cmp reg1,reg2
je @F


По прелести стандартных функций ты прав, зачем изобретать велосипед.

Кстати, может вы еще коров и апельсины сравнивать будете?

а я сразу сказал
незя сравнивать Delphi и C, это разные вещи! Дельфи это среда, С это язык. У каждого свои особенности и недостатки.

Компонент+Компонент=Програ мма.
что сказать? пиши на апи, в сети много статей типа "программа на Delphi в 8 кило"

W!z@rD
02.03.2007, 11:45
ZaCo повеселил ))) зачот ))))

итак:
это совершенно разные языки!!! (кстати с 7 версии Delphi признан языком программирования)
честное слово бесят фразы типа: "Delphi отстой и т.д." хочется пустить человека в даун...
Это каким же идиотом надо быть!!! Значит все Дельфисты лохи что-ли??!!!
Кто сказал что Delphi вымирает?!?!!! Что за идиоты?!?!! с таким мнением?!!! Лолы!!! про Turbo версию кто-нибудь из вас слышал??!!!!

вобщем завязывайте сравнивать Delphi и С... Поймите идеала на свете НЕТ! где-то свои + где-то и -... и не надо кричать на право и налево что лучше...
з.ы. насчет размера... MS-Rem доходчиво объяснил как свести размер к минимуму, а это 512 байт!!! вот так...

sn0w
02.03.2007, 14:37
дельфя как и билдер из линейки борланда - это RAD (Rapid application development) среды, компоненты да и сама архитектура которых писались хз вообще кем, поэтому они не представляют собой надежности для конечного пользователя. я както юзал билдер но это был пиздец, рантайм на рантайме, акцес виолейшн итд.

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

ZaCo
02.03.2007, 15:30
>>ZaCo повеселил ))) зачот ))))
>>Значит все Дельфисты лохи что-ли??!!!
я не знаю как еще можно назвать человека который страдает пожизненной ***ней. никому не надо чтобы вы каждый раз описывали продвинутые методы сортировки, все сделано уже до вас.
>>вобщем завязывайте сравнивать Delphi и С...
а никто си и делфи не сравнивает.
---
для меня программирование это прежде всего умение записать алгоритм на определенном языке так, чтобы его понял компилятор и это нормально (ну хотя бы работало :))) работало. у делфи кроме форм нет ни одного плюса (а вы тут пишете что у каждого свои плюсы и минусы, в делфи один, а у с++ по сравнению с ним....) , языковые инструкции сильно отстают от с++. форма и программирование никак несвязанны. более того паскаль это ужасная вещь в том плане, что многие конструкции были специально исключены (вирт же не тупой), язык совершенно отдаляет "программиста" от принципов работы на более низком уровне, тк создавался он для школьников. делфи создавался для секретарш или людей чьи задачи в области программирования слишком зависит от формочек, а разбираться с чем-то другим нет времени\не хотят. это их дело и никто не говорит что они дураки, лучше тогда уж в билдере сидеть, но вот глючит зараза.

W!z@rD
03.03.2007, 09:38
>>делфи создавался для секретарш
я секретарша??? ((((
>> людей чьи задачи в области программирования слишком зависит от формочек
я бы так не говорил... Console Application никто не отменял, API.
>>вы каждый раз описывали продвинутые методы сортировки, все сделано уже до вас.
поясни...
sn0w Знаешь частично ты прав... Находили глюки (к примеру работу с датой...)
>>си необычайно крепко связан с асмом
да и Delphi можно подружить с асмом...

и вообще закрывайте тему... она разжигает ТОЛЬКО споры!!!
(ИМХО если хотите меня заставить спорить скажите что: "Delphi говно и т.д." ;) но убедительная просьба не опускать Delphi Уважайте чужие интересы)...