Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Закрытая тема
Старый 13.04.2014, 02:21
ZackMercury вне форума Посмотреть профиль Отправить личное сообщение для ZackMercury Найти все сообщения от ZackMercury
  № 11  
ZackMercury
 
Аватар для ZackMercury

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,918
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
Вот скажите мне, как вообще не знакомому человеку с коллекциями и словарями и подобными вещами - действительно ли станет легче работать над проектами, если я буду их знать? (Вопрос как с иронией, так и без)
Как-то без них справляюсь и всё вроде нормально работает, как я и хочу. Может, я чего-то не понимаю?
__________________
There is no thing in this world that is not simple.

Старый 14.04.2014, 23:30
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 12  
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
После недели чтения и тестов я забираю свои слова обратно! Коллекция - это полное *****!
Именно коллекцию знать на as3 - ненужно! Тот кто ими пользуется, делает это по двум причинам - либо
он знаком с ней по яве и думает, что ЭТО тоже самое, либо он слушал о ней от того, кто знаком с ней по яве.
Максимум, это класс хеш с последовательность.

Старый 15.04.2014, 00:05
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 13  
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Akopalipsis - а что такое коллекции , ты точно верно понял суть термина ? Если да - то чем же они плохи ?
__________________
Марк Tween

Старый 15.04.2014, 00:13
ZackMercury вне форума Посмотреть профиль Отправить личное сообщение для ZackMercury Найти все сообщения от ZackMercury
  № 14  
ZackMercury
 
Аватар для ZackMercury

блогер
Регистрация: Jul 2013
Адрес: Север
Сообщений: 1,918
Записей в блоге: 23
Отправить сообщение для ZackMercury с помощью ICQ Отправить сообщение для ZackMercury с помощью Skype™
Цитата:
Сообщение от Akopalipsis Посмотреть сообщение
После недели чтения и тестов я забираю свои слова обратно! Коллекция - это полное *****!
Именно коллекцию знать на as3 - ненужно! Тот кто ими пользуется, делает это по двум причинам - либо
он знаком с ней по яве и думает, что ЭТО тоже самое, либо он слушал о ней от того, кто знаком с ней по яве.
Максимум, это класс хеш с последовательность.
Спасибо за откровенность, буду знать
__________________
There is no thing in this world that is not simple.

Старый 15.04.2014, 00:19
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 15  
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
Термин коллекция в as3, это примерно Array. Вот на этом и нужно остановится было тем, кто делал коллекции, которые распространяются в гугле. После прочтения статей о коллекциях на яве,
я точно понял, что их делали опытные явщики. Но к сожалению, в as3 они вообще не понимают.
То что они сделали, ЭТО... хуже массива, ЭТО медленнее.
Как я думал раньше, что на коллекциях основанных на обертках ( wrappers, так вроде это в as3 называется )
можно выиграть на сортировке, так-как удаление и замена происходит в сто раз быстрей и даже получилось обогнать pop, shift и прочее. Так же можно сделать быстрый выбор-get, но приходится жертвовать медленным наполнением. Так вот я думал до сегодня, пока вдруг не осознал, что во всех коллекциях авторы не спроста самое важное, а именно итерации с обертками, перенесли на обычный массив. Невозможно сортировать используя несколько созданных дополнительно оберток, они являются ссылками и изменив помощника меняется всё. Единственный вариант, это создавать при итерации и сортировке новые обертки. А это в сотни раз замедляет. Использовать пул.... да, если немного элементов, то это может и даст выгоду, но на гране сумашедствия. По этому максим это хеш с последовательностью ключей.

Старый 15.04.2014, 03:54
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 16  
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Akopalipsis - ну я так и не услышал от тебя, что такое коллекция, хотя бы на яве, неважно. Массив есть массив, а что такое коллекция никто не понял. То что оно медленне работает чем массив, ни о чем не говорит, тем более на 1мс или сколько там

Добавлено через 30 секунд
Нам бы примерчик
__________________
Марк Tween

Старый 15.04.2014, 04:19
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 17  
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
Чего примерчик? Коллекции на as3 или Вы желаете проверить мою память в пересказывании статей на хабре?
Если первое, то гитхат, если второе, то в двух словах - как я понял, на яве длина массива ограничена и для его увеличения придумали много-много классов, которые назвали коллекция. Класс HashMap == Dictionary на флеше. Так же есть классы ArrayList, который предназначен для удаления и замены эллементов в начале и конце и LinkedList, который лучше подходит для работы с элементами в середине. Разность быстродействия зависит от того алгоритма, которым по этому списку проходят. Там их много, какие-то древовидные и все такое. Сделано всё правильно и хорошо. Но вот только для чего это нужно все делать на флеше, я не знаю. Даже если закрыть глаза на её медлительность, то смысл в ней я все равно не вижу. Удобство для явщиков, возможно. По этому мне было бы самому интересно узнать её применение, где без нее просто не как нельзя обойтись. Тем более работа с массивами, это второе место после координат, на которое производительности всегда не хватает. Вроде вот так.

