Попробуйте следующее:
var value;
for (var key in dictionary) {
value = dictionary[key];
// your code here...
}
У нас есть великоватое приложение (160 + пакеты OSGi, где каждый пакет является модулем Знатока), и урок, мы учились, и продолжите учиться, является настолько плоским, лучше. Проблема с кодированием семантики в Вашей иерархии состоит в том, что Вы теряете гибкость. Модуль, который составляет 100%, говорит, что "коммуникация" сегодня может быть частично "сервисом" завтра, и затем необходимо будет перемещать вещи в репозитории, и это повредит все виды сценариев, документации, ссылок, и т.д.
, Таким образом, я рекомендовал бы плоскую структуру, и закодировать семантику в другом месте (скажите, например, что рабочая область IDE или документация).
я ответил на вопрос о расположении управления версиями в некоторых деталях с примерами в другом вопросе , это может относиться к Вашей ситуации.
Я думаю, что Вы - более обеспеченное выравнивание Вашей структуры каталогов. Возможно, Вы хотите придумать соглашение о присвоении имен для каталогов, таким образом, что они сортируют приятно при просмотре всех проектов, но в конечном счете я не думаю, все из которых дополнительная иерархия необходима.
Принятие Вы используете Eclipse в качестве своего IDE, все проекты собираются закончиться в плоском списке, как только Вы импортируете их так или иначе, таким образом, Вы ничего действительно не получаете от дополнительных подкаталогов. Это в дополнение к тому, что конфигурация настолько более проста без всей дополнительной иерархии, делает выбор, довольно четкий в моем уме.
Вы могли бы также хотеть рассмотреть объединение некоторых модулей. Я ничего не знаю о Вашем приложении или домене, но кажется, что много тех модулей уровня листа могло бы лучше подойти как просто пакеты или наборы пакетов в другом высокоуровневом модуле. Я - все для хранения связных банок, но оно может браться слишком далеко иногда.