Архив за 01 февраля 2019 - 2

Читая Хабр, я наткнулся на статью "Стоит ли сохранять длину массива в локальную переменную в C#?" (которая была в разделе «лучшее»). Мне кажется глупый вопрос, не совсем корректные измерения (почему нет измерений для вложенных циклов?) и странный вывод.

Длину массива в С# стоит сохранять в отдельную переменную в случае когда у нас несколько вложенных циклов, ниже пример.

Вот простой тестовый код без сохранения длины массива в переменную:

Random rnd1 = new Random(DateTime.UtcNow.Millisecond);
int[,] arr1 = new int[Int16.MaxValue, Byte.MaxValue];
for (int i = 0; i < arr1.GetLength(0); i++)
{
    for (int j = 0; j < arr1.GetLength(1); j++)
    {
        arr1[i, j] = rnd1.Next(Int32.MinValue, Int32.MaxValue);
    }
}

Вот тот же код c сохранением длины массива в переменную:

Random rnd1 = new Random(DateTime.UtcNow.Millisecond);
int[,] arr1 = new int[Int16.MaxValue, Byte.MaxValue];
int len1 = arr1.GetLength(0), len2 = arr1.GetLength(1);
for (int i = 0; i < len1; i++)
{
    for (int j = 0; j < len2; j++)
    {
        arr1[i, j] = rnd1.Next(Int32.MinValue, Int32.MaxValue);
    }
}

Код с сохранением длины массива в переменную (второй вариант) выполняется примерно на 15% быстрее.

Подобный ответ можно найти в более-менее толстых книжках по C# или .Net, но при этом умный человек постит это на Хабре и никто в комментариях не указал ему что длину массива в С# сохраняют в переменную обычно для вложенных циклов и там это действительно имеет смысл.
Читать полностью »

Доброго времени суток!

Про эту компанию знают все. Кто-то в ней даже работал или продолжает работать. Я думаю, сложно найти в РФ, да и на территории СНГ, человека который не слышал о холдинге Сбербанка. Именно холдинг, так как очень много компаний которые обслуживают Сбербанк и контролируются им же. Так вот я поработал в двух таких компаниях за один год — это Сбербанк-Технологии (далее СБТ) и Сбербанк.
Читать полностью »

Почему одни птицы ходят, а другие прыгают?

В общем виде правило выглядит так: более легкие птицы обычно прыгают, более тяжелые экономят силы и не отрывают от земли все свое тело, оставляя опору на одну лапу. Классический пример — синицы и зяблики. Они маленькие и передвигаются обычно скачками. Но есть, например, такая птица, как трясогузка. По размеру она сопоставима с синицей, но по земле шагает, а не прыгает. Тут сказывается различие в образе жизни.

Читать полностью »

Компания Eurocom пополнила свой ассортимент ноутбуком Sky X4C, который сам производитель называет мобильным суперкомпьютером. У новинки действительно есть отличительные черты, которые делают его необычным.

В первую очередь это использование графических ускорителей в форм-факторе плат MXM, то есть с возможностью их простой замены. При желании можно приобрести модель с младшим адаптером, а когда-то позже купить более производительную видеокарту и произвести замену.

Читать полностью »

Вступление

В данной статье я расскажу об известном алгоритме Хаффмана, а также о его применении в сжатии данных.

В результате напишем простенький архиватор. Об этом уже была статья на Хабре, но без практической реализации. Теоретический материал текущего поста взят из книги Роберта Лафоре «Data Structures and Algorithms in Java». Итак, все под кат!
Читать полностью »

Корпус DeepCool Matrexx 55 ADD-RGB WH выполнен в белом цвете

Компания DeepCool выпустила компьютерный корпус Matrexx 55 ADD-RGB WH, который допускает установку материнских плат типоразмера E-ATX, ATX, Micro-ATX и Mini-ITX.

Представленная новинка — это модификация решения Matrexx 55 ADD-RGB, анонсированного осенью прошлого года. Модель с приставкой WH окрашена в белый цвет, а боковая и фронтальная панели изготовлены из затемнённого закалённого стекла толщиной 4 мм.

Читать полностью »

Вслед за официальными изображениями старших моделей в серии Samsung Galaxy S10, немецкий ресурс WinFuture опубликовал рендеры младшей модели — Galaxy S10e, ранее известной как Galaxy S10 Lite. 

Активность мозга человека впервые транслировали в чёткую речь - 1
Схема метода реконструкции речи. Человек прослушивает слова, в результате активируются нейроны его слуховой коры. Данные интерпретируются четырьмя способами: сочетанием двух типов регрессионных моделей и двух типов речевых представлений, затем поступают в систему нейросетей для извлечения признаков, которые впоследствии используются для настройки параметров вокодера

Нейроинженеры Колумбийского университета (США) первыми в мире создали систему, которая переводит мысли человека в понятную, различимую речь, вот звукозапись слов (mp3), синтезированных по мозговой активности.

Наблюдая за активностью в слуховой коре головного мозга, система с беспрецедентной ясностью восстанавливает слова, которые слышит человек. Конечно, это не озвучивание мыслей в прямом смысле слова, но сделан важный шаг в этом направлении. Ведь похожие паттерны мозговой активности возникают в коре головного мозга, когда человек воображает, что слушает речь, или когда мысленно проговаривает слова.
Читать полностью »

Композиция против наследования, паттерн Команда и разработка игр в целом - 1

Дисклеймер: По-моему, статья об архитектуре ПО не должна и не может быть идеальной. Любое описанное решение может покрывать необходимый одному программисту уровень недостаточно, а другому программисту — слишком усложнит архитектуру без надобности. Но она должна давать решение тем задачам, которыё поставила перед собой. И этот опыт, вместе со всем остальным багажом знаний программиста, который обучается, систематизирует информацию, оттачивает новыки, и критикует сам себя и окружающих — этот опыт превращается в отличные програмные продукты. Статья будет переключаться между художественой и технической частью. Это небольшой эксперимент и я надеюсь, что он будет интересным.

— Слушай, я тут придумал отличную идею игры! — гейм-дизайнер Вася был взъерошен, а глаза — красные. Я ещё попивал кофе и холиварил на Хабре, чтобы убить время перед стенд-апом. Он выжидательно посмотрел на меня, пока я закончу писать в комментариях человеку, в чем он не прав. Он знал, что пока справедливость не восторжествует, а правда не будет защищена — смысла продолжать со мной разговор нету. Я дописал последнее предложение и перевел на него взгляд.

— В двух словах — маги с маной могут кастовать заклинания, а воины могут сражаться в близком бою и тратить выносливость. И маги и воины могут двигаться. Да, там ещё можно будет грабить корованы, но это уже следующей версии сделаем, короче. Покажешь прототип после стенд-апа, окей?

Он убежал по своим гейм-дизайнерским делам, а я открыл IDE.

Читать полностью »

Пока Vivo готовится представить свой новый смартфон с выезжающей камерой, известный блогер

JerryRigEverything добрался до модели Nex Dual, которая лишилась такого конструктивного решения, но зато обзавелась вторым экраном.


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js