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

Вернуться   Форум Flasher.ru > Блоги

Аватар для artcraft
Рейтинг: 5.00. Голосов: 7.

Что такое entity framework

Запись от artcraft размещена 12.09.2012 в 18:20
Обновил(-а) artcraft 17.09.2012 в 13:02
Это не дословный перевод статьи Ричарда Лорда которая мне понравилась.

--------------------------------------------

Entity system-ы растут в популярности, например широко извесный юнити и менее известные as3 библиотеки Ember2, Xember и моя собственная Ash. Причиной тому то что они упрощают игровую архитектуру и позволяют четко разделять обязанности в коде.

В этой статье я расскажу о эволюции олдскульной game loop арихитекуры в entity-образную. Запаситесь ...
Старый
 
Размещено в Без категории
Комментарии 10 artcraft вне форума
Аватар для artcraft
Рейтинг: 5.00. Голосов: 2.

Подводные камни Dictionary

Запись от artcraft размещена 04.09.2012 в 20:23
Обновил(-а) artcraft 05.09.2012 в 20:36
Dictionary прекрасная штука, но его документация умалчивает о двух подводных камнях не знание о которых чревато утечками памяти или потерей данных

1. если в качестве ключа в словаре со слабыми ссылками использовать метод, то эта запись подлежит удалению сборщиком мусора вне зависимости от того есть другие ссылки на хозяина метода или нет.
(запись удаляется когда кажется что не должна)

Код AS3:
package  {
	import flash.display.Sprite;
	import flash.system.System;
...
Старый
 
Размещено в Без категории
Комментарии 15 artcraft вне форума
Аватар для artcraft

Волшебное превращение Object --> Class

Запись от artcraft размещена 04.09.2012 в 14:56
Обновил(-а) iNils 08.09.2012 в 01:17
Искал совсем друге, а наткнулся на этот хак
https://github.com/darronschall/ObjectTranslator

Например, есть объект, допустим, загруженный с сервера json
и класс c аналогичными свойствами
Код AS3:
var o:Object = {n:3};
class A{ public var n:uint; }
AS3 не позволит вам сделать так
Код AS3:
var a:A = o as A;  // ошибка - о это не А
вот тут и можно использовать этот грязный трюк
Код AS3:
var a:A= ObjectTranslator.objectToInstance(o, A) as
...
Старый
 
Размещено в Без категории
Комментарии 5 artcraft вне форума
Аватар для artcraft

Инверсия контроля

Запись от artcraft размещена 14.04.2012 в 03:12
Обновил(-а) artcraft 12.09.2012 в 19:31
Инверсия контроля (Inversion of Control, IoC) - это важный принцип ООП

Подождите, какой контроль? Контроль чего нужно инвертировать?
Имеется в виду контроль над созданием зависимостей.

Представим себе автомобиль,
без мотора он не сможет работать, потому нужен мотор.
Код AS3:
public class Car{ 
    private var engine:IEngine = new Engine(); 
}
С первого взгляда выглядит как превосходный код. Но принцип инверсии тут не соблюдается. ...
Старый
 
Размещено в Без категории
Комментарии 42 artcraft вне форума
Аватар для artcraft

Loose coupling

Запись от artcraft размещена 10.01.2012 в 23:21
Обновил(-а) artcraft 11.01.2012 в 21:55
Если код программы не разделять на отдельные модули то он становится похожим на тарелку спагетти - извилистым и запутанным, такая программа может очень хорошо работать, но вот чинить её или добавлять новые функции в такую кашу занятие неблагодарное.

Тут на помощь приходит принцип "разделяй и властвуй". (Separation of Concerns SoC)

Гораздо удобнее иметь дело с кодом который выглядит как лего - набор отдельных модулей которые соединены друг с другом штекерами, ...
Старый
 
Размещено в Без категории
Комментарии 20 artcraft вне форума
Аватар для artcraft

Закон наименьшего знания (LoD)

Запись от artcraft размещена 05.01.2012 в 23:13
Обновил(-а) artcraft 09.01.2012 в 17:40
Закон наименьшего знания или law of Demeter (Закон Деметры)

это правило хорошего тона при проектировании объектно ориентриованных программ,
техника для ослабления связанности кода.

- Каждый модуль должен обладать ограниченным знанием о других модулях:
только о модулях, которые имеют «близкое» отношение к данному модулю.
- Каждый модуль умеет разговаривать только со своими друзьями, и не разговаривает с незнакомцами.
- Обращаться только ...
Старый
 
Размещено в Без категории
Комментарии 7 artcraft вне форума

 


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


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