Старый 15.04.2014, 14:26
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 18  
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Цитата:
на яве длина массива ограничена
o_O поэтому и спросил - так и думал, что не поняли. На яве все тоже самое , что и на ас3, с разницой , что там НЕТ нетипизированных массивов, там все массивы аля вектор.
__________________
Марк Tween

Старый 15.04.2014, 14:41
Akopalipsis вне форума Посмотреть профиль Найти все сообщения от Akopalipsis
  № 19  
Akopalipsis
Banned
[+4 24.02.14]
[+4 07.11.13]
[+ 13.03.14]

Регистрация: Mar 2013
Сообщений: 1,864
Цитата:
там НЕТ нетипизированных массивов, там все массивы аля вектор.
И вот их называют генерики? ( спрашиваю по тому, что давным-давно на форуме обсуждали какие-то генерики и мне так стало интересно, что это, но ответа ттгда я не нашёл ). А как же массив Object,
Object ведь и там прародитель?
Цитата:
o_O поэтому и спросил - так и думал, что не поняли.
Возможно! Но я руководствовался вот этой фразой из этой статьи - Структуры данных в картинках. ArrayList.
Цитата:
ArrayList — реализует интерфейс List. Как известно, в Java массивы имеют фиксированную длину, и после того как массив создан, он не может расти или уменьшаться. ArrayList может менять свой размер во время исполнения программы, при этом не обязательно указывать размерность при создании объекта. Элементы ArrayList могут быть абсолютно любых типов в том числе и null.
Добавлено через 15 минут
А самое главное, мое непонимание, как-то сказывается на применение коллекции в as3?

Старый 15.04.2014, 15:00
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 20  
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
То что они сделали, ЭТО... хуже массива, ЭТО медленнее.
Если медленнее, значит хуже. Железная логика... Как-будто качество программы упирается только в скорость работы.
Цитата:
На яве все тоже самое , что и на ас3, с разницой , что там НЕТ нетипизированных массивов, там все массивы аля вектор.
Сань, там совсем не так как на as3. Любой Флешер переходящий на джаву столкнется с кучей проблем и недопониманий. А вызвано это тем, что синтаксис очень похож, и возникает ложная уверенность в том, что и языки как браться близнецы. А на самом деле это далеко не так.
Цитата:
А как же массив Object,
Object ведь и там прародитель?
А Object - это не тип? Если на джаве массив имеет тип Object, это совсем не значит, что он не типизирован. В такой массив ты никак не сможешь затолкать, к примеру float, или int. Да да! В отличие от as3 в джаве эти типы являются честными примитивами, и не наследуются от Object. Чтобы поместить число или булево в массив Object[], нужно будет использовать обертку типа Integer или Boolean.

Цитата:
После недели чтения и тестов я забираю свои слова обратно! Коллекция - это полное *****!
Я бы не был на твоем месте так категоричен. Dictionary и Object - это те же коллекции на ас3. Только реализованы на уровне среды выполнения. Естественно, если писать код коллекций на as3, они будут работать медленнее. Сначала они будут перегоняться в нативные as3 коллекции (Array/Object/Dictionary), а потом будут еще и перегоняться в сишные колелкции самим плеером.
Цитата:
Удобство для явщиков, возможно. По этому мне было бы самому интересно узнать её применение, где без нее просто не как нельзя обойтись.
Представь себе ситуацию, когда ты пишешь сервер на джаве, и тебе надо сделать API клиента максимально схожим с API сервера. Просто, чтобы упростить конечному пользователю (программисту, который будет им пользоваться) работу. Он уже умеет писать на джаве, но ас3 для него новый язык. И тут он видит, что API все тот же привычный и понятный.

А есть и наоборот. Пример
Клиент писал сам Колин Мук. А сервер Дерек Клейтон. На сервере API максимально похож на флешевый. На сколько это вообще возможно было сделать в джаве

Создать новую тему Закрытая тема Часовой пояс GMT +4, время: 00:42.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 00:42.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.