Pull to refresh
  • by relevance
  • by date
  • by rating

разбираем файлы MS-office

PHP *
Недавно передо мной была поставлена задача: вытащить некую информацию из файлов MS-office (.xls, .doc) для ее последующей обработки. По факту, нужно было вытащить текст, содержащийся в документе.

Как без особого труда вытащить текст, содержащийся в файлах XLS или DOC
Total votes 40: ↑36 and ↓4 +32
Views 4.2K
Comments 28

«Правильный» html парсинг

Development for Android *
Логотип

Первый раз я запустил Eclipse еще весной, почитал книжки на английском, поставил SDK, немного поигрался и забросил. В начале зимы я купил себе первый смартфон на базе Android, но вновь вернутся к разработке меня подтолкнул недавний пост, в котором говорилось, что можно обойтись и знанием C#, с которым в отличии от Java я знаком. Мне было достаточно одного вечера, чтобы понять, что за связку Visual Studio и Monodroid я больше не сяду, позже я прочитал этот пост, где полностью согласился с автором.

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

Большинство разработчиков, получают html код страницы и перегоняют его в xml, что является неправильным подходом, так как html является «правильным» xml не всегда, вроде на хабре писали, что для браузера не обязателен тег html (современный браузер и без него должен отобразить страницу) или просто будут ошибки, тогда на помощь приходят библиотеки. Из них я выбрал HtmlCleaner.

Под катом я расскажу, как подключить эту библиотеку, а также напишем простой парсер stackoverflow.com.
Читать дальше →
Total votes 51: ↑42 and ↓9 +33
Views 103K
Comments 12

Поверхностный обзор javascript-enabled BaaS платформ

JavaScript *
Sandbox
Будучи начинающим javascript разработчиком, я заинтересовался темой межплатформенной разработки мобильных приложений. В этой области, в настоящее время, балом правят Cordova (phonegap) www.phonegap.com, Appcelerator Titanium www.appcelerator.com, Mosync www.mosync.com.

Рано или поздно, после выпуска первых мини-приложений, основанных на этих системах, разработчику захочется создать что-нибудь Большое и Светлое, и хотелось бы, чтоб в этом новом приложении/сервисе были пользователи (c аватарами и проч.), push-notifications, user-generated-content и т.д… Но при этом, не хотелось бы тратить время и деньги на написание своей серверной инфраструктуры, а хотелось бы воспользоваться чем-нибудь недорогим, вплоть до бесплатного, и простым в освоении (и ещё чтоб «в облаке»!).

Как раз подобного рода тяжести и взяли на себя многочисленные Backend-as-a-Service (не путать с другими aaS). Я хочу кратко пробежаться по некоторым игрокам на этом рынке. Подчеркну, что меня в первую очередь интересовали те платформы, которые можно было бы легко и безопасно использовать с мобильным javascript (Phonegap/Titanium). Если платформа просто предоставляет REST API, этого мало, т.к. вопрос безопасности требует наличия некоторого специального ограничительного функционала: AccessControlList/permissions/masterKeys/etc. И вообще, желательно отдельный javascript SDK.

(Так как это «поверхностный обзор», я не буду подробно писать кому и зачем нужен BaaS и почему вместо всего этого не использовать старый-добрый PHP/MySQL на VPS или новый-добрый node.js в облаке)

Я начал поиск с www.programmableweb.com/apis/directory/1?apicat=Backend там перечислено почти 40 платформ, просмотрев их, я оставил для обзора те, что легко можно использовать с javascript:
Читать дальше →
Total votes 13: ↑11 and ↓2 +9
Views 20K
Comments 13

Facebook купил бэкенд Parse для сторонних мобильных приложений

Website development *Development of mobile applications *


Facebook сегодня официально превратилcя в поставщика платных облачных услуг для разработчиков мобильных приложений. Социальная сеть купила предположительно за $85 млн стартап Parse, который разрабатывает облачный бэкенд для мобильных приложений (mBaaS: mobile-backend-as-a-service). О сделке официально объявлено сегодня и в блоге Parse, и на Facebook.
Читать дальше →
Total votes 24: ↑23 and ↓1 +22
Views 15K
Comments 5

URL.js или дружим JavaScript с обработкой ссылок

JavaScript *
Sandbox
image

Доброго времени суток, уважаемые хабравчане!

