Re[53]: MS забило на дотнет. Питону - да, сишарпу - нет?
От: vdimas Россия  
Дата: 06.09.21 13:48
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

НС>Опять как в прошлый раз с С++ и рефакторингом — мамой клиянусь?


А что не так с рефакторингом в С++?


НС>Вот результат опроса на SO:

НС>Image: Stack-Overflow-Developer-Survey.png
НС>Это, заметь, со всякой носиквельщиной.

Только смотри в другой раз более серьезный ресурс по БД:
https://db-engines.com/en/ranking

ОК, ажур выстрелил в последние годы.
Не ожидал, что MSSQL таки обгонит PostgreSQL. ))


НС>Это не означает, что старый драйвер ADO.NET использовал OLEDB или ODBC. Если что — я там в свое время нашел багу и внимательно код драйвера для этого изучал. Не было там никакого намека на СОМ вообще или что то про ODBC.


Я тоже "официально" с перепиской/подтверждением и прочим рапортовал о двух одинаковых багах в драйверах к MSSQL и MSSQL CE, но уже позже — где-то в 2008-м или 2009-м.
Бага была связана с чтением бинарного стрима из поля, смотрел внимательно рефлектором только этот участок кода уже.

При том что знакомство с дотнетом начал подрабатывая фрилансером в 2001-2002-х годах, писал для штатовской торговой сети торгующую программу и как раз база была MSSQL.
И той баги не было.
А потом обнаружилась мною в другом проекте несколькими годами позже.
Да и по общему виду кода драйвера он однозначно был переписан на "более дотнетный", вероятнее всего с выходом 2-го дотнета в 2005-м.


V>>>>В котором доступны были 3 вида подключения — ODBC, OLEDB и еще не помню название вида подключения

НС>>>Нет. Конкретно та либа — обычная плоская dll со специфичным контрактом, по сути просто парсер TDS.
V>>Думаю, твои данные из более позднего периода
НС>Нет. Это было в 1.0 и 1.1.

А что за бага была?


V>>Но в случае того же EF нетривиально, т.е., подозреваю, что редко используется.

НС>Это вполне тривиально при помощи любого приличного ORM. На крайний случай всегда есть возможность заменить табличку на вьюху.

Не совсем тривиально в случае сложных связей м/у сущностями.
EF отслеживает эти связи самостоятельно, унутре там кеширование в стиле чёрного ящика.
Т.е., "просто запросить" данные где-то сбоку можно, конечно, но чтобы не попортить имеющуюся закешированную иерархию EF — нетривиально.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.