Как стать автором
Обновить
Дмитрий Адодин @ad1Dimaread⁠-⁠only

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

Отправить сообщение

Запускаем Xamarin.Forms на Windows 7

Время на прочтение3 мин
Количество просмотров12K
Xamarin.Forms достаточно интересный и перспективный фреймворк, который сейчас активно развивается и позволяет достаточно быстро получить кроссплатформенное приложение. По умолчанию Xamarin.Forms поддерживает 5 платформ, а именно: Android, iOS, WP, WinRT, UWP.

Несмотря на то, что Microsoft старается активно пересадить своих пользователей на Windows 10, на сегодняшний день Windows 7 все еще очень распространен во многих организациях, и возникает необходимость портирования/разработки приложения под Windows 7.
Читать дальше →
Всего голосов 25: ↑24 и ↓1+23
Комментарии5

Что скрывает Array#sort: реверс-инжиниринг подручными средствами

Время на прочтение4 мин
Количество просмотров19K
Как вам, возможно, известно, спецификация языка JavaScript не предписывает какой-то определённой реализации метода sort у массивов. Алгоритм, находящийся «под капотом», может отличаться (и отличается) в различных браузерах. Теоретически, можно представить себе ситуацию, когда от того, как именно реализована сортировка массивов в конкретном движке, зависит производительность вашего веб-приложения.
Скрытый текст
Очень сильно сомневаюсь, что так может случиться на практике, но как человек, написавший в своё время определённое количество курсовых и дипломных работ, я просто не смог обойтись без секции «применение в народном хозяйстве».

Если речь идёт о браузере с открытым исходным кодом, то можно просто открыть этот код и посмотреть, какой там использован алгоритм. Однако существуют браузеры с закрытым исходным кодом (не будем показывать пальцем). Что делать в таком случае?

Поскольку мы на Хабре, я готов предположить, что некоторые читатели уже потянулись к своим любимым дизассемблерам, в то время как некоторые другие готовятся звонить своим друзьям из одной небольшой и нетвёрдой компании. Однако сегодня мы не будем копаться в машинном коде или использовать инсайдерскую информацию. Мы будем смотреть весёлые картинки.


Но зачем, сэмпай?
Всего голосов 50: ↑49 и ↓1+48
Комментарии40

Готовим Xamarin.Forms: настройка окружения и первые шаги

Время на прочтение7 мин
Количество просмотров22K


Друзья! Мы продолжаем колонку на тему разработки мобильных приложений на Xamarin. И
после небольшого перерыва готовы вернуться к рассмотрению особенностей использования Xamarin.Forms при разработке бизнес-приложений для iOS и Android. Все статьи из колонки можно будет найти и прочитать по ссылке #xamarincolumn

В сегодняшней статье мы рассмотрим вопросы производительности приложений и оптимизации самого процесса разработки.

Правильные пчелы


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

Начнем мы с компьютеров, на которых будет идти разработка.
Читать дальше →
Всего голосов 22: ↑21 и ↓1+20
Комментарии8

Нейронная сеть Хопфилда на пальцах

Время на прочтение7 мин
Количество просмотров81K

Статья посвящена введению в нейронные сети и примеру их реализации. В первой части дано небольшое теоретическое введение в нейронные сети на примере нейронной сети Хопфилда. Показано, как осуществляется обучение сети и как описывается ее динамика. Во второй части показано, как можно реализовать алгоритмы, описанные в первой части при помощи языка С++. Разработанная программа наглядно показывает способность нейронной сети очищать от шума ключевой образ. В конце статьи есть ссылка на исходный код проекта.


Читать дальше →
Всего голосов 20: ↑19 и ↓1+18
Комментарии22

Быстрое создание MVP (minimum viable product) на базе Microsoft Azure и Xamarin.Forms

Время на прочтение7 мин
Количество просмотров17K
Друзья! Мы открываем в нашем блоге колонку на тему разработки мобильных приложений на Xamarin. И первая публикация от Вячеслава Черникова — руководителя отдела разработки компании «Binwell» затрагивает нюансы кроссплатформенной разработки, а также быстрого создания MVP (minimum viable product) мобильного сервиса на базе Xamarin.Forms и Azure Mobile Services. Все статьи из колонки можно будет найти и прочитать по ссылке #xamarincolumn

Путь от Qt до Xamarin.Forms, или особенности кросс-платформенной разработки


В 2008 году мы решили перейти из сферы продажи мобильных приложений к их разработке, и в качестве отправной точки был выбран Qt, так как по спецификациям он охватывал сразу Symbian, Maemo (потом Nokia MeeGo) и Windows Mobile. Плюсами была возможность разработки напрямую в Linux, зрелость самого фреймворка, а также наличие исходных кодов. На Qt писать было приятно: архитектура, логика самого фреймворка и его компонентов, C++, удобная среда разработки. Но когда дело дошло до запуска на различных мобильных ОС, то приходилось еще очень долго работать с нюансами. Для Windows Mobile собирать и пересобирать библиотеки, разбираться в API от Symbian, прописывать зависимости и конфиги для Maemo/Meego.

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


Читать дальше →
Всего голосов 25: ↑21 и ↓4+17
Комментарии29

Первая версия Visual Studio Code 1.0 — путь от простого редактора до мощного инструмента

Время на прочтение2 мин
Количество просмотров52K


Отличная новость завершает рабочую неделю - версия Visual Studio Code 1.0 вышла в релиз!

Мы с удовольствием делимся этим событием с разработчиками и вспоминаем, что с момента первого публичного выпуска превью Visual Studio Code прошел почти год, и за это время инструмент был установлен и протестирован 2 миллионами разработчиков.

Начинавшийся в качестве эксперимента, редактор кода превратился за это время в новый кросс-платформенный инструмент разработки, отлично дополнивший всю историю платформы для создания программного обеспечения средствами Visual Studio. Сейчас Visual Studio Code предоставляет расширенные возможности редактирования, навигации, отладки и встроенной поддержки Git. Скачать и установить Visual Studio Code 1.0 можно для операционных систем Windows, Linux и OS X.

Выпуск Visual Studio Code 1.0 — это не просто набор новых возможностей редактора, дополнивших предыдущие бета-версии, это результат плотной работы команды с сообществом, совместная работа над ошибками, улучшением производительности и т.д. Ведь изначально, VS Code создавался, как инструмент для разработчиков веб-приложений, ориентированных на JavaScript и TypeSript.
Читать дальше →
Всего голосов 44: ↑38 и ↓6+32
Комментарии84

Небольшое сравнение производительности UWP/WinRT API языковых проекций

Время на прочтение3 мин
Количество просмотров13K
WinRT Language projections

На мой взгляд, в разработке UWP/WinRT приложений сложилась необычная ситуация: компания продвигает использование нативного SDK из управляемой среды. Мне стало интересно, насколько эффективен данный подход. И для ответа, я решил написать несколько приложений, решающих одну и туже задачу, полагаясь на средства предоставляемые UWP/WinRT API.
За результатами моего небольшого теста добра пожаловать под кат.
Читать дальше →
Всего голосов 14: ↑13 и ↓1+12
Комментарии21

О ресторанном столе UHD-разрешения и прочих интерактивных технологиях от Kodisoft

Время на прочтение6 мин
Количество просмотров19K

Можно ли придумать что-то принципиально новое в обустройстве ресторана? Только действительно в корне новое, а не то, что приходит в голову в первую минуту. Еще усложним задачу: новация должна вызывать восторг у посетителей и быть экономически обоснованной. Если вы считаете эту задачу безнадежно нерешаемой, предлагаем ознакомиться с опытом украинской компании Kodisoft, разработавшей интерактивную ресторанную инфраструктуру нового поколения, включающую уникальный стол-планшет разрешения 4k.
О проекте от первого лица рассказывает его основатель Дмитрий Костик.
Читать дальше →
Всего голосов 20: ↑19 и ↓1+18
Комментарии91

Пять шагов по оптимизации производительности приложения для Андроид

Время на прочтение6 мин
Количество просмотров30K
В этой небольшой статье я хочу поделиться с вами опытом, как программно оптимизировать производительность приложения Андроид за 5 простых шагов на примере создания цифровой версии игры «Корона Эмбера».

До создания серьезных приложения со сложной структурой View и Layout'ов мы особо не задумывались над тем, как простые и логичные действия в стиле «смотрите, я набросал дизайн из лэйаутов» могут серьезно замедлить работу всей программы.

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

В статье я собрал наш успешный опыт и облёк его в удобную и читабельную форму, полезную для тех, кто все еще гуглит «как программно оптимизировать приложение под Андроид» или «почему мое приложение лагает».
Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии14

Фишки XAML-разработчика: композитные конвертеры

Время на прочтение3 мин
Количество просмотров6.2K
Статья будет посвящена простому, но эффективному паттерну — Composite Converter [составной конвертер].
image
Читать дальше →
Всего голосов 11: ↑8 и ↓3+5
Комментарии0

Офис как Платформа: как развивается проект Notegram для OneNote

Время на прочтение5 мин
Количество просмотров5.1K
Перед вами продолжение истории успеха проекта Notegram от первого лица — Дмитрия Конева — разработчика проекта, который создал интересный проект, расширяющий возможности приложения Office OneNote. В продолжении своей истории Дмитрий рассказывает про развитие проекта и применение новых техник при разработке для Office 365. Все статьи колонки «Офис как Платформа» вы всегда можете найти по ссылке #officeplatform — Владимир Юнев.
Недавно я выпустил второе обновление для моего проекта, Notegram. Notegram – это веб-приложение для Microsoft OneNote, позволяющее быстро делиться шаблонами, без каких-либо дополнений.


Самая главная деталь в этом обновлении – новый шаблон календаря, теперь позволяющий выбрать год и месяц. Так же я немного улучшил дизайн, и во время написания этой статьи добавил еще два новых шаблона:
Читать дальше →
Всего голосов 9: ↑9 и ↓0+9
Комментарии10

Публикация HTML5-приложений в AppStore без Mac

Время на прочтение2 мин
Количество просмотров14K
Многие разработчики гибридных мобильных приложений сталкиваются с проблемой подписи и публикации iOS-приложений без использования Mac.

С Android все более или менее просто: устанавливаем SDK (под Windows, Mac или Linux), собираем приложение, а публикация apk в Google play осуществляется через веб-интерфейс. С Apple такой номер не проходит: для генерации ключа, подписи приложения и публикации ipa в AppStore нужен Mac. Как решить эту проблему в Windows?
Читать дальше →
Всего голосов 23: ↑19 и ↓4+15
Комментарии15

Исходный код JavaScript-движка Microsoft Edge будет открыт в январе

Время на прочтение5 мин
Количество просмотров13K
В конце прошлой недели на конференции JSConf US Last Call (Флорида, США) мы анонсировали, что откроем исходный код ключевых компонентов нашего JavaScript-движка Chakra, используемого в Microsoft Edge, в виде проекта ChakraCore. Исходный код будет доступен на GitHub под MIT лицензией в следующем месяце.


Gaurav Seth на сцене JSConf US Last Call анонсирует ChakraCore. Слайды доступны на GitHub.

Chakra – один с лучших движков JavaScript с самым большим покрытием возможностей ES2015 и предсказуемыми производительностью, надежностью и масштабируемостью. Мы предполагаем, что ChakraCore может использоваться в тех сценариях, где эти факторы играют большую роль: от облачных сервисов и до интернета вещей и в других средах.

Сегодня мы вкладываемся в улучшение Chakra больше, чем когда-либо, и мы рады возможности развития сотрудничества с сообществом для внедрения дальнейших улучшений. Несколько организаций уже рассказали о своем интересе вносить вклад в Chakra, включая Intel, AMD и NodeSource – мы смотрим с оптимизмом на нашу будущую совместную работу.
Читать дальше →
Всего голосов 39: ↑39 и ↓0+39
Комментарии16

Главные анонсы конференции Microsoft Connect() и виртуальная конференция Visual Studio Connect 2015 в России 4 декабря

Время на прочтение5 мин
Количество просмотров7.6K
Connect() — мероприятие, которое подвело итог года разработки в Microsoft и принесло достаточно интересных анонсов, которые коснулись, конечно, в основном Visual Studio. Однако последние годы Visual Studio становится все мощнее и функциональнее, и вместе с обновлениями VS к нам приходят обновления в облаке, контейнерах и других областях. 4 декабря, в России, мы проводим виртуальную конференцию Visual Studio Connect 2015 на русском языке, где расскажем про то, что же случилось за это время. Приходите слушать!

А на Connect() было анонсировано:
  • Модель подписки на Visual Studio
  • .NET Core 5 RC & ASP.NET 5 RC с Go-live лицензией
  • Visual Studio Dev Essentials — новая программа для разработчиков, в которой есть множество бесплатных предложений
  • Visual Studio Code в Open Source
  • Visual Studio Android Emulator на Mac OS X
  • Сотрудничество с Xamarin и MacinCloud, и многое другое.

Подробнее — под катом.


Читать дальше →
Всего голосов 22: ↑18 и ↓4+14
Комментарии1

Запускаем iOS приложения из консоли на девайсе и симуляторе

Время на прочтение7 мин
Количество просмотров24K
В статье будет кратко описано, как собрать приложение консольными командами и запустить на реальном девайсе и симуляторе без какой-либо надобности открывать xcode для этого.

В общем, стоит начать с того, что в моей компании имеется отдел ios разработки в составе > 10 человек, которые работают над пачкой приложений. Для автоматизации рутинной работы нам пришлось развернуть CI сервер (пока самописный, ввиду особых исторических причин (ну как у всех), планируется миграция на jenkins). К рутинным вещам я отношу — сборку проектов, запуск тестов (если, конечно, вы их пишете), создание ипашек для тестеров и для выкладки в app store. В общем, хотелось чтобы по нажатию кнопочки или по хуку в гите всё это начинало работать. Пока у нас всё работает по нажатию кнопки разработчиком, про гит пока только в планах. В данной статье я только затрону тему компиляции проекта и упаковку его в ipa файла. Функционал запуска проектов на девайсах на стороне CI сервера еще находится в стадии разработки, а вот сам процесс упаковки уже давно в «бою», может кому пригодиться.

Что планируем:

  • соберем приложение и запустим на симуляторе
  • соберем ipa и запустим на реальном девайсе
  • соберем ipa для выкладки на маркет
  • немного подэбажим ошибки сборки
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии2

«Что нового в Swift 2?» на примерах

Время на прочтение16 мин
Количество просмотров37K


Swift 2 сфокусировался на улучшении самого языка, взаимодействия с Objective-C и повышении производительности компилируемых приложений. Новые возможности Swift 2 представлены в 6 различных областях:

  • фундаментальные конструкции языка, такие, как enum , scoping (область действия), синтаксис аргументов и т.д.
  • сопоставление с образцом (pattern matching)
  • проверка доступности (availability checking)
  • расширения (extensions) протокола
  • управление ошибками (error handling)
  • взаимодействие с Objective-C

Я буду рассматривать новые возможности Swift 2, сопровождая их примерами, код которых находится на Github.
Читать дальше →
Всего голосов 30: ↑27 и ↓3+24
Комментарии36

Xamarin.UITest

Время на прочтение5 мин
Количество просмотров16K
В этой статье я расскажу вам о Xamarin.UITest — фреймворке для приемочного UI тестирования от Xamarin.

Что это такое и как его готовить


Xamarin.UITest сделан на основе Calabash и имеет сходный с ним принцип работы. Однако, тесты на данном фреймворке пишутся на С# и NUnit (в отличие от Calabash, в котором используется Gherkin+Ruby). Фреймворк кроссплатформенный и, следовательно, он позволяет писать тесты как для платформы iOS, так и для Android. Windows Phone не поддерживается, что я лично считаю недостатком данного инструмента. Зато в нем вполне поддерживается тестирование нативных приложений на Java и Objective-C.

image

Как это работает
Всего голосов 15: ↑15 и ↓0+15
Комментарии2

iOS Инструменты разработчика

Время на прочтение26 мин
Количество просмотров35K

Вступление


Всем привет, меня зовут Григорий, последние 5 лет занимался программированием под iOS. Сейчас решил сменить сферу деятельности и ударился в веб, но чтобы добро не пропадало, хочу поделиться с сообществом своими наработками, накопившимися за это время. Библиотеки выложены на GitHub и добавлены в CocoaPods. Инструкции по установке и использованию вы сможете найти по ссылкам на GitHub, здесь же будет краткое описание.

Минимальная поддерживаемая версия — iOS 6.0.
Читать дальше →
Всего голосов 38: ↑35 и ↓3+32
Комментарии27

Что нового в Babylon.js

Время на прочтение4 мин
Количество просмотров17K

Недавно команда разработчиков babylon.js выпустила новую версию одноименной библиотеки (v2.1) с множеством усовершенствований, а также новых инструментов для создания 3D в браузере, уже имея опыт создания таких игр как Flight Arcade и Assassin’s Creed Pirates . В этой статье будет рассказано о некоторых из основных обновлений, а также будут даны ссылки на демки и песочницу, чтобы можно было самостоятельно попробовать.
Читать дальше →
Всего голосов 17: ↑16 и ↓1+15
Комментарии2

Уязвимость в Xamarin для Android: подменяем dll и едим бесплатно

Время на прочтение2 мин
Количество просмотров28K

Введение


Эта история началась еще прошлым летом: мы с друзьями ночью зашли в заведение быстрого питания, которое только-только внедрило мобильное скидочное приложение. Приложение было установлено, бесплатная еда получена, трафик сохранен в .pcap-файл, и, естественно, было желание покопаться в нем, узнать, как оно работает. Программа оказалась написана на C# с использованием мультиплатформенного фреймворка для разработки мобильных приложений Xamarin; в то время apktool не мог правильно собрать измененный apk и завершался с ошибкой. Долгое время я пользовался этим приложением, накапливал баллы, тратил их, иногда натыкаясь на посты о накрутках на форумах, однако, аккаунты накрутчиков довольно быстро банили.

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

image
Измененное название чрезвычайно похоже на настоящее название заведения
Читать дальше →
Всего голосов 41: ↑33 и ↓8+25
Комментарии18

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность