Информация об изменениях

Сообщение Re[17]: Базовое отличие ООП от ФП от 04.04.2024 13:59

Изменено 04.04.2024 14:13 Serginio1

Re[17]: Базовое отличие ООП от ФП
Здравствуйте, Pauel, Вы писали:

S>> XAML это про декларативность. То есть за строкой скрывается куча кода.


P>Именно это и есть в моем примере

Нет это конструкторы. Ты явно не использовал XAML
S>> Ну а в приведённом тобой коде это экономия на new.

P>Вы сначала накидайте полный эквивалент в c# а уже потом сравнивайте


Form form = new() {
   header: new() {content: aaa} 
   main= new() { 
    list new(){
      ItemA = new() {id= 'a', content= yyy },
      ItemB = new() {id= 'a', content= zzz },
   }
   },
   footer= OkCancelFooter {onOk= onOkHandler, onCancel= onCancelHandler, onDispose= onDisposeHandler}
}


bkb
Form form = new() {
   header: new(content: aaa)
   main= new() { 
    list new(){
      ItemA = new(id: 'a', content: yyy ),
      ItemB = new(id: 'a', content: zzz ),
   }
   },
   footer= OkCancelFooter {onOk = onOkHandler, onCancel= onCancelHandler, onDispose= onDisposeHandler}
}
Re[17]: Базовое отличие ООП от ФП
Здравствуйте, Pauel, Вы писали:

S>> XAML это про декларативность. То есть за строкой скрывается куча кода.


P>Именно это и есть в моем примере

Нет это конструкторы. Ты явно не использовал XAML
S>> Ну а в приведённом тобой коде это экономия на new.

P>Вы сначала накидайте полный эквивалент в c# а уже потом сравнивайте


Form form = new() {
   header: new() {content: aaa} 
   main= new() { 
    list new(){
      ItemA = new() {id= 'a', content= yyy },
      ItemB = new() {id= 'a', content= zzz },
   }
   },
   footer= OkCancelFooter {onOk= onOkHandler, onCancel= onCancelHandler, onDispose= onDisposeHandler}
}


ил если есть конструкторы (object content)
Form form = new() {
   header: new(content: aaa)
   main= new() { 
    list new(){
      ItemA = new(id: 'a', content: yyy ),
      ItemB = new(id: 'a', content: zzz ),
   }
   },
   footer= OkCancelFooter {onOk = onOkHandler, onCancel= onCancelHandler, onDispose= onDisposeHandler}
}