Считается ли связывание внутри объекта анти-шаблоном?

Предположим, у вас есть класс, который часто (или даже исключительно ) используется как часть связанного списка. Является ли анти-шаблоном размещение информации о связях внутри объекта?

Например:

   public class Item
   {
       private Item prev; 
       private Item next;
       ...
   }

Часто цитируемая рекомендация - просто использовать общий класс контейнера (например, java .util.LinkedList в Java), если узел является листом, я хочу поместить конфигурацию поля имени: allowBlank: false, а если не лист, allowBlank: true. Я ...

Я хочу добавить конфигурацию allow Blanks, когда я нажимаю на узел в своей панели дерева! если узел является листом, я хочу поместить конфигурацию поля имени: allowBlank: false а если не лист, allowBlank: true. Я не могу найти способ сделать это?!

Большое спасибо :)


Спасибо за ваш ответ, но мое поле со списком не является глобальной переменной:

var monPrepanel = Ext.create('Ext.form.Panel',{

        frame : true,
        title : 'Editing Zone',
        //renderTo : 'mesfields',
        //width : 750,
        forceFit : true,

        items: [{

                xtype:'fieldset',
                title: 'Add Task : ',
                margin : '20 20 20 20',

                collapsible: true,
                defaultType: 'textfield',
                defaults: {anchor: '100%'},
                layout: 'anchor',
                items: [ {

                itemId : 'p0',
                allowBlank : false,


         xtype : 'textfield',
    anchor : '60%',

         padding : '0 30 0 30',
          fieldLabel : 'Task',

          name : 'task'
        } , {

                itemId : 'p1',
                allowBlank : false,


         xtype : 'combobox',
            anchor : '40%',
            store : materialstore,
            queryMode: 'local',
            displayField: 'data',
            width : 50,
            valueField: 'data',
            editable : false,

         padding : '0 30 0 30',
          fieldLabel : 'Material',

          name : 'material'
        } , {

                allowBlank : true,

         xtype : 'combobox',
            anchor : '40%',
            store : ccstore,
            queryMode: 'local',
            displayField: 'data',
            width : 50,
            valueField: 'data',
            editable : false,

         padding : '0 30 0 30',
          fieldLabel : 'CC',

          name : 'cc'
        }

Может быть, мне нужно получить доступ к компоненту поля со списком по идентификатору? Есть решения для доступа к этому компоненту в элементы для элементов?

7
задан Nick Craver 24 May 2011 в 13:51
поделиться