Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Принцип единственности ответственности и 1С

Принцип единственности ответственности и 1С
Я
   Ненавижу 1С
 
23.01.19 - 21:53
Продолжим темы философии программирования.
Умные книги нас учат каждый объект отвечает за одно действие.
А как же в 1с?
Документ это и проведение и печатные формы и вообще ввод первички...
Давайте обсудим
 
 
   Aleksey
 
1 - 23.01.19 - 21:54
а что в сапе это по другому?
   palsergeich
 
2 - 23.01.19 - 21:54
(0) Печатная форма - другой объект который связан с документом.
У документа одно свойство - фиксировать изменения в жизни фирмы
   МихаилМ
 
3 - 23.01.19 - 22:23
скорее скд не соответсвует, тк и обрабатывает данные и выводит.
   palsergeich
 
4 - 23.01.19 - 22:26
(3) СКД это не объект а фреймоврк.
Там внутри объекты и вот они уже один обрабатывает, другой выводит
   Ненавижу 1С
 
5 - 23.01.19 - 22:31
(2) печать документа (логика) защита в документ
   МихаилМ
 
6 - 23.01.19 - 22:31
(4) как в скд обработать данные без вывода (в коллекцию значений)?
   palsergeich
 
7 - 23.01.19 - 22:33
(5) В первый раз о таком слышу.
(6) Что понимать под обработкой?
   МихаилМ
 
8 - 23.01.19 - 23:11
(7) обработка полей тз без вывода в другую тз
   palsergeich
 
9 - 23.01.19 - 23:19
(8) А ТЗ до вывода нет.
Есть служебный объект, к которому нет доступа из встроенного языка, который может быть выведен или в ТЗ(дерево) или в ТабДок.
Так и было задумано на этапе архитектуры и не вижу в этом какой либо драмы.
   Скиурус
 
10 - 23.01.19 - 23:40
>>Умные книги нас учат каждый объект отвечает за одно действие.
Умные книжки такой ерунде не учат. За одно действие должен отвечать метод объекта.
 
 Рекламное место пустует
   МимохожийОднако
 
11 - 23.01.19 - 23:46
(0) "каждый объект отвечает за одно действие". Дай реальную ссылку на сию цитату.ИМХО, берешь за основу недоказанную теорему. Пятнично.
   VladZ
 
12 - 23.01.19 - 23:50
(0) "Умные книги нас учат..." Что за книги? Кто автор?
   sFAQer
 
13 - 24.01.19 - 04:01
(11) https://ru.wikipedia.org/wiki/Принцип_единственной_ответственности

Мартин,, Роберт. Быстрая разработка программ. Принципы, примеры, практика
   Конструктор1С
 
14 - 24.01.19 - 06:40
(0) скорее документ это не один объект, это сложная помесь классов. Документ можно рассматривать как подпрограмму.
   Конструктор1С
 
15 - 24.01.19 - 06:43
(3) СКД тоже не отдельный объект
   Конструктор1С
 
16 - 24.01.19 - 06:46
предполагаю, даже ТабличныйДокумент состоит из множества классов
   Emery
 
17 - 24.01.19 - 07:18
> Умные книги нас учат…

«Забудь всё, чему тебя учили!» 

> А как же в 1с?

«1С» это капиталистическая система, следовательно, все, что там делается, делается в интересах одних в ущерб другим.

> Документ это и проведение и печатные формы и вообще ввод первички...

Это «капиталистический» документ. В моей системе документ – «социалистический». Т.е., менее понтовый, более простой и понятный. Есть первичные данные или таблицы определений (объектов, если хотите, на уровне записей) и вторичные данные – таблицы отношений (между объектами). Всё! Больше ничего от таблиц не надо. Далее вступает в дело движок базы данных. Хороший или так себе, внутренний или внешний – это уже на усмотрение прикладного программиста. Система отчетов это уже как бы внешняя система. Если ей подготовить хорошие данные (задача программиста), то ее дело просто эти данные красиво отобразить.

> Давайте обсудим

Давайте! Начинай! :)
   Hans
 
18 - 24.01.19 - 07:27
(0) Вот когда печатная форма выводит данные которых нет в документе (например какие нибудь остатки) тогда и нарушается это принцип. Не люблю такое делать.
   Casey1984
 
19 - 24.01.19 - 08:16
(0) Документ - это фиксация плана/факта хоз. деятельности. То что это можно разложить на части (запись, проведение, печать) не считается ;-)
   shuhard
 
20 - 24.01.19 - 08:23
(0) а нечего обсуждать
ты путаешь тёплое с мягким
патерн разработки и бизнес-логику
   MyNick
 
21 - 24.01.19 - 08:52
(0) "каждый объект отвечает за одно действие."
Если бы это было так, то классы бы содержали только один метод. Все остальное бы считалось овнокодерством и невежеством.
   Ненавижу 1С
 
22 - 24.01.19 - 10:40
(21) нет, методов может быть несколько, но они отвечают одной задаче

в документе методы отвечают разным задачам
   Вафель
 
23 - 24.01.19 - 10:58
(22) почему ты считаешь что разным?
   Ненавижу 1С
 
24 - 24.01.19 - 11:02
(23)
1. логика проведения
2. печатные формы
3. работа с формой (хотя форму можно считать внутренним классом)

Кстати, если форма внутренний класс, то почему она не может использовать не экспортные методы внешнего объекта?
   Вафель
 
25 - 24.01.19 - 11:03
(24) а почему печать - не внутренний класс тогда?
   Ненавижу 1С
 
26 - 24.01.19 - 11:09
(25) назови его
   Конструктор1С
 
27 - 24.01.19 - 11:16
(24) "если форма внутренний класс, то почему она не может использовать не экспортные методы внешнего объекта?"

хотя бы чтобы 1сники меньше говнокодили
   Ненавижу 1С
 
28 - 24.01.19 - 11:31
(27) ну как меньше
хотим метод объекта вызвать из формы - делаем его экспортным
и всё...
он открыт для всех, а зачем?
   ADirks
 
29 - 24.01.19 - 11:32
(0) А нельзя ли привести пример умных книг, которые такому учат?
   ДенисЧ
 
30 - 24.01.19 - 11:34
   ADirks
 
31 - 24.01.19 - 11:44
(30) Ага, нашёл.  Формулировка в (0) конечно убила :)
объект с одним действием - это что-то

Ну и в общем опять же, вроде здравый постулат, но если довести до крайности, то такого наворотить можно...  Термин "ответственность" крайне расплывчив. Бог вон вообще за всё мироздание отвечает.
   ДенисЧ
 
32 - 24.01.19 - 11:45
(31) Ну... Действие - это тоже расплывчатое понятие...
Вон QApplication - тоже формально одно действие выполняет - Run()...
   ADirks
 
33 - 24.01.19 - 11:49
(32) точно :))
"без фанатизма" - пока что лучший известный мне принцип
 
 


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует