Информация об изменениях

Сообщение Re[62]: Java vs C# vs C++ от 07.10.2015 6:18

Изменено 07.10.2015 7:08 Serginio1

Здравствуйте, alex_public, Вы писали:

_>Здравствуйте, Serginio1, Вы писали:


S>> Это и есть понятие.Из за него в общем то и городится весь огород.

S>>Кстати это говорит о том, что ты не читаешь моих ссылок.
S>> Там куча примеров к доступу к объектам через навигационные свойства.

_>А с чего ты взял, что мне должен быть знаком термин "навигационные свойства"? ) Он не известен ни в мире SQL, ни просто в мире программирования. Так что используя такие специфические термины из какой-то там одной библиотечки одного языка, полагается пояснять их.

Для того, что бы что то хаять нужно ознакомиться с темой?

_>Ладно, так и быть, я не поленился и глянул в гугле что это хрень такая. Оказывается (судя по тому, что я прочитал) это автоматические запросы данных в соседних таблицах в случае нахождения в таблице внешних ключей. Крайне сомнительная возможность, особенно в контексте быстродействия.

Я же тебе давал ссылки, показывал какие генерятся запросы. Ничего сомнительногог, сильно уменьшант количество лишнего кода.

S>> Я могу сразу сказать, что конечно можно самому добавить левые соединения, но это будет значительно больше кода чем как ты тут выразился про ужасные предваритеные компиляции запроса


_>Между прочим это может быть не единственным решением. В определённых ситуациях гораздо более выгодными могут быть отдельные запросы.

Я тебя уверяю, что нет. В 8 ке есть аналогичные запросы .

Опять же выдержка из статьи http://infostart.ru/public/402433/

Кроме того в Linq to EF можно использовать Entity SQL

Например





varstr = @"Select VALUE  p From [Спр_Номенклатура] asp";

           varЗапрос = qr.CreateQuery<Справочник.Номенклатура>(str );

           var res = Запрос.Execute(MergeOption.NoTracking);

 

           foreach (varэлемin res)

            {

                Console.WriteLine("{0}.{1} - {2}", элем.Наименование.TrimEnd(), элем.Артикул, элем.ПолнНаименование.TrimEnd());

            }

Но по большому счету выхлоп от него небольшой



https://msdn.microsoft.com/ru-ru/library/bb738573(v=vs.110).aspx
Отличия Entity SQL и Transact-SQL



Есть очень интересный проект 1С++ там можно строить запросы, но доступ к навигационным свойствам нет. Приходится городить кучу левых соединений.
Это значительно менее читабельно, и большая возможность ошибки. А вообще основной смысл Линк для СкуЛ как раз и есть навигационные свойства.

S>>>>Угу sqlpp11 это доказывает, что ему до EF как среднестатистическому 1С нику до С++ гуру

_>>>Аргументированно. )))
S>> Так а где твои аргументы, сравнивая наколеночную разработку по которой нет ни статей, с минимумом упоминаний в интернете с EF огромным количеством материалов, обсуждений итд.
S>> Еще раз в моей статье больше примеров чем в разработке по твоей ссылке.

_>Да, всё правильно. ) sqlpp11 — это чья-то там мелкая наколенная разработка, а EF — это здоровенный продукт мегакорпорации. И тем забавнее, что эта наколенная штуковина является намного более быстродействующей (просто по построению) при точно таком же синтаксисе (т.е. удобстве).

Да ну. Не говори чушь. Синтаксис убогий, нет поддержки навигационных свойств. Нет поддержки биндинга итд.
Тот же Коде Фёрст миграция итд
Это поделка 10 летнего уровня типа объект спейсес.
S>>Кроме того удобство в биндинге и редактировании

S>>http://metanit.com/sharp/entityframework/3.3.php


_>Это опять же уже не имеет никакого отношения к ORM — это уже возможности GUI библиотеки. Причём в любом языке (в C# это тоже относится не к EF, а к WinForms). И в C++ естественно тоже полно решений на эту тему, но это уже совершенно другие библиотеки.

Это относится и к ВПФ. И здесь продумано все в одном без лишних телодвижений с поддержкой Студии.
Re[62]: Java vs C# vs C++
Здравствуйте, alex_public, Вы писали:

_>Здравствуйте, Serginio1, Вы писали:


S>> Это и есть понятие.Из за него в общем то и городится весь огород.

S>>Кстати это говорит о том, что ты не читаешь моих ссылок.
S>> Там куча примеров к доступу к объектам через навигационные свойства.

_>А с чего ты взял, что мне должен быть знаком термин "навигационные свойства"? ) Он не известен ни в мире SQL, ни просто в мире программирования. Так что используя такие специфические термины из какой-то там одной библиотечки одного языка, полагается пояснять их.

