LINUX.ORG.RU

Сишный быдлокодер.

 ,


0

2

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

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

И у меня развилась мания, я переписываю всё заново. Что почитать/посмотреть про хороший стиль программирования на С? Как блин понять то, что твой код нормален или он быдлокод? И да у меня одного привычка переусердствовать с if() {} else{};? Приветствуются куски кода/целые проекты с указанием быдлокод/идеальный код.

И да, я немного пьян.

Мне конечно стыдно, но вот https://github.com/fedor-elizarov для примера, там мало конечно но думаю хватит и этого, остальное локально храню. Ну и cast beastie, ты просто адекват и сишник.

★★★★★

Последнее исправление: Dron (всего исправлений: 1)

Ответ на: комментарий от tailgunner

По твоему щитгайду положено терять 2, либо одну скобку на любой if. Т.е. тыт еряешь минимум 1строчку на выражение.

Если твой код состоит из f {int a; int b; и так 40строк(определение переменных), то да - ты потеряешь одну скобку}, но он не состоит и ты пробалаболился просто в хламину.

procoder99
()
Ответ на: комментарий от fopen

Плотность идеи на одну строку очень низка, но зато скорость потока строк высока.

Полет мысли же!

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

Откуда вы такие берётесь, тыж вроде кто-то типа программиста? 5 звёзд, программист, реально? Знаешь историю и имена, но в чём смысл? Почему ты сливаешься как детё?

procoder99
()
Ответ на: комментарий от procoder99

тыж вроде кто-то типа программиста? 5 звёзд, программист, реально?

О да.

Почему ты сливаешься как детё?

Лалка ты анскилльная, ты слился своим «если твой код состоит из»: приписывать оппоненту какуют-то фигню - это детский слив.

tailgunner ★★★★★
()
Ответ на: комментарий от fopen

В тикле - да. Для него это естественно. Но в Си - как-то не очень выглядит.

А по-моему, в любом curly это выглядит не очень. Хотя вот в Rust это сделали стандартным стилем.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

А, это ж у меня K&R!!!!1111

А { на отдельной строке вызывает проблемы? Доопустим, у тебя экран на 40 строк - у тебя проблемы от того, что ты потеряешь одну-две?

Да. Я жадный, 40 строк это очень мало, особенно при ширине 164. Конечно можно работать в два окна, но я как то привык к одному...

Щас спросил у товарища (который то самый-настоящий-программист) - он тоже { не сносит.

AIv ★★★★★
()
Ответ на: комментарий от tailgunner

Лалка ты анскилльная, ты слился своим «если твой код состоит из»: приписывать оппоненту какуют-то фигню - это детский слив.

Ну пытайся, пытайся. Я знаю, что у тебя есть 5звёзд, но так уж и быть.

Понимаешь в чём дело, глупышка, код состоит из выражений на 30-50%, т.е. в твоих 40 строках 15-20строк - это выражения. Ты теряешь на каждом выражении одну скобку минимум, а то и две. А теперь объясни, как ты потеряешь одну-две скобки на 40строк, если ты потеряешь одну строку только на ограждении тела функции.

Вот так и получается, понтавался, звёзд нахватался, а сливаешь 14летнему школьнику. Как тебе живётся? Не жалеешь?

procoder99
()
Ответ на: комментарий от fopen

Это что... у меня одногруппник помниться писал просто все в одну строчку, ну как сочинение там... Строчка кончалась, он начинал новую. И так вот весь код для курсача, неск экранов кода одинаковой ширины. Не помню, ставил ли он доп пробелы - вроде как нет.

AIv ★★★★★
()
Ответ на: комментарий от tailgunner

А по-моему, в любом curly это выглядит не очень.

Да тебе тикль в целом, наверное, не по душе? А мне нравится идея: все - текст. И стиль '{' (и, вообще, разнообразие «скобочек») это отражает. Дело вкуса. И Поттеринг тоже прикольный пацан.

fopen ★★
()
Ответ на: комментарий от fopen

Да тебе тикль в целом, наверное, не по душе?

Абсолютно.

Дело вкуса.

Ну, тут вкус пытаются оправдать экономией %)

И Поттеринг тоже прикольный пацан.

Дело вкуса.

tailgunner ★★★★★
()
Ответ на: комментарий от AIv

Но я тут давеча почуйствовал себя полным, абсолютным мудаком: неделю пытался понять где у меня ошибка, перелопатил все чуть ли не до либси, а оказывается скобочка закрывающая в цикле (который на два экрана) не там стояла...

это решается написанием скобочек сразу а потом уже писать код между скобочек

anonymous
()
Ответ на: комментарий от tailgunner

Ну, тут вкус пытаются оправдать экономией %)

ты не поверишь, товарищ который-программист-и-не-сносит-{ на вопрос «почему?» ответил «компактней получается». И он как бы цельный директор-департамента-по-разработке;-)

AIv ★★★★★
()
Ответ на: комментарий от anonymous

А потом достаточно один раз написать код между не теми скобочками - так то не видно сходу к чему скобочка относится.

AIv ★★★★★
()
Ответ на: комментарий от AIv

Ну, тут вкус пытаются оправдать экономией %)

товарищ который-программист-и-не-сносит-{ на вопрос «почему?» ответил «компактней получается».

Ээ... и что? Ты оправдываешь вкус экономий, он тоже.

И он как бы цельный директор-департамента-по-разработке;-)

Старый фортранщик, небось? Один такой мне в юности объяснял, что код нужно хранить в файлах, которые называются a1.c, a2.c и т.д. Чтобы сразу был виден их порядок

P.S. циклов на два экрана писать тоже не нужно - программистов этому учат на первом курсе.

tailgunner ★★★★★
()
Последнее исправление: tailgunner (всего исправлений: 1)

А стиль оформления скобочек — только GNU

Bad_ptr ★★★★★
()
Ответ на: комментарий от procoder99

Пока это самый компактный, простой и минималистичный ЯП.

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

AIv ★★★★★
()
Ответ на: комментарий от tailgunner

Ээ... и что? Ты оправдываешь вкус экономий, он тоже.

Если одна и та же идея приходит в две головы независимо - это скорей всего хорошая идея. По Ефремову так вообще, «красота есть интуитивное осознание целесообразности», или как то так..

Старый фортранщик, небось?

Не, он сишник, железячник и на 7 лет моложе меня;-)

ФОртранщики завсегда жгут. Давеча на докладе олсдкульного заслуженного фортранщика дважды чуть не упал под стул - один раз когда сказали что «вот некоторые тут на С не умеют рабоать с многомерными массивами и вынуждены их эумлировать на основе одномерных», второй раз когда сказали что «числодробилки на ООП языках пишут только студенты и анскильные лалки». Ну а на вопрос «почему у вас С++ а не фортран, фортран же гораздо быстрее» мы уже перестали реагировать ;-)

AIv ★★★★★
()
Последнее исправление: AIv (всего исправлений: 1)
Ответ на: комментарий от AIv

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

Ты можешь добится той же компактности, но лишиться простоты( и то на примитивных задачах), ты можешь добится простоты - но это будет щит, а минималистичность не свойственна породии на ЯП, который юзает как ООП api к дёрганью сишной либы.

А так да, ты можешь, как и поциент до тебя - зарабатывать дивенденты в глазах анскилледа, не больше.

Ты не сможешь привести пример и никто не сможет, ибо ты знаешь как я тебя солью и на чём будет основанна твоя аргументация и в какую трубу она вылетит, когда ты мне будешь пытаться доказать, что «это часть, а это не часть ЯП».

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

procoder99
()
Ответ на: комментарий от AIv

Ты не понимаешь разницу между «мы в своём мирке» и «так оно и есть». Какой-то намёк на перфоманс у вас есть, ибо никому из перфоманщиков не упало страдать фигнёй и решать дифуры. Поэтому вы и соревнуитесь с щитом, а не предлом.

Соревнования с щитом всегда были признаком тупика, а так да - молодец.

procoder99
()
Ответ на: комментарий от procoder99

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

AIv ★★★★★
()
Ответ на: комментарий от AIv

Если одно и то же оправдание приходит в две головы независимо - это скорей всего хорошее оправдание

