Всем доброго дня!
Имеется проект с множеством классов. Хочу сделать рефакторинг. Думаю как лучше перестроить структуру проекта...
ВАРИАНТ 1
Складывать классы одного логического значения в один пакет. Например:

Код AS3:
Game/Map/Map.as
Game/Map/MapField.as
Game/Map/MapObject.as
Game/Render/RenderMap.as
Game/Render/RenderField.as
Game/Render/RenderObject.as
Game/Game.as
Utils/MD5.as
main.as
И вот когда я в
main.as создаю класс
Game:

Код AS3:
import Game.Game;
// ...
public static var game:Game=null;
// ...
game=new Game.Game(param1,param2);
Видите как странно идёт создания? Это так в
FlashDevelop от наставил
Game.Game, и при этом от отказывается подсвечивать параметры конструктора.
ВАРИАНТ 2
Например:

Код AS3:
Game/Map/MapField.as
Game/Map/MapObject.as
Game/Render/RenderMap.as
Game/Render/RenderField.as
Game/Render/RenderObject.as
Game/Map.as
Utils/MD5.as
Game.as
main.as
То есть класс с базовой логикой вынесен из пакета, а в пакете его составляющие.
ВАРИАНТ 3
В качестве имён пакетов не использовать имена классов (ох уж это сложно для меня).
Вообще кто как делает и где какие подводные камни? Я разрабатываю на
FlashDevelop. На
C++ я на жёстком диске создавал папки в крайних случаях для объединения кода, в основном у меня были фильтры только в самой среде для удобочитаемости структуры проекта. Но в
FlashDevelop каждая папка является отдельным пакетом.