Это понятно, что будет тоже самое. Я про то, что правило "не вызывать виртуальные методы в конструкторе/деструкторе" как бы неполное, требуется ещё и не вызывать методы, которые вызывают виртуальные методы или ... (в общем тут рекурсия)
Возможно есть такое элемент из X, и даже возможно не один, что он не сопоставлен никакому элементу из Y
тогда эта функция не определена на всём X. Другое дело что не всем Y могут найтись из X в hashCode, а это запросто. Тогда это не сюрьекция.
И второе: считаю уместным отметить, что любому отображению соответствует отношение эквивалентности по правилу: два элемента эквивалентны если и только если их образы отображений совпадают. Это даёт наглядный пример, как можно устроить equals через hashCode. Ни в коем случае к этому не призываю.
Верно и обратное: если есть отношение эквивалентности, то ему соответствует отображение исходного множества в его фактор-множество по этой эквивалентности. Но это так ;-)
Наилучший — это минимизация максимального отклонения
Чтобы говорить категориям лучший/худший надо ввести соответствующие определения. Обычно критерием является соответствующая метрика в пространстве функций. Так вот от её выбора может быть лучшим как метод наименьших квадратов, так и что-то иное.
Спасибо, что показали свое видение внутреннего устройства бух. учета. Есть несколько вопросов и замечаний:
Непонятно, что из этого материальные таблицы, а что представления и запросы.
Как-то не отражено соответствие и субсчетов, а если субсчета у субсчетов? Из активность/пассивность где отражена? Намек на таблицу плана счетов.
Где сальдо? При этом у активных счетов - оно только по дебету (может отрицательным быть и значит что-то не так), у пассивных - по кредиту, у активно-пассивных оно развернутое.
Аналитика только одна. А если две? Например 10 счет по складам и материалам.
Как обеспечить ссылочную целостность аналитического учета, если "10" это склады и материалы, а "60" это поставщики?
Не представлен количественный и валютный учет.
Ну и конечно проводки имеют дату отражения в учете.
Это понятно, что будет тоже самое. Я про то, что правило "не вызывать виртуальные методы в конструкторе/деструкторе" как бы неполное, требуется ещё и не вызывать методы, которые вызывают виртуальные методы или ... (в общем тут рекурсия)
А если... В конструкторе базового класса вызывается не виртуальная функция, но которая сама вызывает виртуальную функцию?
Кстати, может быть и критическая ошибка, если вызов попадёт на pure virtual функцию.
Платформа или конфигурации?
А как же то, что ты утверждал, что 1с это лучшая среда создания бизнес-приложений?
Дело не в Except и не в Union. Дело реально в реализации компарера, как и написали выше. Акцент в статье не там.
А почему не рассказали, как числа Фибоначчи и функция Эйлера используются в комбинаторике?
Пару замечаний чисто про математику:
тогда эта функция не определена на всём X. Другое дело что не всем Y могут найтись из X в hashCode, а это запросто. Тогда это не сюрьекция.
И второе: считаю уместным отметить, что любому отображению соответствует отношение эквивалентности по правилу: два элемента эквивалентны если и только если их образы отображений совпадают. Это даёт наглядный пример, как можно устроить equals через hashCode. Ни в коем случае к этому не призываю.
Верно и обратное: если есть отношение эквивалентности, то ему соответствует отображение исходного множества в его фактор-множество по этой эквивалентности. Но это так ;-)
Сколько я понимаю, выражение копирование с with https://docs.microsoft.com/ru-ru/dotnet/csharp/language-reference/operators/with-expression недоступно в expression
Расширять работу с expression планируют? Например with в лямбдах?
В запечатанном ToString вызовите свой виртуальный ToCustomString. Переопределяйте его по необходимости. Он то не будет автоматом переопределяться
Чтобы говорить категориям лучший/худший надо ввести соответствующие определения. Обычно критерием является соответствующая метрика в пространстве функций. Так вот от её выбора может быть лучшим как метод наименьших квадратов, так и что-то иное.
Тернарный оператор не нужен. Операция сравнения уже даёт bool
А не думали вместо выгрузок таблиц использовать rest -запросы изменений данных?
Что такое "Знак"?
Как это поможет с ссылочной целостностью?
Так-то проводки, а то сальдо
Но в таком случае как отличить обороты? это увеличениеоборота по кредиту или уменьшение по дебету?
Допускаю, что кому-то это не нужно
В таблице проводок сумма вообще одна, потому что там два поля счёт дебета и счёт кредита
Но стоит отличать ситуации
Дт 10 Кт 60 сумма -125
И
Дт 60 Кт 10 сумма 125
Извиняюсь, я с остальным Вашим творчеством еще не ознакомился.
Спасибо, что показали свое видение внутреннего устройства бух. учета. Есть несколько вопросов и замечаний:
Непонятно, что из этого материальные таблицы, а что представления и запросы.
Как-то не отражено соответствие и субсчетов, а если субсчета у субсчетов? Из активность/пассивность где отражена? Намек на таблицу плана счетов.
Где сальдо? При этом у активных счетов - оно только по дебету (может отрицательным быть и значит что-то не так), у пассивных - по кредиту, у активно-пассивных оно развернутое.
Аналитика только одна. А если две? Например 10 счет по складам и материалам.
Как обеспечить ссылочную целостность аналитического учета, если "10" это склады и материалы, а "60" это поставщики?
Не представлен количественный и валютный учет.
Ну и конечно проводки имеют дату отражения в учете.
В .net ограниченно пытаются завести static abstract для интерфейсов: https://habr.com/ru/post/572902/
Вы неверно термин используете
https://ru.m.wikipedia.org/wiki/%D0%90%D0%BB%D0%B3%D0%B5%D0%B1%D1%80%D0%B0%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B0%D1%8F_%D0%BA%D1%80%D0%B8%D0%B2%D0%B0%D1%8F