Страницы: 1 2 вся ветка
Форум: "Потрепаться";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.09.05;
Скачать: [xml.tar.bz2];




Вниз

А что вообще есть .NET? 


jonik pegas   (2002-08-08 12:14) [0]

В связи с анонсированием Borland поддержки Net хотелось бы выяснить а что это вообще такое? Интерпретатор-прослойка между операционной системой и приложением или нечто большее? При распостранении приложений придется ее тягать на все компьютеры?
Как насчет скорости/обьема программ, WinApi и т.д? В чем вообще стратегический замысел сего начинания



Anatoly Podgoretsky   (2002-08-08 12:18) [1]

Примерно, то же самое что и bpl в очень грубом приближении, а таскать прдется, если хочешь что бы работало, но это немного 20-30 мб



Ihor Osov'yak   (2002-08-08 13:07) [2]

Ну, MS очередной раз заявила, что не совсем верным путем идете товарисчи ... (и она тоже). И решила разрушить все созданное ими же до основанья, а затем ... И создала дотнет ....

... Если серьезно - как бы платформа для исполнения и разработки приложений. C претензией на переносимость (в понимании майкрософт) Заимствовано довольно много хороших идей с других систем разработки и представление их как своих, революционно новых. Есть некоторые паралели с Делфи.... Есть положительные моменты, а учитывая что сие дело продвигает MS, вещь наверное приживется. Так что хочем мы этого или нет - придется разбиратся.

ЗЫ. Я, вот, немного с оутсорсинг играюсь.. Так вот, очередной заказчик - давай мне делай проект на дотнет и никаких гвоздей. Хотя что такое дотнет, он понятия не имеет.... И как следствие - сижу и с с# разбираюсь ...

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

Да, скоро подымется собачий восторг - написал на дотнете програмулину, а она, представляете, всего 10 к. А на делфи - аналог - целых триста... И вопрос попутно - а у меня, то есть програмера, она работает, а у заказчика почемуто не запускается ....





Anatoly Podgoretsky   (2002-08-08 13:13) [3]

Ihor Osov"yak © (08.08.02 13:07)
Знаю, плавали :-)



Suntechnic   (2002-08-08 15:32) [4]

>Ihor Osov"yak © (08.08.02 13:07)
>C претензией на переносимость (в понимании майкрософт)

Да не надо всех собак на мелкомягких вешать. О переносимости на другие платформы они молчат как партизаны. О переносимости говорят люди уже знакомые с .NET но не имеющие к Microsoft никакого отношения.

Посмотрим что оно получится с .NET, но любой здравый программист когда-либо написавший Hello World для Windows понимает, что союз полностью структурной ОS и любого средства разработки опирающегося на ООП ничего хорошего не даёт. .NET это попытка вырваться из этого порочного круга и лично я эту попытку только приветствую.



DiamondShark   (2002-08-08 16:34) [5]


> союз полностью структурной ОS и любого средства разработки
> опирающегося на ООП ничего хорошего не даёт.


Сам то понял, что сказал?

И как в свете сказанного приветствовать союз объектно-ориентированного .НЕТ и "полностью структурной OS" ?



Suntechnic   (2002-08-08 16:39) [6]

>DiamondShark © (08.08.02 16:34)
>Сам то понял, что сказал?

Перечитай на досуге пару раз... может дойдёт...

>И как в свете сказанного приветствовать союз объектно-ориентированного .НЕТ и "полностью структурной OS" ?

Почитай книжечки про .NET, а особенно про то что это такое.



Ihor Osov'yak   (2002-08-08 16:40) [7]

ТехникуСолнца


> Да не надо всех собак на мелкомягких вешать. О переносимости
> на другие платформы они молчат как партизаны. О переносимости
> говорят люди уже знакомые с .NET но не имеющие к Microsoft
> никакого отношения.

А откуда вывод, что ВСЕХ?



> Посмотрим что оно получится с .NET, но любой здравый программист
> когда-либо написавший Hello World для Windows понимает,
> что союз полностью структурной ОS и любого средства разработки
> опирающегося на ООП ничего хорошего не даёт. .NET это попытка
> вырваться из этого порочного круга и лично я эту попытку
> только приветствую.


Да я немножко больше, чем Hello World, успел написать ( и нескромно уточню, не на одном ленгвидж, в тч и на обьектных (даже pure), как то таких выводов не делал. Не в смысле попытки, а в смысле союза ...
Зы, а виндовз при определенном взгляде можно было бы расценить, как вещь, сделанную по обьектной идеологии, но посредством модульного, то бишь, структурной технологии ... Хендлы одни, блин, куда не посмотришь ...




ZZ   (2002-08-08 16:44) [8]

DiamondShark
И как в свете сказанного приветствовать союз объектно-ориентированного ..
А тебя это, имхо, не должно волновать :)) Тебя должен волновать союз объектно-ориентированного .НЕТ и объектно-ориентированных языков.



Пролетарий   (2002-08-08 16:46) [9]

Скажем НЕТ буржуазному .NET!!!



Ihor Osov'yak   (2002-08-08 16:49) [10]

to Пролетарий

Да почему жe. Для определенных случаев даже вполне выиграшная технология...



Пролетарий   (2002-08-08 16:51) [11]

> Ihor Osov"yak ©
По соображениям идеологического характера, товарищ!



Malder   (2002-08-08 17:23) [12]

Что то я не понял. Это типа ран тайм пакетов в Дельфи получится ? Поставил галочку "с использовнием .NET" - 10 кило и требуется куча файлов. Убрал - 300 кило и ничего не требуется. так что ли ? Так это туфта. Все равно всего не предусмотришь. И что теперь... чтобы запускать современные программы мне придется каждый раз из инета катать по 10-20 Mb обновлений этого .NET ? А у кого нет сети ? Нда. Здорово.



vuk   (2002-08-08 17:31) [13]

Насколько я понимаю, в MS взяли курс на широкое использование .NET и управляемого кода в своих продуктах, так что, видимо, в ближайшем будущем .net runtime будет включен в состав поставки Win.



Suntechnic   (2002-08-08 17:31) [14]

>Ihor Osov"yak © (08.08.02 16:40)
>как то таких выводов не делал. Не в смысле попытки, а в смысле союза ...
Значит у нас с вами разные выводы и не более того. Если вы считаете, что хэндлы, структуры и море ф-ций их обслуживающих прекрасно сочитаются с полиморфизмом, наследованием и инкапсуляцией, то как говорится, Бог вам судья. Уж простите, но так не считаю и задумывался над этим гораздо раньше не то что выхода .NET, а даже упоминания о нём.


>Зы, а виндовз при определенном взгляде можно было бы расценить, как вещь, сделанную по обьектной идеологии, но посредством модульного, то бишь, структурной технологии ... Хендлы одни, блин, куда не посмотришь ...

Уж слишком у вас "определённый" взгляд получается. Я лично не совсем понял как это "объектная идеология" посредством модульной. Это типа хэндлы они и есть объекты? Тогда можно сказать, что язык С построен тоже по "объектной идеологии" и венцом тому является void *.



evgeg   (2002-08-08 17:49) [15]

> что союз полностью структурной ОS

Я бы не назвал Windows полностью структурной. Зачем так структурное программирование обижать?

> Уж слишком у вас "определённый" взгляд получается. Я лично не совсем понял как это "объектная идеология" посредством модульной. Это типа хэндлы они и есть объекты? Тогда можно сказать, что язык С построен тоже по "объектной идеологии" и венцом тому является void *.

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

> так что, видимо, в ближайшем будущем .net runtime будет включен в состав поставки Win.

А разве он в XP не включен?



DiamondShark   (2002-08-08 18:06) [16]


> Что то я не понял. Это типа ран тайм пакетов в Дельфи получится
> ? Поставил галочку "с использовнием .NET" - 10 кило и требуется
> куча файлов. Убрал - 300 кило и ничего не требуется. так
> что ли ?


Не-а. Убрать галочку как раз и не получится ;)



