Pull to refresh
5
0
Flashist @Flashist

User

Send message

Если коротко, то адаптер графического движка (в нашем случае PixiAdapter), предоставляет метод для поиска объектов, потом идёт по дереву и проверяет детей объектов, попадают ли они под мышку. Думаю, вам будет нагляднее, если вы посмотрите в исходники либ, которе отвечают за это (в частности PixiAdapter: https://github.com/flashist/fgraphics/blob/master/src/adapter/pixi/PixiAdapter.ts )

Показ width/height происходит только при включённой опции «additional info» (была добавлена буквально 2-3 дня назад). Поэтому по-умолчанию проблем не будет (разработчики смогут дебажить это по-необходимости).
Уточните, пожалуйста, что вы имеете ввиду под «хуком»? В сам код Pixi.js консолька (и зависимости) никак не лезут, исопльзуют то, что доступно от Pixi.js извне (в частности из interaction используется InputManager с его mouse.global)

Кстати, буквально недавно заметил, что консолька неработает на мобильной эмуляции (и подозреваю, что на мобильниках тоже), из-за того, что mouse.global не обновляется в случае с тач-событиями (что логично).
Поправил заголовок (если коротко, то консоль можно подружить с любой JS графической библиотекой, которая работает с Canvas/WebGL, поэтому лукавства не было, неправильно подобрал заголовок). Вам, как и DrReiz спасибо за то, что подсказали, как исправить заголовок.
Сделано! На самом деле консоль разрабатывалась как независимая от графических движков библиотека: с возможностью использовать разные движки: но на данный момент реализован только Pixi.js адаптер.

Жёлтых заголовков и тем более обманов кого-то делать не планировалось: просто не совсем правильно подобрал заголовок (но спасибо, что подсказали, как его улучшить)
Хороший вопрос) Я не пробовал, но если Phaser работает с «чистым» Pixi.js, и через него можно получить доступ к инстансу PIXI.SystemRenderer и главному контейнеру (если там есть такое понятние), то должно работать.
Спасибо, что напомнили про этот инструмент, когда-то давно пользовался им, но потом полностью перешёл на Flash-Console (кстати последний раз, когда я использовал MonsterDebugger, там была отдельная кнопочка для Flash-Console).

На ваш взгляд, какие из функций MonsterDebugger могут быть полезны для отладки Canvas-приложений?
Да что ж это такое, и тут тоже )
Исправил, спасибо, что заметили )
Для себя, я понимаю, что, наверно, тут комментарий излишен, но я бы тоже написал комментарий даже к такому простому методу. Мне кажется, что постоянство — это хорошо, и если для других методов комментарии пишутся, то чем этот хуже =)
«Как жаль, что я не могу показать вам наши исходники. Там нечего комментировать. Комментарии были бы смешны»

Это цитата автора поста. Вот ссылка на комментарий: habrahabr.ru/blogs/pm/107655/#comment_3398536

Кстати, не знаю, как в других языках программирования, но в AS3 есть такая клёвая штука, как ASDoc — это такие комментарии, на основе которых можно генерировать документацию. Иногда, комментирование == документирование.
Если честно, я не очень понимаю суть нашего спора.

Если вы мне всё ещё пытаетесь доказать, что создание более-менее серьёзной программы в Flash через написание кода в кадрах — это нормальная практика, то, на мой взгляд, вы не правы. Если вы действительно так считаете, то это, скорее всего, из-за недостаточного количества знаний в области Flash-разработок.

Так уж случилось, что использование ООП и отказ от написания кода в кадрах — это 2 взаимосвязанных понятия (так как не желая писать код в кадрах будет необходимость писать его во внешних классах, с которыми без ООП работать нельзя). Из-за этого, если оценивать профессионализм с точки зрения удобства повторного использования исходников, можно сказать, что люди, которые пишут более-менее серьёзные программы в кадрах — непрофессиональны, так как использовать их исходники и модифицировать их достаточно трудоёмко и напряжно.

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

Ещё, профессионализм тут можно оценивать с точки зрения «повторного использования» исходников, как со всем этим будет удобно работать другим разработчикам и т.п. В случае создания более-менее серьёзной программы через написание кода в кадрах — об удобстве повторного использования и внесении модификаций можно забыть.
То, что вы описали — это чуть-ли не единственное, для чего может понадобиться продолжать писать код в кадрах и для AS3. К слову, за последний год мне приходилось прибегать к этому раз 5-10, думаю, не больше.

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

И я ещё раз не могу понять, почему тема ушла в сторону Flash, если изначально разговор был о том, что автор поста против комментирования и проектирования, а моя точка зрения не совпадает с его точкой зрения.
В AS2 многие вещи считались «нормальными» и разработчики с небольшим опытом часто ими пользовались. В частности, многими считалось, что писать код, разбросанный во-многих кадрах — это нормально, но с опытом все более-менее серьёзные разработчики приходили к тому, что код лучше писать в 1 кадре или, что более правильно, использовать ООП и работать с внешними классами, это было доступно уже в AS2.

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

Если я правильно вас понял, то вы писали код исключительно в кадрах («событийная модель кейфреймов»), поэтому, скорее всего, у вас либо был очень простой проект, либо вы не обладали достаточными знаниями в Flash-разработках, чтобы использовать ООП.

«Если ваш проект заканчивается на Flash'е, то это одно, а если флеш выступает в роли интерфейсного решения некого программного комплекса, то это уже другое.»

Как это влияет на использование ООП в Flash-проектах?
Я работаю Flash разработчиком, и AS3 является ООП языком, поэтому действительно, изъясняюсь в терминах ООП. Не знаю, как в вашей работе, но в Flash не применяя классы и ООП можно написать только маленькую и/или очень запутанное приложение.

Кстати, я не могу понять, как это относится к тому, что вы против комментариев к коду, а я за них.
Скажите, а что означает «ООП головного мозга»?
Не могу говорить за других, но могу сказать за себя, что мне приходилось и приходится работать с чужим кодом без каких-либо комментариев. И, вне зависимости, от понятности именования методов и переменных, а так же чистоты кода, мне ещё не встречался проект, в котором комментарии были бы лишними и мешали бы работе с проектом.

Плюс, уже несколько раз в комментариях упоминали Макконнела и его «Совершенный код», в этой книге есть глава, в которой рассказывается о «споре» между несколькими типами разработчиков. На мой взгляд, там доходчиво рассказано о том, почему комментировать нужно, но так же, нужно знать меру в этом.

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity