JOB: Хороший стиль программирования в 1С #444685


#0 by Mnemonic1C
Ваши правила, взятые с собственного опыта по стилю программирования, я не имею в виду отступы и коментарии, а скорее логику. Например: В теле функции ПриОткрытии не должны обновлятся реквизиты соотв. справочника, документа и т.д. Хочется услышать секреты мастеров:)
#1 by Господин ПЖ
на ИТС все основное есть
#2 by Волшебник
В программе не должно быть ошибок.
#3 by Ненавижу 1С
Печать документов должна быть основана не на объекте, а на ссылке
#4 by Ненавижу 1С
это как? ))
#5 by ado
Если бы все было так просто ...
#6 by Композитор
вот и я сейчас пытаюсь понять касаемо хорошего стиля в восьмерке...
#7 by Stepa86
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете." (С) Стив Макконнелл
#8 by Волшебник
Вот здесь кое-что есть:
#9 by Волшебник
Отлично сказано. Не следует усложнять программу или применять хитрые трюки программирования для обеспечения чуть большей скорости. Развитие техники идет столь быстрыми темпами, что основной показатель -- это понятность программы, ее пригодность к сопровождению и надежность. Программа понятна -- это значит, что другой программист той же квалификации сможет легко разобраться в том, как работает эта программа.
#10 by Amianna
+1, иногда так напишут, что уходит дофига времени чтобы все раскопать по куче объектов, все цепочку размотать и понять, чтобы вписать 1 строку в нужное место.
#11 by Волшебник
+ Мерой сложности объекта является количество интеллектуальных усилий, необходимых для понимания этого объекта. Ясно, что для каждого человека эта величина разная. Что сложно для одного человека, может быть просто для другого. Сложность системы зависит от количества и качества связей между ее компонентами и самих компонент. Чтобы уменьшить сложность объекта, вводятся уровни абстракции, иерархическая структура или модульность. В последнем случае проблема (программа) разбивается на части (модули) до тех пор, пока их не удастся решить (запрограммировать).
#12 by Mnemonic1C
Как на счет Попытка - Исключение - КонецПопытки и рунтаймэроров
#13 by Ненавижу 1С
Попытка - Исключение - КонецПопытки должна применяться только там, где от системы ничего не зависит, например при работе с внешними ресурсами
#14 by Amianna
Для того кто писал и помнит где что, оно понятно, нормально. Это доводится до абсурда иногда, процедура, с вызовом другой процедуры и больше ничего и т.д. до вложенности штук 10.
#15 by Fragster
это ты про типовые?
#16 by DailyLookingOnSunset
Похоже, да. И в самую последнюю процедуру приезжает куча параметров и начинается оно... Переставил одну строку кода вниз на 4 позиции - исправил ошибку.
#17 by Amianna
Угу.
#18 by Mnemonic1C
Ну типовые как раз ещё норм.
#19 by los_hooliganos
Стараюсь писать все в одной процедуре (например Сформировать), чтобы код не расползался.
#20 by also
А если тыща строк?
#21 by Irbis
Если по делу хоть 10000.
#22 by also
Нечитабельно
#23 by AeDen
Что значит, "не расползался"? Зависит от назначения. Иногда смысла нет бить на процедуры, т.к. все логические блоки лежат в циклах и в логических скобках типа "Если". И структура должна быть линейной, т.е. каждый блок будет вызываться один раз:) Не факт.
#24 by Irbis
Ну вот текст запроса у меня почти на 1000 строк
#25 by also
ИМХО, чаще получается
#26 by ЗлобнийМальчик
ужас какой то, прости хосподи... две страницы на процедуру
#27 by also
В таком случае я обычно текст запроса в отдельную фун-ию..С результатами запроса работаю отдельно
#28 by AeDen
Ну это само собой. Но не факт:)
#29 by Ненавижу 1С
текст одного метода не должен быть более одного экрана, ну полтора-два максимум
#30 by КапЛей
ну у Вас и запросы... сказала база данных (цэ) :)
#31 by Дарлок
бред
#32 by Дарлок
вообще все написано в книге "Совершенный код" Макконела
#33 by los_hooliganos
а если текст запоса на 5 страниц?
#34 by Irbis
"Финики" такой отчет придумали, одних доступных полей аж больше 80.
#35 by also
см
#36 by zzzzz
Сильная фраза. Стоит добавить в пословицы, что внизу выскакивают.
#37 by Mnemonic1C
Ну запросы это вообще отдельная история, кстати как Вы считаете, насколько хорош встроеный механизм запросов 1С, не лучше ли сразу учить прямые и не мучатся
#38 by also
имхо, нужно уметь идеально использовать и те и те
#39 by Дарлок
тема в разделе про 8ку, а не про 77 если что
#40 by los_hooliganos
ну если хочешь мучаться от того "мля ну и почему этого нет в 8ке???" учи прямые))
#41 by Mnemonic1C
Ну эт понятно, ну а вот если прикопатся
#42 by los_hooliganos
и че? религия не позволяет прямые для 8.х?
#43 by AeDen
А чем отличается хороший стиль программирования для v8 от хорошего стиля программирования для 7.7? И от хорошего стиля программирования вообще?
#44 by Ненавижу 1С
тексты запросов это отдельная тема, вынести в отдельный метод
#45 by КапЛей
Мы (финики) такую ерунду и в мыслях представить не можем себе! Нас четко учил майор Синайский и подполковник Дивин: Если нельзя посчитать на счетах, то автоматизировать НЕЛЬЗЯ!!!
#46 by los_hooliganos
+1 желательно приватный.
#47 by Дарлок
а смысл?
#48 by Irbis
Посчитать можно и на счетах, но уж больно подробно разложили сделку на составляющие, плюс в расчетные и фактические показатели.
#49 by also
из 7-ки данные таскать например
#50 by los_hooliganos
смысл что 8ный язык запросов сильно урезан.
#51 by Дарлок
я из Axapta таскаю, но смысл их везде юзать?
#52 by Ненавижу 1С
ну не так уж и сильно
#53 by Дарлок
Тук-тук-тук
#55 by also
Не очень
#56 by also
Везде нету смысла
#57 by IKSparrow
Гхм... Я всегда старался следовать завету Кнута - не зазорно использовать все конструкции и инструменты языка. Ну и разумеется, листинг должен быть чётким, понятным. Без информационной избыточности.
#58 by Злобный Фей
Главное не делать как в типовых
#59 by IKSparrow
И ещё, у меня отпечаток накладывает долгое знакомство с С/С++ - множество мелких функций, которые вызываются блоками в определённых местах.
#60 by Voffka
Вывод: в 1С написано все так, как нельзя - куча ошибок, код на 1024 "скатертях", опечаток/ошибок до жути... и т.д.
#61 by Мигрень
Венгерская нотация.
#62 by xReason
Есть очень просто правило Код не должен дублироваться. Ну и не про 1С Если есть сущность - выделяй ее в класс.
#63 by Armando
Для начала
#64 by Immortal
про дублирование кода - неправильно.
#65 by Immortal
код может и должен дублироваться хотя бы для повышения параллельности работы. т.е. если в 2 малозависимых частях приложения используется один и тот же код  - то лучше , если он будет в 2-ух частях.
#66 by H A D G E H O G s
Только мне одному показалось, что автор пытается показаться "своим" парнем - первогодком, перед которым "деды" с гордостью начнут бросать "понты"?
#67 by H A D G E H O G s
Привет, Неумирающий.
#68 by Immortal
и тебе привет, *тут такая длинная расшифровка hadgehogs*
#69 by xReason
Считаешь, что старик Фаулер не прав? дублирование должно быть минимальным, а лучше вообще без него
#70 by Злобный Фей
Отсутствие дублирования кода это как нормализация БД. Вроде как хорошо, но не всегда
#71 by xReason
есть правило, у которого всегда есть исключения. Здесь речь именно про "Хороший стиль программирования" Поэтому я и пишу, что хорошим стилем является исключение дублирования
#72 by IamAlexy
да пофиг на стиль. главное чтобы работало.
#73 by Immortal
считаю что нет в приведенном примере=)
#74 by xReason
надо понимать, что под дублированием понимается логической блок, а не 2 строчки похожие на самих себя
#75 by xReason
Кстати, думаю, что принципы рефакторинга подойдут и 1Сникам
#76 by Волшебник
Ну, разумеется! 1Сники же тоже программисты.
#77 by NcSteel
В процедуре должно быть не более 20 строк с кодом, конечно не учитывая запросы.
#78 by NcSteel
+ 100500
#79 by NcSteel
Тук тук
#80 by Злобный Фей
войдите
#81 by Иду
Это когда?
#82 by NcSteel
Кто тут?
#83 by NcSteel
Априори 1сник это программист.
#84 by Иду
Тема перетертая мого раз, но люди, которые умнее меня во много раз, пришли к выводу, что хороший стиль программирования = это когда программа (код) работает шустро, без глюков и сбоев и долго и люди пользуются. Вне всяких зависимостей от "красивости" кода. Ибо не всем дано написать ТО, что и с сотней "повторов", а "пашет" десятилетиями. Не все одинаково талантливы, увы.
#85 by Злобный Фей
Это ты стучался, так что тут - ты
#86 by NcSteel
Где мой сук? отдай, я хочу тоже долбить.
#87 by Иду
Ну если только для одинэсника, то да.
#88 by Злобный Фей
а в ты в бетон клювом стучал по привычке?
#89 by NcSteel
Пытался по клавиатуре , но иногда попадалась картошка с котлеткой.
#90 by NcSteel
Тема "1с - ник программист?" обширная и каждый останется при своем мнении
#91 by Злобный Фей
Лана, давай не будем больше оффтопить )
Тэги: Работа
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С