Suntechnic   (2002-08-08 18:06) [17]

>Я бы не назвал Windows полностью структурной. Зачем так структурное программирование обижать?

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

>Дело в том, что можно писать с использованием объектной метологии на языке, который не имеет средств для поддержки объектов, использую свои искуственные средства. Doom, например, так написан.

Можно. Но мне такой подход претит(сугубо моя точка зрения). Поэтому я и смотрю с заинтересованность на такие вещи как .NET

>А разве он в XP не включен?
Нет.





DiamondShark   (2002-08-08 18:20) [18]


> Наверное никто спорить не будет, что тремя китами ООП являются:
> полиморфизм, инкапсуляция, наследование. Укажите мне хоть
> на один признак вышеперечисленного в Windows и я, может
> быть, с вами соглашусь.


По-порядку:

Полиморфизм
Окна. Манипулировать окнами вы можете невзирая на их действительный тип (кнопка, системное или пользовательское окно и тд)
Система ввода/вывода/коммуникаций. Посмотрите ReadFile/WriteFile. Одинаковый интерфейс для дисковых файлов, портов, сокетов, каналов (pipe)
GDI. Аппаратно-независимая графика. Никого не трогает модель принтера или дисплея, а при некотором усилии даже разница между принтером и дисплеем.

Инкапсуляция
Внутренняя реализация недоступна. Объекты представляются дескрипторами, не имеющими иного смысла, кроме идентификации объекта. Манипуляции с объектом производятся исключительно "методами" - функциями API. Собственно инкапсуляция в Win API соблюдается даже строже чем в иных языках.

Наследование
В явном виде разве что для окон.

Так что система вполне объектная. Никаких "еще более объектных" надстроек не требуется, разве что в виде отдельных библиотек под конкретный язык и среду (типа VCL или MFC)



Suntechnic   (2002-08-08 19:16) [19]

>DiamondShark © (08.08.02 18:20)
Это вы так издеваетесь? Какой ещё нафиг полиморфизм в окнах? Вы себе представляете что такое позднее связывание и каким боком оно затрагивает окна?

>Внутренняя реализация недоступна.

Это по вашему и есть инкапсуляция? Вот ваши хэндлы это и есть самое первое нарушение икапсуляции, если о таковой вообще можно говорить применительно к Windows.

>Наследование
>В явном виде разве что для окон.
Без комментариев. Вы просто продолжаете издеваться.



Anatoly Podgoretsky   (2002-08-08 19:29) [20]

vuk © (08.08.02 17:31)
Микрософт уже предлагает в обновлениях для ИЕ скачать Net Framework



vuk   (2002-08-08 20:12) [21]

>Микрософт уже предлагает в обновлениях для ИЕ скачать Net
>Framework
Об чем я и говорю. Дальше будет больше... В конце этого года ожидается SQL Server с поддержкой .net



wicked   (2002-08-08 20:32) [22]

2 Suntechnic ©
позвольте несогласиться... DiamondShark © как раз доказал, что windows с некоторой натяжкой можно назвать обьектно-ориентированной средой... фантазию просто надо иметь.... :)
от себя добавлю еще один аргумент в пользу полиморфизма - обработка сообщений оконными процедурами... чем не полиморфизм?...



Suntechnic   (2002-08-08 20:51) [23]

>позвольте несогласиться... DiamondShark © как раз доказал, что windows с некоторой натяжкой можно назвать обьектно-ориентированной >средой... фантазию просто надо иметь.... :)

Ну соглашаться или не соглашаться это ваше право, но фантазию надо иметь весь бурную, чтобы назвать Windows объектно-ориентированной средой :)

>обработка сообщений оконными процедурами... чем не полиморфизм?

Ну вы же сами себе противоречите. Речь ведёте об объектах(объектно-ориентированный подход предполагает наличие объектов не так ли?), а сообщения обрабатываются процедурами, которые к объектам никакого отношения не имеют, точнее имеют. На них имеются указатели, но они сами знают об окнах лишь по параметрам которые им передали.



Ihor Osov'yak   (2002-08-08 21:02) [24]

