Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.03;
Скачать: CL | DM;

Вниз

Разочаровался я в Delphi :(((   Найти похожие ветки 

 
kronprince ©   (2003-01-13 16:37) [0]

На выходных опять копался в исходниках Delphi и такая тоска нахлынула на меня - невозможно представить. И представилось мне что со времен выхода Delphi 1.0 - корпорация Borland не выпустила ничего приемлемого.
Дааа - Delphi 1.0 было действительно револлюционным RAD продуктом - что-то несравненно большее копаний в WinAPI и OWL.
Сохраняя тем не меннее все прелести Turbo Pascal-я.
К сожалению D2 добавил только поддержку Win32 и QR - так отсилы тянуло на Delphi 1.5
Все последюющие версии практически ничего нового не приносили :(
D3-D4 - D5 , были практически близнецы-братья.
Чуточку радовала в D6-D7 поддержка Indy - да и те на поверку оказались довольно глючными :((( - дааа и еще попытки отказаться от указателей у наследников TObject - но это еще больше запутало :(
Так на чем я остановился - аааа - на том - что на сегодняшнем этапе развития Delphi все попытки догнать современные технологии казались практически безуспешными - чего стоит только заявка на поддержку .NET - пустой звук.
И весь комплекс RAD продуктов по названием Delphi тянет в лучшем случае на Delphi 2.5 - не больше :(((


 
Игорь Шевченко ©   (2003-01-13 16:38) [1]

А караван идет :-)))


 
gsu ©   (2003-01-13 16:43) [2]

Да, да брось D и переходи на доты, тем паче, что и самой D уже не будет, не помню что будет, на представлении D7 умные дяденьки, что то объясняли ...


 
malkolinge ©   (2003-01-13 16:47) [3]

А вы видели КАК они сделали TLIST ?


 
gsu ©   (2003-01-13 16:52) [4]

кто они ?
небось все скрыли в publicished (-:|~


 
Юрий Федоров ©   (2003-01-13 17:05) [5]

>>malkolinge © (13.01.03 16:47)
А что именно не понравилось в реализации TList???


 
Zemal ©   (2003-01-13 17:07) [6]

Удалено модератором
Примечание: Не матюгаться


 
Zemal ©   (2003-01-13 17:14) [7]

Эта цепочка очень прикольна COM --> COM+ --> .NET
Только разберёшься в этом, а мелкософт говорит Брэйк и плюёт тебе на глупую голову... типа: "Учи новое, салага!". Борланд пытается быть буфером и защитить простых программеров, но получается жалкое зрелище... не-то, не-сё...


 
Игорь Шевченко ©   (2003-01-13 17:15) [8]

"Видел я код этого Ворда - разве так пишут!" (цитата)


 
Zemal ©   (2003-01-13 17:24) [9]

Игорь Шевченко >> Ну я тоже видел некоторые фрагменты кода... могу сказать только так: Если бы поставить фильтр на "глупый код", то это была бы гениально написанная программа :). На самом деле там много есть хорошего, но это хорошее потонуло в море изворотов :(. Создаётся впечатление, что в мелкософте есть хорошие программеры, но правят, доробатывают и дописывают код простые менеджеры, типа Билла Гейтса! :) гыыыыыы :)


 
malkolinge ©   (2003-01-13 18:38) [10]


> А что именно не понравилось в реализации TList???

TList = class(TObject)
private
FList: PPointerList; // сие есть указатель на элементы..Поверь на слово
FCount: Integer;
FCapacity: Integer;
protected

Дальше
PPointerList = ^TPointerList;
А еще дальше
PointerList = array[0..MaxListSize - 1] of Pointer;

Ну и какие будут комментарии ?


 
Tux   (2003-01-13 19:09) [11]

Чего не нравится? Pointer" ы? Есть указатели, есть отличная RTTI.
Динамические массивы? Думается, что за 10-15 лет их реализация вылизана до блеска. Это ж не ++, не нравится - есть COM, есть dll, пиши чего надо на ++ и спаривай с чем хочешь, хошь с VB, хошь с Delphi.


 
malkolinge ©   (2003-01-13 19:19) [12]


> Динамические массивы?

PointerList = array[0..MaxListSize - 1] of Pointer;
Это динамический массив ?



 
gsu ©   (2003-01-13 19:29) [13]

ну и что, зато удобно и наверняка TList появился раньше дм


 
vuk ©   (2003-01-13 20:12) [14]

>наверняка TList появился раньше дм
Именно так.


 
Tux   (2003-01-13 20:39) [15]

В сам деле стормозил :) Ну и чаво? :) Это ж довольно тривиальная алгоритмическая задача, на TList свет клином не сошелся, на torry да и вообще в сети дочерта реализаций всяческих контейнеров.


 
Tux   (2003-01-13 20:46) [16]

Напугал. Дурак не я :)

ReallocMem(FList, NewCapacity * SizeOf(Pointer));

Объявление указателя на массив еще не значит, что выделяется память для массива размером MaxInt / 16. Память для элементов TList выделяется динамически. Такой финт применен потому, что так проще индекcировать оператором [].


 
kronprince ©   (2003-01-14 10:25) [17]

Для начала попрошу прощения у мод#$%тора за родившуюся вторую ветку - надеюсь ее уже удалили :)

2Игорь Шевченко © (13.01.03 16:38)
Да я прекрасно понимаю что это мое высказывание ничего не изменит - это сродни крикам о глючности Windows :)))

2Zemal © (13.01.03 17:07)
Ну зачем же ругаться - те же ругательства можно выразить более изощренно обычными словами :)

