Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 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
3-4762
Lola
2003-01-16 13:14
2003.02.03
скроллинг в DBGrid


1-4931
NewGuest
2003-01-26 10:57
2003.02.03
Мастера и любители прошу обратить внимание на данный код...


7-5298
Сутковой Вадим
2002-11-17 17:25
2003.02.03
Кнопки выньДовс98


6-5115
Nord-Ost
2002-12-10 09:18
2003.02.03
Уважаемые мастера, подскажите, пожалуйста...


14-5262
Yury
2003-01-16 12:19
2003.02.03
Снова IP!!!





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский