Pull to refresh
16
0
Алексей Петровских @apih

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

Send message

Визуализация графов. Метод связывания ребер

Reading time7 min
Views58K
Иногда полезно представить граф в графической форме, так чтобы была видна структура. Можно привести десятки примеров, где это может пригодиться: визуализация иерархии классов и пакетов исходного кода какой-нибудь программы, визуализация социального графа (тот же Twitter или Facebook) или графа цитирования (какие публикации на кого ссылаются) и т.д. Но вот незадача: количество ребер в графе зачастую настолько велико, что нарисованный граф просто невозможно разобрать. Взгляните на эту картинку:



Это граф зависимостей некой программной системы. Он представляет собой дерево разбиения на пакеты (серые шарики — пакеты, белые — классы), на которое поверх наложены ребра зависимости одних классов от других. Чтобы не рисовать стрелки направления, ребра нарисованы в виде градиентных линий, где зеленый — это начало, а красный — конец ребра. Как видите, граф настолько визуально перегружен, что архитектуру программы невозможно проследить.
Под катом описание метода, решающего эту проблему.
Читать дальше →

Отслеживание утечек памяти в Android приложениях

Reading time3 min
Views8.4K
На самом деле, данная статья является продолжением данного топика: Анализ памяти для Android приложений. Всем, кто хочет изучить вопрос детально, будут рады под катом.
Читать дальше →

Анализ памяти для Android приложений

Reading time5 min
Views42K
В Dalvik есть сборщик мусора, но это не значит, что можно игнорировать управление памятью. Даже наоборот — нужно быть особенно внимательным при использовании памяти, которая, как известно, на мобильных устройствах ограничена. В этой статье будут рассмотрены инструменты, которые значительно помогают следить за тем, как приложение использует память.
Читать дальше →

OpenGL — это просто!

Reading time2 min
Views18K
В рамках «Недели разработки для Андроид» решил поделиться кое-чем из своего опыта.
Итак, за что мы любим эти маленькие шустрые гаджеты, живущие в наших карманах и сумках? Не ошибусь, если поставлю на первое место красивую разноцветную графику. В этом нет ничего постыдного — ведь даже мудрые вожди индейских племен готовы были на что угодно ради красивых стекляшек для своей скво.
Итак, нам просто до дрожи в руках хочется написать свою прекрасную шедевральную игру, готовую произвести революцию в умах геймеров. Вот только маленькая неприятность — попытка напрямую воспользоваться drawRGB() и иже с ними сразу обламывает все мечты, ибо подобным образом написанная игра сможет получить признание разве что в Эстонии, да и то если раунд закончится раньше, чем сядет батарейка.
Читать дальше →

Gource — визуализируем историю работы над проектом

Reading time1 min
Views23K
Спешу рассказать хабрасообществу о, относительно новом, дьявольски завораживающем проекте Gource которое еще не упоминалось. Это приложение позволяет визуализировать историю изменений в системе контроля версии. Отрисовывает невероятно красиво при помощи OpenGL.


Читать дальше →

Кейс «Проектирование веб-сервиса бронирования билетов». Бизнес-анализ. Описание предметной области

Reading time2 min
Views16K
Параллельно с описанием бизнес-процессов, контекста и профилей заинтересованных лиц необходимо изучать предметную область. Основными инструментами здесь являются словарь терминов (который лучше составлять совместно с экспертом предметной области) и диаграмма сущностей, которая изображает, какие есть сущности, и какие между ними есть взаимосвязи.

IV. Описание предметной области


Законодательные ограничения

— Зрителю должно быть больше 14 лет (для сделкоспособности).
— Необходимо дополнительное пользовательское соглашение, в котором пользователю будет необходимо дать согласие на использование его персональных данных.
— В соглашении также должно быть указано, что услуга бронирования предоставляется безвозмездно.

Словарь терминов

Диаграмма сущностей

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


Читать дальше →

Прямой эфир телеканала «Россия-24» можно смотреть в приложении «Вести» для iPhone

Reading time1 min
Views4.4K
image Сегодня телеканал «Россия-24» (бывшие «Вести») объявил о запуске вещания на iPhone. Прямой эфир телеканала можно смотреть в приложении «Вести» для iPhone — сегодня в этом приложении появилась соответствующая кнопка. Пруфлинк: www.vesti.ru/doc.html?id=403318

Поскольку мы приложили руку к этому проекту в качестве исполнителей, под катом расскажу о том, что пришлось сделать, чтобы реализовать вещание на iPhone.

Читать дальше →

Objective-C с нуля

Reading time23 min
Views442K
У любого желающего писать программы для продукции фирмы Apple в жизни наступает такой момент, когда ему приходиться изучить новый язык программирования — Objective-C. Когда-то этот счастливый момент постиг и меня. А чтобы лучше запомнить основные особенности этого языка, решил законспектировать свои мысли во время осмысления его документации, которыми и делюсь с вами.
Читать дальше →

Ресурсы, которые помогут выучить английский язык

Reading time1 min
Views54K
В статье «Как учить английские слова» возникло очень оживленное обсуждение, в котором читатели привели ряд ссылок на интересные ресурсы. Теперь все они собранны в одном месте.
Читать дальше →

Что выбрать для разработки игр под Windows Phone 7? Silverlight или XNA

Reading time2 min
Views1.8K
imageВ следствии поддержки, как XNA, так Silverlight на платформе Windows Phone 7, распространенным вопросом является – на чем лучше писать игры? Ответ прост – все зависит от… :)

Обе технологии обладают характерными преимуществами и было бы хорошо в конечном счете совместить возможности графики обеих технологий в одном и том же приложении и использовать лучший инструмент для работы. Я еще не углублялся в изменения у XNA на Windows Phone, так что выводы буду строить на основе опыта разработки игр на XNA в прошлом.
Читать дальше →

Слабые события в C#

Reading time11 min
Views80K

От переводчика


Недавно в проекте, где я работаю, мы столкнулись с проблемой утечки памяти. Прочитав множество статей — от рассказов по управлению памятью в .NET до практических рекомендаций по правильному освобождению ресурсов, я в том числе наткнулся на статью, в которой рассказывается, как корректно использовать события. Ее перевод я и хочу вам представить.
Это топик из песочницы, с которым я попал сюда на Хабр.

Читать дальше →

Agile-чеклист в помощь Agile-командам

Reading time1 min
Views13K
Зачем мы это сделали?

Многим известно, что практики Agile/Scrum просты на бумаге. Каждый, кто читал про Agile, может расказать все принципы и практики всего за каких-то полторы минуты (а то и меньше). Однако, не смотря на простые правила организации Agile-процесса, нередко допускают большое количество ошибок. Это приводит к тому, что у вас получается ScrumButt.

Поэтому мы решили написать чеклист по Agile-процессу, основанный на нашем опыте. Он поможет разобраться с базовыми вещами и не наступить на типичные «Грабли» совершаемые большинством команд.
Читать дальше →

Заметка о том как лучше сидеть перед компьютером

Reading time4 min
Views112K
Большинство из нас, включая тебя, %username%, проводит много времени в сидячем положении перед монитором. Многие люди в то же время выполняют физические упражнения и занимаются в спортзале — это решает проблему, но лишь отчасти. Долго сидеть вообще вредно (противоестественно), но неправильно сидеть — на порядок вреднее. Поскольку большинство из нас не могут отказаться от долгих посиделок, мы поговорим о том как же все-таки правильно и удобно сидеть — так чтобы при этом не болели глаза, спина, и руки.
Читать дальше →

Information

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