Возникла передо мной сегодня задача генерации GET-параметров и всего URL в целом, на стороне клиента, прям вот щас, без возможности «поговорить» с сервером. Сразу оговорюсь, про этот пост я узнал вот прям перед написанием данной статьи ибо сначала закончил писать, а потом уже прибег к поиску, да и пост тот — не со всем про то же самое, что у меня.

Итак, к делу.

Задача и проблемы


Проблемы — те же что и в посте, который я привел выше:
  • Невозможность использовать window.location для «приготовления» URL;
  • Нельзя работать сразу с несколькими window.location в силу политики безопасности браузеров;
  • Отсутствие известных готовых решений ( да и сейчас, уже апосля, я не нашел подобного кода )

Задачи которые я поставил перед собой:
  • Удобный синтаксис
  • Возможность как читать части URL так и изменять их
  • Работа с GET-параметрами
  • Кроссбраузерность и универсальность


Писал я на чистейшем JavaScript, причем без использования prototype.__defineGetter__ или prototype.__defineSetter__ в угоду кроссбраузерности ибо IE < 9 такого не умеет. Более подробно про getters/setters написано в этом посте.

Для тех кому интересно — сядем разберем, а кому надо готовое решение — милости прошу в конец поста, ссылки на скачивание — там.

Приступим! Раньше сядем — раньше выйдем.
Читать дальше →
Total votes 60: ↑47 and ↓13 +34
Views 44K
Comments 60

Простой лидерборд на Unity3D с facebook-ом

Game development *Facebook API *Unity3D *
Sandbox
После участия в Ludum Dare 31 у нас появилась игра, в которой можно соревноваться с друзьями и мы решили добавить к ней лидерборд, с авторизацией через Facebook. Какие сложности могут возникнуть и как сделать подобный в своей игре читайте под катом.

image
Читать дальше →
Total votes 24: ↑21 and ↓3 +18
Views 20K
Comments 2

Средства, которые позволили нам ускорить разработку игры

Development of mobile applications *Game development *Unity3D *
Sandbox
Вид на Котиков из редактора Unity

Раньше я работал над созданием мобильных игр как гейм-дизайнер или продюсер, но сам еще никогда профессионально не писал код. Несколько месяцев назад мне захотелось это исправить и сделать игру своими руками. Так, спустя два месяца работы, силами трех человек в App Store и Google Play появились «Котики». В своей истории я хочу поделиться приобретенным опытом и рассказать о средствах разработки, которые позволили нам быстро сделать эту игру.
Читать дальше →
Total votes 32: ↑27 and ↓5 +22
Views 34K
Comments 30

Руководство по миграции сервера Parse для разработчиков

Microsoft corporate blog Development for iOS *Development of mobile applications *Development for Android *Microsoft Azure
Translation
Tutorial
Если вы использовали услуги хостинга Parse в качестве бэкенда для своих мобильных приложений, то сейчас вероятно настал идеальный момент попробовать Azure App Service. В связи с последними новостями, ребята из Parse предложили пути миграции существующих бэкендов с Parse на другие площадки. Мы рассчитываем, что когда вы станете искать такую альтернативную площадку, то попробуете и Azure.

Легкий путь миграции


Как предлагается в руководстве по миграции, вы можете мигрировать бэкенд Parse вашего приложения на другой хост, на котором развернут сервер с Parse API размещенный на базе Express. Azure App Service предлагает замечательную альтернативу для хостинга вашей реализации сервера Parse. В конце концов, Node.js-бэкенд предлагаемый в Mobile App в сервисе Azure App Service – это тоже Express. Для того чтобы еще сильнее упростить первые шаги, команда Azure App Service предложила готовый процесс развертывания, который сильно упрощает для вас запуск первого сервера Parse в App Service.

Перед тем как начать, вам стоит почитать руководство по миграции Parse, для того чтобы понять что поддерживается, а что нет в новом сервере Parse. Одной из основных функций, которые отсутствуют в сервере Parse являются пуш-уведомления, но служба Azure Notification Hubs предложит вам готовую альтернативу.

Когда миграция будет завершена, вы можете продолжить использовать клиентские Parse SDK в своих приложениях для доступа к данным (конечно, клиенты должны будут обновлены для использования новых версий SDK и использовать новое расположение сервиса.).
Читать дальше →
Total votes 14: ↑11 and ↓3 +8
Views 5.6K
Comments 0

Альтернативы сервису parse.com