2malkolinge © (13.01.03 16:47)
TList тут не причем - сама концепция ошибочна.






 
vopros ©   (2003-01-14 10:26) [18]

Delphi разочаровалось в о мне.


 
kronprince ©   (2003-01-14 11:14) [19]

Я о том что Pascal изначально позиционировался как язык для ОБУЧЕНИЯ программированию (прошу не путать с BASIC) - и со своей задачей прекрасно справлялся - особую прелесть составляет компилятор - просто не дающий возможности ошибиться.

Для прграммирования больших систем существуют более подходящие языки - тот же С++ или как справедливо заметил Анатолий Подгорецкий - FORTRAN.

Дааа - добавление ООП расширило возможности языка - но в тоже время простая конструкция на том же С++ new new_var превратилась в какого-то МОНСТРА с контрукторами, деструкторами и т.п. - что именно начинающих очень запутывает
Пример этого - попробуйте sizeof(class) и sizeof(object). В различный версиях Delphi получите совершенно разные результаты :(((


 
iZEN ©   (2003-01-14 11:42) [20]

аналогично.
На Delphi можно вести только небольшие некритичные проекты.

P.S. Мой сайт: http://izen.by.ru


 
DiamondShark ©   (2003-01-14 11:51) [21]


> iZEN © (14.01.03 11:42)
> аналогично.
> На Delphi можно вести только небольшие некритичные проекты.


Давайте без рефлексий: говорим все подразумеваем я.
Зачем лукавить, говорите смело: На Delphi у меня получалось вести только небольшие некритичные проекты.


> kronprince © (14.01.03 11:14)
> Для прграммирования больших систем существуют более подходящие
> языки - тот же С++


Мифы и сказки народов мира ;)


 
Ihor Osov'yak ©   (2003-01-14 11:51) [22]

2 malkolinge © (13.01.03 19:19)

А теперь внятно и по пунктам чего там не нравится.



 
Johnny Smith ©   (2003-01-14 12:08) [23]

2kronprince © (13.01.03 16:37)
Брось эту Дельфу нафиг! Не пиши на ней. Она - для лохов и бездарей.
Ты гораздо более крут и умен. Достойны тебя только Ся да Фортран. Кстати, напиши так, для разминки, класс - аналог TStringGrid"а на С++ (можно юзать MFC).


 
gsu ©   (2003-01-14 12:14) [24]

>> kronprince ©
не будем ля-ля на компилятор

>> iZEN ©
пишите на русском, там можно все


 
iZEN ©   (2003-01-14 12:16) [25]

DiamondShark © (14.01.03 11:51)
> iZEN © (14.01.03 11:42)
> аналогично.
> На Delphi можно вести только небольшие некритичные проекты.
Давайте без рефлексий: говорим все подразумеваем я.
Зачем лукавить, говорите смело: На Delphi у меня получалось вести только небольшие некритичные проекты.


Да, точно. Именно это я хотел сказать. Большие проекты (порядка 20..40 классов) на Delphi, в отличие от Java, у меня вести не получается. Не тот уровень...:)


 
Calm ©   (2003-01-14 12:17) [26]


> Чуточку радовала в D6-D7

А меня порадовала D6. И не чуточку.
Самый яркий пример - возможность реализовать операции +-*/ и т.д. переменными своих типов данных.
Т.е. можно писать код типа
var
A, B, C:TMyDataType;
begin
C:=A+B;
end;
Разве не круто? Разве сл або?


 
gsu ©   (2003-01-14 12:21) [27]

весело, это как массивы в D4 или 5, даешь всеобщую информатизацию


 
han_malign ©   (2003-01-14 12:49) [28]

"С 1993 г. ученики Н.Вирта осуществляют успешный перенос технологий Оберона на наиболее популярные платформы Microsoft Windows, Apple Mac OS ...
При этом язык получил название Компонентный Паскаль — Component Pascal, чтобы подчеркнуть как прямую преемственность с всемирно известным Паскалем, так и ориентированность на поддержку современного компонентно-ориентированного программирования; система программирования получила названия Блэкбокс — BlackBox Component Builder.
Эти усилия делают конструктивную мощь Оберона доступной весьма широкому кругу программистов, в т.ч. программистов-"непрофессионалов" (т.е. специалистов других профессий).

Последнее обстоятельство особенно заслуживает внимания: если для программистов-"профессионалов" агония борьбы с программными ошибками, спровоцированными плохим дизайном языка программирования и архаичными средствами разработки, еще сходит за неизбежную часть их трудной работы, то, скажем, для лингвиста бессмысленная борьба с плохими рабочими инструментами абсолютно неприемлема.
Ядро технологий, выделенное в Обероне, не подлежит устареванию в обозримом будущем.

Нет сомнения, что ядро технологий, выделенное в Обероне из множества техник и приемов программирования, и закрепленное индустрией в языках Java и C#, не подлежит устареванию в обозримом будущем: понятия массива, цикла, подпрограммы, модуля, типа (класса), наследования ... составляют основу программистского мышления.
Все эти ключевые понятия представлены в Обероне/Компонентном Паскале с предельной ясностью."


 
han_malign ©   (2003-01-14 12:56) [29]

http://www.inr.ac.ru/~info21/greetings/wirth_doklad_rus.htm


 
iZEN ©   (2003-01-14 13:00) [30]

han_malign © (14.01.03 12:49)
<...>
Нет сомнения, что ядро технологий, выделенное в Обероне из множества техник и приемов программирования, и закрепленное индустрией в языках Java и C#, не подлежит устареванию в обозримом будущем: понятия массива, цикла, подпрограммы, модуля, типа (класса), наследования ... составляют основу программистского мышления.
Все эти ключевые понятия представлены в Обероне/Компонентном Паскале с предельной ясностью."


В Обероне нет классов...(я прав?)


 
vuk ©   (2003-01-14 13:04) [31]

>В Обероне нет классов...
Угу, правда там record имеет совсем другой смысл.


 
gek ©   (2003-01-14 13:05) [32]

Что-то мне не понравилось. Такое впечатление, что автор затеял данное выступление только лишь для того, чтобы опорочить С
и воздать хвалу Паскалю.
С безусловно не самый легкий язык и его есть за что критиковать,
но как-то вся эта критика(в данной статье) выглядит не очень убедительно.


 
han_malign ©   (2003-01-14 13:21) [33]

gek © (14.01.03 13:05)
> и воздать хвалу Паскалю.
- естественно - ведь это Никлаус Вирт...
З.Ы. Кстати, в ANSI С++ - уже введена точная типизация, хотя и позволяется на нее забить, а насчет "=" или "==", то Виртовский ":=" тоже не верх совершенства (многие постоянно называю этот оператор - "присвоить-равно")...


 
DiamondShark ©   (2003-01-14 14:24) [34]


> В Обероне нет классов...(я прав?)


Почти. В Обероне нет зарезервированного слова class.
Есть расширяемые типы и полиморфизм.

А в Active Oberon есть и классы.


 
kronprince ©   (2003-01-14 15:48) [35]

2iZEN © (14.01.03 11:42)
Спасибо :)

