Как писать качественный код? #810703


#0 by Дебет
Работаем с коллегой в отделе занимающимся 1с.Оба пишем код, я хорошо понимаю администрирование 1с, а колгега хорошо понимает алгоритмы и пишет качественный код. С недавнего времени стал прикалывать что я пишу быдло код =(. Конечно когда нужно сделать еще вчера то нет времени писать качественно, делаешь просто что бы работало. Но сама мысль не дает теперь покая, как улучшить качество кода ? И есть оправдание быдло коду ?
#0 by Дебет
Работаем с коллегой в отделе занимающимся 1с.Оба пишем код, я хорошо понимаю администрирование 1с, а колгега хорошо понимает алгоритмы и пишет качественный код. С недавнего времени стал прикалывать что я пишу быдло код =(. Конечно когда нужно сделать еще вчера то нет времени писать качественно, делаешь просто что бы работало. Но сама мысль не дает теперь покая, как улучшить качество кода ? И есть оправдание быдло коду ?
#1 by Провинциальный 1сник
Хороший код - это когда через пару лет ты читаешь свой код и полностью понимаешь его логику. Плохой код - это когда проще написать заново, чем понять. Хороший код может быть менее эффективным в плане быстродействия и памяти, чем плохой.
#2 by _stay true_
Хороший код - чужой код.
#3 by Terv
это как подтирать попу в туалете, смывать за собой и мыть руки после. если этого не делаешь, то и код красивый никогда не напишешь.
#4 by Timon1405
классика
#5 by Владимир Милькин
ИМХО в вашем случае. Есть коллега, который по вашему признанию больший программист, чем вы. И это удача для вас. В таком случае попросите его выработать (и зафиксировать письменно) критерии хорошего кода для вашей компании (стандарт оформления кода). И вот теперь ваша главная (на данном этапе обучения) задача - чётко следовать этим договорённостям, регулярно получая обратную связь от коллеги. Уже на следующем этапе (когда научитесь следовать критерию оформления кода коллег) можно читать умные книги, чтобы выработать свой стиль и возможно привнести его на текущем или следующих местах работы.
#6 by Lexey_
вопрос из серии "как рисовать красивые картины?"
#7 by novichok79
шли такого коллегу нах, я бы так и сделал. есть хороший совет таким знатокам - "критикуешь - предлагай, предлагаешь - делай", так вот попроси его написать лучше. а то балаболов много, а кто действительно может нормальный код писать, мало.
#8 by 1Сергей
Это нормально. Все считают чужой код быдлокодом.
#9 by SeregaMW
что такое нормальный код, в чем его мерить?
#10 by novichok79
настолько оптимальный, насколько это позволяет поставленная задача / возможности встроенного языка?
#11 by nordbox
У меня препод был, преподавал Pascal, и вот однажды приходим на пару, а он всему взводу одну и туже контрольную дает ВСЕМ! я ему говорю: -А вы не боитесь что тут по кругу все друг у друга спишут? на что я получаю ответ: -Списывайте, НО только я знаю кто и как пишет, и у кого вы спишите тот получи зачет остальные ...., и запомни: Сколько хозяек, столько и борщей!
#12 by Лефмихалыч
Моё бусидо:
#13 by ptiz
Учиться, учиться и еще раз учиться.
#14 by Остап Сулейманович
"когда нужно сделать еще вчера то нет времени писать качественно, делаешь просто что бы работало." Не нужно так делать.
#15 by Фауст
тут все описано:
#16 by nordbox
+11 От себя дабавлю, красивого кода НЕТ в природе, так же как нет и совершенства, это понятие субъективное. Например квадрат Малевича, многие от него тащутся, а лично для меня полное г--о, что там такого выдающегося я не понимаю.
#17 by Фауст
+15 или если нет доступа поиск по ключевым словам : "система стандартов и методик разработки конфигураций для платформы 1с"
#18 by elCust
В самом квадрате ничего, а вот то, что художник так хорошо закрасил вызывает восхищение у фантазеров.
#19 by SeregaMW
в типовых это хороший код или оптимальный?
#20 by VladZ
Просто читать чужой код - это не панацея.  Чужой код тоже может быть быдлокодом.  Нужно стремиться писать ХОРОШИЙ код и читать чужой ХОРОШИЙ код.
#21 by Mort
Вот ещё неплохая книга:
#22 by DrShad
идеальный код - не написанный код
#23 by nordbox
лично вот ты или твой напарник что вкладываете в само понятие: ХОРОШИЙ КОД. Для кого он хороший? Почему он хороший?
#24 by novichok79
он универсальный и в некоторых случаях, неоптимальный.
#25 by Prog111
Я думаю, надо разделить понятие хорошего кода на "красивый по оформлению" и "хороший в плане оптимальности". Ибо может быть код оптимальный, написан по всем рекомендациям 1С и гуру, но без абзацев, без пробелов, без форматирования.
#26 by Mort
А ещё скажу для кого-то крамольную мысль, нужно хорошо понимать идеологию ООП. Когда за любой функцией стоит хотя-бы абстрактный её исполнитель, даже не ООП-код приобретает больше порядка.
#27 by VladZ
А лучше, конечно, умные книжки прочитать.  Там уже собрана вся нужная информация.  А то пока эти мысли, как жемчужины, соберешь из моря г-овно-кода - глаза задергаются.
#28 by SeregaMW
А вот используешь ты функции конфигураций и БСП в коде и на сколько часто!?
#29 by nordbox
блин вот сижу, читаю и прикалываюсь )) как будто тут все прям такой идеальный код пишут, все супер пупер я иногда свой код читать без успокоительного лекарства не могу ))
#30 by SeregaMW
Как дела с запросами в цикле?
#31 by Дебет
БСП нет, а вот то что есть в типовой бухии да
#32 by Дебет
грешен, когда задача на 1 раз
#33 by VladZ
БСП сама по себе го-вно-код.  Наглядный пример того, как не нужно разрабатывать проекты с большим объемом кода.
#34 by Дебет
до того как вместе стали работать, работали в разных филиалах. И как то пришлось паралельно делать одно и тоже задание, конечный результат которого заполненый ексель файл. Я дописывал за главным программистом код. Он для реализации скопировал типовой документ и сделал в нем, я его дописал. В итоге получили печатную форму, которую копи пастом копировали в ексель.  А коллега это сделал обработкой в которой был 1 запрос и все это сразу выгружалось в ексель.
#35 by nordbox
Тогда еще раз перечитай
#36 by Дебет
мысль понятная
#37 by mTema32
У профессионалов запросы в цикле не тормозят(с) Волшебник. :)
#38 by SeregaMW
Лена, я тебя просил пожарить яйца, ты их пожарила не разбивая - Антон, формулируй свои желания правильно! (с)
#39 by SeregaMW
Профи нажимают кнопку и идут пить чай! ;-)
#40 by nordbox
из этой же серии: Программист не явился на работу. В конторе переполошились, решили его проведать. Звонили в дверь, звонили - никто не открывает. Из-за двери только плеск воды слышен. Решили взломать дверь. Заходят и наблюдают такую картину: сидит программист в ванне, волос на голове почти не осталось, но он судорожно намыливает голову шампунем. Читают инструкцию к шампуню: 1 выдавить небольшое количество шампуня на руку. 2 намыливать 2-5 минуты. 3 смыть водой. 3 повторить.
#41 by lodger
ратую за оптимизацию. все в угоду экономии и быстродействия. не впитывая чужую мудрость и без собственных экспериментов это невозможно. поэтому голос раз.
#42 by lodger
голос два.
#43 by nordbox
Поддерживаю
#44 by nordbox
#45 by SeregaMW
Пользоваться обфускацией не предлагать?
#46 by Адинэснег
3. Читать мануалы и рекомендации После написания делать замеры производительности, пройтись по проблемным строкам Хорошо оформлять код(внятные названия переменных, без спагети, хороший код сам себя документирует)
#47 by perester
Как лучше обучить нейронную сеть?
#48 by nordbox
Маты не предлагать?
#49 by perester
я про тему, опрос похож на вопрос "Как лучше обучить нейронную сеть" ведь ясно что только одним действом дело не выйдет
#50 by lodger
палкой и морковкой. классика же.
#51 by Buster007
качественный код существует только на момент написания его разработчиком и со временем, этот код становится все хуже и хуже, который в итоге превращается в г-код. каждый разработчик проходит эти стадии... можешь почитать что-нибудь, чтобы проскочить на этом пути несколько шагов
#52 by ildary
Нет ничего печальней на свете - читать свой код годовой давности.
#53 by Адинэснег
можно еще поискать какие-нибудь статьи, где написано как пишут плохой код, с разжевыванием, в чем Г этого кода типа например, про запросы (Типичные причины неоптимальной работы запросов и методы оптимизации):
#54 by Адинэснег
первые пару лет :-D
#55 by nordbox
+100500 ты сам свой код посмотри через год, и потом скажешь себе что нибудь типа: "Дятел я криворукий, удав полиэтиленовый" как же я мог такое г.. то нагородить )))
#56 by Провинциальный 1сник
А 10-летней - так вообще кошмар ужасов.
#57 by vde69
мне - нормально, недавно полез исправлять свою поделку на дельфях десятилетней давности, мне все понятно было...
#58 by ildary
Не, десятилетный код - это уже не ужас, а комедия.
#59 by Адинэснег
кстати, да найди и попроси коллег твоего тру-кодера выслать его код, который он на старте писал... поржёте вместе
#60 by Адинэснег
заодно будут живые примеры гамнакода, с пояснениями автора
#61 by Провинциальный 1сник
Ну дело тут не в понятности. Просто студенческие поделки кишмя кишат велосипедами, проистекающими из незнания темы. После того, как становишься в теме, свои старые проекты прямо руки чешутся переписать правильно. Только лень мешает.
#62 by GANR
Ни с одним из вариантов не согласен
#63 by MrCoffin
Можно пользоваться деревенским уличным туалетом, биде и делать всё в резиновых одноразовых перчатках. И при этом писать красивый код.
#64 by 1Снеговик
Красивый код - это не только читаемый, но и эффективный. А еще он должен выполнять свою функцию, а не гонять данные ради красоты. И еще считаю важным делать проверки на заполненность, на возможность деления на 0, ограничивать ошибки пользователя. В общем, продумывать в алгоритмах наперед что в них может пойти не так. Плюс красиво работу кода подавать, рисовать интерфейс, строки состояния, вопросы при нажатии на кнопки. Ну и конечно не писать "Если Квартира.Наименование = "23" тогда" и прочие запросы в циклах.
#65 by nordbox
>>ограничивать ошибки пользователя. верно. Программа должна быть ДУРАКОУСТОЙЧЕВАЯ ))
#66 by Terv
ссать на пол и при этом писать красивый код - это оксюморон. разруха в голове не бывает частичной.
#67 by art commander
Код не бывает красивый или некрасивый. С объективной точки зрения, всякий код - убожество (субъективно - код может казаться красивым его автору). Код бывает работающим и не работающим.
#68 by Адинэснег
ТС про красоту ни слова не писал
#69 by art commander
Можешь заменить "красивый" на "качественный" без потери смысла.
#70 by lodger
есть (два стула, на одном ...) два куска кода. делают одно и то же, делают это успешно. первый написан одной процедурой в 1000 строк без комментариев с цикличными неявными чтениями бд по десятку раз за круг, другой оформлен модулем с несколькими точками входа в экспортных процедурах, параметризуются по потребности, повторяемые части кода вынесены в функции, сперва происходит сбор всех необходимых данных, отдельно  цикличная математика и блоки условий, постобработка. какой сам напишешь, какой у коллеги прочитаешь?
#71 by be-may
Нет единого рецепта. Меня, например дико раздражают чьи-то переменные названные примерно так : Параметр Видимо, на сях сидел человек когда-то. Вроде ж ничего такого, но не нравится)) Еще переменные типо КакаяТоНеведомаяХерня = .. ну как так можно вообще..
#72 by be-may
упс.. форматировался текст в Имелось в виду параметр, начинающийся с одного, двух , трех или более символов нижнего подчеркивания.
#73 by be-may
еще из "не люблю". Не люблю когда пишут, так, будто экономят "бумагу" Если ... Тогда .. Иначе .. КонецЕсли  и это все на одной строке.
#74 by MrCoffin
Не на пол, а в специально проделанное для этого отверстие в полу.
#75 by Fish
"Как писать качественный код?" - Качественный код писать очень просто: надо писать его качественно! :)
#76 by art commander
И то и другое - убожество.
#77 by Timon1405
так код быстрее выполняется. серьезно. выполните код и сравните результаты Для Сч=1 по 10000000 цикл     Если 2=1 Тогда а=1 иначе а=2 КонецЕсли; КонецЦикла;
#78 by Terv
толсто
#79 by 0xFFFFFF
Ну или так: Чтобы писать качественный код, не нужно писать некачественный.
#80 by Terv
"Делай хорошо - плохо само получится. " (цы)
#81 by nordbox
Завтра тяпница, почитаешь
#82 by echo77
+1 Еще попросите коллегу устраивать вам "ревизию кода" - это перед тем как пустить в продакшн - показываете ему код, он говорит, что надо переделать, как делать нельзя, что надо исправить и на что. Я так своих коллег ростил, передавал им свой опыт, что-то узнавал от них.
#83 by echo77
Вредные советы:
#84 by nicxxx
а так еще быстрее будет: Для Сч=1 по 10000000 цикл Если 2=1 Тогда а=1 иначе а=2 КонецЕсли;  КонецЦикла;
#85 by nicxxx
а ты возьми и замерь. толсто ему...
#86 by jsmith82
Тема ни о чём
#87 by ejikbeznojek
из того, что в этой теме прочитал, на вид правильнее всего Начни с малого, тяжело написать качественно большой объём кода. Напиши качественно маленькую функцию и качественный её вызов.
#88 by tesseract
Этой фразе лет 40: Каждый раз читая свой год 5-летней давности, понимаешь,  что его писал какой-то дебил.
#89 by be-may
угу, а если пробелы почистить , то еще быстрее.. ---- и что, часто надо организовывать цикл типо Для Сч=1 по 10000000 цикл  ... ? ИМХО, экономия на спичках. Не в том месте надо время экономить
#90 by France
если фикси - забей... для фикси нет понятия быдло-код.. если франь - напрягись...
#91 by H A D G E H O G s
Плохой код пишется долго. Если ты пишешь код долго - ты написал его плохим, убей его.
#92 by Роки
Хороший код - мертвый код
#93 by VladZ
Зря ты так. Плохой код портит карму. Оставишь его потомкам - они проклянут автора кода и нашлют на него проклятия "бедности и нищеты"...
#94 by nordbox
ты уверен что потомки поймут что такое 1с и раcшифруют код?
#95 by Злопчинский
Давайте решать проблемы по мере их возникновения
#96 by nordbox
+94 Наши потомки будут так же как мы )))
#97 by ildary
Хочу задать вопрос по теме: как лучше называть куски кода, когда надо в свою обработку вставить некий кусок (например функцию из общего модуля), и внести в неё изменения? Единственное что приходит в голову: писать в комментарии "Заимствованный код", но уж больно сложное слово, хотелось бы попроще (без потери смысла).
#98 by Mort
И кому будет полезен этот комментарий? Всем пофиг откуда ты её скомуниздил.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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