Website development *Development for iOS *Development of mobile applications *Development for Android *
Translation
Как известно, в следующем январе сервис Parse будет закрыт. Большинство разработчиков ищут альтернативу для этого сервиса. В одном из проектов guthub собралось достаточно много альтернатив, со ссылками и описанием. Перед вами — перевод этой страницы.

Часть 1: универсальные сервисы


Провайдеры, предоставляющие информацию в реальном времени, помечены (*).

AnyPresence MBaaS (Mobile backend as a service). Упрощает процесс создания мобильных приложений предприятия, работающих на разных устройствах, не ущемляя гибкость средств, доступных разработчику. Легок в использовании даже для неопытных пользователей. Опытные разработчики получают доступ к исходникам всех компонентов.

ApiOmat позволяет процессам предприятия работать как мобильным приложениям. Мобилизует сложные бизнес-структуры и процессы путём объединения существующих IT-систем с мобильными приложениями и устройствами. Его можно устанавливать прямо в дата-центре компании, что позволит работникам выполнять свою работу через приложения вне зависимости от их местонахождения.

Appcelerator Arrow (*) Состоит из двух основных компонентов, Builder и Cloud. Arrow Builder позволяет быстро создавать API, модели данных и соединители данных как через мастер настройки, так и через написание кода. Arrow Cloud – это эластичный облачный сервис, где выполняются API и происходит анализ их использования, плюс обеспечивается работа двух десятков смежных сервисов (гео, хранение фотографий и т.п.) с использованием ArrowDB

Appery.io Интегрированные сервисы MBaaS – чтобы разработчики могли сконцентрироваться на приложениях, не отвлекаясь на инфраструктуру.
Читать дальше →
Total votes 23: ↑18 and ↓5 +13
Views 36K
Comments 19

Почему Facebook не стала поддерживать Parse?

Project management *Business Models


Закрытие Parse стало одним из неприятных сюрпризов этого года. На момент своей работы Parse оставался одним из самых популярных mBaaS-сервисов (mobile Backend-as-a-Service). Журналисты издания VentureBeat решили разобрать причины отказа Facebook от продолжения поддержки платформы для пользователей сервиса.
Читать дальше →
Total votes 12: ↑11 and ↓1 +10
Views 4.3K
Comments 2

Обзор новорождённой платформы Scorocode

Scorocode corporate blog Programming *Development for iOS *Development of mobile applications *Development for Android *


BaaS-платформы (Backend as a Service) сделали разработку и сопровождение backend'а для мобильных и веб-приложений достаточно простыми и предсказуемыми процессами. Одним из флагманов движения BaaS стала компания Parse, но в 2016 году она заявила о прекращении обслуживания клиентов с 2017 года.

В связи с закрытием их сервиса и отсутствием русскоязычных облачных BaaS, мы решили создать собственный аналог — Scorocode. Об этом под катом.
Читать дальше →
Total votes 20: ↑16 and ↓4 +12
Views 16K
Comments 49

Куда переехать с Parse Push?

Meduza: dev corporate blog Development for iOS *Development of mobile applications *Development for Android *
Сервис Parse, позволявший, в числе прочего, легко запрограммировать отправку пуш-уведомлений, закрывается 28 января; осталось 8 дней. Самое время переехать (это шутка, на самом деле нужно было переехать уже давно).

Мы знаем два хороших сервиса на замену:
Читать дальше →
Total votes 24: ↑22 and ↓2 +20
Views 12K
Comments 37

Как разобрать URL в JavaScript?

Website development *JavaScript *Programming *
Translation


Доброго времени суток, друзья!

Представляю Вашему вниманию перевод заметки «How to Parse URL in JavaScript: hostname, pathname, query, hash» автора Dmitri Pavlutin.

Унифицированный указатель ресурса или, сокращенно, URL — это ссылка на веб-ресурс (веб-страницу, изображение, файл). URL определяет местонахождения ресурса и способ его получения — протокол (http, ftp, mailto).

Например, вот URL данной статьи:

https://dmitripavlutin.com/parse-url-javascript

Часто возникает необходимость получить определенные элементы URL. Это может быть название хоста (hostname, dmitripavlutin.com) или путь (pathname, /parse-url-javascript).

Удобным способом получить отдельные компоненты URL является конструктор URL().

В этой статье мы поговорим о структуре и основных компонентах URL.
Читать дальше →
Total votes 22: ↑13 and ↓9 +4
Views 19K
Comments 11