Глокая Куздра программирования 1С

Публикация № 57328

Сообщество - О жизни

86
Как писать программы на 1С, чтоб их понял не только процессор, но и человек?
Вводная статья по рефакторингу в среде 1С

Известен такой анекдот. Вызывает профессор-лингвист студента к доске и говорит: «Пиши: Глокая куздра штеко будланула бокра и курдячит бокренка». «Чего-чего?» было спросил студент, но с авторитетом профессора спорить не стал и честно записал эту абракадабру. А теперь, - сказал профессор, объясни – о чем говорится в этом предложении? На студента стало жалко смотреть и лектор сжалился.

- Ну, кто здесь главное действующее лицо?
- Ку… куздра, - промямлил студент
- А какая она, эта куздра?
- Глокая! - уже уверенней произнес студент
- А на кого направлено действие?
- На бокра!
- И что эта куздра сделала?
- Она его будланула! – выкрикнули из аудитории со смехом.
- И штеко, причем, будланула, добавил, улыбнувшись, профессор.
- А вот бокр – он живой?
Студент задумался…
- А! Да! У него бокренок есть!
- У бочки тоже есть бочонок, но это не значит, что она живая. Если бы бокр был неживой, мы бы сказали «булданула бокр», это винительный падеж «кого, что».

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

Теперь вернемся от языковедения к программированию. При чем здесь Глокая куздра? Много говорилось о том, что названия процедур, функций и переменных должны быть «говорящими» должны соответствовать логике их использования. Но не менее говорящими должны быть и связи между идентификаторами! Даже не зная конкретного смысла программы, можно с первого взгляда увидеть, как она устроена.

Как этого достичь?
Возьмем Глокую куздру.
Но что это? Известно, что Глокая куздра может выполнять несколько действий. Она умеет будлануть, а умеет и курдячить т.е. представляет собой несколько связанных действий. Также известно, что эта куздра именно глокая, т.е. есть изменяемый параметр, явно в природе существуют и другие куздры – неглокие. В 1С логичнее всего оформить нашу куздру как обработку. Ведь бокров она именно «обрабатывает». Теперь, если ввести в тексте программы
Куздра. (с точкой), то система покажет все, что эта куздра умеет делать. Глокая пусть будет реквизитом обработки. Сегодня Куздра будет Глокая, т.е.
Куздра.Глокая = Истина

Дальше возьмемся за бокра. Документ или справочник наш герой, не так важно, т.к. сам он ничего не делает, кроме одного: как мы помним, куздра его будланула. Т.е. явно состояние бокра изменилось, произошло действие! Что у нас отвечает за действие, что в 1С заменяет глаголы? Процедуры и функции. Теперь нужно выбрать, что будем применять. Можно написать

Куздра.Будланула(бокра);
и это будет почти по-русски. Но из этой записи совершенно не понятно, изменился бокр или нет. Опять же, куздра булданула его штеко т.е. с параметром. Получится
Куздра.Булданула(Бокра, Штеко)
Здесь непонятно, кого куздра булданула – бокра или штеко, что является результатом действия, а что - его параметром. Самый правильный выход – написать
Бокр = Куздра.Будланула(Бокр, Штеко)

Теперь все методически правильно. Бокр является параметром и результатом (т.е. изменено его состояние, это объект над которым произошло действие), штеко – параметр. Соответственно продолжим наше повествование. Из него не совсем понятно, когда же это все кончится, когда глокая куздра все-таки закурдячит бокренка, ведь висящая программа нам не нужна. Допустим, бокренка есть функция Конец(), которая определяет конец закурдяченности. Получится такая вот такая конструкция

Пока Не Бокренок.Конец() Цикл 
  Бокренок = Куздра.Курдячит(Бокренок)
КонецЦикла

Здесь мы выразили непрерывное, повторяющееся действие через цикл (допустив, что прекращение действия зависит от Бокренка. Если оно зависит, например, от Бокра или состояния самой ГлокойКуздры, это тоже можно было выразить). Дальше еще можно добавить связь между Бокром и Бокренком. Оба они бокры! Значит, это можно выразить, объединив их в структуру, что может понадобиться, например, если нужно будет передать куда-то всех бокров скопом, а не поодиночке.

Итого у нас получилось
Куздра.Глокая = Истина;
Бокры.Бокр = Куздра.Будланула(Бокры.Бокр, Штеко);
Пока Не Бокры.Бокренок.Конец() Цикл 
  Бокры.Бокренок = Куздра.Курдячит(Бокры.Бокренок); 
КонецЦикла;

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

