Pull to refresh
41
0
Шевченко Андрей @Helsq

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

Send message

Обзор Support Library Android SDK v26

Reading time 5 min
Views 6.8K
26 версия Android SDK принесла новые возможности в наши Андроид приложения, включая шрифты как ресурсы, загружаемые шрифты, поддержка эмоджи, автоматические размеры TextView, управляемые физикой анимации через Spring and Fling, обратная совместимость для векторных анимаций, и уменьшения библиотеки при помощи повышения минимальной версии sdk до 14.

Если вы не знакомы с Android Support Library, то знайте, что вам нужно компилировать приложение на том же уровне Android API, что и последняя версия Android Support Library. Другими словами, убедитесь, что тег TargetFramework установлен на 8.0 (API 26). В таком случае приложения скомпилируется при помощи последней версии Android Support Library(V26).

Поддержка шрифтов в XML


Теперь вы можете помещать шрифты в новую папку ресурсов шрифта font. Используйте Resources.GetFont или ResourcesCompat.GetFont, чтобы скачать ресурсы шрифта в ваше приложение.

Пример: определение шрифта в XML в папке Resourcesfont:

<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android">
    <font
        android:fontStyle="normal"
        android:fontWeight="400"
        android:font="@font/lobster_regular" />
    <font
        android:fontStyle="italic"
        android:fontWeight="400"
        android:font="@font/lobster_italic" />
</font-family>


Использование ресурса шрифта в View:

<TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:fontFamily="@font/lobster"/>


Читать дальше →
Total votes 18: ↑18 and ↓0 +18
Comments 5

Анимации в Android по полочкам (Часть 1. Базовые анимации)

Reading time 11 min
Views 93K
Всем привет!

Сегодня я хочу немного рассказать про анимацию в Android. Думаю для всех достаточно очевидный факт, что анимации могут украсить наше приложение. Но я считаю, что они могут намного больше. Первое это — хорошие анимации даже при скромной графике могут вывести наше приложение на абсолютно новый уровень. Второе — это дополнительный инструмент для общения с пользователем, позволяющий фокусировать внимание, подсказывать механики приложения, и многое другое… но это отдельная большая тема.

Сегодня мы поговорим об инструментах для создания анимации. К сожалению, так получилось, что в Android достаточно много способов что либо анимировать, и по началу в них очень легко запутаться. Я постараюсь привести максимально общую классификацию и оставлю ссылки исключительно на документацию, т.к. туториалов можно найти предостаточно. Надеюсь эта статья поможет уложить в голове всё по полочками и, при необходимости создать анимацию, выбрать наиболее подходящий способ.
Читать дальше →
Total votes 37: ↑36 and ↓1 +35
Comments 20

Долой таблички! Как выучить английские времена

Reading time 5 min
Views 245K


Времена в английском языке традиционно считаются одной из самых сложных тем в обучении. Они прочно ассоциируются с зазубриванием длинных малопонятных таблиц и запоминанием неочевидных правил. На самом деле, все не так. Рассказываем, как быстро овладеть временами и их аспектами, чтобы начать говорить по-английски, не спотыкаясь.
Читать дальше →
Total votes 77: ↑72 and ↓5 +67
Comments 97

Укрощаем UEFI SecureBoot

Reading time 11 min
Views 167K
Данные обещания надо выполнять, тем более, если они сделаны сначала в заключительной части опуса о безопасности UEFI, а потом повторены со сцены ZeroNights 2015, поэтому сегодня поговорим о том, как заставить UEFI SecureBoot работать не на благо Microsoft, как это чаще всего настроено по умолчанию, а на благо нас с вами.
Если вам интересно, как сгенерировать свои собственные ключи для SecureBoot, как установить их вместо стандартных (или вместе с ними), как подписать ваш любимый EFI-загрузчик, как запретить загрузку неподписанного или подписанного чужими ключами кода, как выглядит интерфейс для настройки SecureBoot у AMI, Insyde и Phoenix и почему это, по большому счету, совершенно не важно — добро пожаловать под кат, но опасайтесь большого количества картинок и длинных консольных команд.
Войти в клетку
Total votes 45: ↑45 and ↓0 +45
Comments 50

Лоукост VDS хостинг в России. Возможно ли?

Reading time 8 min
Views 45K
Айхор

Впечатлившись успехами американского хостера DigitalOcean (чего уж скрывать), мы в 2014 году решили создать недорогой и качественный VDS хостинг в России. На тот момент в нашем распоряжении был небольшой «дата-центр» из 4 стоек, располагавшийся в здании бывшего общежития, а в качестве системы охлаждения использовалось две недорогие сплит-системы. Канал на 100 мегабит, 2 древних маршрутизатора Cisco и сотня относительно новых серверов. Было бы смешно обещать клиентам хорошее качество с таким Starter Kit-ом. Но мы решили постараться достигнуть своей цели. Попробуем дать ответ на заголовок данного поста, и параллельно расскажем о нашем опыте создания лоукост хостинга.
Читать дальше →
Total votes 65: ↑60 and ↓5 +55
Comments 232

Готовим ASP.NET5, выпуск №5 — Gulp и Bower спешат на помощь

Reading time 5 min
Views 17K
Мы продолжаем нашу колонку по теме ASP.NET5 публикацией от Вячеслава Бобика — .NET-разработчика из компании Radario. В этой статье Вячеслав интересно рассказывает о применении с ASP.NET5 популярных инструментов автоматизации Gulp и Bower c интеграцией в Visual Studio. Предыдущие статьи из колонки всегда можно прочитать по ссылке #aspnetcolumn — Владимир Юнев

В наши дни client-side разработка становиться не менее сложной, чем разработка server-side. Современному frontend разработчику приходится решать множество рутинных задач, таких как: препроцессинг Lass/Scss/Stylus, написание вендорских префисксов, поспроцессинг css, склеивать стили в один файл и многое другое.


Так же, если в команде больше одного frontend разработчика, не плохо бы использовать линтеры для валидации js файлов еще до того как они попадут в продакшн. Если выполнять все эти задачи вручную, то на это уйдет львиная доля рабочего времени, а на решение бизнес задач ничего не останется.

Поэтому у frontend разработчиков есть довольно мощные инстументы, которые берут на себя выполнение множетсва рутинных задач, такие как: gulp и bower, а в новом ASP.NET5 они поставляются из коробки. Давайте рассмотри на примере ASP.NET5 приложения, как мы можем использовать gulp и bower.
Читать дальше →
Total votes 17: ↑15 and ↓2 +13
Comments 32

Недопонимание про async/await и многопоточность в C#

Reading time 4 min
Views 80K
Привет, Хабр! Тема async/await в .NET Framework и C# 5.0 не нова и объезженна: все давно знают, что это, как оно работает, все знакомы с тем скромным фактом, что это очень текучая абстракция и поведение зависит от SynchronizationContext. Об этом очень много писали на хабре, ещё чаще этот вопрос размусоливался в блогах различных респектабельных персон .NET-сообщества.

Тем не менее, мне очень часто приходится сталкиваться с тем, что не только новички, но и матёрые тимлиды не совсем понимают, как правильно пользоваться этим инструментом в разработке.
Читать дальше →
Total votes 27: ↑24 and ↓3 +21
Comments 16

Генерация маппинга через t4 шаблоны

Reading time 5 min
Views 10K

Здравствуйте! Наш проект уже достиг такой стадии когда встал вопрос об оптимизации производительности. После анализа слабых мест, одно из возможных путей для оптимизации был способ избавления от AutoMapper’а, он хоть и не является самым тормозным местом, но является тем местом, которое мы можем улучшить. AutoMapper используется у нас для маппинга DO объектов в DTO объекты для передачи через WCF сервис. Вручную написанный метод с созданием нового объекта и копированием полей работает быстрее. Писали маппинг вручную — безрадостная рутина, часто были ошибки, забытые поля, забытые новые поля, поэтому решили написать генерацию маппинга через t4 шаблоны.

По сути нам надо было сверить список пропертей и типов, и написать копирование, но не всё так гладко в датском королевстве.
Читать дальше →
Total votes 10: ↑10 and ↓0 +10
Comments 23

Реактивные расширения

Reading time 5 min
Views 26K


Это вторая публикация по материалам нашей внутренней конференции Sync.NET. Первая публикация была посвящена многопоточности в .NET.

Реактивные расширения — звучит настолько круто, что напрашивается связь с реактивными самолетами. Никакой связи, конечно, нет, но это действительно отличный инструмент. Reactive происходит от слова react (реагировать), подразумевается, что система реагирует на изменения состояния. В процессе развития программного обеспечения возникла потребность, чтобы система умела реагировать на множество источников данных, была устойчива и чтобы разные модули не были тесно связаны.

Как правило, мы пишем код, в котором есть методы и функции, которые мы вызываем, получаем результат и его обрабатываем. Rx в свою очередь позволяет создавать события и обработчики, которые будут реагировать на них. Таким образом, система будет состоять из последовательности событий, которые будут сообщать об изменении состояния и должным образом реагировать на них.
Читать дальше →
Total votes 14: ↑14 and ↓0 +14
Comments 6

Мое знакомство с ASP.NET MVC в Visual Studio 2015 на примере построения прототипа МИС

Reading time 30 min
Views 51K
В этом году в качестве курсовой работы мне нужно было написать несложную медицинскую информационную систему (МИС) для небольшой частной клиники по лечению эпилепсии.

База данных пациентов в клинике уже была, написана она была еще в далеком 1998 году в Microsoft Access того времени (причем даже с красивым пользовательским интерфейсом), но вот работала она только в одном месте — на компьютере заведующего, да еще и поддерживать ее стало совершенно невозможно. Значит, давно назрела необходимость внедрять что-то новое!

Сказано — сделано. Работать надо было быстро (все-таки сдавать курсовую пора) и при этом хотелось сделать работу максимально интересной для себя. Я давно хотел разобраться с ASP.NET MVC, был немного знаком с C# и общими принципами MVC, поэтому скачал последнюю Visual Studio 2015 RC и принялся за работу.

Под катом — весь процесс знакомства с технологией и разработки такой системы со всеми встретившимися подводными камнями. Данная статья пригодится всем, кто знаком с программированием и когда-то делал блог по туториалу для любого MVC фреймфорка и хочет узнать, как же сделать что то более интересное.
Читать дальше →
Total votes 18: ↑16 and ↓2 +14
Comments 8

У семи программистов адрес без дома

Reading time 4 min
Views 96K
Привет, Хабр!

Мы в HumanFactorLabs парсим адреса в особо крупных размерах. Наши продукты упрощают ввод контактных данных и работу с ними.

За 10 лет работы в результате анализа многочисленных исключений в российских адресах мы выработали правила хранения адресов, при соблюдении которых вы не потеряете важную информацию.

Недавно на Хабре нас попросили привести примеры необычных адресов, в связи с чем и написана эта статья.
Читать дальше →
Total votes 104: ↑101 and ↓3 +98
Comments 211

Примеры использования MongoDB в e-commerce (часть 2)

Reading time 25 min
Views 28K


[ Первая часть ]

В этом посте будет то, что не поместилось в первую часть. Это некоторые операторы, которые есть в aggregation framework и достаточно вольный перевод трех статей из раздела экоситема на сайте со справкой к MongoDB, описывающих некоторые случаи применения для интернет-коммерции.

Случаи использования разделены там на восемь статей, которые условно можно разделить на три группы. Мне показались самыми интересными для перевода три материала, связанные с e-commerce.

  1. Операторы в aggregation framework
  2. Каталог продуктов
  3. Корзина и управления остатками на складе
  4. Иерархия категорий

Читать дальше
Total votes 10: ↑10 and ↓0 +10
Comments 7

Async/await в C#: подводные камни

Reading time 6 min
Views 104K
Я бы хотел обсудить подводные камни, которые наиболее часто встречаются при работе с фичей async/await в C#, а также написать про то, как их можно обойти.
Читать дальше →
Total votes 36: ↑35 and ↓1 +34
Comments 46

Анонс наших конференций по C# на апрель

Reading time 3 min
Views 5.5K
Привет, коллеги!

Совсем недавно мы провели конференцию, посвященную ASP.NET технологиям и всему что с ними связанно. Она имела успех, о чем можно судить по полному залу и звонкам с вопросами: «Может еще билетик будет все же?». Более подробно мы расскажем позже, но можно посмотреть фотоотчет, а сейчас хочется рассказать о двух новых конференциях, которые мы планируем провести в апреле.

Прежде всего хотим сказать, что быть вегетарианской конференцией мы не планировали, поэтому (но не только) мы сменили площадку и меню теперь будет с мясом!



Первая конференция UI Desktop & Business Application (11 апреля) посвящается «невидимым» с облаков разработчикам настольных корпоративных приложений и в целом всем, кто занимается разработкой и поддержкой бэкенда или разработкой сложного корпоративного интерфейса.

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

Тематика докладов:
  • разработка системы обновлений
  • системы плагинов — MEF
  • интересные бизнес-кейсы связанные со стационарной разработкой
  • фреймворки для UI, тестирование UI
  • встраивание в систему
  • особенности или какие-то интересные возможности связанные с EF
  • и так далее, все что специфично для Windows программ

Регистрация уже началась. Воспользуйтесь возможностью приобрести билет по начальной цене.

Узнать о второй конференции посвященной API
Total votes 22: ↑16 and ↓6 +10
Comments 3

Несколько интересностей и полезностей для веб-разработчика #40

Reading time 5 min
Views 72K
Доброго времени суток, уважаемые хабравчане. За последнее время я увидел несколько интересных и полезных инструментов/библиотек/событий, которыми хочу поделиться с Хабром.

NativeScript




Открытый фреймворк для создания мобильных приложений под iOS, Android и Windows Phone основанный на NodeJS. И весь цимус в том, что это не очередная кроссплатформенная оболочка над WebView (аля PhoneGap), NativeScript со слов разработчиков обеспечивает на JavaScript такие же возможности, какие обеспечивают нативные Objective-C, Java или .NET.

Также хочу упомянуть о NW.js, который до появления IO.js назывался Node-Webkit. Проект по такому же принципу позволяет писать десктопные приложения под Windows, Mac и Linux с помощью веб-технологий. Более того микроконтроллеры, умные дома, интернет вещей, Oculus Rift, Nest выпускают API на JS. Вспоминая все эти новости, хочется сказать, что JavaScript все чаще и чаще представляется как унифицированное средство для кроссплатформенной разработки.
Читать дальше →
Total votes 39: ↑37 and ↓2 +35
Comments 9

CLRium #2: ASP.NET и DNX (.Net Execution Environment) – на новейшем ядре CoreCLR. Отдыхаем душой на Enterprise с Roslyn

Reading time 4 min
Views 8.8K
Что мы можем накопать в Интернетах про самое свежее, о чем есть только слухи? Наш ответ – ничего, что могло бы пролить свет на вопрос. Например, что такое DNX? Репозиторий проекта нам говорит:

DNX (среда исполнения .Net) – содержит код, необходимый для загрузки приложения и его работы, в том числе систему сборки, SDK и CLR хоста.

Лично мне до недавних пор это не говорило ровным счетом ничего, как, наверное, и вам. А ведь это – будущее ASP.NET.

