Практика чистого кода на 1С
Vložit
- čas přidán 1. 06. 2024
- Записывайтесь на следующий поток курса «Чистый код на 1С» по ссылке: codeway.school/?...
Отправим ссылку на сайт курса в телеграмм бота.
Рассказываю о подходах к разработке на 1С.
Показываю на что обращаю внимание, когда пишу код на 1С.
Разбираю некоторые особенности архитектуры БСП.
Показываю, как делают интерфейсы в типовых и что это такое
НАВИГАЦИЯ
00:00:00 Объясняю задачу
00:02:08 Внедрение БСП
00:07:46 Трою у жму не туда
00:11:20 Настройка системы после внедрения БСП
00:15:54 Об интерфейсах в БСП
00:17:54 Обработчики обновления
00:23:41 Проверяю внедрение БСП и убираю лишние кнопки
00:30:05 Создаю справочники и документы
00:37:20 Добавляю данные
00:39:40 Правлю метаданные
00:40:47 Добавляю движения
00:44:26 Интегрируюсь с БСП
00:46:27 Делю модуля на области
00:54:59 Создаю отчета
00:58:25 Отвечаю на вопросы
01:00:06 Как организовать связь «многие ко многим»
01:07:16 Добавляю рег задание
01:11:31 Интегрирую рег задания с БСП
01:17:39 Отвечаю на вопросы
01:21:10 Готовлю бизнес логику для решения задачи
01:30:06 Получаю договоры
01:34:39 Создают документы
01:37:01 Включил подчинение справочников
01:38:46 Получать данные через точку иногда можно
01:40:55 Проверяю код
01:43:10 Стандарт «Ответственное чтение»
01:52:45 Инъекция зависимостей
01:57:02 Добавляю графики
01:59:50 Зачем интерфейсы в БСП
02:02:39 Поддержка принципа Open Close в БСП
02:06:26 Какие входные параметры нужно проверять
02:10:54 Отвечаю на вопросы
02:12:21 Пишу логику графиков
02:28:25 Заказчик меняет требования: хочу договоры хранить во внешней системе
02:30:23 Создаю новый класс Итератор
02:38:31 Добавляю КоннекторHTTP Бондаревского
02:44:50 Дописываю итератор
03:05:00 Тест Канарейки
03:06:21 Отвечаю на вопросы
03:10:00 Обсуждаем всякое
03:18:00 Может запилить курс по чистому коду на 1С
ДОП. МАТЕРИАЛЫ:
База со стрима: cloud.mail.ru/public/6PSv/mCg...
Стандарт ответственное чтение: its.1c.ru/db/v8std/content/64...
Стандарт транзакции: its.1c.ru/db/v8std#content:78...
#1c #чистыйкод
==========
Информационные площадки "Жёлтого клуба":
Телеграмм канал: t.me/+h2Ipfl1Gdms3OGYy
Телеграм чат: t.me/yellowclub_vrn
Группа ВКонтакте: vk: yellowclub_official
Подписывайся на канала Желтого клуба, чтобы не пропустить интересных гостей
/ @yellow_club
Давайте так скажу. Нет проблем с чувством собственной важности, чтобы быть 51ым человеком, ищущим к чему придраться в подобном видео. А правда проста - Евгений молодец, двигает сообщество вперед, привлекает интерес к стандартам, количество зрителей на стриме - вот он показатель. А что там на углах… подумайте, приведите себе аргументы, докажите почему вы лично будете делать иначе и делайте. Не стоит Евгения заваливать помидорами - он один, и то честно старается всем всем ответить.
спасибо за поддержку
Есть придирки , а есть конструктивная критика , которая наоборот полезна.
@user-zm7gt9zn5j пока конструктивной критики не видно) но иногда конечно случается что-то полезное
1:39:05 и вот снова здравствуйте :)
1. мы написали через точку т.к. у нас нет ТЧ и ХЗ в объекте. Т.е. отложили возможные проблемы производительности "будущим поколениям" который будут рефакторить наш легаси.
2. мы занимаемся тем что в цикле получаем данные! т.к. мы уже сделали выборку и в обходе результата запроса выполняем получения реквизитов каждого полученного договора. (хотя могли это сделать в том же запросе)
3. мы занялись ответственным чтением, чтобы ло бы не нужно сделать пункт 2 иначе
4. в случае прерывания регламента повторный его запуск задублирует документы, хотя если бы мы сделали один запрос который бы и получил договоры и проверил по каким из них документы уже могут быть сделаны, то повторый запуск регламента не создал бы проблем.
ух.. сколько всего можно было бы избежать не пытайся мы запихнуть ООПшные практики туда где они не нужны :)
знаю что это все звучит как бурчание старовера на завалинке, но такова боль моей практики
1. Это был пример, в котором хочется показать что надо думать перед тем, как писать. Кажется это очевидно.
2. Запросы в цикле не всегда плохо.
3. Делать большую транзакцию на пачку и долгие блокировки это как раз отличный пример, когда маленький атомарный запрос в цикле на короткую транзакцию это много лучше, чем большая толстая транзакция на большую пачку и с огромным диапазоном заблокированных данных вплоть до эскалации :) привет хайлоад, вот так вот. Конечно пример немного натянут, врядли кто-то захочет прям менять договор во время работы регамента, но это пример который хочется показать и чтобы о нем тоже думали!
4. Это правильно, потому я и говорю, что нужен контроль внешний для отслеживания выполнения. А в выборке и правда хорошо бы проверять есть ли уже документы на эту дату. Очень рад что кто-то это заметил! Жаль что не все это увидели.
@@yellow_club
3. я ни в коем случае не предлагал делать одну большую транзакцию на весь запрос. Зачем? Блокировку на все договоры по признаку активности - да, наверное стоит (ради сохранения ответственного чтения), но транзакции, конечно, должны оставаться атомарными. не спорю, у моего подхода тоже не мало минусов, но для крупных регламентов выполняемых раз в сутки в свои "технологические окна" они будут более продуктивными.
Это было очень очень интересно. Хочется понять и научиться писать доработки, которые по минимуму зависят от обновлений. Видео очень стимулирует изучение документации. Спасибо.
Идея о курсе это очень круто.
Рад, что полезно 👍
Наконец-то кто-то начал это делать. 👏👏👏
Даже по этому видео видно, что платформа нифига не помогает писать хороший код, а иногда даже мешает.
Предлагаю во второй серии разобрать более реальный и полезный пример - ввод на основании: как правильно создавать документ на основании разных оснований, и наоборот. Кто там будет провайдером, куда пихать адаптеры и вот это всё.
Хорошая идея! Спасибо
Смотря видео от Евгения повышаем качество своих навыков и продуктов. просто золото, а не видео
Спасибо, рад, что полезно
Я за создание Евгением курса по разработке на 1С!
Спасибо за поддержку
А мне зашло, посмотрел все. Спасибо, будем стремится к стандартам.
Спасибо. Очень наглядная демонстрация. Такой подход сильно понятней, чем когда слушаешь выступления без кода. Здорово видеть как понятия выливаются в живой код.
Спасибо 🙏 рад, что полезно
@@yellow_club Отдельное спасибо за Итераторы, В java спокойно использую. Даже мысль не шла, что можно это в 1с сделать. Это прямо прорыв по всем фронтам.
Полезно. Благодарю.
огонь, спасибо тебе, надеюсь не угаснет пламя твоего энтузиазма! мотивируешь хорошо! Пока не посмотрел твое видео не знал что БСП так легко можно запустить! много что интересного расказываешь
Рад что полезно
Вы супер! Спасибо за видео!
Рад, что полезно
Евгений молодец! Видосы заходят! Газуй дальше!)
Спасибо за обратную связь. Очень приятно
Это ли не чудо, что в час ночи я смотрю шикарный стрим (пусть и в записи). Спасибо!
Рад, что проводишь ночь со мной 😂😂😂😂
Досмотрел видос! Получил удовольствие, спасибо! Буду ждать второй поток, сейчас уже все закрыто..
Ееееее! Спасибо за отзыв, рад, что полезно
Спасибо за стрим, есть над чем задуматься
Рад, что полезно
хорошее видео про культуру кода!
больше спасибо, узнал много нового!
Рад, что полезно
Евгений, вы затронули очень интересную тему "ООП в 1С". Вы даете очень полезные мысли на подумать! Спасибо за ваш труд.
Спасибо за поддержку
Спасибо, упорядочились в голове некоторые представление. Совершенно не зря потратил полтора часа на просмотр (на х2). И огромное уважение за потраченные тобой 3 часа на сам стрим + чёрт знает сколько на подготовку 🔥👍
Рад, что понравилось и было полезно
Отличный пример "поддержки" open-close в типовых - это переименование в какой-то версии БСП функции "ПолучитьЗначениеРеквизита" в "ЗначениеРеквизитаОбъекта")
Надо всплывать из пучин рутины время от времени. Бултыхаешься, подтягиваешь чего есть в типовых, а тут раз и КоннекторHTTP в два клика. Полезное.
О да, мне коннектор тоже нравится. Спасибо автору
Красавчик!
К 2:15:37: Для быстрого создания функций нужно написать начало "функ" (для процедур - "проц"), а после буквы "к" комбинацию "ctrl+q". В появившемся списке выберите нужный вам шаблон и все!
Подскажите, какое сочетание кнопок вы нажали, чтобы в выделенном фрагменте кода удалить лишние пробелы, табы ?
Ещё я видел в типовых рмк, там создают несколько ОписаниеОповещения, передают в процедуру, а процедура в зависимости от результата вызывает ОписаниеОповещения. Что это за паттерн такой?
Спасибо за стрим!) Было полезно)
Рад, что полезно
Хороший стрим
П.С.
Перед отменой транзакции нужно проверять, что она активна, иначе будет всем известное "в данной транзакции происходили ошибки"
Не надо перед отменой транзакции проверять активность транзакции.
Ошибка «в данной транзакции происходили ошибки» появляется из-за того, что идёт обращение к базе данных в тот момент, когда транзакция отменена
@@yellow_club , исходя из материалов статьи на хабре "Вы не умеете работать с транзакциями", если внутри кода, вызываемого в попытке, начатая нами транзакция уже была отменена или зафиксирована, повторная отмена транзакции в нашем перехвате вызовет исключение
@@yellow_club, исходя из материалов статьи "Вы не умеете работать с транзакциями", если внутри кода, вызываемого в блоке "Попытка", начатая нами транзакция была отменена или зафиксирована, отмена уже не активной транзакции в блоке "Исключение" вызовет исключение
@@yellow_club, понял, благодарю за обратную связь!)
Видос смотрится на одном дыхании, много нового о бсп узнал, спасибо за контент)
Получается, ты со мной ночь провёл 😂???
Лайк не глядя! ❤
Лучше посмотреть, там интересно
@@MegaBEavER1 обязательно посмотрю в записи, не успел :)
Вот это я понимаю уровень 😘
Спасибо за видео. Очень полезное. Не уверен что внедрение и настройка БСП прям необходимы были. Все-таки большинство разработчиков работает в типовых конфигурациях и необходимости в этой задаче нет. Хотя твои неоднократные ссылки в процессе внедрения на документацию думаю полезны. Как тему для видео рассмотри паттерны проектирования, поведенческий тип хорошо проецируется в 1С. А тема хорошо ложится на разбор приемов качественного программирования.
Вот кстати хороший пример почему "области" По стандарту не работают.
47:50 обработчики закинуты в область СлужебныеПроцедурыИФункции хотя должны быть в области обработчиков команд
Здесь нет интуитивно понятного интерфейса и связей между желанием разработчика выделить группу процедур в отдельную область и требованием 1с к оформлению.
Вопрос, коль БСП бесплатная, почему нельзя весь БСП сразу добавить? я вот как то добавил часть а потом намучался добавлять другие части по мере развития системы.
Приветствую. Спасибо за материал. Каким образом Вы настроили отображение вертикальных полос в методах модуля в конфигураторе?
Сервис - Параметры - Тексты: Табуляция
Делаем красивенькое оформление кода в конфигураторе:
1. Табуляция от Федькина:
- Символ табуляции "│" (code 2502)
- Цвет конструкции "Прочее" стиль: Линия отчета #CCC085
2. Шрифт по Волокитину:
- JetBrains Mono, 10 (www.jetbrains.com/lp/mono/)
3. Текущий идентификатор:
- стиль: Цвет активности #FACC1F
Лучший!
Спасибо 🙏
Полезный стрим
А что за упоминаемый в видео курс по архитектуре игр?
www.youtube.com/@KSyndicate
Очень интересно! Про роли запишите пожалуйста видео!))
Евгений, а почему обращаться к реквизитам через точку (разыменование) плохо при наличии сложной структуры объекта (табличные части и прочее)? Вы так шикарно объяснили чем отличается модуль менеджера от модуля объекта (даже я понял, хотя много лет не задумывался об этом), а вот про "беды разыменования" додумать не получается.
Потому что из базы данных прочитается вся табличная часть. А в ней может быть до 99 999 строк. Поэтому быстрее прочитать значение конкретного реквизита/реквизитов, а не читать весь объект. Да и оперативки такой объект сожрет слишком много
@@yellow_club то есть в случае сложной структуры объекта при обращении через точку в память считывается вся таблица объекта из базы данных. Спасибо большое за пояснение.
Я бы даже сказал все таблицЫ. Это с прикладной точки зрения Справочник единый объект, а с точки зрения базы данных данные справочника хранятся в нескольких таблицах
Посмотрел стрим , говорите правильные вещи , но есть пару замечаний
1. Запросы в цикле. Вы обратили внимание что идет обращение через точку и если объект небольшой то все норм, но вы забыли что у вас цикл по выборке и каждый раз вы читаете объект
2. Желательно в запросе получать все данные , а то получается Вы получили активные договоры , а потом обращаетесь к ним же за тарифом и владельцем так почему же нельзя сразу получить запросом эти данные ?
3. Далее у вас в регламентном задании идет обход выборки результата запроса , но как по мне лучше обходить выборку в модуле менеджера документа начисление Арендной платы , а то получается так что при каждой итерации цикла обхода выборки вы дергаете модуль менеджера . Что не есть хорошо
тут не про детали , а главное про архитектуру в целом и принципы ООП ... и их применимость в 1С
дальше по видео - конкретная реализация конкретных действий "закапсулирована" уже внутрь "Провейдера" конкретных Данных ...
и идея именно в этом, что хоть это справочник договоры , что общий модуль - работают одинаково!
да, архитектура может и не идеальна... для примера ... создана на лету и по-простому и по-быстрому
@@user-pl9hn7mg1q , ты не совсем понял смысл моего комментария . Тема стрима - чистый код. Но тут же идет запрос в цикле, что не по стандарту , о которых Евгений говорит на протяжении всего стрима.
Дальше , гораздо логичнее собрать все данные и передать их на обработку , а так получается , что в обработке данных мы что-то дополучаем. Общий смысл такой - код который обрабатывает данные не должен дополнительно получать часть данных для обработки. Ну и третье- нужно стараться передать все данные на обработку а не частями ( возможно есть исключения, но явно не в этом случае)
Запросы в цикле это плохо. Но когда в цикле идёт создание объекта то на фоне него любой простой запрос меркнет. Но да, делать получение данных в выборке можно и это хороший подход позволивший избавиться от свойств документа в провайдере.
Евгений, благодарю за стрим - про такое разделение областей, признаться, не знал. И имхо, модульность в 1С появится, когда ERP будет собираться из отдельных (обособленно работающих) модулей: УТ+Производство+Финансы+Бухгалтерия+ЗУП+Отчетность+...
Угу, это конечно не идеальная модульностью, но продвинулись со времён УПП сильно
Правильное видео! Правда есть помарки в терминологии, общие модули не синглетоны, у них нет состояния, документы/обработки почти не классы, очень они серверные, тема с областями как-то слабо раскрыта, в теории вроде логично, но на практике, без поддержки в языке хотя бы базового паттерна "публичный/приватный" с соответствующими ошибками времени исполнения, это все игры разума. Например, "Раздел «Служебный программный интерфейс» предназначен для модулей, которые являются частью некоторой функциональной подсистемы.". Написано очень толково, но задайте себе вопрос, как именно определяется эта часть? А если фунция принадлежит двум областям, а если я решил сделать рефакторинг и функция уже перешла в только служебный или только в публичный? Нет формализации, а просто соглашения (стандарты), что влечет за собой неточности в принадлежности фунцкий к контекстам, постоянному усилиям в определении области, нарушение правил самих себе придуманных в итоге не! ведет к ошибкам. Мы конечно как потребители бсп, получаем это все готовым и нам радостно, но попробуйте сами что-то подобное проделать, и постепенно нагрянет мысль, а зачем? С микросервисами в 1с вы тоже немножко погорячились, архитектура не терпит таких грубых приближений. Микросервисы - это стиль разработки программного обеспечения, в котором сложное приложение состоит из множества независимых и взаимозаменяемых компонентов, каждый микросервис представляет собой отдельную функциональную единицу с собственным API и может быть разработан, развернут и масштабирован независимо от других, это не совсем то, что вы имели ввиду.
Короче, пять раз перечитал. Не понял мысль твою.
Понимание придет с опытом.
@suinuli2 помоги расшифровать
@@yellow_club "есть помарки в терминологии" вот и вся мысль)
Ладно, вижу, что плюсуете. Потрачу время на этот сложный для меня текст, если бы автор выделил отдельными абзацами, то читать и понимать было бы проще. Но что есть, то есть.
Мысль первая:
Правильное видео! Правда есть помарки в терминологии, общие модули не синглетоны, у них нет состояния.
Ровно это я на стриме и сказал, общие модули что-то типа синглетонов, но без полей.
Мысль вторая: документы/обработки почти не классы, очень они серверные,
я не очень понимаю фразу "почти не классы", тут ты либо беременная, либо нет. Это классы, но в них слишком много всего есть, что нам не нужно и проще для создания своих классов использовать обработки. Собственно это я и сказал на стриме
Мысль четвертая: тема с областями как-то слабо раскрыта, в теории вроде логично, но на практике, без поддержки в языке хотя бы базового паттерна "публичный/приватный" с соответствующими ошибками времени исполнения, это все игры разума. Например, "Раздел «Служебный программный интерфейс» предназначен для модулей, которые являются частью некоторой функциональной подсистемы.". Написано очень толково, но задайте себе вопрос, как именно определяется эта часть? А если фунция принадлежит двум областям, а если я решил сделать рефакторинг и функция уже перешла в только служебный или только в публичный? Нет формализации, а просто соглашения (стандарты), что влечет за собой неточности в принадлежности фунцкий к контекстам, постоянному усилиям в определении области, нарушение правил самих себе придуманных в итоге не! ведет к ошибкам. Мы конечно как потребители бсп, получаем это все готовым и нам радостно, но попробуйте сами что-то подобное проделать, и постепенно нагрянет мысль, а зачем?
Что хотел сказать автор? В каждом языке есть свои ограничения и свои преимущества. Фирма 1С придумала классный подход с областями, который прекрасно ложится в то, что есть. Не понимаю, как я тут напутал с терминологией. Если автор комментария не согласен, то пусть устраивается в фирму 1С и рассказывает, как надо разрабатывать платформу
Мысль пятая: С микросервисами в 1с вы тоже немножко погорячились, архитектура не терпит таких грубых приближений. Микросервисы - это стиль разработки программного обеспечения, в котором сложное приложение состоит из множества независимых и взаимозаменяемых компонентов, каждый микросервис представляет собой отдельную функциональную единицу с собственным API и может быть разработан, развернут и масштабирован независимо от других, это не совсем то, что вы имели ввиду.
Я не говорил, что написал микросервис. Это ваши догадки. Я сказал, что бытует мнение, что нормально выразить ответственности можно только в микросервисной архитектуре. Что подсистемы 1С приложений адски связаны. Но это не так. Если понимать базовые принципы программирования, то легко написать прекрасную модульную систему, как БСП
Подскажите пожалуйста что за шрифт в модуле?
Делаем красивенькое оформление кода в конфигураторе:
1. Табуляция от Федькина:
- Символ табуляции "│" (code 2502)
- Цвет конструкции "Прочее" стиль: Линия отчета #CCC085
2. Шрифт по Волокитину:
- JetBrains Mono, 10 (www.jetbrains.com/lp/mono/)
3. Текущий идентификатор:
- стиль: Цвет активности #FACC1F
Что за провайдер? В чем суть?
каким ветром меня сюда занесло? ))) я вообще веб разработчик. Но вообще был опыт взаимодействия с 1С по HTTP. Даже писал небольшое фронтенд приложение которое каким-то чудом встраивалось в окно 1С (встроенный браузер) и взаимодействовало с окружением как его нативное приложение. Неплохо что 1С позволяет так делать
Это судьба подсказывает, что пора переходить в 1С сферу))
Да уж… позволяет… через костыли 😂 Поверьте, ничего хорошего в таком взаимодействии нет. Реализовано оно через одно место. Такое впечатление, что 1Сники добавили поддержку web технологий для галочки.
@@yellow_clubиз веба в 1С? пфф… скорее наоборот. В вебе работать приятнее, в разы. Последнее время ковыряю Django и просто кайфую от того, насколько приятнее работать с ним, чем было с 1С. Хотя я сам Питон и не особо люблю. Но язык 1С я люблю еще меньше.
Большое спасибо! Все понравилось. А почему перечисления нужно называть во множественном числе? Там же есть отдельно представление списка? Как раз просится синоним и имя в единственном, а представление списка - во множественном?
Такой стандарт по именам метаданных. Я не знаю почему так рекомендует фирма 1С. Может об этом конечно в стандарте написано, но я не помню
за контент, конечно, спасибо, лишних слов в речи много - требуется фильтр
Например каких?
Парам пам пам) очень нравится канал) автор а можно ролики содержательные минут на 10-15, ну не всегда есть 3 часа, да и не хочется) пожалуйста)
Есть темы, которые за 15 минут не раскрыть. Рад, что нравится канал
По поводу префиксов. Это полностью твоя конфа. О префиксах пусть 1С думает в своем БСП. А когда мы расширяем типовые конфы, то мы заботимся о префиксах. Думаю что так справедливо.
Деятельность разных команд в 1С, которые отвечают за разные подсистемы, ничем не отличается от любой другой доработки типовых. Так же могут внезапно вылезти одноимённые метаданные и разрабочики типовых нормально с этим справляются
Я правильно понял, что можно смело пользоваться только экспортными методами расположенными в области ПрограммныйИнтерфейс ? Инкапсуляция областями от 1С получается 😊
Да
@@yellow_club Увидел про это ещё раз подробно на втором часу видео.
2:54:57 - так не нужно писать код. Есть стандартные функции бсп по получению значений (ия) свойств (а) одного или сразу по нескольким объектам
А почему не нужно то?) Обьект без табличных частей, без двоичных данных. Ничего не запрещает так делать в моем случае
@@yellow_club, потому что это оставил мину, которая однажды может неожиданно подорваться.
@@yellow_club Потому что внезапно в будущем может появиться в объекте табличная часть, а за ней и двоичные данные, а про это место в коде в тот момент никто не вспомнит
Когда говорят то про чистый код то общепринято говорить о разделении приложения слои и инверсии зависимостей, а в контексте 1с материал полезный :)
Так весь стрим об этом)
Евгений,а вы шаблоны используете?
Нет
just wow
Покажи конечный вариант данного отчёта. Мне как бухгалтеру интересен конечный вариант
Это канал не для бухгалтеров. Тут нет ничего интересного и нужного для бухгалтеров
@@yellow_club мне, как бухгалтеру интересны возможности программистов. Мы же вам задачи режим и деньги платим. Вдруг я увижу, что облегчает мой труд. Не видя результат, задания вам не дам
Интерфейсы в 1с? Паттерны в 1с?
И классы в 1С
ООП в 1с😂
И почему-то не был рассмртрен вопрос: как защитить базу с которой работают все пользователи от копий разработчиков - где разработчики могут нажать кнопку "выгрузить" и сломать тем самым пользовательскую базу, которая скажем по регламенту загрузит выгруженные данные )
Так этот вопрос закрывается правильным созданием рег задания.
Может стоило конечно подробнее рассмотреть настройки. Но тогда стрим был бы на 8 часов 😂
@@yellow_club, это не регламент виноват, а программист со своей копией, когда тестит кнопку выгрузки куда-то
Ааа, вот ты о чем
Если не фреш, то делается всё просто одним расширением. При запуске приложения проверка на копию, если копия то меняются пути выгрузки, например на те же пути но с постфиксом "_копия".
В самописной у меня так сделано, в типовых пока руками меняю 😅 все руки не доходят сделать то что написал выше
@@user-el8sg2vc9n , т.е. в каждой обработке по выгрузке проверять копия это или нет? В типовых, когда впервые загружаешь базу из dt при первом запуске спрашивает это копия или нет - вот как-то надо к этому и привязываться
Я вообще не одинЭсник и не понимаю, как я попал на это видео. Но! Классы в 1с - неожиданно
Давай курс по чистому коду на 1С!!!!
Уже даю) старт курса в ноябре
Кто-то за это платит деньги? Или на курсе преподают что-то другое?
Не понял суть вопроса
Автором изначально не определено, что он понимает под своим классом / пакетом (весь «Учет аренды» или отдельно общие модули, справочники и документы). Поэтому дальнейшая расстановка областей в коде не имеет смысла.
Что такое «свой класс или пакет»?
Я создаю подсистему учёта аренды.
Не очень понимаю, что не так с областями.
Если областями мы хотим обозначить публичные и приватные методы (интерфейс; что не изменится и чем можно пользоваться извне, а что для «служебного» пользования), то сначала нужно обозначить границу публичности и приватности (класс или пакет). В БСП это одна ее подсистема. А у вас?
Да и сами понимаете. Общие модули, модуль объекта, менеджера и формы в купе с отсутствием слов export import - это изобретения, которые не вяжутся не то что с ООП, а даже с простой модульностью. Предлагая размазывать логику по этим модулям. Как тут не ошибиться простому одинэснику?:) В другом языке вы бы сделали пакет с несколькими вашими классами, возможно выделив view и persistence (что бы это ни значило:) в отдельные классы. Но глядя на мучения наших сишарперов, где даже названия полей то по-русски писать не рекомендуется, про сделать мышкой конфу для аренды я вообще молчу, задаешься вопросом…
1Сники в 2024 году работают в IDE уровня Word 2007😂😂😂
Началась рассылка в ТГ о старте набора на курс! То от имени вашей жены, то от имени вашего помощника…
Мошенники?))
Меня заблокировал телеграмм, потом аккаунт жены, теперь отдувается Павел. Его пока не заблокировали.
что значит синглтон это плохо....для синхронизации, для кэширования, для UI и еще кучи мест это супер полезный паттерн.
Это самый вредный паттерн
42:00 Речь про обычные формы же, а не про толстый клиент?!
Да, речь об обычных формах
Пересматриваю стрим и не понимаю почему ты себя не поместил куда то вниз в маленькое окно
Мне так нравится) бесят люди в квадратиках в углу кадра
ну типа беседа же. не просто курс, что-то там поясняющий. норм всё
Продвижение личного бренда
@Gesperid а если я был бы в мелком квадратике сверху, то это бы не было продвижением бренда?)
@@yellow_club но не таким эффективным ;)
Это сарказм или 127 человек для тебя реально много?)
Если тебя в онлайне больше людей слушает, то мое почтение.
Для меня 127 человек в онлайне много.
@@yellow_club ты неправильно понял, я же не с издевкой написал. Я просто думал, что у тебя онлайн гораздо больше)
@MrTorfable не) в этот раз самый большой онлайн был. В пике 230 человек
Зря я похоже не хотел сначала смотреть почти 4 часовое видео. Первые десять минут просто огонь 🔥😂
Это ты ещё до 46 минуты не дошёл)
Ожидал услышать фразу "Я потерялся!" намного раньше третьего часа программирования 😂 Франч уже бабло получил за это задание и сидит пьет пивас 🍻 Кто-то теряет, а кто-то находит...
если чуть по медление было куда лучше было объяснения урока
Переменную ПредыдущийДень заменить на более короткую Вчера :-)
А лучше в Давеча :-)
Здравствуйте! Спасибо за обучающие видосики! А что можете сказать про направление 1С? Стоит сейчас тратить своё драгоценное время на изучение платформы и языка 1С?
Нужно!
@@Tonik992 А почему?
Если с нуля, то можно и другой язык, более востребованный в мире, 1С это в основном РФ
Стоит
@@user-oc4ef3lx9e я 1С хочу выучить чисто, чтобы на работу быстро устроиться. А так я имею опыт изучения PHP, JavaScript, C#, Python и Java. Также могу читать документацию на английском со словарём.
мне кажется у вас абстракции протекают
Не может быть)
@@yellow_club Вот я теперь понимаю как пишут эти переусложнённые типовые. Раньше код был проще, ошибки исправлялись легче, трава зеленее, деревья выше.
Да и мы моложе были) верните наш 2008 год)
Почему-то в видео не вылазит и оповещений нет. Если бы не Пикабу- пропустил бы /
Ого) круто!
@@yellow_clubКруто что видос поймал на сторонней платформе ? =)
Да)
Идея понятна и так. Не понравилась манера повествования и постоянные кривляния. Для чего было размусоливать на 4 часа. Если автор устал, то разбейте стрим на несколько частей, будет проще, а так очень смешано и скомкано(смешались люди кони...).
Просто не смотрите, раз не нравится 😉
Откровенно говоря, никогда не понимал зачем эти области, никогда ими не пользовался, в смысле открыть область и что-то в ней поискать, всегда ищу через поиск или открываю все методы и смотрю что там есть. ИМХО - хрень полная. Сплошное расстройство, сидел в 1с7.7 - там была сплошная кастылизация(куча внешний самописных dll, всякие лайфхаки с открыть/закрыть форму и т.п.), так как не хватало функционала, перешел на 1с 8.3 - тут начинается опять таже песня... ООП - нет, модульности нет, фирма 1с - это вроде понимает, но это не точно, и начинаются всякие огороды с областями, общими модулями в общем модуле... Сорян, накипело... Но 1с мне нравится, но хочется чтобы в нее внедрили какую Java или python каким-то макаром...
Не нада так. Области и интерфейсы нужно понимать, иначе вызовешь метод, который в следующем релизе из подсистемы удалят
Да сколько лет еще должно пройти, чтобы люди перестали писать свои комментарии из слов «никогда не понимал» и «а вот в 7.7!». Сколько? Никогда не понимал и не начинай, это не твое, мы в чем виноваты тут? «Сорян накипело»!
@@LosashExote во первых ты тут причем вообще? Во вторых прочитай нормально мой комментарий и тогда все твои "сколько лет" пройдут.
@@iBotMan А я как только бегло посмотрев писанину вижу, что человек попользовал аргумент «я сидел в 7.7» в конце 2023 года, вообще для чего бы то ни было, автоматически не читаю дальше слов «я никогда не понимал зачем…», это у меня такой скрипт в голове. Подождем обновлений, тогда прочту.
Ребята, почему 1С, неужели вам нравится эта дичь со стилем 90х и недокодингом?
Бапки норм платят и пользу бизнесу приносим. Что ещё нада?
Такие же нюансы как и в других платформах. Так что ничем не хуже если оценивать "итого"
Потому что 1С позволяет быстро выполнить бизнес задачу. В том числе быстрое прототипирование и выход на MVP
Смотрю я на эту 1с помойку и тошнить начинает
Главное, что в 1С сфере нормально и стабильно платят. 400к уже реальные зарплаты для линейных разработчиков
Отличное видео как не надо разрабатывать конфигурации даже для ларьков. Ладно стример не в теме 1С, но он вроде институтского возраста, а принципа классов в программировании не понимает. Возможно это уже диагноз. Дальнейший путь в тимлиды
Напиши хоть что-то конкретное) а то обсираешь в формате «все говно, мне не нравица». Такая себе позиция.
Мы, мыши, слишком исколоты для другой позиции.
Погодите, это заводчанин с легаси УПП 20 летней порвался или что? Возможно, это уже диагноз. Дальнейший путь не смотреть канал Евгения, раз настолько печет. Кто заставлял?
@HadgehogsDim продолжишь хамить и я тебя забаню
Сколько нужно учиться чтобы понимать такие видео? 😅 я новичок и только 1/500 часть поняла
Пару лет, если двигаться в верном направлении)