2DiamondShark © (14.01.03 11:51)
>Мифы и сказки народов мира ;)
:-\

2Johnny Smith © (14.01.03 12:08)
Извините - я ни слова не упоминал о том кто чего достоин :)
>Ты гораздо более крут и умен.
Спасибо - я рад что вы меня достойно оценили.
>аналог TStringGrid"а на С++
Зачем изобретать велосипед ???

2gsu © (14.01.03 12:14)
А никто на компилер и не ля-ля :)))

2Calm © (14.01.03 12:17)
Вот классический пример ЭТОГО: сидим и радуемся тому что наконецто в 6-ой версии добавили то что в С++ было изначально :-\

2han_malign © (14.01.03 12:49)
Угу - только Component Pascal и Object Pascal - теперь уже два разных языка :) - с Паскалем общее только название
wirth_doklad_rus.htm - воистину так

2gek © (14.01.03 13:05
Никто никого не порочит - и там и там свои достоинства и недостатки - ведь никто не говорит что лучше а что хуже - просто Object Pascal - это уже не Паскаль-язык для начинающих - а МОНСТР - имеющий синтаксис, схожий с Паскалевским и вместивший в себя еще не до конца все концепции С++ или Java


 
Anatoly Podgoretsky ©   (2003-01-14 17:38) [36]

Ну и что из того, например Микрософт отказался от этих многих концепциий в C#


 
jee ©   (2003-01-14 17:43) [37]


> Ну и что из того, например Микрософт отказался от этих многих
> концепциий в C#

Каких интересно?


 
vuk ©   (2003-01-14 17:50) [38]

to kronprince:

>Object Pascal - это уже не Паскаль-язык для начинающих
С добрым утром! В отношении продукта Borland оно уже лет 10 так дело обстоит.

>- а МОНСТР - имеющий синтаксис, схожий с Паскалевским и
>вместивший в себя еще не до конца все концепции С++ или Java
Точка зрения известная, называется "С++ - праматерь всех языков". :o) Еще к ней частенько примыкает точка зрения, что ООП придумал Страуструп. А что касается самого С++, так это IMHO монстр еще похлеще будет. Однако ж...


 
vuk ©   (2003-01-14 17:53) [39]

to jee:
>Каких интересно?
Множественное наследование, например. Это, кстати, общая черта многих новых языков программирования - отсутствие множественного наследования и работа с интерфейсами.


 
jee ©   (2003-01-14 17:55) [40]

С этим сложно поспорить. Множественное наследование несовершенно в теории. Ну а еще что?



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

Текущий архив: 2003.02.03;
Скачать: CL | DM;

Наверх




Память: 0.58 MB
Время: 0.012 c
4-5349
allx:.
2002-12-14 17:48
2003.02.03
Реестр с помощью функций WinAPI


7-5280
skeld
2002-11-21 10:34
2003.02.03
Как заблокировать мышь...


3-4820
MAD-Sudarchikov
2003-01-17 17:27
2003.02.03
Компонент ListView и DBGrid


7-5292
Vredina
2002-11-22 19:13
2003.02.03
Трэй


1-4959
BelovV
2003-01-26 15:00
2003.02.03
Вопрос по TMainMenu