Формализуем правила
  • Связанные между собой по-смыслу действия процедуры и функции полезно объединять
  • Нужно четко отделять само действие, объект, на который действие направлено и параметры действия. Это три разные вещи!
  • Для показа изменения состояния объектов данных нагляднее использовать функции, а не процедуры. А так как функция возвращает только один результат не нужно одной процедурой менять все сразу!
    ГлокаяКуздра(Бокра, Бокренка, Будланула, Курдячит)
    
    это не наш путь!
  • Продолжение - следует!
    86

    Специальные предложения

    Комментарии
    Избранное Подписка Сортировка: Древо
    1. Шёпот теней 1761 15.10.08 08:53 Сейчас в теме
    Гы....
    Классно!

    Теперь решён извечный спор моей души - когда функция а когда процедура...

    Во-О-от спасибо!
    2. keleg 318 15.10.08 09:14 Сейчас в теме
    Ну да, если изменение делать только через функции, то введя в поиске, например, "Параметр = " получим все места, где этот параметр меняется.
    В случае использования для изменения процедур это уже не работает, придется анализировать код. А зачем делать лишнюю работу? :-)
    Правда, если в глубине объекта меняется очень многое, не стоит писать что-то типа
    Объект.Поле.Поле = Функция(1);
    Объект.Поле.Поле2 = Функция(2);
    Объект.Поле.Поле3 = Функция(3);
    можно свернуть такую конструкцию через отдельную функцию
    Объект.Поле = Функция1(Объект.Поле)
    но это уже тема для отдельной статьи по методам рефакторинга.
    Шёпот теней; +1 Ответить
    3. venger 15.10.08 12:50 Сейчас в теме
    Да, штеко накурдячено:-)) Свежо
    SirYozha; +1 Ответить
    4. Altair777 639 15.10.08 16:44 Сейчас в теме
    + Аффтар жжот :-)
    И весело, и занимательно, и правильно.
    6. maljaev 15.10.08 17:26 Сейчас в теме
    (0) Уважаемый, вам нужно на курсах 1С преподавать, не иначе! С таким свежим и неординарным подходом штеко умные программисты наконец-то появятся.
    Патриот; +1 Ответить
    7. Sprite 477 15.10.08 17:32 Сейчас в теме
    Интересные факты:
    «Гло́кая ку́здра ште́ко будлану́ла бо́кра и курдя́чит бокрёнка» — искусственная фраза русского языка, в которой все корневые морфемы заменены на бессмысленные сочетания звуков.
    Пример был предложен академиком Л. В. Щербой в 1930-е и использовался на вводных лекциях к курсу «Основы языкознания». Широкую известность эта фраза приобрела после публикации научно-популярной книги Льва Успенского «Слово о словах».

    Согласно устному рассказу Ираклия Андроникова, впервые (в конце 1920-х годов) фраза звучала: «Кудматая бокра штеко будланула тукастенького бокрёночка».

    В детективе Александры Марининой «Убийца поневоле» встречается персонаж — бывший уголовник по кличке Бокр, который взял себе это прозвище, прочитав в тюремной библиотеке книгу Успенского «Слово о словах».
    Точная фраза Щербы до сих пор неизвестна. Сам он произносил её в разное время по-разному, и верификация изначального варианта, судя по всему, невозможна.
    Ещё в декабре 1863 года Льюис Кэрролл, после любительского спектакля «Альфред Великий» прочёл гостям четверостишье (состояло целиком из несуществующих слов, за исключением служебных, чем формально было родственно глокой куздре), которое позже использовал как пролог к своей поэме «Бармаглот», приведённой в книге Алиса в Зазеркалье. Бармаглот — вероятно, первая попытка ввести в язык несуществующие слова, подчиняющиеся, тем не менее, всем законам языка.

    Баллада о Джаббервокке. стихотворение Льюиса Кэрролла, входящее в повесть-сказку «Алиса в Зазеркалье»:

    Сварнело. Провко ящуки
    Паробуртелись по вселянке
    Хворчастны были швабраки
    Зелиньи чхрыли в издомлянке.

    "Сын! Джаббервокка берегись:
    Ужасны клюв его и лапа.
    И птицы Джубджуб стерегись
    И опаужься Бендерцапа!"

    Взяв свой чумеч, он шел на шум,
    Искал врага кровавологи
    И подле дерева Тумтум
    Остановился на дороге.

    Стоит грозумчив и гневок, -
    Вдруг огнеглазый и рычащий,
    Дымясь восторгом, Джаббервокк
    Летит к нему глумучей чащей.

    Но вкривь-вкось чумеч кривой
    Чикчикает над Джаббервокком,
    И вот с отрубленной главой
    Герой несется торжескоком.

    "Как? Он убил его? Смотри!
    Хитральчик мой, сынок лучавый!
    О, харара! О, харара!
    Какой денек героеславый"...
    Шёпот теней; +1 Ответить
    8. CheBurator 15.10.08 19:30 Сейчас в теме
    Хорошо, но конечно за приведенное переложение на язык 1С - двойка!
    потому что упущено СУЩЕСТВЕННОЕ УСЛОВИЕ. а именно "И"
    "булданула бокра И курдячит бокренка" - т.е. в данной фразе следовало бы учесть тот факт, что эти два события "булдание бокра" И " кудрячение бокренка" - возвращают ИСТИНУ при соблюдении двух условий. В данном примере этот наиважнейший аспект - упущен.
    Садитесь, два!
    9. CheBurator 15.10.08 19:34 Сейчас в теме
    Можно предположить, что Куздра стала глокой именно после булдания бокра и глокой является именно во время курдчания бокренка... то есть типа так:
    ..
    Бокры.Бокр = Куздра.Булданула(Бокры.Бокр, Штеко);
    Пока Не Бокры.Бокренок.Конец() Цикл
    Бокры.Бокренок = Куздра.Курдячит(Бокры.Бокренок);
    Куздра.Глокая = Истина;
    КонецЦикла;
    Куздра.Глокая = Ложь;
    ..
    согласитесь - результат состояния Куздры - принципиально иной ву автора и приведенном мной коменте...
    Altez; Шёпот теней; +2 Ответить
    10. kivduts 16.10.08 06:06 Сейчас в теме
    Сhe Burashka к вам вопрос у вас дети есть? Я конечно согласен критика нужна, и всякий хлам гнать надо, но не все люди умны как вы, но и есть такие кто умнее вас.
    Шёпот теней; +1 Ответить
    14. CheBurator 16.10.08 13:27 Сейчас в теме
    (10) да, у меня дети есть - сын 16 лет, который уже сейчас зарабатывает себе на свои ежедневные подростково/юношеские потребности сам.
    А насчет того что есть люди и поумнее меня - полностью с вами согласен!
    И с удовольствие черпаю у таких людей мудрость и знания в силу своих возможностей.
    11. Abadonna 3835 16.10.08 06:35 Сейчас в теме
    Все давно описано Л. Кэрролом :) Алиса в Зазеркалье.
    БАРМАГЛОТ
    Варкалось. Хливкие шорьки
    Пырялись по паве,
    И хрюкотали зелюки.
    Как мюмзики в мове 22.
    О бойся Бармаглота, сын! 28
    Он так свирлеп и дик,
    А в глуще рымит исполин -
    Злопастный Брандашмыг! 29
    Но взял он меч, и взял он щит,
    Высоких полон дум.
    В глущобу путь его лежит
    Под дерево Тумтум.
    Он стал под дерево и ждет,
    И вдруг граахнул гром -
    Летит ужасный Бармаглот
    И пылкает огнем!
    Раз-два, раз-два! Горит трава,
    Взы-взы – стрижает меч,
    Ува! Ува! И голова
    Барабардает с плеч!
    О светозарный мальчик мой!
    Ты победил в бою!
    О храброславленный герой,
    Хвалу тебе пою!
    Варкалось 30. Хливкие шорьки
    Пырялись по наве.
    И хрюкотали зелюки.
    Как мюмзики в мове.
    Шёпот теней; +1 Ответить
    12. keleg 318 16.10.08 07:10 Сейчас в теме
    Спасибо за комментарии!
    Отдельное спасибо ЧеБурашке :-) Заставил еще раз задуматься над смыслом великого произведения :-)
    1) В момент булданутия Бокра Куздра уже была глокой (см. первоисточник)
    2) В моей интерпретации при любых условиях срабатывают и будание Бокра, и курдячение бокренка. Так что, считаю, все вполне корректно. Другой вопрос - что было бы, если бы Бокр не булданулся? Но об этом и первоисточник, и моя программа, умалчивают. Да и нет в 1С нормальной работы с исключениями :-)
    Шёпот теней; +1 Ответить
    16. CheBurator 16.10.08 13:36 Сейчас в теме
    (12) эээ.. тут можно и подискутировать...
    Однозначно можно утверждать что куздра - глокая в настоящем времени, то есть во время кудлачения бокренка...
    Каково было состояние куздры ранее и каково будет состояние куздры после окончания кудлачения бокренка - тут я бы не взялся утверждать однозначно...
    То есть, тут мы выходим на применение fuzzy-логики...
    13. Razamataz 16.10.08 11:43 Сейчас в теме
    Прикольно :)

    to Сhe Burashka: Ну с Вашими выводами действительно можно поспорить ;)

    1) куздра штеко булданула бокра -- прошедшее время, а курдячит настоящее, поэтому "и" тут конечно есть, но ставить в коде в одно выражение имхо не правильно, поэтому с этим у автора всё ок;
    2) а вот опираясь на различие времен глокая куздра именно сейчас, я строчку
    Код
     Куздра.Глокая = Истина; 
    Показать полностью
    сместил бы на одну позицию вниз;
    3) А вот использовать
    Код
     Куздра.Глокая = Истина; 
    Показать полностью
    внутри цикла это помоему методически не правильно, т.к. как говорится масло масленное, всмысле уже после первогог выполнения присвоена истина, поэтому эту строку надо вынести за пределы цикла или же например тогда уж использовать тип число и увеличивать её величину по мере выполнения цикла, например
    Код
     Куздра.Глокая = Куздра.Глокая + ПриростГлокости; 
    Показать полностью


    И в целом тогда можно получить например след. картину:

    Код
     
    Результат = Куздра.Булданула(Бокры.Бокр, Штеко);
    
    Бокры.Бокр = Результат.Пациенс;
    Бокры.Бокр.Глок = Результат.ЭкспириенсПациенса;
    Куздра.Глок = Результат.ЭкспириенсАгенса; //хотя это уместнее разместить внутри функции Булданула(),
                                                                        //т.к. относится к тому же объекту
    
    Пока Куздра.ХочетГлоку() ИЛИ Не Бокры.Бокренок.Конец() Цикл 
             Результат = Куздра.Курдячит(Бокры.Бокренок);
             Бокры.Бокренок = Результат.Пациенс;
             Бокры.Бокренок.ЖизненнаяСила -= Результат.ЭкспириенсПациенса;
             Куздра.Глок += Результат.ЭкспириенсАгенса;
    КонецЦикла;
    Показать полностью
    15. Lyekka 25 16.10.08 13:30 Сейчас в теме
    Правильно, может оно и правильно, но сомневаюсь, что народ прямо сейчас возьмётся перелопачивать весь код, написанный до сего момента. Цель, разумеется, должна быть идеальной. Но и жить вне компьютера тоже стоит, ИМХО.
    17. CheBurator 16.10.08 13:39 Сейчас в теме
    Также можно сделать предположение, раз существует оператор "И" в утверждении - то осуществившееся событие булдания и настоящее событие кудрячения - неразрывно связаны..
    НО! По правилам русского языка союз "И" в ряде случаев рассматривается как союз "А", т.е. фраза может быть прочитана и так: " Глокая куздра штеко булданула бокра, А курдячит бокренка» - в этом случае математическое описание с учетом смысловой нагрузки во фразе - будет совершенно другое...!!!!
    18. maljaev 16.10.08 13:45 Сейчас в теме
    Всё-таки я предпочитаю более традиционное изложение методических материалов. В этом плане соседняя тема о том как избежать ошибок нравится мне больше. После множества прочтенных мануалов читать подобное изложение и понимать его очень сложно - возможно с непривычки.

    P.S. Кстати, Шепот, а че ты все посты подряд плюсуешь? Плюсани тогда и меня, что ли... :)
    Шёпот теней; +1 Ответить
    26. Шёпот теней 1761 17.10.08 08:44 Сейчас в теме
    (18)

    В чём величие абстрактного искусства?

    В том, что оно имеет несколько уровней познания, оно изначально отказывается от ведения по знакомым тропинкам и предлагает человеку заняться творчеством самостоятельно. Причем совершенно не отвергает весь предыдущий путь развития, опыт предыдущего знания.

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

    Воо-о-оот такое мнение моё….
    Altair777; +1 Ответить
    27. Abadonna 3835 17.10.08 09:16 Сейчас в теме
    (26)>В чём величие абстрактного искусства?
    Что касаемо художников-абстракционистов, то лично я бы с удовольствием бил бы их по башке рамами от их же "картин" ;)
    19. O-Planet 6984 16.10.08 14:37 Сейчас в теме
    Вы тут ваще о чем? 0_о

    Я ниасилил даже заголовок, хотя статья, наверное, интересная. :((( Сперва подумал, что она - на эльфийском. Но потом пришел к заключению, что это какой-то мало распространенный гоблинский диалект. Не думал, что столько народу знают гоблинский. Йа - нуп...
    20. vasilykushnir 16.10.08 14:51 Сейчас в теме
    (19) Олежа, забей... Я же забил и нормально себя чувствую. Чем бы дитё не тешилось...
    Трям.
    21. maljaev 16.10.08 15:09 Сейчас в теме
    (19) Пора заканчивать с РПГ... :)
    22. CheBurator 16.10.08 23:28 Сейчас в теме
    О чем показывает обсуждение данного материала? а о том, что немногим субъектам нашего сообщества доступно абстрагирование... ;-)
    23. CheBurator 16.10.08 23:38 Сейчас в теме
    +1 глокой куздре! я хорошо оттянулся!
    24. O-Planet 6984 17.10.08 01:10 Сейчас в теме
    Уточнил... Тут ашипка. Точнее, особенность используемого аффтором гоблинского наречия. Бокренок - это ваще женский род, только в просторечии, как типа мы говорим "малыш", обращаясь к подруге. И правильно - не кудрячит, а куздра куздрячит. В условии цикла надо использовать не "Конец()", а "Ооойааай()" Иначе смысл не ясен...
    daMaster; +1 Ответить
    25. CheBurator 17.10.08 01:25 Сейчас в теме
    > куздра куздрячит.
    давайте не будем скатываться к примитивизму...
    "куздра куздрячит" - понятно, что это обозначает действие _изначально_ характерное для куздры... но как таковая куздра сама по себе - нас не интересует... "кузрячит" - эквивалентно "рабочий работает" - т.е. энтропия данного сообщеняи близка к 0... "Куздра ... курдячит" - гораздо более емкое обпределение действия, которое поязволяет сделат вывод о том, что куздра имеет не одну степень свободы (куздрячит) а - гораздо больше! т.е. отсюда можно сделать вывод что куздра - суть многофункциональный объект/субъект! это подтверждается также и тем, что куздра еще может/умеет/выполняет БУЛДАНИЕ БОКРА, т.е. как минимум, куздра имеет три стпени свободы - 1.куздрячение (как изначально принадлежащее куздре по самоей ее сути) 2. кудрячение (бокренка!!!! не кого именно, а как минимум - бокренка) и 3. булдание (бокра, а не кого попало)...
    ..
    вышеприведенный анализ позволяет также сделать вывод о том, что куздра - многофункциональный субъект/объект с избирательной "программой" действия, определяемой окружающей обстановкой (бокренка - кудрячит, болдание - бокра), т.е. присутствует обратная связь в определяющих мотивах поведения куздры...
    ..Вопрос о том, является ли куздра искуственным объектом/субъектом, однозначно определяемым конечным набором кортежей "действие куздры - объект вблизи куздры", или же куздра является объектом живой природы с ненормированным поведением в условиях нормированной/ненормированной внешней обстановки - на данный момент остается открытым...
    28. Altair777 639 17.10.08 09:52 Сейчас в теме
    По поводу искусства вообще и программирование в частности у меня давно есть такое мнение.
    Основные критерии к программе:
    1) Она должна работать правильно
    2) Она должна работать быстро
    3) Она должна работать красиво

    Это картина или стихотворение может нравится или нет... у каждого свой вкус. Это субъективно.
    А программа должна работать! Это объективная реальность.
    vasilykushnir; +1 Ответить
    30. Душелов 3899 17.10.08 10:15 Сейчас в теме
    (28) это в условиях, когда 1 программист. Попробуйте работать над программой в числе 20-30 разработчиков, и когда каждый пишет, как хочет...
    31. Altair777 639 17.10.08 10:21 Сейчас в теме
    (30) Или как я сейчас.
    Пришел на новую работу, смотрю конфу.... И фшоке :-)
    29. keleg 318 17.10.08 10:12 Сейчас в теме
    Ну, а чтобы программа работала правильно, быстро и красиво, ее логика должна быть понятна разработчику.
    Начиная с первого десятка тысяч строк кода это не так-то просто, уж поверьте :-)
    Потому и появилась такая дисциплина, как рефакторинг.
    Читайте следующую статью!
    32. Шёпот теней 1761 17.10.08 10:38 Сейчас в теме
    написать программу в 10 строк может каждый
    написать программу в 100 строк может упорный
    написать программу в 1000 строк может талант
    написать программу в 10 000 строк может гений
    33. Altair777 639 17.10.08 12:02 Сейчас в теме
    (32) спорно, очень спорно... "Краткость - сестра таланта" :-)
    Как Вам такое, например?

    Код
    Если Инд=1 Тогда
       Инд=2;
    ИначеЕсли Инд=2 Тогда
       Инд=3;
    ИначеЕсли Инд=3 Тогда
       Инд=4;
    .....................
    .....................
    .....................
    ИначеЕсли Инд=998 Тогда
       Инд=999;
    ИначеЕсли Инд=999 Тогда
       Инд=1000;
    КонецЕсли;
    
    Показать полностью
    34. JohnyDeath 295 17.10.08 12:35 Сейчас в теме
    (33) А строк-то 11 получилось ;) , так что это ближе к "каждому" ;)
    36. Altair777 639 17.10.08 14:08 Сейчас в теме
    (34) мне было лень писать остальные
    Код
    ИначеЕсли
    Показать полностью
    от 5 до 997
    Но если Вы настаиваете, я напишу обработочку, которая этот текст создаст и потом результат сюда помещу.
    1999 строка получицца, кажицца :-)
    39. Abadonna 3835 17.10.08 14:11 Сейчас в теме
    (36)>Но если Вы настаиваете, я напишу обработочку
    Обязательно напиши, только увеличь верхнюю границу до 100 тысяч :)))
    41. Altair777 639 17.10.08 14:15 Сейчас в теме
    (39) и (40) запроста! :-)
    А мя за флуд не забанят?
    43. Altair777 639 17.10.08 14:33 Сейчас в теме
    (39) > Обязательно напиши, только увеличь верхнюю границу до 100 тысяч :)))
    Я только до 10 тысяч увеличил. Больше мне моя природная скромность не позволила :-)
    40. JohnyDeath 295 17.10.08 14:12 Сейчас в теме
    (36) если напишешь, то ты уже перейдёшь в разряд "упорный" ;)
    35. keleg 318 17.10.08 12:49 Сейчас в теме
    (33)
    На самом деле код не так прост :-)
    Код
    Функция ИндексВерен(Индекс)
      Возврат (Индекс>=0) И (Индекс<=100) И ЦелоеЧисло(Индекс);
    КонецФункции
    {**************}
    Если ИндексВерен(Индекс) тогда
      Индекс = Индекс+1;
    КонецЕсли;
    
    Показать полностью


    А еще функцию ЦелоеЧисло() нужно описать, кажется, нет там встроенной нормально (не успеваю, убегать нужно)
    45. Шёпот теней 1761 18.10.08 22:47 Сейчас в теме
    (32) +

    в 10 строках кода существует хотя бы одна ошибка... Закон программирования...

    во-О-от...
    48. Altair777 639 20.10.08 19:54 Сейчас в теме
    Вопрос. Это у меня глючит браузер или комментарии редактируются после.
    Я помню реплику Шёпот теней по поводу неодинаковых строк кода
    Кажется, это было в (45)
    А сейчас там осталось
    > (32) +
    >
    > в 10 строках кода существует хотя бы одна ошибка... Закон программирования...
    >
    > во-О-от...

    Я еще тогда хотел заметить, что в той процедуре, которую я смеха ради привел для примера (см. ее генератор в 42), нет ни одной одинаковой строки :-)
    37. Altair777 639 17.10.08 14:09 Сейчас в теме
    +36 съелось почему-то "остальные
    Код
    ИначеЕсли
    Показать полностью
    от 5 до 997"
    38. Altair777 639 17.10.08 14:10 Сейчас в теме
    +37 и снова :-)
    что-то глючат теги code /code

    мне было лень писать остальные ИначеЕсли от 5 до 997
    42. Altair777 639 17.10.08 14:27 Сейчас в теме
    +41 Поэтому на всякий случай помещаю только текст процедуры :-)
    Код
    Процедура Сформировать()
       Перем Инд, Тек;
       Тек=СоздатьОбъект("Текст");
       Тек.КодоваяСтраница(0);
       Тек.ДобавитьСтроку("Если Инд=1 Тогда");
       Тек.ДобавитьСтроку(СимволТабуляции+"Инд=2;");
       Для Инд=2 По 10000 Цикл
          Тек.ДобавитьСтроку("ИначеЕсли Инд="+Инд+" Тогда");
          Тек.ДобавитьСтроку(СимволТабуляции+"Инд="+(Инд+1)+";");
       КонецЦикла;
       Тек.ДобавитьСтроку("КонецЕсли;");
       Тек.Показать();
    КонецПроцедуры
    
    Показать полностью
    44. Forego 18.10.08 21:48 Сейчас в теме
    Из уважения к академику Щербе, автору фразы : у него куздра буДланула бокра
    61. O-Planet 6984 21.10.08 17:17 Сейчас в теме
    (44) >> Из уважения к академику Щербе, автору фразы : у него куздра буДланула бокра

    Он понял неправильно. Там было все по-другому 8)
    46. kabanoff 41 20.10.08 17:12 Сейчас в теме
    У меня с абстрагированием нормально, но материал (имхо) всё равно трудный. Не проще ли изложить на удобочитаемых предложениях типа "Клара у Карла украла кораллы, а Карл у Клары украл кларнет"? По-моему, так даже будет интересней.
    47. Abadonna 3835 20.10.08 17:20 Сейчас в теме
    (46)>на удобочитаемых предложениях типа "Клара у Карла украла кораллы,
    Чтобы склонить Клару к оралу,
    Карл у Клары украл кораллы....
    :)))))))))
    49. Altair777 639 20.10.08 20:01 Сейчас в теме
    (47) кажется, это должно звучать так :-)

    Клара у Карла украла кораллы,
    Что бы Карла сконить к оралу,
    А Карл у Клары украл кларнет,
    Что бы Клару склонить на .....
    50. kabanoff 41 21.10.08 10:37 Сейчас в теме
    (47 и 49) Кажется вы форумом ошиблись. Сексуальные проблемы решают не здесь.
    52. Altair777 639 21.10.08 12:06 Сейчас в теме
    (50)
    1) Какие проблемы? Какой секс?
    2) Это не наши проблемы, а Карла и Клары
    3) Это Abadonna первый начал... с Вашей подачи... :-)
    54. kabanoff 41 21.10.08 13:18 Сейчас в теме
    (52) Каждый думает в меру своей распущенности.
    55. Altair777 639 21.10.08 14:06 Сейчас в теме
    (54) И какая же она у меня с Абадонной?
    Вас, кстати, не смущают слова КонецЕсли, КонецПроцедуры, КонецФункции?
    Уж как-то Вы нетерпимы... чересчур.
    Или просто Вам нужно было вставить свое "веское" слово? Так вставьте по сабжу.
    А слово "вставить" не смущает? :-)
    57. Altair777 639 21.10.08 16:28 Сейчас в теме
    to 55

    > Вы вообще что хотели узнать?
    Догадайтесь с 3 раз :-)
    ----------------------------------------
    55. Altair777 21.10.2008
    (54) И какая же она у меня с Абадонной?
    ----------------------------------------
    54. kabanoff 21.10.2008
    (52) Каждый думает в меру своей распущенности.
    ----------------------------------------
    Вы о моей распущенности судите по невинному стишку? :-)

    > Меня смущают Ваши комментарии по поводу моего сообщения 46.
    Я не комментировал это сообщение

    > А сообщения 47 и 49 по сабжу?
    Нет. Но это была глубокая ночь... Увидел в прямом эфире сообщение Абадонны и не смог удержаться, что бы немного не улучшить его :-)
    58. Altair777 639 21.10.08 16:29 Сейчас в теме
    51. anonimka 21.10.08 12:02 Сейчас в теме
    Прочла с удовольствием :)
    Спасибо, занятно.
    53. Altair777 639 21.10.08 12:12 Сейчас в теме
    (51) Вы про поэзию? Я смущен :-)
    56. kabanoff 41 21.10.08 16:07 Сейчас в теме
    to 55
    > И какая же она у меня с Абадонной?
    Вы вообще что хотели узнать?

    > Вас, кстати, не смущают слова КонецЕсли, КонецПроцедуры, КонецФункции?
    > Уж как-то Вы нетерпимы... чересчур.
    Меня смущают Ваши комментарии по поводу моего сообщения 46.

    > Или просто Вам нужно было вставить свое "веское" слово? Так вставьте по сабжу.
    А сообщения 47 и 49 по сабжу?
    59. Altair777 639 21.10.08 16:49 Сейчас в теме
    (56) > Меня смущают Ваши комментарии по поводу моего сообщения 46.
    Вот сейчас прокомментирую :-)

    > 46. kabanoff 20.10.2008
    > У меня с абстрагированием нормально, но материал (имхо) всё равно трудный. Не проще ли изложить на удобочитаемых предложениях типа "Клара у Карла украла кораллы, а Карл у Клары украл кларнет"? По-моему, так даже будет интересней.

    Дело в том, что в этой фразе совсем нету абстрагирования, только голые ;-) факты.
    И объяснять смысл, заключенный в этом блоге, там бессмысленно. (сорри за тавтологию)
    Мы пытались с Абадонной абстрагировать, развить действие.. И результат?
    А Вы сами же нас стали посылать... на секс-форумы :-)
    60. kabanoff 41 21.10.08 17:13 Сейчас в теме
    (59) При чем здесь факты? Ну и что? Я от программирования на конкретном языке абстрагируюсь, а Вы от чего?
    Следующие сообщения не вижу смысла комментировать, ибо спорить не о чем.
    62. Altair777 639 21.10.08 17:26 Сейчас в теме
    (60) А в данной статье абстрагируются как раз от фактов .
    Никто не знает, кто такие "куздра" и "бокра". Да это и не суть важно.
    Важны их свойства и методы.

    Интересно, а как можно абстрагироваться от языка программирования?
    В маш.кодах свой стиль и свои приемы, в Делфях - другие...
    И это во многих отраслях человеческой дейятельности. Не факт что из хорошего скрипача, виртуозно владеющего смычком, получится хотя бы посредственный скульптор.
    63. ded00786 346 29.10.08 11:06 Сейчас в теме
    Вот это бредятина :)
    Однозначно +
    64. vkr 101 30.10.08 11:55 Сейчас в теме
    Прошу прощения за маленькое уточнение, но - куздра "буДЛанула" бокрёнка... :)
    65. vkr 101 30.10.08 11:56 Сейчас в теме
    Еще раз прошу прощения - опечатался - куздра "буДЛанула" бокра...
    66. tsd 148 02.11.08 16:52 Сейчас в теме
    67. Rusk51 88 21.01.11 19:02 Сейчас в теме
    Иванова Маша ударила кружку и дубасила кружечку. Ну ка примени теперь свои знания. По отношению к бокру .Смысловое.
    Заранее прошу прощения - дочке объясняю основы логики программирования. Это её пример.
    68. cool.vlad4 45 21.01.11 21:05 Сейчас в теме
    Еще примерчик из кибериады :D
    Лопотуй голомозый, да бундет грывчато
    В кочь турмельной бычахе, что коздрой уснит,
    Окошел бы назакрочь, высвиря глазята,
    А порсаки корсливые вычат намрыд!


    Три, самолож выверстный, вертяшку сум воздлинем,
    Секливой апелайде и боровайка кнется,
    Гренит малополешный тем перезлавским тринем,
    И отмурчится бамба, и голою вернется.


    Грызнотвурога жуждя, голенистый лолень
    Самошпака миманку...
    Оставьте свое сообщение

    См. также

    Крупный бизнес = продуманное ПО = вершина карьеры? 29

    Статья no Нет файла Бесплатно (free) О жизни

    Вот пойду я в крупную компанию и стану там успешным - получу много опыта и буду супер программистом!!! И тут вам бах и 40 )))) И хочется вечера тратить не на изучение новых фреймворков, изменений поведения платформы и что там у нас в зазеркалье понаписали, а на изготовление миниатюр природы или выращивании бонсая и написания рассказов для детей. Крупные компании - благо?

    07.11.2019    8714    iov    35       

    6 шотов 83

    Статья no Нет файла Бесплатно (free) О жизни

    Небольшие пятничные истории о взаимоотношениях в коллективе

    01.11.2019    5311    sapervodichka    28       

    Шорты Белокаменцева 41

    Статья no Нет файла Бесплатно (free) О жизни

    Короткие версии старых статей

    28.10.2019    2816    1c-intelligence    18       

    Мне нравятся картонные человечки 26

    Статья no Нет файла Бесплатно (free) О жизни Личная эффективность

    Нужна ли личная жизнь на работе?

    21.10.2019    3330    1c-intelligence    32       

    Медвежьи услуги по требованию 110

    Статья no Нет файла Бесплатно (free) О жизни Управление персоналом (HRM)

    О, сколько открытий чудных готовит нам профессия программиста 1С.

    16.10.2019    7643    1c-intelligence    113       

    Как стать программистом 1С 14

    Статья no Нет файла Бесплатно (free) О жизни

    Плюсы 1) Хорошая зарплата. 2) Низкий порог вхождения в профессию. 3) Большая востребованность в РФ. 4) Программист 1С - всё же программист.

    14.10.2019    9242    funtik135    34       

    О работе и организации труда инженера - программиста 21

    Статья Программист Нет файла Бесплатно (free) О жизни Личная эффективность

    "Как настроить бесшовную интеграцию?", "Чем отличается НаСервере от НаСервереБезКонтекста?", "Как рассчитывается себестоимость в УПП?" на эти вопросы ответов вы тут не увидите, НО! мы поговорим о нас - Инженерах - программистах! Сравнение организации труда "во франче" (далее просто франча) и "на серьёзную организацию" (далее просто организация), какие плюсы и минусы работы в структурно разных предприятиях? Где и к когда лучше работать?

    25.09.2019    3864    feva    42       

    Хороший заказчик - плохой заказчик 33

    Статья no Нет файла Россия Бесплатно (free) О жизни

    Лайфхак о том, как стать легендарным клиентом.

    13.09.2019    4245    dsdred    24       

    Видя деньги 53

    Статья no Нет файла Бесплатно (free) О жизни

    Немножко бизнес-программирования.

    09.09.2019    4582    1c-intelligence    94       

    Полюби Козла 49

    Статья no Нет файла Бесплатно (free) О жизни Блоги

    Не пожалеешь

    02.09.2019    4070    1c-intelligence    77       

    Корпоративный слон 22

    Статья no Нет файла Бесплатно (free) О жизни

    Про изменения и их цели.

    28.08.2019    3504    1c-intelligence    21       

    Холократия - отец порядка. Часть 3. Заключительная 14

    Статья no Нет файла Бесплатно (free) О жизни

    Поиск идеального места работы имеет неожиданное окончание.

    21.08.2019    2929    Ликреонский    31       

    Аки Феникс 62

    Статья no Нет файла Бесплатно (free) О жизни Блоги

    Про выгорание

    17.08.2019    4897    1c-intelligence    21       

    Автоматическое распознавание сканов документов и не только. История одной жизни... 34

    Статья Программист Нет файла Бесплатно (free) О жизни

    В нашу жизнь все чаще и чаще внедряется искусственный интеллект, автоматизируются многие задачи, которые буквально 10 лет назад казались не реализуемыми в принципе. Сейчас все более актуальными становятся задачи автоматизации операторской работы, которые вытесняют человека или помогают ему упростить работу. Вот и мне захотелось поделится примерами такой автоматизации. За последние 4 года мне довелось более 10 раз внедрять подсистемы распознавания. Т. е. примерно каждые 4 месяца сталкиваюсь с задачами автоматизации распознавания и прикрепления сканов документов и похоже количество таких задач будет только возрастать. Хочу поделиться историями таких автоматизаций.

    05.08.2019    3901    77dream77    9       

    Как я буду мир спасать 47

    Статья no Нет файла Бесплатно (free) О жизни Блоги

    Почему бы и нет?

    30.07.2019    4873    1c-intelligence    76       

    Блокчейн, выборы и прозрачность, ч. 1 20

    Статья no Нет файла Бесплатно (free) О жизни Блокчейн

    Как новейшие технологии помогают придумывать новости и выделять бюджет. Первая часть - абстрактно-теоретическая.

    24.07.2019    2493    for_sale    20       

    Я не настоящий 27

    Статья no Нет файла Бесплатно (free) О жизни

    А вы?

    23.07.2019    3989    1c-intelligence    94       

    Корпоративный квест 35

    Статья no Нет файла Бесплатно (free) О жизни

    Приём на работу ИТ-директоров в условиях легкого помешательства

    06.07.2019    4377    1c-intelligence    55       

    Поймай меня, если сможешь. Версия Пророка 29

    Статья no Нет файла Бесплатно (free) О жизни

    Самая интеллигентная версия.

    26.06.2019    4537    1c-intelligence    31       

    В поисках Зины 19

    Статья no Нет файла Бесплатно (free) О жизни

    Статья про программистов

    18.06.2019    4337    1c-intelligence    19       

    Поймай меня, если сможешь. Версия директора 44

    Статья no Нет файла Бесплатно (free) О жизни

    Надо же всех послушать.

    07.06.2019    6211    1c-intelligence    112       

    Заметки фрилансера 17

    Статья Программист Нет файла Обучение, бизнес-тренинг, курсы Бесплатно (free) О жизни Личная эффективность

    Хочу рассказать о своем опыте работы в качестве фрилансера. По задумке это будет несколько статей, в которых я вспомню набитые шишки, успешные практики работы. Будет полезно для начинающих фрилансеров, а также для матерых программистов в крупной компании, которые задумались о жизни за стаканчиком кофе и сигаретой, глядя в окно на беспечных прохожих, или в пробке по дороге домой, где скучают кот и жена...

    31.05.2019    4873    Kutuzov    48       

    Неидейный бизнес 15

    Статья no Нет файла Бесплатно (free) О жизни

    Почему надо возиться с предложениями сотрудников?

    21.05.2019    3389    1c-intelligence    14       

    Лед тронулся, господа присяжные заседатели! 23

    Статья no Нет файла Бесплатно (free) О жизни Блоги О сообществе

    Всем привет. Всего лишь год назад я писал о том, что в отличие от мира не 1С-ной разработки, у нас практически нет мероприятий для специалистов 1С. Не сказать, чтобы по количеству евентов мы приблизились, скажем, к веб-разработчикам, но за прошедший год ситуация все же заметно изменилась в лучшую сторону. Итак, давайте пробежимся по существующим конференциям, которые были бы интересны разработчикам 1С. Внимание! Дальше будет много текста и фоток!

    14.05.2019    4353    Tavalik    10       

    Поймай меня, если сможешь. Версия менеджера 38

    Статья no Нет файла Бесплатно (free) О жизни

    Просто попробуем сделать так, чтобы всё было не так просто.

    11.05.2019    6504    1c-intelligence    44       

    Поймай меня, если сможешь 35

    Статья no Нет файла Бесплатно (free) О жизни

    Обращение программиста к эффективному менеджеру.

    07.05.2019    7347    1c-intelligence    58       

    Место проклятое? 18

    Статья no Нет файла Бесплатно (free) О жизни

    Кто виноват?

    07.05.2019    5130    1c-intelligence    26       

    Супермен vs Программист 17

    Статья no Нет файла Бесплатно (free) О жизни

    Столкнём-ка их, наконец, лбами.

    23.04.2019    5157    1c-intelligence    8       

    Открываем набор на курсы "Сова - эффективный менеджер" 34

    Статья no Нет файла Бесплатно (free) О жизни

    Многим знаком знаменитый комикс про "Сову эффективного менеджера", но некоторые ошибочно полагают, что сова, героиня этого комикса, не всегда поступает разумно. Для того, чтобы объяснить ее поведение и научить пользователей Инфостарта эффективному управлению, мы открываем онлайн-курс "Стань лучшей Совой".

    01.04.2019    6178    MariaTemchina    27       

    Читай старьё 30

    Статья no Нет файла Бесплатно (free) О жизни

    Почему старые книги лучше новых

    23.03.2019    5729    1c-intelligence    76       

    Корпоративная мышь 17

    Статья no Нет файла Бесплатно (free) О жизни

    Об управлении качеством

    11.03.2019    5345    1c-intelligence    51       

    Корпоративная свинья 25

    Статья no Нет файла Бесплатно (free) О жизни

    Вернемся в прошлое.

    04.03.2019    6219    1c-intelligence    24       

    Не только автоматизация учета 78

    Статья no Нет файла Россия Бесплатно (free) О жизни

    Сказ о том, как одинэсники с сишарперами и питонистами играли.

    28.02.2019    6432    Scorpion4eg    42       

    Корпоративный напалм 31

    Статья no Нет файла Бесплатно (free) О жизни

    Чем там закончилось, в туалете-то?

    25.02.2019    5349    1c-intelligence    33       

    Корпоративный туалет 30

    Статья no Нет файла Бесплатно (free) О жизни

    Очень странная история.

    18.02.2019    6889    1c-intelligence    50       

    Корпоративные фрукты 32

    Статья no Нет файла Бесплатно (free) О жизни

    Хм, а почему бы и нет?

    11.02.2019    5434    1c-intelligence    35       

    Звонок в техподдержку [юмористический очерк] 19

    Статья no Нет файла Бесплатно (free) О жизни Блоги

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

    06.02.2019    4935    mbreaker    17       

    Корпоративная реальность 24

    Статья no Нет файла Бесплатно (free) О жизни

    Добавим-ка реализма в нашу сказку.

    28.01.2019    5618    1c-intelligence    33       

    Карьерное исследование учащихся профессиональных образовательных учреждений Санкт-Петербурга 17

    Исследование no Нет файла Россия Бесплатно (free) О жизни

    Студенты сделали осознанный выбор профессии, и каждый пятый хочет работать с 1С – этот и другие факты мы выяснили в ходе опроса учащихся вузов и колледжей Санкт-Петербурга.

    25.01.2019    3952    Kochergov    8       

    Тень точки Кельвина 14

    Статья no Нет файла Бесплатно (free) О жизни

    Оказывается, уже четыре месяца прошло... Точка Кельвина продолжается.

    23.01.2019    4761    1c-intelligence    27       

    Криптовалюты, а также иные триста девяносто девять сравнительно честных способов отъема денег 50

    Статья no Нет файла Бесплатно (free) О жизни

    Случайно наткнулся на Инфостарте на новость о том, что в Белоруссии открывается первая в СНГ биржа криптовалют. В комментариях шло обсуждение вопроса о будущем цифровой экономики – и насколько Россия отстала в этом вопросе. По образованию я криптограф-криптоаналитик и, наверное, давно нужно было написать какую-то статью на эту тему с профессиональной точки зрения. Ну вот, хоть и с опозданием, пишу.

    22.01.2019    7696    andironenko    163       

    Проще, чем кажется. Глава 19 15

    Статья no Нет файла Бесплатно (free) О жизни

    19-я глава

    21.01.2019    5618    1c-intelligence    12       

    Исповедь графомана 19

    Статья no Нет файла Бесплатно (free) О жизни Личная эффективность

    Как, когда и зачем я пишу.

    17.01.2019    6118    1c-intelligence    51       

    Кодекс читателя 2 26

    Статья no Нет файла Бесплатно (free) О жизни Личная эффективность

    Дополняем, улучшаем, расширяем.

    15.01.2019    5563    1c-intelligence    20       

    Проще, чем кажется. Главы 17-18 14

    Статья no Нет файла Бесплатно (free) О жизни

    Ну, еще чуть-чуть, и догоним

    07.01.2019    5448    1c-intelligence    8       

    Корпоративное интервью 32

    Статья no Нет файла Бесплатно (free) О жизни

    Чего только ни придумают...

    04.01.2019    6396    1c-intelligence    57       

    Новые методики от Андрея, примеры 17

    Статья no Нет файла Бесплатно (free) О жизни Блоги

    Несколько новых методик от суперэрудированного и очень скромного директора-гениального писателя-изобретателя методик Андрея

    29.12.2018    5483    sikomor3    43