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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 01.02.2016, 19:39
Фенёк вне форума Посмотреть профиль Отправить личное сообщение для Фенёк Найти все сообщения от Фенёк
  № 1  
Ответить с цитированием
Фенёк

Регистрация: May 2011
Сообщений: 221
По умолчанию Ревью тестового задания

Привет.

Ситуация, тестовое задание выполнено, рабочее, но работодатель слишком спесив занят, для того, чтобы написать хотя бы пару слов о причине отказа. А потому хотел бы напроситься на код-ревью. Реализация в около 20 простецких классах.

Вот текст ТЗ TZ_Taonga_AS3.pdf

и вот моя реализация Iso.zip

Сразу оговорюсь, признаю, никакой загрузки конфигов я не сделал, все откладывал на потом, а в конце просто не хватило по времени. Так что если у вас есть что сказать кроме этого - welcome.

Старый 01.02.2016, 19:51
Rzer вне форума Посмотреть профиль Отправить личное сообщение для Rzer Посетить домашнюю страницу Rzer Найти все сообщения от Rzer
  № 2  
Ответить с цитированием
Rzer
 
Аватар для Rzer

блогер
Регистрация: Feb 2007
Адрес: Spb
Сообщений: 612
Записей в блоге: 8
Отправить сообщение для Rzer с помощью ICQ
А тебя не смущает, что при открытии флешка виснет на неопределённое время?)

1. Поле не зелёное.
с. Спрайты у тебя встроены внутрь флешки, а не загружаются при старте.
d. Конфигов json нет
e. 12 видов домиков? я вижу одну большую коричневую коробку
3. у некоторых домиков 6 жизней

Бонусный функционал не реализован.
30 draw calls?
Фпс при движении мышкой проседает до 27


Последний раз редактировалось Rzer; 01.02.2016 в 20:04.
Старый 01.02.2016, 19:54
Фенёк вне форума Посмотреть профиль Отправить личное сообщение для Фенёк Найти все сообщения от Фенёк
  № 3  
Ответить с цитированием
Фенёк

Регистрация: May 2011
Сообщений: 221
Так она генерирует большое количество объектов. Мне кажется это вполне объяснимое и понятное поведение.

Старый 01.02.2016, 19:59
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 4  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Может это и было причиной отказа?) Я бы точно отказал, если бы мне такое прислали. Надо распределять нагрузку, и показывать полоску загрузки, вместо того, чтобы тупо заставлять игрока думать, что игра зависла и можно снимать процесс.
Для программиста это вполне объяснимо и понятно, а для ирока нет. Игрок сразу подумает, что игра забагована и вообще ну ее нафиг)

Старый 01.02.2016, 20:08
Rzer вне форума Посмотреть профиль Отправить личное сообщение для Rzer Посетить домашнюю страницу Rzer Найти все сообщения от Rzer
  № 5  
Ответить с цитированием
Rzer
 
Аватар для Rzer

блогер
Регистрация: Feb 2007
Адрес: Spb
Сообщений: 612
Записей в блоге: 8
Отправить сообщение для Rzer с помощью ICQ
Добавил ещё замечаний, код в принципе читабельный. Но тебе не хватает умения организовать структуру проекта и "архитектурных решений" что-ли)

Старый 01.02.2016, 20:19
faraday вне форума Посмотреть профиль Отправить личное сообщение для faraday Найти все сообщения от faraday
  № 6  
Ответить с цитированием
faraday
 
Аватар для faraday

Регистрация: Apr 2009
Сообщений: 409
код для поставленной задачи - нормально оформлен. скорее всего причина отказа в не полной реализации, какой срок был поставлен, имелись ли наработки по теме?

Старый 01.02.2016, 20:40
Фенёк вне форума Посмотреть профиль Отправить личное сообщение для Фенёк Найти все сообщения от Фенёк
  № 7  
Ответить с цитированием
Фенёк

Регистрация: May 2011
Сообщений: 221
Rzer
Так, я немного побрыкаюсь с вашего позволения )