то Suntechnic

еще медленно прочитайте написанное DiamondShark. И еще раз. И возможно еще не один. Паралельно читая в умной книжке, что значат эти буржуинские слова, типа инкапсуляции.

Попутно вопрос: Вы писали: Вот ваши хэндлы это и есть самое первое нарушение икапсуляции, если о таковой вообще можно говорить применительно к Windows - а не есть ли нарущением инкапсуляции собственно поинтер на екземляр обьекта, по которому мы обращаемся к екземпляру? ...

Да, еще о птичках. Позное связывание есть лишь один из способов достижения полиморфизма....

Снова повторюсь. Виндовз по идеологии в большей части своей построен по обьктной модели. Я не спорю с тем, что эта модель
реализована с использованием процедурного языка, то есть не обьектно ориентированного.

Кстати, Вы никогда не задавались целью выяснить , как строится стек вызова для какого там ЕкземлярКласса.МетодТакойТо(КакиеТоТамПараметры...
и типично-апишной функции работы с окнами, ну хотя бы
function ShowWindow(hWnd: HWND; nCmdShow: Integer): BOOL;








wicked   (2002-08-08 21:12) [25]

2 Suntechnic ©

> Ну вы же сами себе противоречите. Речь ведёте об объектах(объектно-ориентированный
> подход предполагает наличие объектов не так ли?), а сообщения
> обрабатываются процедурами, которые к объектам никакого
> отношения не имеют, точнее имеют. На них имеются указатели,
> но они сами знают об окнах лишь по параметрам которые им
> передали

ну почему же?... а не проще ли представить оконную процедуру как некий мета-диспетчер, рапределяющий обработку сообщений... кстати, так оно и есть - обработка обычно ведётся в конструкции switch...case (или case...of в случае паскаля), которая и может вызывать другие процедуры для обработки сообщений...
тем более, что опустившись на уровень сгенерированного ассемблерного кода, мы увидим, что метод класса имеет ненамного больше представления об экземпляре класса, чем оконная процедура - скрытый параметр-указатель на экземпляр и "внутреннее" знание о полях и vmt класса...



Malder   (2002-08-08 21:18) [26]

Почитал я вашу болтовню (уж извините), но так и не понял. В чем преимущества .NET ? Какая от него польза ? Если это типа ран тайм пакетов в дельфи, то зачем так все усложнять ? Включили бы в поставку windows VCL и все =) Только вот для новой версии Дельфи нужна будет другая VCL.. Этого вот я и не понимаю. Эта самая .NET будет такой универсальной разработкой ? Не приведет ли все это к тому, что для запуска новых программ пришлось качать обновления этого .NET ? Типа, так как photoshop уже девятой версии - то будьте любезны иметь .NET не ниже версии 2.1 ? То есть получается что-то типа DirectX ?
Разрулите ситуацию...



Ihor Osov'yak   (2002-08-08 21:20) [27]

то Malder - если интересует инфо то делу, то во всяком случае не в этой ветке ее искать .

А проблема совместимости версий там решена (как сказал Микрософт)



Suntechnic   (2002-08-08 21:21) [28]

>Ihor Osov"yak © (08.08.02 21:02)
Уважаемый, пишущий на всех доступных в природе языках, и прекрасно владеющий буржуйской терминологией. Не считаете ли вы что такое диво дано не только вам в осязание и в ощущение? И поэтому, право не стоит тыкать книжечками других.


Да, еще о птичках. Позное связывание есть лишь один из способов достижения полиморфизма....


Мы сейчас не обсуждаем реализацию полиморфизма и остальных атрибутов ООП, мы обсуждаем насколько данные механизмы доступны в Windows. А вы мне опять начинаете рассказывать, про то, что при желании некий аналог можно реализовать используя процедуры, структуры и глобальные переменные. А с этим никто и не спорит.

Снова повторюсь. Виндовз по идеологии в большей части своей построен по обьктной модели. Я не спорю с тем, что эта модель
реализована с использованием процедурного языка, то есть не обьектно ориентированного.

О какой объектной модели вы говорите? О той модели которая засела у вас в голове? Дык у меня такая же модель там сидит. Вот как предствлю себе окошко в Windows, так сразу об объекте и думаю. А начинаю писать код... увы... нет никакого объекта.

Кстати, Вы никогда не задавались целью выяснить , как строится стек вызова для какого там ЕкземлярКласса.МетодТакойТо(КакиеТоТамПараметры...
и типично-апишной функции работы с окнами, ну хотя бы
function ShowWindow(hWnd: HWND; nCmdShow: Integer): BOOL

Вы бы ещё ASM вспомнили. Я повторюсь ещё раз: речь не идёт об имплементации.



wicked   (2002-08-08 21:25) [29]

2 Suntechnic ©

> Вы бы ещё ASM вспомнили.

вспомнили.... а чё нам?... :)



Ihor Osov'yak   (2002-08-08 21:29) [30]

то Suntechnic

> Вы бы ещё ASM вспомнили. Я повторюсь ещё раз: речь не идёт
> об имплементации.


позвольте , батенька, весьма поучительное и полезное занятие ...
Про языке -ну не на всех, а пяток как минумум наберется... Я имею ввиду те, за юзание которых денежку мне платили ...

А по поводу чего мы обсуждаем - смотрим незвание конференции.






vuk   (2002-08-08 21:30) [31]

>В чем преимущества .NET ? Какая от него польза ?
Это смотреть надо, проверять...
.net - целый набор технологий. В первую очередь - виртуальная машина для выполнения управляемого кода и инфраструктура CLR.

>Если это типа ран тайм пакетов в дельфи, то зачем так все
>усложнять ?
Ну, про bpl Анатолий сказал, что называется, для тех кто понял. :o) Смысл в том, что без .net runtime программа, разработанная для этой платформы работать не будет. Та же ситуация, что и с программами на Java, которые не работают без JRE.

>Только вот для новой версии Дельфи нужна будет другая VCL..
Ага. Но в первую очередь - другой компилятор, который генерирует управляемый код. Да и язык в Delphi.net будет иметь множество отличий от того, что у нас есть сейчас.

>Не приведет ли все это к тому, что для запуска новых программ
>пришлось качать обновления этого .NET ?
А как же, обязательно приведет.




Suntechnic   (2002-08-08 21:32) [32]

>wicked © (08.08.02 21:12)
тем более, что опустившись на уровень сгенерированного ассемблерного кода, мы увидим, что метод класса имеет ненамного больше представления об экземпляре класса, чем оконная процедура - скрытый параметр-указатель на экземпляр и "внутреннее" знание о полях и vmt класса...

Я так и знал :). В своём предыдущем посте господину Ihor Osov"yak © я не зря про ASM вспомнил ;). Но господа! Для чего же придумали языки программирования типа Object Pascal, С++, Java? Для того чтобы скрыть всё это! Ведь на самом то деле всё равно всё будет оттранслированно в машинные коды, а ООП процессоров пока никто не придумал :) А вы мне опять твердите, что всё это можно сделать и помощью процедур. Да я не возражаю. И скрытая реализация компиляторов языков ООП делает именно это. Но в Windows это всё наруже и вы сами всё это признаёте, но к ООП это не имеет никакого отношения. К тому ООП о котором можно почитать скажем у Буча.



vuk   (2002-08-08 21:32) [33]

Блин! Насчет виртуальной машины я загнул. :o) Там JIT компилятор, а не VM.



Suntechnic   (2002-08-08 21:37) [34]

>vuk © (08.08.02 21:32)
>Блин! Насчет виртуальной машины я загнул. :o) Там JIT компилятор, а не VM.
Да ладно, всё одно идею у Java упёрли, так что и такое название пройдёт :)



wicked   (2002-08-08 21:39) [35]

2 Suntechnic ©
каюсь, Буча не читал... по молодости...
но я твержу о другом - о принципах... т. е. в принципе (и с натяжкой) windows обьектно-ориентирована, поскольку (см. все аргументы выше)...
кстати, некоторые апологеты Форта имеют наглость утверждать, что он де тоже обьектно-ориентирован... ссылки привести не могу - не помню, где это вычитал... хотя там абсолютно всю механику можно поднять на поверхность.... однако, это их не смущает....
ладно... всё равно это оффтопик и сродни он всяким holy wars... я умываю руки и остаюсь при своём мнении.... :)



Suntechnic   (2002-08-08 21:45) [36]

>wicked © (08.08.02 21:39)
>я умываю руки и остаюсь при своём мнении.... :)
agreed :)



Ihor Osov'yak   (2002-08-08 21:50) [37]

2 Suntechnic

> Я так и знал :). В своём предыдущем посте господину Ihor
> Osov"yak © я не зря про ASM вспомнил ;). Но господа! Для
> чего же придумали языки программирования типа Object Pascal,
> С++, Java? Для того чтобы скрыть всё это! Ведь на самом
> то деле всё равно всё будет оттранслированно в машинные
> коды, а ООП процессоров пока никто не придумал :) А вы мне
> опять твердите, что всё это можно сделать и помощью процедур.
> Да я не возражаю. И скрытая реализация компиляторов языков
> ООП делает именно это.

^^ Ну ты прям и мои мысли читаешь. Полностью согласен

Ну а с тем не очень:
>Но в Windows это всё наруже и вы
> сами всё это признаёте, но к ООП это не имеет никакого отношения.
> К тому ООП о котором можно почитать скажем у Буча.

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

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




vuk   (2002-08-08 21:50) [38]

>Да ладно, всё одно идею у Java упёрли, так что и такое название
>пройдёт :)
Таки вещи эти (VM и JIT) радикально различаются. А насчет того, что уперли - не знаю, утверждать не берусь.



Suntechnic   (2002-08-08 21:58) [39]

>vuk © (08.08.02 21:50)
>Таки вещи эти (VM и JIT) радикально различаются. А насчет того, что уперли - не знаю, утверждать не берусь.
Ну почему они радикально отличаются(я так полагаю новый фоейм?:)). Делают то они фактически тоже самое. В одном случае транслируют байт код в машинный код(VM), в другом случае IL код в тоже машинный код(JIT). А уж насколько там радикально отличается реализация мне не ведомо. Но идея с промежуточныи кодом была всё-таки впервые предложена Sun-ом в Java(хотя кто знает. Идея конечно не нова, но имплементирована впервые именно в Java)



vuk   (2002-08-08 22:14) [40]

>Делают то они фактически тоже самое.
Не совсем. VM выполняет код, а не транслирует его в машинный. В Java есть обе технологии, а в .net - только JIT.

>Но идея с промежуточныи кодом была всё-таки впервые предложена
>Sun-ом в Java(хотя кто знает.
Идея промежуточного кода стара как мир.
Цитата из http://www.bytemag.ru/Article.asp?ID=60
_____________
Вообще говоря, идея преобразования исходного кода в компактный промежуточный внутренний код была реализована еще в 60-х гг. для ускорения выполнения Basic-программ в режиме интерпретации. Спустя примерно десять лет было предложено использовать промежуточный P-код (P — Portable или Pascal) для создания "Виртуального Паскаля" с целью минимизации затрат при разработке компиляторов Pascal для разных платформ. В середине 90-х гг. именно этот подход был реализован в технологии Java для обеспечения платформенной независимости.
_____________




Страницы: 1 2 вся ветка
Форум: "Потрепаться";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.09.05;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.87 MB
Время: 0.08 c
1-14020           araven                2002-08-26 10:38  2002.09.05  
Delphi 7 и русская кодировка


3-13898           dimanew               2002-08-14 05:12  2002.09.05  
Программа писалась с использованием BDE версии 5.01, будет


1-13994           Rooter                2002-08-25 17:56  2002.09.05  
ShellExecute


8-14186           SerVS - S             2002-04-25 10:28  2002.09.05  
Проблема с OpenGL


6-14209           Свой                  2002-06-26 17:05  2002.09.05  
Rasapi (телефоны)