Здравствуйте, mihailik, Вы писали:
M>А вот варианты, то есть позднее связывание — действительно больное место C#. Жалко, что их нету
Слава богу что его нет. Иначе бы была такая же задница что и с Васиком. Одно из замечательных свойств Шарпа — это минимум патернов кодирования для получения надежного и быстрого софта. Единственная проблема финализацияю на патерне кодирования using(). Ну, и еще шаблонов не хватает. Но это уже почти решенный вопрос.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Serginio1, Вы писали:
S>Согласен, но это как раз одно из мелких примочек, не актуально но очень удобно.
Чем?
S> На самом деле и без Tlb можно и свои классы построить, но если бы было позднее связывание было бы неплохо. Хотя считаю что не особо и нужно, но очень много еще связано с Idispatch.
Для работы с диспачем не нужно позднего связывания. Описывай дисп-интерфейс в Шарпе и работай. Если же нужны скрпты, то есть Васик и ДжиХрип.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, Serginio1, Вы писали:
VD>>>Например? S>> TClass = class of TObject; S>> TComponentClass = class of TComponent; S>> И огромное количество мелочей.
VD>
VD>
VD>Во! Это пример так пример!!!
VD>Ну, выкладывай свои мелочи. Будем смеяться дальше.
Ну немного не разбираешься в Delphi. Объявление
TComponentClass = class of TComponent;
что это наследник типов
и Создав процедуру
Procedure CreateComponent(NewComp:TComponentClass)
Var FComponent:TComponent;
Begin
FComponrnt:=NewComp.Create(Owner);
end;
или
S>> Конечно не составляет особого труда самому делать нужные объекты или генераторы исходников но если некоторые возможности будут встроены в компилятор то тоже неплохо, а то что они будут это точно.
VD>В общем, опять слышна старая песня. Рельных примеров нет. Одни намеки на "некоторые узкие места".
Давай свой шаблон и я его сделаю на шарпе только с подстановкой типа
using MyAliasToComponent = Component;
S>> Борланд никогда и не была конкурентом M$,
VD>Был. Когда то МС делала свой Паскаль и Борланд вытеснил его своим Турбо-Пасклем.
У Борланда был еще и Turbo Васик. Договоренности идут еще с тех времен. VD>Честно говоря я вижу расширение функциональности пока только в области Болда и Женевы. Причем это скорее удачные покупки, нежели достижения Борланда.
S>> Но т.к. совместимость в Net достаточно полная, то выбор для решения конкретной задачи будет значительно расширен.
VD>Вот только что-то глючит ШарпБилдер с компонентами написанными на МС++. Да и по функциональности среда явно проигрывает.
Ну первыая VS.Net доже наверное не блистала стабильностью. У меня Видби тоже выкоблучивается. VD>Ну, да хоть такой. Многим поклонникам Борланда все равно он кажется лучше чем студия.
и солнце б утром не вставало, когда бы не было меня
S>>> Например работа с вариантами, диспинтерфейсам в Delphi встроена в компилятор и работа с ними намного проще чем C++ .
M>>Хм? Свои диспинтерфейсы в дотнете (то есть, и в D8) отсутствуют. А работать с комовскими диспинтерфейсами спокойно можно.
S> А ты восьмерку уже видел????
Нет, но Delphi for .NET Compiler Preview видел. Да и из общих соображений: D8 компилирует под дотнет, а в дотнете никаких тонкостей в COM Interop относительно диспинтерфейсов нет. Они же не будут свой интероп под диспинтерфейсы воротить.
M>>А вот варианты, то есть позднее связывание — действительно больное место C#. Жалко, что их нету
S> На самом деле и без Tlb можно и свои классы построить, но если бы было позднее связывание было бы неплохо. Хотя считаю что не особо и нужно, но очень много еще связано с Idispatch.
S>> А ты восьмерку уже видел????
M>Нет, но Delphi for .NET Compiler Preview видел. Да и из общих соображений: D8 компилирует под дотнет, а в дотнете никаких тонкостей в COM Interop относительно диспинтерфейсов нет. Они же не будут свой интероп под диспинтерфейсы воротить.
Про диспинтерфейсы и позднее связывание я говорил только из соображений того, что таки вещей например не было с С++ а Delphi они были. И дальнейшее развитие языков будет идти в сторону внедрения примочек в компилятор там где это необходимою
M>>>А вот варианты, то есть позднее связывание — действительно больное место C#. Жалко, что их нету
S>> На самом деле и без Tlb можно и свои классы построить, но если бы было позднее связывание было бы неплохо. Хотя считаю что не особо и нужно, но очень много еще связано с Idispatch.
M>Что, к примеру?
1С. Я же Программист 1С.
и солнце б утром не вставало, когда бы не было меня
Это ты недопонял. Sergino тебе про виртуальные статические функции/виртуальные конструкторы говорит.
VD>Вот только что-то глючит ШарпБилдер с компонентами написанными на МС++. Да и по функциональности среда явно проигрывает.
VD>Ну, да хоть такой. Многим поклонникам Борланда все равно он кажется лучше чем студия.
У C#Builder есть бесплатная персональная версия. В общем-то, я бы этот шаприлдер так и сравнивал не с VS.NET, а с бесплатным SharpDevelop.
M>>А вот варианты, то есть позднее связывание — действительно больное место C#. Жалко, что их нету
VD>Слава богу что его нет. Иначе бы была такая же задница что и с Васиком. Одно из замечательных свойств Шарпа — это минимум патернов кодирования для получения надежного и быстрого софта.
При чём здесь паттерны кодирования, если я хочу работать с разными версиями Excel? Подменяешь понятия?
VD>Единственная проблема финализацияю на патерне кодирования using(). Ну, и еще шаблонов не хватает. Но это уже почти решенный вопрос.
Единственная? Кажется, ты уже поменял мнение насчёт параметров по умолчанию
M>>А ты, значит, говоришь, что не доят?
VD>А ты хочешь поспорить по этому поводу?
Я — нет.
M>>Может, просто, у тебя работа дотнетовская, вот ты и стремишься сам себя переубедить?
VD>У меня работа издательская. Мне с точки зрения работы на дотнет чихать. Я вижу, что на дотнете у нас народ таки месные бухгалтерии худо бедно переписывает. А вот на Яве не очень то. Можешь сравнить трафик в форумах по дотнету и Яве у нас на сайте...
Неужели ты думаешь, что в издательствах и бухгалтериях города Москвы сосредоточена основная масса разработки софта в мире? Или хотя бы отражены основные тенденции?
Ява мощно используется на Application-серверах, на JSP-страницах. В разных больших системах автоматизации. А ты говоришь "бухгалтерия"
M>>>>А вот варианты, то есть позднее связывание — действительно больное место C#. Жалко, что их нету
S>>> На самом деле и без Tlb можно и свои классы построить, но если бы было позднее связывание было бы неплохо. Хотя считаю что не особо и нужно, но очень много еще связано с Idispatch.
M>>Что, к примеру?
S>1С. Я же Программист 1С.
И что, есть какие-то проблемы с C# и IDispatch? Странно вообще-то
S>>1С. Я же Программист 1С.
M>И что, есть какие-то проблемы с C# и IDispatch? Странно вообще-то
Проблем нет, но муторно через рефлектор как то писать. Поэтому и не пишу. Легче сделать класс оболочку на Delphi с TLB а уж затем подключаться к нему из Net.
и солнце б утром не вставало, когда бы не было меня
Здравствуйте, Serginio1, Вы писали:
S>В с# придется через тип вызывать конструктор.
А зачем это все? Используй фабрику классов или просто new. Если уж очень хочется в рантйме создавать то пользуйся Activator.CreateInstance.
В общем, если знать возможности дотнета и некоторые подходы в проектировании, то приемуществ у Дельфи не остается.
S> Давай свой шаблон и я его сделаю на шарпе только с подстановкой типа S>using MyAliasToComponent = Component;
Не понял.
S> У Борланда был еще и Turbo Васик. Договоренности идут еще с тех времен.
Не думаю, что они договаривались. Просто каждый выбрал свое направление.
S> Ну первыая VS.Net доже наверное не блистала стабильностью.
Однако был куда стабильее.
S> У меня Видби тоже выкоблучивается.
Это альфа. Да и она тоже стабильнее ШарпБилдера.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, Сергей Орлик, Вы писали:
СО>С удовольствием — готов подготовить не только версию для помещения на CD, но и полезные материалы — статьи, white papers и т.п.
Ждем.
СО>Давайте решать это по e-mail.
ОК.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, Serginio1, Вы писали:
S>>В с# придется через тип вызывать конструктор.
VD>А зачем это все? Используй фабрику классов или просто new. Если уж очень хочется в рантйме создавать то пользуйся Activator.CreateInstance.
VD>В общем, если знать возможности дотнета и некоторые подходы в проектировании, то приемуществ у Дельфи не остается.
А зачем их делать если уже есть. Это прочие удобства с контролем типа.
S>> Давай свой шаблон и я его сделаю на шарпе только с подстановкой типа S>>using MyAliasToComponent = Component;
VD>Не понял.
Да просто сделаю класс для типа MyAliasToComponent а затем скопирую изменю название NameSpace и присвою MyAliasToComponent другой тип и включу в прект данный исходник. Единственно для перегружу операторы для нового типа.
S>> У Борланда был еще и Turbo Васик. Договоренности идут еще с тех времен.
VD>Не думаю, что они договаривались. Просто каждый выбрал свое направление.
Тогда это была договоренность как и последующий уход Хейлсберга в M$ сначала сопровождался скандалом а затем M$ скупила 10% акций борланда сумма около 100 MB( мега баксов и договорились о патентах итд. Борланд давно уже дочерняя фирма M$ поэтому и не развивается как надо хотя основы заложенные Хейлсбергом действительно фундамнтальныю
Уже писал об этом. S>> Ну первыая VS.Net доже наверное не блистала стабильностью.
VD>Однако был куда стабильее.
S>> У меня Видби тоже выкоблучивается.
VD>Это альфа. Да и она тоже стабильнее ШарпБилдера.
К сожалению нет возможности проверить поэтому поверю на слово. Да и буилдеры никогда не были у борланда в фаворе.
и солнце б утром не вставало, когда бы не было меня
S>>>1С. Я же Программист 1С.
M>>И что, есть какие-то проблемы с C# и IDispatch? Странно вообще-то
S> Проблем нет, но муторно через рефлектор как то писать. Поэтому и не пишу. Легче сделать класс оболочку на Delphi с TLB а уж затем подключаться к нему из Net.
Через какой-такой рефлектор? Через позднее связывание что ли? А ты говоришь диспинтерфейсы, путаешь только
Тогда бы уж на JScript или VB сделал, там с TLB мудрить не нужно. Я вот с Дельфями интероп налаживал — замучался туда-сюда исправления вносить.
Здравствуйте, mihailik, Вы писали:
S>>>>1С. Я же Программист 1С.
M>>>И что, есть какие-то проблемы с C# и IDispatch? Странно вообще-то
S>> Проблем нет, но муторно через рефлектор как то писать. Поэтому и не пишу. Легче сделать класс оболочку на Delphi с TLB а уж затем подключаться к нему из Net.
M>Через какой-такой рефлектор? Через позднее связывание что ли? А ты говоришь диспинтерфейсы, путаешь только
Диспинтерфейсы хороши когда нет tlb но зная параметры и имена функций легко выдрать ID через GetIdsOfNames и построить описание диспинтерфейсов, что бы не трахаться с Invoke для ускорения вызовов методов. Но я уже наплевал на этот КОМ. Рано или поздно все придут к Net, а там где нет Net и Delphi прекрасно справляется.
M>Тогда бы уж на JScript или VB сделал, там с TLB мудрить не нужно. Я вот с Дельфями интероп налаживал — замучался туда-сюда исправления вносить.
Единственно какие проблемы были это через DCom при передаче пользовательской структуры не кратной 4 было неправильное выравнивание при получении. Не знаю кто виноват хотя структура изначально помечается как Packed. Поэтому передавал обычно через VarArrayCreate(...,VarByte). А так тебе видней, у меня не було задач с интеропом.
и солнце б утром не вставало, когда бы не было меня
Здравствуйте, mihailik, Вы писали:
M>Это ты недопонял. Sergino тебе про виртуальные статические функции/виртуальные конструкторы говорит.
Ну, так бы и говорил. Толку в виртуальных конструкторах нет. Это в Дельфи закрывали ее же недостаки. В дотнете есть Activator и патерн "фабрика классов". А скоро еще будут дженирики.
M>У C#Builder есть бесплатная персональная версия. В общем-то, я бы этот шаприлдер так и сравнивал не с VS.NET, а с бесплатным SharpDevelop.
Вот только зачем?
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Здравствуйте, mihailik, Вы писали:
M>Неужели ты думаешь, что в издательствах и бухгалтериях города Москвы сосредоточена основная масса разработки софта в мире? Или хотя бы отражены основные тенденции?
Незнаю причем тут изательства, но то что учет и управление — это 90% рынка софта — это точно.
M>Ява мощно используется на Application-серверах, на JSP-страницах. В разных больших системах автоматизации. А ты говоришь "бухгалтерия"
А что хостят эти серверы? Ту же бухгалтерию и хостят.
... << RSDN@Home 1.1.2 beta 1 >>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.