Цитата:
1. Поле не зелёное.
ну, если они действительно искали себе программиста, то вряд ли этот критерий можно назвать существенным.

Цитата:
с. Спрайты у тебя встроены внутрь флешки, а не загружаются при старте.
d. Конфигов json нет
e. 12 видов домиков? я вижу одну большую коричневую коробку
да, здесь конечено я промазал/недочитал/недопонял/и вообще сам виноват. Но все же, мне кажется что делать из этого выводы, что, человек, к примеру, не умеет пользоваться Loader'ом, а то и вовсе программировать не умеет - абсурдно.

Едиственное, что мне до сих пор не понятно, что за конфиг должен был быть? По условию задачи у карты размеры фиксированные, начальное количество домиков - тоже. Соотвественно что хранить в конфигах - для меня большой вопрос. Я конечно могу рискнуть предположить, что это должен был быть какой-нибудь конфиг с описанием тех самых 12ти домиков: какой спрайтшит для них использовать, сколько клеточек они занимают, какое смещение требуется для картинки и пр. Но на моей практике это было обычно задачей скриптов сборки, для маленького тестового это как по воробьям из пушки.

Цитата:
Бонусный функционал не реализован.
ну он на то и бонусный )

Цитата:
30 draw calls?
а вот на количество вызов отрисовки я как-то и не обратил внимания, тут косяк, целиком принимаю, должно быть забыл где-то выполнить очередной вызов flatten()

Цитата:
Фпс при движении мышкой проседает до 27
а вот это как-то не согласуется с тем что вижу я. Моя вычислительная машина 10 летней давности, но даже при интенсивном драге фпс у меня ниже 40-50 не падает.

Цитата:
код в принципе читабельный
немного согрело душу, спасибо )

Цитата:
Но тебе не хватает умения организовать структуру проекта и "архитектурных решений" что-ли)
Можно пожалуйста пояснеие? Не очень понял

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

faraday срок был в 2 дня. Старлинг для меня в новинку, но вообще в принципе у меня есть понимание того как работают графические фреймворки. Наработок не было, были только мои когда-то давным давно приобретенные знания по изометрии и осуществлении сортировки (правильной, но бесхитростной)

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

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
Разумеется, для конечного пользователя такой продукт непригоден, когда приложение теряет отзывчивость - это плохо, я понимаю, но ведь там люди искали себе в команду программиста и соответсвенно код тоже смотрел программист, так что мне кажется это маловероятная причина.
Проект на старлинге. У него есть AssetManager, который помимо разруливания загрузки, делает на автомате еще одну важную функцию - восстановление потерянного контекста на андроиде. Можно (а по-моему и нужно) было воспользоваться им. Это и разгрузило бы процесс, и сделало бы текстуры более универсальными.

Старый 01.02.2016, 21:02
Фенёк вне форума Посмотреть профиль Отправить личное сообщение для Фенёк Найти все сообщения от Фенёк
  № 9  
Ответить с цитированием
Фенёк

Регистрация: May 2011
Сообщений: 221
Так дело то не в ассет менеджере. В самом начале генерируется карта площадью в 250 000 клеточек. Ясное дело, что это займет некоторое время. Решением могло бы послужить рисование карты частями, только теми, которые игрок в данный момент видит.

Старый 01.02.2016, 21:19
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 10  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Есть другие решения. Я разгружал такие моменты вот так http://www.flasher.ru/forum/blog.php?b=710
Очень помогает на мобилах. Игры не подвисают, и можно даже смело показывать анимацию загрузки в этот момент
В общем, подвисание игры вначале - это большая проблема. Тут дело не в том, поймет ли это программист, который смотрит на эту работу, а в том, что он наверняка подумает, что человек либо не умеет это разруливать, либо не придает значения таким важным моментам. Игра должна работать максимально плавно на всех этапах

Создать новую тему Ответ Часовой пояс GMT +4, время: 15:16.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

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

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


 


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


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