fixed

По Ефремову так вообще, «красота есть интуитивное осознание целесообразности»

Вот не надо поминать Ивана Антоновича всуе, тем более, что говорил он немного не так.

Старый фортранщик, небось?

Не, он сишник, железячник

А, железячник... у этих на лбу тоже адова печать, но другая, чем у фортранщиков.

tailgunner ★★★★★
()
Ответ на: комментарий от nanoolinux

Те плюсы, которые не тормазящий щит - это си с классами, максиму шаблончики форфан. А так да, ты меня хочешь удивить плюсами?

procoder99
()
Ответ на: комментарий от tailgunner

А, железячник... у этих на лбу тоже адова печать, но другая, чем у фортранщиков.

Гхм... а что стоит на лбу у тебя? Потому как у нашего (с K&R!!!111) стилем хоть какое то оправдание есть, а у вашего и оправданий никаких (акромя кроме вкуса);-P

AIv ★★★★★
()
Ответ на: комментарий от AIv

По Ефремову так вообще, «красота есть интуитивное осознание целесообразности»

В меру испорченности, реплики «я бы вдул» подходят под такое определение красоты (:

А так пацаки чатланам вообще на голову залезли, ирц от школоло опустело, #программинг умер, так они толпами на лорчик количеством скобок { в одной строке с именем функции меряться вылезли.

nikitos ★★★
()
Ответ на: комментарий от AIv

Как я это люблю. Ты патешься его убедить аргументами, от которых сам юлишь. Мы такие смишнульки милые.

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

procoder99
()
Ответ на: комментарий от AIv

Гхм... а что стоит на лбу у тебя?

А у меня чистый лоб с вертикальными морщинами от того, что я хмурюсь, когда вижу код, написанный в кривом стиле %)

Потому как у нашего (с K&R!!!111)

Ричи открывающую скобку функции писал на отдельной строке, ДЕРЖИ ЕРЕТИКА!!!11

а у вашего и оправданий никаких (акромя кроме вкуса);-P

У какого «нашего»? Я пишу почти в стиле Linux kernel, который разновидность K&R.

tailgunner ★★★★★
()

Кто-то еще читает детский лепет procoder99'а? Я думал, он уже всем наскучил.

anonymous
()

И так, не иначе как быдлокодером я себя назвать не могу. Программирование моё увлечение и не более того,

Ну и какой ты тогда «быдлокодер»? Быдлокодер - тот, кто кодит за зарплату. А если это только увлечение, то в быдлокодеры ты записываться не имеешь права.

Что почитать/посмотреть про хороший стиль программирования на С?

JPL code standard.

anonymous
()
Ответ на: комментарий от nikitos

А ты молодец, хоть и вяло, но описал причину появления новомодных языков.

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

В конечном итоге феня в примитивной рече короче, в в целом длиннее ущербней - такая же история с новомодными ЯП.

procoder99
()
Ответ на: комментарий от procoder99

тут ещё правда и плюсы, но они тупо си с классами

facepalm.cpp

geek ★★★
()

Мне конечно стыдно, но вот https://github.com/fedor-elizarov для примера, там мало конечно но думаю хватит и этого, остальное локально храню.

Если судить по

https://github.com/fedor-elizarov/UNIEN/blob/master/src/unien.{h,c}

то похоже на быдлокод. Поясню, почему я так считаю:

1. Пустые строки без какой-либо видимой причины.
2. Конфликт ревизий файла закоммичен в репозиторий.
3. Зачем нужно патчить (patch_to_conf_file) конфиг файл?
4. Стиль форматирования тоже странный - где пробел не нужен, там он стоит. Там, где пробел нужен для удобства восприятия, его нет.
5. Выделение памяти где то внутри unien_read_conf(), а освобождение снаружи с помощью free(). Это плохой признак. Должно быть все прозрачнее.
6. Одни и те же дефайны и в unien.h, и в unien_ica.h
7. SDL и GLEW в одной куче.

Дальше лень было смотреть.

andreyu ★★★★★
()
Ответ на: комментарий от tailgunner

А у меня чистый лоб с вертикальными морщинами

Отрасти челку? На всякий случай не буду тебе показывать свой код, а то бушь похож на портрет Дориана Грея;-(

Ричи открывающую скобку функции писал на отдельной строке, ДЕРЖИ ЕРЕТИКА!!!11

Блин... т.е. тут http://fevt.ru/publ/figurnie_skobki_programmirovanie_c/11-1-0-177 врут? Или Ричи тока функции сносил? тогда я не еритик а реформатор!

AIv ★★★★★
()
Ответ на: комментарий от procoder99

Ты мечтаешь, чтобы через неделю обо мне забыли, как и о «других». Тебя это коробит.

Да, ты уже полностью изучен и интереса не представляешь. Это как слушать раз за разом одну и ту же песню.

anonymous
()
Ответ на: комментарий от s9gf4ult

Сам ты говнище, а у нас зато Duff device есть.

anonymous
()
Ответ на: комментарий от procoder99

я даже хз, какая хоть тематика?

x0r ★★★★★
()
Ответ на: комментарий от anonymous

Кто-то еще читает детский лепет procoder99'а? Я думал, он уже всем наскучил.

Да кому нужен идиот? Пусть пишет, базе данных пофиг, какое говно хранить. Дурачок подрастет, поумнеет, будет потом кипятком ссать, читая свои заносчивые бредни.

andreyu ★★★★★
()
Ответ на: комментарий от mazdai
% cat fuck.c
#include <stdio.h>
     
int main() {
  int i=5;
  switch ( 2 ) {
  case 0:
    for (  i=0; i<10; i++ ) {
    case 1:
      printf("A i=%d\n",i);
    case 2:
      printf("B i*i=%d\n",i*i);
    };
  case 3:
    printf("done");
    break;
  }
     
  return 0;
}
% gcc -o fuck fuck.c 
% ./fuck 
B i*i=25
A i=6
B i*i=36
A i=7
B i*i=49
A i=8
B i*i=64
A i=9
B i*i=81
done%                                                                                                                                   

Учитывая, что можно обойтись и без такого использования switch/case, я определяю подобное как говно/байтоебство.

s9gf4ult ★★
()
Ответ на: комментарий от procoder99

ты меня хочешь удивить плюсами?

Нет, конечно, но ты забыл добавить «имхо».

nanoolinux ★★★★
()
Ответ на: комментарий от procoder99

Вы таки не ответили на мой вопрос (видать злой модератор помешал), но это уже неважно.

www_linux_org_ru, tailgunner - мне с него уже не смешно, и времени сейчас катастрофически нету возиться. Если оно напишет код по какой то из озвученных задач, или будет что то интересное, позовите пожалуйста. А пока я его игнорю.

AIv ★★★★★
()
Ответ на: комментарий от geekless

Как раз наоборот.

Ну ладно, этот пункт отменяется. Хотя в linux kernel оба способа встречаются.

i-rinat ★★★★★
()

Приветствуются куски кода/целые проекты с указанием быдлокод/идеальный код.

Меня в своё время очень вдохновил код Plan9.

beastie ★★★★★
()
Ответ на: комментарий от KennyMinigun

ну и чё? кто то выпендрился показав знание «устройства Даффа»

qulinxao ★★☆
()
Ответ на: комментарий от procoder99

Он работает где-то за еду

Про-, так часто упоминаемая тобой приставка, происходит от слова «профессионал». А профессионал — это тот, кто своей профессиональной деятельностью зарабатывает на еду. Так что тот, кто работает за еду — профессиональный программист. И его код — это «про-код». И если программирование — не твоя профессия, ты пишешь ама-код.

i-rinat ★★★★★
()
Ответ на: комментарий от tailgunner

ну... если верить в скрежали - уже тогда Томпсон похатчил(что там с развёрткой что пушка не всю строку рисовала а тока сначало левый столбец затем правый - это как то связано с черестрочностью вместо черезстрочности рисуем левую колонку , затем правую)

себе ЭЛТ и получил текст шириной в 80 символов в две колонки с общим числом строк около 120

и даже в его случае он следовал KRформатированию

qulinxao ★★☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.