All streams
Search
Write a publication
Pull to refresh
18
0
Виктор Ефимов @tp7

Пользователь

Send message
Единственное разумное объяснение — в задаче надо напечатать цифры от 1, а цикл инициализируется с 0. Как вывод — кандидат или не умеет читать задание (предложением раньше говорилось о внимательности), или не знает, что счетчик можно инициализировать в отличное от нуля значение.

Но как-то странно это.
Для того, чтобы сделать файл публичным, придется сначала отправить его хоть кому-то. И лучше не шарить линк кому попало, ибо емэйл аплоадера зачем-то передается в открытом виде в коде страницы. Спорное решение.

Ну и в правилах ресурса есть интересный пункт 3.3.1.
For content that is covered by intellectual property rights, like photos and videos and/or comments (IP content) that you post on or via Share, you specifically give us the following permission: you grant us a non-exclusive, transferable, sub-licensable, royalty-free, worldwide license to use any IP content that you post on or in connection with Share (IP License).

Интересно, как это вяжется с передачей приватных проектов дизайнеров, фотографов и т.п.?

Ну и удаление аккаунта обещает «This will delete your account data and bundles permanently.», но публичные файлы остаются доступными и потом удалить их, кажется, нельзя.
Исходники референсного энкодера/декодера были уже давно (сам пробовал больше полугода назад). На скорость запила в ffmpeg они не влияют.

А влияет то, что HEVC на данный момент ужасно медленный. Если многие процессоры имеют проблемы с вопроизведением 10битного видео с помощью оптимизированных по самые гланды декодеров, то что уж говорить о HEVC. Возможно, AVX2 и пара человеко-лет оптимизации помогут с этим, но я бы не рассчитывал на адекватно (>24fps) работающий декодер в 2013м.
Есть такой вопрос — а navigation property вообще получается нефункциональная фича?

Почему, очень даже полезная, если работа и правда происходит со всеми элементами коллекции. Т.е. когда загрузка в память желательна — она делается просто. Когда не желательна — да, надо искать другие средства.

var count = context.Threads.Where(e=> e.id == folder.id).Count();

Вы сравниваете Id потока с Id папки — это баг.
Ваш SQL работает для варианта 1 ко многим, а в задаче много ко многим.
Всё хорошо, пока примеры достаточно простые.

Попробовали использовать WebApi примерно три месяца назад. Первое время — классно.
Затем появляются проблемы:

1. Плохая поддержка тем же Ninject'ом (не знаю, как сейчас, но раньше у него не ладилось с ApiController).

2. Невозможность биндить несколько аргументов метода из тела запроса. Т.е. если с клиента вы хотите передать всего 2 поля, и ваш метод в контроллере выглядит как
public Something Put(string first, string second)

то передавать параметры надо в урле. Сделать это красивым json-ом не получится. Есть директива [FromBody], но она может быть применена только к одному параметру. И придется определять модели для каждого чиха.

3. Преимущество в виде роутинга сходит на нет как только разнообразие ваших операций выходит за рамки базового CRUD. Да и он позволяет проделывать очень интересные вещи, вроде:
public string Get(int first)
 {
    return "hello";
}

public string Get(int first, bool other)
{
    return "word";
}

В зависимости от пришедших параметров, будет выбран тот или иной метод. На простой схеме удобно, на сложной может добавить еще больше проблем к и так иногда неочевидному роутингу. Если вы думаете, что никто в здравом уме так делать не будет, то мне придется вас расстроить.
Ну и лично я считаю неявный роутинг через имя http-метода в имени метода контроллера не слишком очевидным. Возможно, просто непривычно.

Остается очень классная фича в возвращении типов, отличных от ActionResult, но это реально было реализовать и раньше.

Как результат, нам WebApi не подошел и пришлось с болью «вырефакторивать» его обратно. Интересно было бы послушать людей, который имеют реально позитивный опыт его использования на чем-то сложном.
Из-за таких комментариев я люблю хабр, спасибо.

А что вы скажете насчет Linq to NHibernate?
при выключении AutoDetectChangesEnabled, все изменённые объекты не сохраняются автоматически в БД при закрытии контекста

Маленькая поправка: при закрытии контекста никогда ничего автоматически не сохраняется. Необходимо вызвать SaveChanges().
Кроме того, есть возможность вручную вызывать детект изменений через context.ChangeTracker.DetectChanges(). В зависимости от сложности модели, количестве объектов в контексте и характере операций, которые были выполнены, такой подход может поднять производительность. А может и значительно снизить.

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity