Архив за 24 сентября 2017 - 3

Ученые раскрыли чертежи, по которым строились египетские пирамиды

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

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

Дайджест с прекрасным номером 222 – мы снова разбираемся с работой Android, новой iOS, Kotlin, дизайном и маркетингом приложений и игр.

Дайджест интересных материалов для мобильного разработчика #222 (18 — 24 сентября) - 1Читать полностью »

Привет! Представляю вашему вниманию перевод статьи ViewModels and LiveData: Patterns + AntiPatterns автора Jose Alcérreca.

View и ViewModel

Распределение ответственностей

Типичное взаимодействие объектов приложения, построенное с помощью Архитектурных Компонентов:

image

В идеале ViewModel не должна ничего знать про Android. Это улучшает тестируемость и модульность, снижает кол-во утечек памяти. Основное правило — в Вашей ViewModel не должно быть импортов android.* (за исключением вроде android.arch.*). Это относится и к Presenter.

ViewModel (и Presenter) не должны знать о классах фреймворка Android

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

В конце 1970-х годов в китайском посёлке Шэньчжэнь жили 30 тысяч человек. Основу экономики составляла рыбная ловля, а к западу от города добывали соль. Из преимуществ у посёлка было лишь удобное для торговли расположение порта в дельте Жемчужной реки.

Сегодня это 11-миллионный город, где делают телефоны Apple, где расположены заводы Samsung, Huawei, ZTE, Lenovo, где на рынке можно за сотню долларов купить все комплектующие и собрать iPhone. Это один из самых технологичных городов мира с развитым производством и инновационной экосистемой, направленной на копирование, воспроизведение и создание новых технологий. Здесь реализована идея сообществ, работают инкубаторы, через этот город в Китай поступают иностранные инвестиции.

Предлагаю поговорить о политике, которая привела к созданию Шэньчжэня, институте развития, ответственном за это, и о сложившейся в городе инновационной экосистеме, которую создали в условиях коммунизма.

Шэньчжэнь: от 30-тысячного посёлка до 11-миллионного города будущего - 1
Международный финансовый центр Пинань (Pingan International Finance Centre) находится на 4 строчке в рейтинге самых высоких небоскрёбов
Читать полностью »

iPhone 8: вялые продажи, 6 баллов по шкале ремонтопригодности iFixit - 1

Новый iPhone от компании Apple был представлен совсем недавно. И как обычно это случается, многие блогеры, журналисты и просто гики постарались обзавестись этим устройством первыми. Кто-то просто ради того, чтобы быть первым и радоваться этому в социальных сетях. Кто-то — для того, чтобы написать обзор устройства. Ну а ребята из iFixit приобрели этот девайс для того, чтобы его разобрать и понять, насколько он ремонтопригоден.

Команда проекта разобрала смартфон еще в пятницу, и почти сразу выложила результаты анализа «внутренностей» и свои выводы о том, насколько просто будет разобрать и починить девайс. Как оказалось, разница с iPhone 7 не слишком большая. iPhone 7 Plus получил в 2016 году 7 баллов от iFixit. Причина, по которой iPhone 8 досталось меньше баллов — слишком много клея и сложности с отделением стеклянной задней стенки.
Читать полностью »

IMaskjs — простое маскирование в браузере - 1

Нам нужна была работающая и удобная библиотека без зависимостей для маскирования ввода — и мы ее сделали. Через полгода с момента выпуска нулевой версии была выпущена версия 1.0 с многочисленными изменениями и улучшениями:

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

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

Малярийный штамм мутировал и быстро распространяется

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

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

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

Ученые рассказали, какими природными веществами можно отбеливать зубы

Все люди хотели бы иметь белоснежную улыбку. Для этого он используют разнообразные средства для очистки и отбеливания эмали. Но стоит отметить, что природные отбеливатели работают ничуть не хуже. Они также эффективны, но при этом имеют меньше побочных эффектов, чем химические вещества. Ученые рассказали, что это за продукты.

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

Представляю вашему вниманию типичные варианты использования Observable объектов в компонентах и сервисах Angular 4.

Типичное использование Observable объектов в Angular 4 - 1

Подписка на параметр роутера и мапинг на другой Observable

Задача: При открытии страницы example.com/#/users/42, по userId получить данные пользователя.

Решение: При инициализации компоненты UserDetailsComponent мы подписываемся на параметры роутера. То есть если userId будет меняться — будер срабатывать наша подписка. Используя полученный userId, мы из сервиса userService получаем Observable с данными пользователя.

// UserDetailsComponent

ngOnInit() {
  this.route.params
    .pluck('userId') // получаем userId из параметров
    .switchMap(userId => this.userService.getData(userId))
    .subscribe(user => this.user = user);
}

Типичное использование Observable объектов в Angular 4 - 2Читать полностью »


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