Здравствуйте, mihailik, Вы писали:
M>При чём здесь паттерны кодирования, если я хочу работать с разными версиями Excel? Подменяешь понятия?
При том, что с поздним связыанием ты получишь исключительно тормоза и глки. А чтобы рабоать с Ёкселем нужно просто импортировать его библиотеку типов и пользоваться уже КОМ-враперами. А еще лучше взять офис 2003. Там враперы уже сделаны специально (а значит протестированы и отлажены).
M>Единственная? Кажется, ты уже поменял мнение насчёт параметров по умолчанию
Это не вызывает граблей. Это всего лишь небольшое неудобство.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Serginio1, Вы писали:
S> Проблем нет, но муторно через рефлектор как то писать. Поэтому и не пишу. Легче сделать класс оболочку на Delphi с TLB а уж затем подключаться к нему из Net.
Так выброси совй 1С и все. Для всего остального есть тлб-хи. С их помощью враперы делаются автоматом.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Serginio1, Вы писали:
VD>>В общем, если знать возможности дотнета и некоторые подходы в проектировании, то приемуществ у Дельфи не остается.
S> А зачем их делать если уже есть. Это прочие удобства с контролем типа.
Какой контроль типов? Ты о чем? Твой код ничем от фабрики классов не отличается. Используй ее и будет тебе все что хочешь. Да и Активатор ничем не отличается. В обще, не выдумывай.
S> Да просто сделаю класс для типа MyAliasToComponent а затем скопирую изменю название NameSpace и присвою MyAliasToComponent другой тип и включу в прект данный исходник. Единственно для перегружу операторы для нового типа.
Это ты так шаблоны хочешь сэмулироваь? Или дженерики? Гы-гы. Слабо же ты понимаешь возможности первых и реализацию вторых.
S> Тогда это была договоренность
У тебя есть факты? Иначе не стоит разводить сплетни.
S> как и последующий уход Хейлсберга в M$ сначала сопровождался скандалом
Есть ссылки?
S>>> У меня Видби тоже выкоблучивается.
Есть не много. Но с глюками Билдера не сравнить. Или у тябя что-то особое?
S> К сожалению нет возможности проверить поэтому поверю на слово. Да и буилдеры никогда не были у борланда в фаворе.
Это совершенно новый продукт. Это не С++Билдер. Я так понимаю новая версия Дельфей на него должна быть похожа.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Serginio1, Вы писали:
VD>>Так выброси совй 1С и все. Для всего остального есть тлб-хи. С их помощью враперы делаются автоматом. S> И рад бы, да дети есть просят.
Вот АВК зарабатывает на дотнете более килобакса. Да все кто в топе обычно меньше 900 зеленых не получают. Так что меняй 1С на что-нибудь по лучше. Будет и прибыльнее и интереснее.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, VladD2, Вы писали:
VD>Вот АВК зарабатывает на дотнете более килобакса. Да все кто в топе обычно меньше 900 зеленых не получают. Так что меняй 1С на что-нибудь по лучше. Будет и прибыльнее и интереснее.
M>>Это ты недопонял. Sergino тебе про виртуальные статические функции/виртуальные конструкторы говорит.
VD>Ну, так бы и говорил. Толку в виртуальных конструкторах нет. Это в Дельфи закрывали ее же недостаки. В дотнете есть Activator и патерн "фабрика классов". А скоро еще будут дженирики.
Активатор — это тормозной рефлекшун. А фабрика классов как раз и закрытие недостатка в виртуальных конструкторах. Фабрики классов в Дельфи можно и в тупом стиле сделать, как в C#. Но ввиду удобства виртуальных конструкторов, так никто не делает.
M>>У C#Builder есть бесплатная персональная версия. В общем-то, я бы этот шаприлдер так и сравнивал не с VS.NET, а с бесплатным SharpDevelop.
VD>Вот только зачем?
Да уж, оба продукта сильно попахивают альтернативной хэви-метал-коммандой из какого-нибудь Мухосранска. Никому не нужно.
M>>При чём здесь паттерны кодирования, если я хочу работать с разными версиями Excel? Подменяешь понятия?
VD>При том, что с поздним связыанием ты получишь исключительно тормоза
Тормоза и глюки для out-of-process-сервера и создания отчётика на две странички? Сам понимаешь, в этом случае никаких тормозов не увидишь. Если Excel использовать в своих целях, то особо большой скорости не нужно.
VD>и глки.
Это у кого по позднему связыванию глюки?
VD>А чтобы рабоать с Ёкселем нужно просто импортировать его библиотеку типов и пользоваться уже КОМ-враперами. А еще лучше взять офис 2003. Там враперы уже сделаны специально (а значит протестированы и отлажены).
Ага. Конечно. Знаем.
А наши клиенты пускай разорятся на Офыс 2003 по этому поводу. Да, и пусть обязательно английский язык учат. Ведь русский Офыс что-то ещё не продаётся.
Думаешь я с потолка взял Excel? Именно вот типичный случай, когда позднее связывание полезно. По позднему связыванию любой Excel автоматизируется, а по раннему — химичить-неперехимичить.
M>>Единственная? Кажется, ты уже поменял мнение насчёт параметров по умолчанию
VD>Это не вызывает граблей. Это всего лишь небольшое неудобство.
M>>Неужели ты думаешь, что в издательствах и бухгалтериях города Москвы сосредоточена основная масса разработки софта в мире? Или хотя бы отражены основные тенденции?
VD>Незнаю причем тут изательства, но то что учет и управление — это 90% рынка софта — это точно.
Ну и что, пусть 90%.
Я всё к тому, что автоматизация разных постсоветских контор не может рассматриваться в контексте общемировых тенденций IT. Мало ли кто там ещё на АЗЛК под Фокспро пишет.
M>>Ява мощно используется на Application-серверах, на JSP-страницах. В разных больших системах автоматизации. А ты говоришь "бухгалтерия"
VD>А что хостят эти серверы? Ту же бухгалтерию и хостят.
Бухгалтерию — может быть. Но не ту же. И уж точно, что под дотнетом пока доли процентов в мире "бухгалтерию" хостят. Даже Микрософт, наверное, ещё бухгалтерию на дотнет не перенёс.
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, Serginio1, Вы писали:
S>> Тогда это была договоренность
VD>У тебя есть факты? Иначе не стоит разводить сплетни.
S>> как и последующий уход Хейлсберга в M$ сначала сопровождался скандалом
VD>Есть ссылки?
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, Serginio1, Вы писали:
VD>>>В общем, если знать возможности дотнета и некоторые подходы в проектировании, то приемуществ у Дельфи не остается.
S>> А зачем их делать если уже есть. Это прочие удобства с контролем типа.
VD>Какой контроль типов? Ты о чем? Твой код ничем от фабрики классов не отличается. Используй ее и будет тебе все что хочешь. Да и Активатор ничем не отличается. В обще, не выдумывай.
Если посмотреть структуру класса TObject
TObject = class
...................
class function NewInstance: TObject; virtual;
...............................
end;
То увидим изумиттельную статическую виртуальную функцию NewInstance
Может у меня что то с глазами но подобного в C# я не видел. Хотя как утверждает Рихтер в CLI интерфейсы могут иметь поля и статические методы.
И вместо того что бы использовать рефлексию через Type или делать фабрику сласса например
TComponentClass = class of TComponent;
Type Form1=Class(TForm)
И имея функцию
Procedure LaLaLa(NewComponent:TComponentClass );
Var Comp:TComponent;
Begin
Comp:=NewComponent.Create(Owner);
//=========
NewComponent.Create возвращает экземпляр класса наследника от TComponent;
И вызов этой процедуры
LaLaLa(Form1);
LaLaLa(Edit1);
итд
То есть построить cсвою фабрику классов
Очень удобно когда есть куча наследников от базового абстрактного класса.
А так придется городить либо интерфейс, делегат и на худой конец Type.CreateInstance.
Но как говорится не нравится .....
или CompArray= array of TComponentClass;
CA:CompArray;
CA[0]:=Form1;
CA[1]:=Edit1;
.................
NewComp:=CA[i].Create(Owner);
Можно сделать все, но интересные и нужные фишечки нужно использовать.
Кстати не стал бы уповать так на C# так как он стандартизован, у Delphi поле развития ничем неограничено. Но это только предположения, а все возможности CLI еще пока ни одним языком не покрыты.
Эх А гду же Российский Ъ#
и солнце б утром не вставало, когда бы не было меня
Здравствуйте, mihailik, Вы писали:
M>Ну и что, пусть 90%.
M>Я всё к тому, что автоматизация разных постсоветских контор не может рассматриваться в контексте общемировых тенденций IT. Мало ли кто там ещё на АЗЛК под Фокспро пишет.
А кто говорит о нас? Это общемировая тендеция.
M>Бухгалтерию — может быть. Но не ту же.
Без разницы.
M> И уж точно, что под дотнетом пока доли процентов в мире "бухгалтерию" хостят. Даже Микрософт, наверное, ещё бухгалтерию на дотнет не перенёс.
Вот по заявлениям Борланда расклад таков: 40% Ява, 40% дотнет, и 20% все остальное. Не забывай что "бухгалтериям" тот же веб нужен. А его под дотнетом клепать проще всего.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, mihailik, Вы писали:
VD>>Вот АВК зарабатывает на дотнете более килобакса. Да все кто в топе обычно меньше 900 зеленых не получают.
M>Есть исключения
Исключения есть. Но это от лени.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, mihailik, Вы писали:
M>Тормоза и глюки для out-of-process-сервера и создания отчётика на две странички? Сам понимаешь, в этом случае никаких тормозов не увидишь. Если Excel использовать в своих целях, то особо большой скорости не нужно.
Еще как увидишь. А out-of-process — это вообще маразм.
VD>>и глки.
M>Это у кого по позднему связыванию глюки?
У меня нет. Я им не пользуюсь.
VD>>А чтобы рабоать с Ёкселем нужно просто импортировать его библиотеку типов и пользоваться уже КОМ-враперами. А еще лучше взять офис 2003. Там враперы уже сделаны специально (а значит протестированы и отлажены).
M>Ага. Конечно. Знаем.
Значит хреново знаешь.
M>А наши клиенты пускай разорятся на Офыс 2003 по этому поводу. Да, и пусть обязательно английский язык учат. Ведь русский Офыс что-то ещё не продаётся.
Ничего появится через некоторое время. Какраз допишишь текущий проект.
M>Думаешь я с потолка взял Excel? Именно вот типичный случай, когда позднее связывание полезно.
Думаю с потлка. По большому счету можно вообще все в экселе сделать. И связывание будет почти ненужно (если только чтобы эксель открыть). У меня, например, все отчеты для бухгалтерии в нем считаются. И никакого позднего связывания.
M> По позднему связыванию любой Excel автоматизируется, а по раннему — химичить-неперехимичить.
Чушь.
M>А using разве вызывает грабли?
Да. Это код-патерн о котором можно забыть/незнать/схалтурить.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Пусть это не так, но Андерс действительно разрабатывал Delphi. Он был ключевой фигурой разработки .NET Framework. Гляньте, как VB.NET похож на Delphi.
1. Хегельберг занимался в основном Шарпом. Он накидал много идей, но все они скорее были связаны с Явой, чем с Дельфи. Зачатки Фрэймворка был за долго до его перехода. Это по сути слитие двух проектов КОМ и Явы. Дельфи тут вообще не причем. Хегельберг, если мне не изменяет память, занимался дизайном контролов для J++. Этот набор честично перекочевал в Формсы, но писали уже их другие люди.
2. Васик похож на Дельфи только одним. Он тоже компонентно-ориентированный ОО-язык. Больше у них сходства нет.
В общем, меньше читайте коммунистических газет перед сном.
Получается, что только он задумался над Явой++ как сразу появился КОМ+. Правда странно?
Если верить документу приведенному этим орлом http://en2.wikipedia.org/wiki/Anders_Hejlsberg Хегельберг работал над дельфи до 96-го года. Это как раз 2-я дельфи. Т.е. серьезно он мог работать только над дельфи 1. С 96-го по 97 он работал на j++. О каком сговоре с борландом может идти речь если ни КОМ-ом ни компиляторами Явы МС не занимался?
Таким образом можно смело утверждать, что все эит слова чушь. Дотнет был задуман до Хегельберга и точно уже без Борланда. И его брали под конкретный проект. Более того он сам напрасился на этот проект.
125 лимонов это их годовой оборот в 96-ом. На лицо просто взятка. (это если все ссылки правда).
Скорее Хегельберг является виновником того, что дотнет 60% содрал с Явы. Если бы не он, то мы сейчас имели бы дело с КОМ 2.
Если бы имел сговор с МС, то зачем борланд так усиленно поддрживает Яву? Они делают ставку на яву намного больше чем на Дельфи.
В общем, если МС и повзаимствовал у Борланда идеи, но это точно не была Дельфи. Скорее это была Ява. И мне очнь жать если это так. 90% проблем дотнета — это проблемы Явы.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
S> Если посмотреть структуру класса TObject
S> TObject = class S> ................... S> class function NewInstance: TObject; virtual; S>............................... S> end; S>То увидим изумиттельную статическую виртуальную функцию NewInstance
S> Может у меня что то с глазами но подобного в C# я не видел.
Естествнно. Дотнету такой идиотизм не нужен. Для создания неизвестных на этапе компиляции типов можно пользоваться возможностями дотнета (Activator).
S> Хотя как утверждает Рихтер в CLI интерфейсы могут иметь поля и статические методы.
Сомневаюсь. Скорее всего речь шла о свойствах. А статических методов у интерфейса вообще быть не может. Интерфейс же это всегда ссылка.
Где он такое утверждал?
S> И вместо того что бы
А зачем вместо? Да и рефлекшона там нет никакого. Это встроенные возможности дотнета. Ядро так-сказать.
S>То есть построить cсвою фабрику классов
И? Чем не подходит обычная фабрика? Да и Activator? Где недостатки?
А если нет, то о каких приемуществах речь?
S> Очень удобно когда есть куча наследников от базового абстрактного класса. S> А так придется городить либо интерфейс, делегат и на худой конец Type.CreateInstance.
На любой конец Activator.CreateInstance (который в конечном счете лезет в рантайм) и никаких проблем. И это нужно в основном дизайнерах, так как именно в них тип неизвестен вообще и применять фабрики классов неудобно.
S> Но как говорится не нравится .....
Так чем?
S>или CompArray= array of TComponentClass; S> CA:CompArray;
S>CA[0]:=Form1; S>CA[1]:=Edit1; S>.................
S>NewComp:=CA[i].Create(Owner);
Короче и понятнее.
S> Можно сделать все, но интересные и нужные фишечки нужно использовать.
Какие фишки? Это оновы дотнета.
S> Кстати не стал бы уповать так на C# так как он стандартизован, у Delphi поле развития ничем неограничено. Но это только предположения,
То что Шарп станрдантизирован — это приемущество. И нечего это суда привлекать.
В общем, я вижу что поддтверждения заявления о том что в Шарпе отсуствуют нужные фишки из Дельфи пока, что осталось без аргументации.
S>а все возможности CLI еще пока ни одним языком не покрыты.
Есть МСИЛ.
S>Эх А гду же Российский Ъ#
Вопрос в его необходиомости. Я свои наработки хоть завтра могу выложить в Инет.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, mihailik, Вы писали:
M>>>Это ты недопонял. Sergino тебе про виртуальные статические функции/виртуальные конструкторы говорит.
VD>>Ну, так бы и говорил. Толку в виртуальных конструкторах нет. Это в Дельфи закрывали ее же недостаки. В дотнете есть Activator и патерн "фабрика классов". А скоро еще будут дженирики.
M>Активатор — это тормозной рефлекшун.
1. Это ядро. Классы в дотнете создаются исключительно ядром. Все тормоза которые могут быть могут быть только в получении рантайм-типа. Кстати, рефлекшоном это назвать вряд ли можно. Скорее рефлекшон пользуется теми же сервисами ядра, что и активатор.
2. Создание классов по типу нужно очень редко. И всегда можно воспользоваться фабрикой классов. Создаешь через активатор только фабрику (если уж тебе он кажется очень медленным), а сами классы создаешь через фабрику.
M> А фабрика классов как раз и закрытие недостатка в виртуальных конструкторах. Фабрики классов в Дельфи можно и в тупом стиле сделать, как в C#. Но ввиду удобства виртуальных конструкторов, так никто не делает.
В Дельфи единственным способом создать экземпляр неизвестного класса динамически вроде и вяляется виртуальный конструктор. Или я ошибаюсь? Тогда фабрику тоже прийдется создавать через него. Так что это и есть решение динамической загрузки неизсестных типов.
Что же касается фабрик классов, то конечно их можно делать в любом ОО-языке. Но вот только причем тут это?
Резюмирую... Виртуальные конструкторы в Дельфи — это совеобразная замена активатора в дотнете. А описанная фигня нужна только для их использования, никакого приемущества Дельфи не дающая.
M>Да уж, оба продукта сильно попахивают альтернативной хэви-метал-коммандой из какого-нибудь Мухосранска. Никому не нужно.
Покрайней мере ШарпДев точно полная лажа. И при наличии студии говорить о нем смешно.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.