Форум: "Потрепаться";
Текущий архив: 2003.02.03;
Скачать: [xml.tar.bz2];
ВнизРазочаровался я в 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]С этим сложно поспорить. Множественное наследование несовершенно в теории. Ну а еще что?
← →
Anatoly Podgoretsky (2003-01-14 17:55) [41]jee © (14.01.03 17:43)
Например Множественное наследование, на что сторониики Си опираются как на один из главных плюсов
← →
vuk (2003-01-14 17:57) [42]На данный момент обобщенное программирование отсутствует.
← →
han_malign (2003-01-14 18:05) [43]> Множественное наследование, на что сторониики Си опираются как на один из главных плюсов
- IMHO - агрегация намного логичнее...
← →
DiamondShark (2003-01-14 18:23) [44]
> Каких интересно?
Указателей, шаблонов, множественного наследования, перегрузки операторов, препроцессора.
← →
DiamondShark (2003-01-14 18:26) [45]
> >Множественное наследование, на что сторониики Си опираются
> как на один из главных плюсов
> - IMHO - агрегация намного логичнее...
Интерфейсы еще логичнее.
← →
vuk (2003-01-14 18:27) [46]to DiamondShark:
Перегрузка операторов в С# есть.
← →
DiamondShark (2003-01-14 19:27) [47]Значит не убрали
Страницы: 1 2 вся ветка
Форум: "Потрепаться";
Текущий архив: 2003.02.03;
Скачать: [xml.tar.bz2];
Память: 0.57 MB
Время: 0.01 c