Или, например, многие не понимают, отчего все сходят с ума от возможности запуска ASP.NET 5 на Linux под новейшим ядром CoreCLR… А ведь не сегодня – завтра начнут появляться вакансии разработчиков ASP.NET под Линукс и все мы с вами вдруг поймем: мы старики, а молодые – уже изучили и знают, захватив все дорогостоящие вакансии.

И вообще… Сколько рантаймов сейчас? Куда делся мир с одним-единственным CLR, и почему он вдруг перестал всех устраивать??

Как узнать первым?
Total votes 23: ↑20 and ↓3 +17
Comments 6

Фантастические фильмы для долгих зимних вечеров

Reading time 5 min
Views 71K


Около года назад мы опубликовали подборку интересных фантастических сериалов. В январе поэкспериментировали с новинками фантастической литературы и даже настольными играми из всё той же фантастики. Давайте теперь поговорим о полнометражных фантастических фильмах.

Полнометражная фантастика — тема необъятная. Количество снятых за всю историю кинематографа фантастических фильмов наберётся великое множество. Поэтому мы решили ограничиться некими временными рамками, скажем, последними десятью годами.
Читать дальше →
Total votes 78: ↑57 and ↓21 +36
Comments 136

Технологии межзвездных путешествий в научной фантастике

Reading time 14 min
Views 56K

[source]

Говоря «научная фантастика», в большинстве случаев мы подразумеваем под этим "космическая научная фантастика". В том смысле, что будущее нам уже кажется практически немыслимым без освоения космоса.
И если с освоением нашей Солнечной системы всё выглядит относительно просто и понятно — способы передвижения отличаются только степенью наплевательства авторов к законам импульса, инерции и астродинамики, то с межзвездными перелётами всё гораздо интереснее. Варианты есть самые разные — от классических и никак не оскорбляющих физику с отправкой кораблей на обычной реактивной тяге, груженых либо мороженными тушками либо оборудованные для длительного проживания на них популяции людей в течении поколений, до совсем уж экзотических, вроде использования Ада в качестве промежуточной остановки.

В этой статье я постарался составить обзор способов доставки бренных человеческих тел от одной звездной системы к другой, которым пользуются наиболее популярные НФ произведения, плюс один мой личный фаворит.
Warp five, engage!
Total votes 75: ↑73 and ↓2 +71
Comments 174

Звоним на мобильные телефоны из браузера с записью разговоров

Reading time 6 min
Views 79K


В сегодняшнем мире тонких клиентов, Интернета, продвинутых веб-интерфейсов появляется все больше задач, связанных с необходимостью совершения звонков из браузера/принятия звонков в браузер. Это, черт возьми, удобно! Сидит сотрудник перед монитором, выбирает клиента, нажимает позвонить — и, пока идет дозвон, на этой же странице просматривает его карточку, освежает в памяти последние договоренности и намеченные шаги.

Или другой сценарий — входящий в компанию звонок. Как здорово, когда ты в качестве клиента звонишь на безликий 8800 и девушка на том конце телефона отвечает тебе приятным голосом — здравствуйте, Алексей (подставить_свое_имя)! Это производит потрясающий эффект. Когда вместо «назовите себя, номер паспорта и имя кота, информация грузится — послушайте шестую симфонию Моцарта» оператор уже поднимая трубку знает, как вас зовут и видит по вам всю информацию. Сервис, что и говорить.

Но есть ли возможность реализовать такую систему без погружения в дебри настройки АТС — максимально быстро и минимальной кровью? Желательно еще, чтобы все разговоры записывались для целей контроля и обучения сотрудников. Ответ — конечно, погнали под кат.
Читать дальше →
Total votes 51: ↑46 and ↓5 +41
Comments 20

Information

Rating
Does not participate
Location
Новосибирск, Новосибирская обл., Россия
Date of birth
Registered
Activity