Архив за 05 апреля 2015

Часть 1. Введение. Создание класса и добавление свойств. Расширение класса С++ с помощью Blueprint.
Часть 2. Классы геймплея. Структуры. Отражение (reflection) в Unreal. Object/Actor итераторы. Менеджер памяти и сборщик мусора.
Часть 3. Префиксы в именах классов. Целочисленные типы. Типы контейнеров. Итераторы контейнеров. Цикл For-each, хеш-функции.
Часть 4. Бонусная. Unreal Engine 4 для Unity разработчиков.

image

Эта статья является переводом части документации по UE4. Оригинальную статью вы можете найти пройдя по это ссылке.

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

Дальнейшие эксперименты по скрещиванию Volley и Loader привели меня к мысли о создании библиотеки. Чтобы вызывался Loader с параметрами и в одну строку. На подобии как это реализовано в Picaso. После пары вечеров что-то получилось…

JSON

{
"1":{"name":"Samsung","price":51200.6},
"2":{"name":"Lg","price":5400.6},
"3":{"name":"Alcatel","price":4500.6},
"4":{"name":"iPhone","price":4800.3},
"7":{"name":"iPad","price":2850.1}
}

Data

public class GoodsItem {
    String name;
    float price;
}

Loader

    private String url = "http://192.168.1.103/shop.json";
    private static final int LOADER_GOODS_ID = 1;
    Map<Integer, GoodsItem> mGoodsMap = new HashMap<Integer, GoodsItem>();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        ...
        FeedLoader.with(this).addLoader(LOADER_GOODS_ID, url, HashMap.class, new DelivererFeedLoader.Listener<Map<Integer, GoodsItem>>() {
            @Override
            public void onResponse(int loaderId, 
                Map<Integer, GoodsItem> goodsMap) {
                mGoodsMap = goodsMap;
                for (Map.Entry<Integer, GoodsItem> entry : mGoodsMap.entrySet()) {
                    Log.d(TAG , "Goods item : " + entry.getKey() + " : " + entry.getValue());
                }
            }
            @Override
            public void onErrorResponse(VolleyError data) {
                Log.d(TAG , "onErrorResponse :" + data);
            }
        }).start(LOADER_GOODS_ID, this);

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

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

Цели и задачи

Первая цель. В больших и средних проектах часто необходимая информация не доходит до адресатов в нужное время. Необходимо вовремя донести информацию до заинтересованных лиц.

Вторая цель. Между удалёнными командами должна быть налажена коммуникация. Если работа одной команды заблокирована бездействием или какими-то действиями другой команды, то об этом следует сообщить как можно быстрее.

Третья цель. Люди, занятые на большом проекте, часто перегружены работой. Не хватает времени на непосредственную работу – не то, что подготовить отчёт. Тем не менее, лучше придерживаться принципа – упрощать работу коллегам. Как бы вы ни были заняты, а ваши коллеги могут быть заняты сильнее. Поэтому, не смотря на то, что часто необходимая информация может быть извлечена потребителями самостоятельно, лучше готовить данную информацию для ваших коллег самим. Согласитесь, что гораздо легче прочитать уже кем-то подготовленный отчёт, чем извлекать ту же самую информацию самостоятельно из системы контроля задач.
Читать полностью »

40-летнему юбилею корпорации Microsoft посвящается.

Видео от пользователя: Windows 3.11 внутри ReactOS - 1

На видео один из пользователей нашего проекта демонстрирует работу Windows 3.11 внутри ReactOS.

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

Предлагаем вашему вниманию подборку с ссылками на полезные ресурсы, интересные материалы и IT-новости.
Сегодня опять в слегка сокращенном формате.

Дайджест интересных материалов из мира веб-разработки и IT за последнюю неделю №154 (30 марта — 5 апреля 2015) - 1
Читать полностью »

Продолжим писать наше расширение для Chrome, которое добавляет ссылку «Скачать» для каждой аудиозаписи вконтакте.
В прошлый раз мы изменяли наш раздел Мои Аудиозаписи так.

Оригинал Результат

Но, в тот раз, у нашего расширения был существенный недостаток: оно не работало при переходе со страницы на страницу.
Если зайти на главную страницу, потом перейти в Мои Аудиозаписи, то ссылки у песен не появлялись.
Напомню, вконтакте при переходе со страницы на страницу не обновляет страницу в классическом понимании, а программно изменяет разметку страницы, и обновляет адресную строку. Это не является классическим браузерным переходом на новую страницу, и поэтому наше расширение не обновлялось.
Давайте это исправим.

Как и прежде, наше расширение будет состоять из трех файлов — файла описания (manifest.json), внедряемого js скрипта (vk_inject.js), и внедряемого файла стилей (vk_styles.css).
Читать полностью »

Ассортимент видеокарт Colorful пополнился моделью iGame GeForce GTX 960 Kudan — компактным вариантом видеокарты Nvidia GeForce GTX 960, который ввиду небольшой длины вполне годится для использования в корпусах, рассчитанных на установку системных плат типоразмера Mini-ITX. Аналоги iGame GeForce GTX 960 Kudan ранее представили KFA2, Gigabyte, Asus, EVGA и Zotac, а теперь черед дошел и до Colorful.

Имплантация геомагнитного компаса в мозг крысы прошла удачно - 1

Зачем зрение, если в мозг встроен цифровой компас, чувствительный к геомагнитному полю? Эксперименты показали, что животные способны довольно быстро адаптироваться к новому имплантату в мозге — и приобретают шестое чувство, которое во многом заменяет зрение. Возможно, в будущем такие гаджеты начнут внедрять в мозг людей. Представьте, что в полной темноте человек спокойно ориентируется на местности, как это делают крысы в лабиринте Токийского университета.
Читать полностью »

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

Конвертируем svg to png - 1Иногда появляется необходимость сохранить svg в png средствами браузера. К сожалению, браузер не имеет волшебного api, который позволил бы это сделать без различных хаков. Что же делать, если все таки хочется добиться желаемого?
Читать полностью »


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