Для того, что бы что то хаять нужно ознакомиться с темой?

_>Ладно, так и быть, я не поленился и глянул в гугле что это хрень такая. Оказывается (судя по тому, что я прочитал) это автоматические запросы данных в соседних таблицах в случае нахождения в таблице внешних ключей. Крайне сомнительная возможность, особенно в контексте быстродействия.

Я же тебе давал ссылки, показывал какие генерятся запросы. Ничего сомнительногог, сильно уменьшант количество лишнего кода.

S>> Я могу сразу сказать, что конечно можно самому добавить левые соединения, но это будет значительно больше кода чем как ты тут выразился про ужасные предваритеные компиляции запроса


_>Между прочим это может быть не единственным решением. В определённых ситуациях гораздо более выгодными могут быть отдельные запросы.

Я тебя уверяю, что нет. В 8 ке есть аналогичные запросы .

Опять же выдержка из статьи http://infostart.ru/public/402433/

Кроме того в Linq to EF можно использовать Entity SQL

Например





varstr = @"Select VALUE  p From [Спр_Номенклатура] asp";

           varЗапрос = qr.CreateQuery<Справочник.Номенклатура>(str );

           var res = Запрос.Execute(MergeOption.NoTracking);

 

           foreach (varэлемin res)

            {

                Console.WriteLine("{0}.{1} - {2}", элем.Наименование.TrimEnd(), элем.Артикул, элем.ПолнНаименование.TrimEnd());

            }

Но по большому счету выхлоп от него небольшой



https://msdn.microsoft.com/ru-ru/library/bb738573(v=vs.110).aspx
Отличия Entity SQL и Transact-SQL



Есть очень интересный проект 1С++ там можно строить запросы, но доступ к навигационным свойствам нет. Приходится городить кучу левых соединений.
Это значительно менее читабельно, и большая возможность ошибки. А вообще основной смысл Линк для СкуЛ как раз и есть навигационные свойства.

S>>>>Угу sqlpp11 это доказывает, что ему до EF как среднестатистическому 1С нику до С++ гуру

_>>>Аргументированно. )))
S>> Так а где твои аргументы, сравнивая наколеночную разработку по которой нет ни статей, с минимумом упоминаний в интернете с EF огромным количеством материалов, обсуждений итд.
S>> Еще раз в моей статье больше примеров чем в разработке по твоей ссылке.

_>Да, всё правильно. ) sqlpp11 — это чья-то там мелкая наколенная разработка, а EF — это здоровенный продукт мегакорпорации. И тем забавнее, что эта наколенная штуковина является намного более быстродействующей (просто по построению) при точно таком же синтаксисе (т.е. удобстве).

Да ну. Не говори чушь. Синтаксис убогий, нет поддержки навигационных свойств. Нет поддержки биндинга итд.
Тот же Code First миграция итд.
Еще раз глядя на 1С, то там интерперетатор и плевать хотели на скорость, но при этом количество 1С ников в нашей стране с лихвой перекрывают С++ ников.
Наверное не все так гладко в вашем королевстве.
C#, Java это компромисс между удобством и небольшим замедлением, которое легко восполняется покупкой более производительного оборудования.

Это поделка 10 летней давности уровня типа объект ObjectSpaces http://rsdn.ru/article/dotnet/objectspaces.xml
Автор(ы): Тимофей Казаков (TK)
Дата: 14.08.2004
В .NET Framework 1.2 для отображения БД на объекты есть специальный набор классов из пространства имен System.ObjectSpaces.*. Статья рассказывает об этих классах и работе с ними.


S>>Кроме того удобство в биндинге и редактировании

S>>http://metanit.com/sharp/entityframework/3.3.php


_>Это опять же уже не имеет никакого отношения к ORM — это уже возможности GUI библиотеки. Причём в любом языке (в C# это тоже относится не к EF, а к WinForms). И в C++ естественно тоже полно решений на эту тему, но это уже совершенно другие библиотеки.

Это относится и к WPF. И здесь продумано все в одном без лишних телодвижений с поддержкой Студии.