Рекомендации по улучшению хорошего кода на 1С

Поділитися
Вставка
  • Опубліковано 22 гру 2024

КОМЕНТАРІ • 88

  • @sergeytormozit7000
    @sergeytormozit7000 11 місяців тому +6

    Знач убирать не стоит, т.к. какой то вызов мог передавать в этот метод свою переменную со значением Неопределено. Тогда ты изменишь ее в месте вызова - она уже станет там неожиданно структурой.

    • @yellow_club
      @yellow_club  11 місяців тому

      Для такого сценария согласен. Лучше оставить

  • @АнтонВикторович-п2ф
    @АнтонВикторович-п2ф 11 місяців тому +3

    Спасибо за качественный материал

    • @yellow_club
      @yellow_club  11 місяців тому

      Рад, что полезно

  • @CuriousAlehandro
    @CuriousAlehandro 9 місяців тому +1

    Продолжу свои нападки :). По поводу метода «Обработать очередь сообщение», что плохо, когда метод и обрабатывает данные и возвращает («методы должны либо обрабатывать либо возвращать»). Во-первых, возвращение данных - это вообще не задача. Задача может быть на чтение данных, на создание или изменение. Просто иногда после создания или изменения данных нужно получить результат этой работы: иногда иноформация об успешности выполнения, иногда сами созданные/измененные данные. И это не просто нормально, а совершенно естественно, когда функция создает и возвращает созданное. Опять же, перейдем в реальную жизнь: человеку можно сказать «купи в магазине хлеб», подразумевая, что он должен купить хлеб и принести (вернуть результат), а можно сказать «оплати в магазине хлеб», а потом сказать «возьми оплаченный хлеб и принеси домой».

    • @yellow_club
      @yellow_club  9 місяців тому

      Мне очень нравится твой стиль 👍
      Те это не говнаревый стиль, а прям дискуссия классная 👍
      Возвращение данных это одна из задач. Как раз для этого функции придумали.
      Второй сценарий с хлебом предпочтительнее. Хотя и может казаться усложнённым.

  • @commonaccount6453
    @commonaccount6453 11 місяців тому +3

    Знач имеет смысл поставить, если метод серверный, но вызывается с клиента, тогда после завершения серверного метода будет меньше данных передаваться на клиент

  • @TheWinkingSkeever-eo1gf
    @TheWinkingSkeever-eo1gf 11 місяців тому +7

    Уже второй поток, а где сама программа чему учат? Или как опытному специалисту понять насколько нечто предлагаемое для него актуально?

    • @yellow_club
      @yellow_club  11 місяців тому

      Заполняй анкету и все узнаешь

    • @TheWinkingSkeever-eo1gf
      @TheWinkingSkeever-eo1gf 11 місяців тому +4

      @@yellow_club извините, это не серьезно. Мне 09.01 у CTO согласовывать годовой бюджет на обучение коллег. Когда спросят что/зачем, мне тоже ему сказать "заполняй анкету и все узнаешь"?

    • @naughtyraccoon211
      @naughtyraccoon211 11 місяців тому +2

      ​@@TheWinkingSkeever-eo1gfподдерживаю

    • @yellow_club
      @yellow_club  11 місяців тому

      Я понимаю ваше недовольство. Но пока цены и пакеты не согласованы. Согласованные цены придут в бота.
      Ориентироваться можно на от 60-70к

    • @TheWinkingSkeever-eo1gf
      @TheWinkingSkeever-eo1gf 11 місяців тому +5

      ​@@yellow_club Мой вопрос не про цену, а про содержание. Я не могу покупать и предлагать другим кота в мешке.

  • @alan-1c
    @alan-1c 11 місяців тому +2

    В итоге какая стоимость курса? Нигде не нашел.

    • @yellow_club
      @yellow_club  11 місяців тому +1

      В бот придёт цена. Цены ещё не утвердили. Будут разные пакеты. От 60к где-то

    • @SMit1C
      @SMit1C 11 місяців тому

      @@yellow_club давай за 10-ку )

  • @ocean1487
    @ocean1487 11 місяців тому +5

    Сколько курс стоит?

    • @vama9606
      @vama9606 11 місяців тому +1

      Если нет цены, то наверно бесплатно. Это Так?

    • @ЕгорКорин-ч2б
      @ЕгорКорин-ч2б 11 місяців тому

      @@vama9606 бесплатно попозже думаю появится.

    • @yellow_club
      @yellow_club  11 місяців тому

      А как думаете сколько должен стоить такой курс?

    • @ocean1487
      @ocean1487 11 місяців тому

      @@yellow_club 20тысяч да, выше 30 до 90 уже вопросы и смотреть надо на другие составляющие, что я получу взамен за эти деньги.

    • @SMit1C
      @SMit1C 11 місяців тому

      @@yellow_club напишите цифру, хватит вилять 😄

  • @naughtyraccoon211
    @naughtyraccoon211 11 місяців тому +1

    12:24 Вопрос: получается, что мы будем лишний раз дергать базу данных? Разве это оптимально, если у нас эти данные уже есть?

    • @yellow_club
      @yellow_club  11 місяців тому

      Ты прав. Это не очень оптимально. Поэтому вариант на видео допустим, но все равно это плохой вариант. Как решить задачу лучше, я не знаю.

    • @AZhdanov
      @AZhdanov 11 місяців тому

      @@yellow_clubпредставь что твоя база весит 20 терабайт и попробуй ответить на вопрос с этой точки зрения

    • @ТемноеБудущее-ч7ц
      @ТемноеБудущее-ч7ц 11 місяців тому +1

      Выгружать результат запроса в таблицу значений и далее работать с ней, что бы не дергать базу повторным запросом. Этот вариант будет не оптимален, если выборка будет 100К+ записей, но в случае с телегой, такое количество сообщений в очереди маловероятно. Вообще, использование справочника, а не РС для хранения очереди сообщений выгляди странно, РС будет работать заметно быстрее. Так же в коде проскакивало "НайтиПоКоду" - лютый моветон.

    • @triviumfan9411
      @triviumfan9411 11 місяців тому

      @@ТемноеБудущее-ч7ц "РС будет работать заметно быстрее", - а ты шутник))

    • @Starponyx
      @Starponyx 11 місяців тому

      @@ТемноеБудущее-ч7ц в каких операциях рс быстрее справочника?

  • @arshanskiysergey2791
    @arshanskiysergey2791 11 місяців тому +1

    А что за расширение для VSC используете? Прикольно выглядит что названия параметров видны в вызываемых методах

    • @yellow_club
      @yellow_club  11 місяців тому

      Это Language 1C (BSL)

  • @dmitrya7289
    @dmitrya7289 5 місяців тому

    Интересно. А Стоимость курса можете сообщить?

    • @yellow_club
      @yellow_club  5 місяців тому

      Не дороже повышения зарплаты и появления чувства уверенности в том, что делаешь)

  • @AlexeyNecro
    @AlexeyNecro 11 місяців тому

    А у вас в курсе получается реализация игры Elite с ZX Spectrum?

    • @yellow_club
      @yellow_club  11 місяців тому

      Нет. У нас в курсе учётные задачи. А сюжетная линия о космическом путешествии

  • @alaveda5424
    @alaveda5424 11 місяців тому

    Не сработало добавление бота после заполнения анкеты. Пришлось искать ссылку в просмотре кода. =)

    • @yellow_club
      @yellow_club  11 місяців тому

      Плохо (( напиши, пожалуйста свой ник в тг. я проверю нормально ли прошла регистрация в боте. А то ссылка может не прийти

  • @postalleon
    @postalleon 11 місяців тому

    Понимаю, что стандарты 1С - это святое… Но вот есть допустим две функции: получить данные из такой-то базы, и записать данные из такой-то базы. Первая просто получает данные и возвращает, допустим структуру. Вторая внутри себя вызывает первую и записывает в РС, а возвращает какую-то информацию, например что удалось и не удалось записать. Если убрать глаголы, то придется поизвращаться с наименованиями этих функций, хотя с глаголами все четко и понятно

  • @AlexeyNecro
    @AlexeyNecro 11 місяців тому

    извиняюсь, а цена?

    • @yellow_club
      @yellow_club  11 місяців тому

      Придёт в бота

  • @CuriousAlehandro
    @CuriousAlehandro 9 місяців тому

    Вот это требование «не использовать Получить», потому что везде будете использовать, а лучше «забрать», «запросить» - по-моему довольно странное требование. Представляю картину из реальной жизни: курьеру говорят «отнеси пакет туда-то», «теперь отнеси эту коробку туда-то», «отнеси конверт туда-то» и т.д. И тут волшебный эйчар делает замечание: «хватит говорить «отнеси», вы ведь все время так говорите, ну скажите «перенеси», «доставь», «перемести», ну «закинь» в конце концов». Можно еще 1с-никам претензию высказать, чтобы вместо слова «Процедура» можно было написать «Метод»,«Просиджа», «Делалка», «Запускалка» и т.д. Даешь разнообразие!

    • @yellow_club
      @yellow_club  9 місяців тому

      Речь не об этом. В именах функций глаголы используются в определенных ситуация, обычно глаголы в именах функций не нужны и только усложняют понимание кода

    • @CuriousAlehandro
      @CuriousAlehandro 9 місяців тому

      @@yellow_club Насчет усложнения кода (ухудшения читабельности) - это очень субъективно. Во-первых, если не внушать себе что «получить» в названии функции - это плохо, то это не бросается в глаза. Во-вторых, программисты именно потому и пишут «получить», что для них такой код более комфортен для чтения. В третьих, большинство методов - это все же процедуры, а не функции, поэтому как правило в коде нечасто можно встретить более одного вызова функции с префиксом «Получить» (есть ведь еще «Проверить», «Это» и т.д.). Чем ближе программный код к человеческой речи, тем легче читается. Кстати в типовых конфигурациях от 1С регулярно встречаются функции «получить».

    • @yellow_club
      @yellow_club  9 місяців тому

      @CuriousAlehandro у тебя может быть такое мнение и это нормально.
      Я исхожу из опыта людей, которые с 60-70 годов пишут код. Подозреваю, что они не зря это рекомендуют.

  • @МаксимИсаев-н2ю
    @МаксимИсаев-н2ю 10 місяців тому

    а почему вы не берёте интервью у спецкоснулов, которые решают ваши проблемы двумя кликами?

    • @yellow_club
      @yellow_club  10 місяців тому

      А какие у меня проблемы, которые решаются двумя кликами?

    • @МаксимИсаев-н2ю
      @МаксимИсаев-н2ю 10 місяців тому

      вы не видите реальности, вы даже не знаете потребностей, чёт там себе решаете, а реальных клиентов в глаза не видели. И это проблема - начиная с Чистова, который ставит задачи под самых умных в пбу, где нет компаний, и и если они есть, то там главбухи умнее Чистова на порядок, и заканчивая вашими решениями которые нафиг никому не нужны
      @@yellow_club

    • @МаксимИсаев-н2ю
      @МаксимИсаев-н2ю 10 місяців тому

      @@yellow_club а зачем всё это? нет отсылок к реальным задачам, нет понимания именно в чём вопрос. ага, всё клёво

    • @yellow_club
      @yellow_club  10 місяців тому

      Это называется программированием, а то, что описываешь ты называется знанием типовых и предметной области. Это сильно разные вещи.

    • @МаксимИсаев-н2ю
      @МаксимИсаев-н2ю 10 місяців тому

      @@yellow_club но ведь за вас уже всё решено ((( ну ок,у вас там курсы, все крутые, вам видней

  • @mobilitymoon5232
    @mobilitymoon5232 11 місяців тому +3

    Сова на глобус. Стандарт кода, это последнее, чем нужно заниматься в 1С, и то. когда уже знаешь многое и сделал карьеру.

    • @yellow_club
      @yellow_club  10 місяців тому +2

      С таким подходом «карьера» это максимум 100к

    • @mobilitymoon5232
      @mobilitymoon5232 10 місяців тому

      @@yellow_club с чего это вдруг? Не пишите ерунды. В любой компании дадут список стандартов и укажут на ошибки, на которые ты и сделаешь поправки своего кода, проще говоря попросят писать так как они там привыкли. Вот и все, расходимся.

    • @phat80
      @phat80 10 місяців тому

      @@yellow_clubЯ знал людей с 250К в месяц и срать они хотели на стандарты и на все новое, что появилось после того, как они научились говнокодить в 1С. Они не признают не HTTP сервисы, ни JSON, ни асинхронщину и т.д. Просто проработали уже 10 лет в компании и считают, что достойны именно такой зарплаты. Ведь в 1С знания - ничто, тебя судят по времени, которое ты отработал. Бред, но так и есть. Новичку, что бы он там не знал, и 40 нормально, деду в 1С, пусть он не освежал свои знания уже лет 10, меньше 200 как-то стыдно платить 😂 Именно поэтому сбежал из той конторы. Работу выполняешь одну и ту же, но коллега получает за нее в 5-6 раз больше просто потому, что он уже лет 10 отработал, а ты всего год.

  • @Hawk-k3r
    @Hawk-k3r 11 місяців тому

    Приветствую ребят. Хотел спросить, мне 16 лет и я учусь в 9 классе, думаю уходить после 11 класса, сдаю физику и информатику, буквально недавно у нас по информатике , у нас был впервые урок про программирование , а именно про язык программирования Phyton.
    И такой вопрос, что мне делать, на данный момент когда такая ситуация, что можете предложить, как будущему программисту ?

    • @yellow_club
      @yellow_club  11 місяців тому

      Иди в университет и там продолжай учить информатику

  • @TheBaza1978
    @TheBaza1978 11 місяців тому

    автор тебе говорили что ты похож на Фиксина? Ты его брат?

  • @worthyplayer666
    @worthyplayer666 11 місяців тому

    Понял что на курсе кайфы полные

    • @yellow_club
      @yellow_club  11 місяців тому

      Да, кайфы кайфы кайфули)

  • @timko_nzt
    @timko_nzt 9 місяців тому

    22:43 Двухсотый код состояния - стандартный ответ успешного хттп-запроса. Всё тут нормально с ответственностью, имхо. Не надо обработку кодов поднимать на уровень бизнес-логики.

  • @ktotoanonimnyj7500
    @ktotoanonimnyj7500 8 місяців тому

    Не слышали вас java-висты :) с их геттерами и сеттерами :)

  • @Skynet_vol
    @Skynet_vol 11 місяців тому

    А если не опытный,то бвдет лишним ? Кау по мне лучше сразу посомтркть как правильно делать чем потом занова учиться

    • @yellow_club
      @yellow_club  11 місяців тому

      Не надо. Мы не учим базовым вещам: что такое циклы, ветвления и тп.
      Сначала нужно базу освоить, а потом уже наш материал

  • @ИванБармин-ю1т
    @ИванБармин-ю1т 11 місяців тому +1

    хороший код не пропустит кривые данные в уровень бизнес логики

  • @ДмитрийКасаткин-л7г
    @ДмитрийКасаткин-л7г 11 місяців тому

    +

  • @ВадимСуслов-г1л
    @ВадимСуслов-г1л 11 місяців тому +1

    Какой смысл телеграм -ботов писать на 1С, если есть нормальные типизированные языки - джава, котлин, тайп скрипт? С возможностями на два порядка больше чем в 1С?

    • @EvilBloodEye
      @EvilBloodEye 6 місяців тому

      Т.к. рядом с бизнес-логикой есть база данных с объектной моделью с очень простым доступом к хранящимся там данным.

  • @triviumfan9411
    @triviumfan9411 11 місяців тому +3

    Грамотный зрелый код, а все эти "претензии" высосаны из пальца :)

    • @yellow_club
      @yellow_club  11 місяців тому

      Согласен. Код хороший

  • @netheroisoldcoder
    @netheroisoldcoder 11 місяців тому +3

    Ахах, какая жесть) зачем вообще кто то это учит?

    • @СергейВ-т8й
      @СергейВ-т8й 11 місяців тому

      те, кто сертификаты сдают)

    • @yellow_club
      @yellow_club  11 місяців тому +3

      Чтобы деньги зарабатывать и получать удовольствие от помощи людям

    • @yan-digger
      @yan-digger 11 місяців тому

      ​@@yellow_clubХочу ещё добавить: для того, чтобы твое лицо не становилось похоже на известную картину 😱, когда заказчик просит сделать серьезную доработку

    • @ТемноеБудущее-ч7ц
      @ТемноеБудущее-ч7ц 11 місяців тому

      Те, кто хотят работать в высокооплачиваемых и спокойных продуктовых командах.

    • @netheroisoldcoder
      @netheroisoldcoder 11 місяців тому

      @@ТемноеБудущее-ч7ц Дружечек, высокооплачиваемые - это про go, rust, etc в англии. 1с в России, это не про это)