|
как начать понимать код? | ☑ | ||
---|---|---|---|---|
0
dvrk
23.05.22
✎
22:11
|
привет, у меня проблема такая, если код простой, ну т.е. простые условия там, циклы не особо огромные с 10 циклами внутри, то всё понятно, а когда начинается обращение к общим модулям, из общего модуля ещё куда то идёт, потом возвращается назад, потом ещё много всяких штук крутых через точку - становится сложно и не всегда понимаю почему как и что, как это прокачать?
|
|||
1
dvrk
23.05.22
✎
22:12
|
если я напишу код сам, с обращениями к общим модулям и т д - то всё понятно, а когда читаю чужой - сложно очень)
|
|||
2
dvrk
23.05.22
✎
22:13
|
там и условия всякие и код посреди запроса, что запрос не открыть и не понять что там вообще запросом и как делается и т д
|
|||
3
d_monah
23.05.22
✎
22:18
|
Сначала выучи китайский,потом легче будет.Открою секрет,я и сам свой код не всегда понимаю
|
|||
4
dvrk
23.05.22
✎
22:19
|
(3) ну так у меня это вызывает трудности в, например, доработке и т д
|
|||
5
withoutname
23.05.22
✎
22:20
|
(0) это приходит со временем )
|
|||
6
Garykom
гуру
23.05.22
✎
22:21
|
(0) ты понял одну из проблем почему не любой человек может стать программистом
другая проблема это постоянное изучение нового ибо знания в ИТ и особенно программировании устаревают буквально за 5 лет |
|||
7
dvrk
23.05.22
✎
22:21
|
(4) я вроде и радченко прорешал и курсы какие то поглядывал и статьи, а ощущение, будто как начинал 'чёто ковырять' на таком уровне и остался
|
|||
8
p-soft
23.05.22
✎
22:22
|
понимать женщин нас заставляет инстинкт продолжения рода.
по идее, понимать код нас должен заставлять голод.. но иногда что то идет не так. |
|||
9
H A D G E H O G s
23.05.22
✎
22:24
|
(0) ЗамерПроизводительности
|
|||
10
Garykom
гуру
23.05.22
✎
22:26
|
(9) Угу.
Только вот замер времени в типовой БП3 на некоторых документах всего лишь при его открытии выдает >10 000 строк кода. |
|||
11
H A D G E H O G s
23.05.22
✎
22:28
|
(10) Егора вычеркиваем.
|
|||
12
Garykom
гуру
23.05.22
✎
22:29
|
(11) Общепринятая практика не Егора вычеркивать а монолиты в пользу микросервисной архитектуры
|
|||
13
Злопчинский
23.05.22
✎
22:34
|
Жую попкорн....
|
|||
14
d_monah
23.05.22
✎
22:39
|
(13) Семки надо,импориозамещение
|
|||
15
rphosts
24.05.22
✎
03:58
|
(0) есть способ... но займёт время: начни писать так4-же запутано как авторы типовых
|
|||
16
Bigbro
24.05.22
✎
04:58
|
когда человека учат плавать - то в мелком бассейне
когда кататься на велосипеде - то на трехколесном или с колесиками по бокам когда учат летать - садят на одномоторный самолетик когда 1сник лезет разбираться в типовую - он попадает за штурвал боинга, который сорвался в штопор и мигает одновременно сотнями лампочек. а времени на решение проблемы - почти нет. |
|||
17
Irbis
24.05.22
✎
05:50
|
(16) Плохие аналогии. Ибо так ни плавать, ни кататься на велике не научишься.
|
|||
18
rphosts
24.05.22
✎
06:02
|
(16) эээээ, учился сразу на взрослом велике (дотягивался до педалей только из под рамки)... и ничё!
PS Есть очень простые типовые, например "1С-Платежные документы" |
|||
19
Bigbro
24.05.22
✎
06:09
|
(17) удачи тебе в обучении плаванию в горной реке с порогами без спас жилета.
|
|||
20
NorthWind
24.05.22
✎
06:33
|
(0) как везде и во всем - опыт, сын, как говорят, ошибок трудных. Делаете, пробуете, разбираетесь, что-то получается, что-то нет. Со временем начинает получаться больше.
|
|||
21
Обработка
24.05.22
✎
06:41
|
(0) Надо развивать воображение мышление и логику. Не все сразу приходит. А некоторым не дано это почти совсем.
Простой пример- Я вот если езжу по незнакомому городу на машине в голове у меня рисуется маршрут. Примерно знаю куда поехал и примерно какой был маршрут. Ну конечно без масштаба чисто схематично. Некоторым это просто не надо. Спрашиваешь где север где юг не могут определить сред бела дня даже приблизительно. Как-то так. |
|||
22
MaxS
24.05.22
✎
06:46
|
Обращение к общим типовым модулям можно понимать как обращение в черный ящик и не лезть глубоко. Попытаться понять суть, либо при поиске ошибки пройти всё отладчиком по F10, чтобы найти ту часть, где ошибка, потом на второй попытке зайти туда по F11 и далее по F10.
Так в несколько итераций можно найти проблемное место. |
|||
23
d_monah
24.05.22
✎
06:51
|
(21) Блуждая по Москве,я из любой точки пешком могу попасть в любую другую точку,даже если я там не был,без карты(ЮБутово не рассматриваем!),но такой трюк почему то не проходит в условном Подольске.
|
|||
24
d_monah
24.05.22
✎
06:52
|
(22) Типовые писали рептилоиды,даже по рен-тв показывали.Это для того,чтобы уничтожать человечество.
|
|||
25
Irbis
24.05.22
✎
06:52
|
(19) В некоторых горных речках плавать нельзя из-за отсутствия воды. А в редких глубоких омутах (примерно по колено) даже спас жилет не нужен.
|
|||
26
SiAl-chel
24.05.22
✎
06:59
|
(22) В точку.
|
|||
27
Обработка
24.05.22
✎
07:06
|
Вот у меня как раз пример отладки.
Есть отчет который я изучаю. У отчета нет формы в конфе. Как мне найти место где в предприятии я нажимаю кнопу сформировать??? |
|||
28
Обработка
24.05.22
✎
07:07
|
+(27) то есть сейчас иногда не проблема понимания кода а поиск кода важнее освоить...
|
|||
29
Гений 1С
гуру
24.05.22
✎
07:50
|
(0) да там не надо понимать. Просто найди куда поставить затычку (расширение) и все.
Пути 1С неисповедимы и неосознаваемы. Типовой код - это неосознаваемая нормальным человеком гора мусорного кода, не стоит пытаться его понять. Я так понимаю, его пишут люди которые 10-20 лет варятся в этой компании и не для того, чтобы мы туда сували нос. Вообще по хорошему они должны этот код закрыть, чтобы всякие "недомерки" не сувались со своим понятием. Легаси как оно есть. |
|||
30
rphosts
24.05.22
✎
07:59
|
(23) а что с Бутово не так?
|
|||
31
Asmody
24.05.22
✎
07:59
|
(0) я рисую блок-схему.
Или рефакторю |
|||
32
DimVad
24.05.22
✎
08:01
|
(29) Правда потом (после очередного обновления) эти затычки начинают отваливаться. Типа "ой, а такого реквизита больше нет".
Поэтому собственно УПП - последняя конфигурация для программиста. Дальше - для консультанта с навыками "подчеботарить". |
|||
33
Выпрь
24.05.22
✎
08:05
|
Читать, читать и читать.
Что там курсов еще нет на тему? |
|||
34
Выпрь
24.05.22
✎
08:08
|
Ну и в добавок нужно память кратковременную тренировать
|
|||
35
Выпрь
24.05.22
✎
08:09
|
Написание тестов хорошо помогает понять код
|
|||
36
DimVad
24.05.22
✎
08:18
|
+(32) Мне кажется что хорошо понимать современные типовые внутри смысла таки нет. Июо :
1. Мало того что он огромный - он ещё и быстро меняется. Кто будет платить за изучение типового кода а не решения конкретной проблемки ? Оплатите мне полгодика, пожалуйста. Я изучал erp... а кстати тут переход на 2.5 произошёл - надо опять изучать :-) 2. Менять его всё равно не стоит. А если так и так делать расширение - то можно и по методу, описанному Г1С |
|||
37
dmt
24.05.22
✎
08:18
|
(0) если хочешь разобраться - записывай, пропуская "пробросы"
модуль1.функА --> модуль2.функБ модуль2.функВ --> модуль3.функХ модуль2.функГ |
|||
38
Масянька
24.05.22
✎
08:44
|
(0) Типовая ЗУП...
Функции БСП (ну, типа того) (например) - ОтветственныеЛицаОрганизации. Общие модули (по порядку): ЗарплатаКадры, ЗарплатаКадрыВнутренний, ЗарплатаКадрыРасширенный, СведенияОбОтветственныхЛицах (бинго!). И везде одна строчка... Народная песня (автор неизвестен) "А За Деревом Дерево". |
|||
39
Bigbro
24.05.22
✎
08:58
|
типовая ЗУП это конечно жесть...
я все понимаю, стандарты и прочая... но есть чувство что код роботом написан. без всякого смысла хреначить 15 этажей вложенных функций в которых единственная строка вызов следующей функции... да шли бы вы. в САПчике бывало и на 65+ уровней отладки залезал, но там на КАЖДОМ уровне функция выполняет осмысленное действие, можно конечно запутаться и потеряться но только в силу сложности алгоритма и действий в целом, а не от безысходности череды бессмысленных и беспощадных путсопорожних переадресаций. |
|||
40
Kassern
24.05.22
✎
09:04
|
(0) Странно, что ночной охотник подобную ветку не создал, видимо его все устраивает) А по сабжу- вроде ничего сложного, по порядку в отладке открываете обращения к другим процедурам, имя этих процедур в целом говорит о том, для чего она. В конечном итоге доберетесь до нужной процедуры где происходит основное "таинство" 1с)
|
|||
41
СвинТуз
24.05.22
✎
09:20
|
(0)
- Как Вы так ловко ее опрокидываете Виктор Викторович? - Достигается упражнениями. |
|||
42
ILM
гуру
24.05.22
✎
09:42
|
(0) Нужна практика, практика и практика.
Я понимал код через отладку и чтение текста модуля, цепочку вызовов, потом читал список функций и процедур в модуле объекта. Далее становится более понятно: 1. Это вспомогательные функции, которые формируют таблицы или структуры для передачи. 2. Это функции обработки данных, которые что-то инициализируют или меняют. 3. Это обработчики событий при записи или проведении, вот тут контроль, тут движения формируются. 4. Это обработчики менеджера - они для формирования печатных форм и т.д. 5. Есть вызовы в общих модулях но принцип один и тот же. Вот для получения данных, вот для изменения и расчета, вот для сохранения, вот для вывода. В целом типовые достаточно хорошо структурированы, если работать все время с одной и той же конфой УПП или ЕРП или УТ, то уже на автомате пишешь и вызовы в общие модули и находишь ошибки быстро и легко вставляешь вызовы в переопределяемые модули. Нужно ещё уметь находить быстро определения функций и уметь читать запросы с листа. Так как часто бывает передача в структуру из результатов запроса, и приходится менять запрос, чтобы добавить поля в структуру, которая будет обрабатываться через 2-3 вызова в процедуре общего модуля. |
|||
43
Hans
24.05.22
✎
10:18
|
(37) Давно ищу такой похожий инструмен. Вот построение этой структуры вызовов никто не автоматизировал еще?
|
|||
44
Hans
24.05.22
✎
10:19
|
Ищу какие есть методики вообще чтения кода, есть ли они вообще?
|
|||
45
Игиптянин
24.05.22
✎
10:21
|
(0) Чтобы понимать код, надо разобраться в каждой функции которая вызывается. Я в 7.7 разобрался во многих функциях гл...... Потом вышла УПП, я разобрался почти со всеми глобальными функциями. Потом вышла ERP УТ11 я открыл конфигуратор и .... забил на это тупое занятие.
|
|||
46
Игиптянин
24.05.22
✎
10:25
|
Кстати чего там в конфигураторе включить, чтобы не проваливаться в кишки БСП? Настройка там какая то есть, все время забываю.
|
|||
47
Asmody
24.05.22
✎
10:27
|
(43) вот это посмотри https://infostart.ru/public/806807/
|
|||
48
Игиптянин
24.05.22
✎
10:27
|
А еще сертипицировался по платформе, начал готовиться к специалисту доработку торговых решений(как то так), купил курс Гилева. Прошел его и забил готовиться к сдаче. Пошел вместо этого сдал всю линейку спецконсов аналитика 1С. Так я меньше вижу 1С и вообще почти не вижу конфигуратор.
|
|||
49
Hans
24.05.22
✎
10:34
|
(46) Перв раз слышу про такую настройку.
|
|||
50
Пулья в зубах
24.05.22
✎
10:37
|
(46) Валер, лучше про джаву пиши, так хоть обсираться не будешь
|
|||
51
MyNick
24.05.22
✎
13:24
|
(47) при вызове на ЕРП в нехватку памяти винду не роняет? )))
А еще есть в ЕДТ иерархия вызовов - норм работает вроде. |
|||
52
dmt
24.05.22
✎
13:48
|
||||
53
Asmody
24.05.22
✎
14:36
|
(51) 128 гиг оперативки хватит всем!
|
|||
54
Игиптянин
24.05.22
✎
14:37
|
(50) А что в 1С типа такой настройки нет? https://prnt.sc/DffojAj42iV0 Переводится как уставновить в отладке пропускать стандартные библиотеки джава.
зы я джаву только начал ковырять. |
|||
55
Игиптянин
24.05.22
✎
14:38
|
пардон не то скопировал, вот step filters debug https://prnt.sc/q69ntagZ37QB
|
|||
56
Asmody
24.05.22
✎
14:39
|
(54) Для этого неймспейсы нужны. В 1С такой фигни нет. Только сплошное костылевелосипедостроение
|
|||
57
Игиптянин
24.05.22
✎
14:42
|
(56) А мне казалось, что этот вопрос задавали и кто даже на этот вопрос ответил в конфигураторе какой то флажок поставить. Да, уж игры разума какие то.
|
|||
58
Бертыш
24.05.22
✎
14:54
|
Скажу как давно практикующий данную йогу.
Если бы в дереве метаданных в конфигураторе с отбором вверху по наименованию "ВариантыОбеспечения" можно было бы указывать с позиционированием фильтр вида "Перечисления.ВариантыОбеспечения" было бы легче. Если бы в 1С 8 можно было логировать исполнения кода с фиксацией изменения значений как я делал это на 1С 7.7 с компонентой 1С++ создавая для логирования дочерние классы было бы легче. Да даже если бы был хотя бы аналог распространённого а-ля бейск и VS debug.print было бы легче. Если бы в конструкторе запросов была бы фильтрация по наименованию как в первом пункте в конфигураторе и как в конфигураторе же отбор по подсистемам было бы легче. Если бы при проектировании языка 1С 8 различные из 7.7 ДобавитьЗначение ДобавитьКолонку и им подобные с уточнение обслуживаемой добавлением сущности не слепили бы в единственное унифицированное добавить и мы могли бы читая код понимать о чём мы и где мы, то было бы легче. А так имеем что имеем и на этом спасибо |
|||
59
Бертыш
24.05.22
✎
14:56
|
Спасибо что дали открытый конфигуратор сиречь EDT. Знай да пописывай себе плагины
|
|||
60
rsv
24.05.22
✎
15:37
|
(0) главное не воспринимать что это образец. Коммерческий километровый код ….
Стоит ли его понимать ….. |
|||
61
rsv
24.05.22
✎
15:40
|
В базах данных чем короче путь от формы в табличку и обратно - тем лучше.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |