C# Sharp

Ну считать ты можешь, что угодно, но по факту это не так. :)
 
Там кстати и про это написано

>>Ищи по форуму любой мой код. Он божественен (сам себя не похвалишь, никто не похвалит)

@Lurkmore
Ты быдлокодер, если не считаешь себя быдлокодером.
Нельзя перестать быть быдлокодером.
Быдлокод языконезависим.
Быдлокодер — тот, кто не стремится к идеальному коду.
Быдлокодер — тот, кто стремится к идеальному коду.
Любой кодер является и быдлокодером и не-быдлокодером одновременно (принцип быдлокота быдлокода Шредингера).
Сам человек не может определить, быдлокодер он или нет. Это могут сделать только другие люди.


Dahaka написал(а):
Ну считать ты можешь, что угодно, но по факту это не так. :)

Вот -вот. Почитай ка статью, что я тебе скинул, и поразмысли ;)
@Lurkmore
Цитата: написал(а):
Ты быдлокодер, если не считаешь себя быдлокодером.
Нельзя перестать быть быдлокодером.
Быдлокод языконезависим.
Быдлокодер — тот, кто не стремится к идеальному коду.
Быдлокодер — тот, кто стремится к идеальному коду.
Любой кодер является и быдлокодером и не-быдлокодером одновременно (принцип быдлокота быдлокода Шредингера).
Сам человек не может определить, быдлокодер он или нет. Это могут сделать только другие люди.
 
Ну дак а ты попробуй докопаться до моего кода ;)
 
А еще вот это, ну это так, если поржать захочешь

Ахах, ору
Является разработчиком уникальной нетеряемой флешки-маркера и супералгоритма сжатия, позволяющего сжать 2Гб в 2Кб.
 
>Хорошо, скинь мне пример, по твоему мнению, неговнокода.
Нормальный код не использует циклы, желательно вообще.

Вот пример того же, что у тебя:
Демка: http://codepen.io/anon/pen/oZXvBx
Непосредственно код генерации слова:
'bcdfghjklmnpqrstvwxzaeiouy'.split(/(.{20})/g).slice(1).map(i => i.split('')).map(i => i.sort(() => Math.random() > 0.5)).reduce((s, c) => s.push(c.join('').repeat(3).split('').sort(()=>Math.random() > 0.5).slice(0, 3)) && s, []).reduce((s, c, i) => c.forEach((c_, i_) => s[i_ * 2 + i] = c_) || s, []).join('')
 
Maxik001 написал(а):
Там кстати и про это написано

...
Бегло прочитал и что? Ты хочешь, сказать, что я говнокод пишу? А ты попробуй обосновать? Судя по тому, что таких обоснованных претензий в мой адрес пока не поступало, я сделал вывод что мой код нормальный. Что нельзя сказать о тебе ;)


Rumia написал(а):
'bcdfghjklmnpqrstvwxzaeiouy'.split(/(.{20})/g).slice(1).map(i => i.split('')).map(i => i.sort(() => Math.random() > 0.5)).reduce((s, c) => s.push(c.join('').repeat(3).split('').sort(()=>Math.random() > 0.5).slice(0, 3)) && s, []).reduce((s, c, i) => c.forEach((c_, i_) => s[i_ * 2 + i] = c_) || s, []).join('')

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

Вот пример того же, что у тебя:
Демка: http://codepen.io/anon/pen/oZXvBx
Непосредственно код генерации слова:
'bcdfghjklmnpqrstvwxzaeiouy'.split(/(.{20})/g).slice(1).map(i => i.split('')).map(i => i.sort(() => Math.random() > 0.5)).reduce((s, c) => s.push(c.join('').repeat(3).split('').sort(()=>Math.random() > 0.5).slice(0, 3)) && s, []).reduce((s, c, i) => c.forEach((c_, i_) => s[i_ * 2 + i] = c_) || s, []).join('')

>>Нормальный код не использует циклы, желательно вообще.
No comments. Давай просто закроем эту тему, потому что у всех понятие хорошего кода разное. 
А вот это, извини меня, какая то полная жесть с вызовом херпоймичегохерпоймизачем
Или ты эту красоту(нет) в 3 строчки написал, думал смутить меня огромным количеством нипанятных букав?
символов? 
Короче, это какая то дикая дичь, которая даже не компилируется. Или это ты специально так делаешь, чтобы никто не разобрал, что за каля-маля там написано? Короче все, закрыли тему. Никто не в обиде! :)
 
Maxik001 Писал(а): написал(а):
Там кстати и про это написано

...
Бегло прочитал и что? Ты хочешь, сказать, что я говнокод пишу? А ты попробуй обосновать? Судя по тому, что таких обоснованных претензий в мой адрес пока не поступало, я сделал вывод что мой код нормальный. Что нельзя сказать о тебе 
wink.png

Если ты до сих пор не используешь функциональную парадигму, то очевидно говнокод. 
Императивное программирование придумали аутисты, не осилившие функциональщину.
 
Воу, пошла жара! Ребята, остановитесь!
 
Rumia написал(а):
Если ты до сих пор не используешь функциональную парадигму, то очевидно говнокод. 
Императивное программирование придумали аутисты, не осилившие функциональщину.
Иди на лиспе пиши тогда.
 
Rumia Писал(а): написал(а):
Если ты до сих пор не используешь функциональную парадигму, то очевидно говнокод. 
Императивное программирование придумали аутисты, не осилившие функциональщину.
Иди на лиспе пиши тогда.

Современный язык с функциональной парадигмой --- js.
На лиспе пишут только старики.
На хаскеле --- поехавшие.
js --- выбор современного человека.


Ну вот. Всех разогнал своей хуетой.
 
И ты серьезно пишешь код в одну строчку? Красиво?
 
Нормальные люди пишут код, который работает. Пока одна строка работает, она достаточно красива.
Как говорит Линус, "Talk of tech innovation is bullsh*t. Shut up and get the work done".
 
Каждый пишет для себя так, как хочет, и никого не ебет как там у тебя написано . Но вот если ты @Rumia , будешь писать такой код для заказчика, то мне кажется, он швырнет тебе этот код обратно в лицо и скажет, переделывать. Для других надо писать, чтобы было понятно что, где, к чему и зачем. Я вот так считаю.
Я буду теперь тебя советовать,как авторитета в этой области, когда будет кто нибудь жесткое мясо выкладывать.
 
Заказчику абсолютно всё равно до тех пор, пока код работает и работает стабильно.
 

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

Если даже для такой простой задачи получился такой монстр, то что получится, если задача будет чуть сложнее. Легче будет переписать заново.
 
Ага, а когда он начнет работать плохо, например через год, тебе кинут предъяву, типо исправляй, наши программисты сломали глаза ,пытаясь найти ошибку. Ты такой открываешь свой код а там.

Код:
struct group_info init_groups = { .usage = ATOMIC_INIT(2) };struct group_info *groups_alloc(int gidsetsize){struct group_info *group_info;int nblocks;int i;nblocks = (gidsetsize + NGROUPS_PER_BLOCK - 1) / NGROUPS_PER_BLOCK;
/* Make sure we always allocate at least one indirect block pointer */
nblocks = nblocks ? : 1;group_info = kmalloc(sizeof(*group_info) + nblocks*sizeof(gid_t *), GFP_USER);if (!group_info)return NULL;group_info->ngroups = gidsetsize;group_info->nblocks = nblocks;atomic_set(&group_info->usage, 1);if (gidsetsize <= NGROUPS_SMALL)group_info->blocks[0] = group_info->small_block;else {for (i = 0; i < nblocks; i++) {gid_t *b;b = (void *)__get_free_page(GFP_USER);if (!b)goto out_undo_partial_alloc;group_info->blocks[i] = b;}}
return group_info;out_undo_partial_alloc:while (--i >= 0) {free_page((unsigned long)group_info->blocks[i]);}kfree(group_info);return NULL;}EXPORT_SYMBOL(groups_alloc);void groups_free(struct group_info *group_info){if (group_info->blocks[0] != group_info->small_block) {int i;
for (i = 0; i < group_info->nblocks; i++)free_page((unsigned long)group_info->blocks[i]);
kfree(group_info);}
EXPORT_S

То есть, ты сам нихера не поймешь, и вместо того чтобы искать ошибку, будешь переписывать заново с документацией, чтобы в след. раз такого не было. Но если ты болванчик деревянный, то перепишешь во второй раз точно также, наступая на те же грабли.
P.S Я хз че тут, в хакертайпере поклацал, чисто для примера
 
Maxik001 написал(а):
Ага, а когда он начнет работать плохо, например через год, тебе кинут предъяву, типо исправляй, наши программисты сломали глаза ,пытаясь найти ошибку. Ты такой открываешь свой код а там.
А это уже проблема новых программистов, кстати ;)
 
Ты такой открываешь свой код а там.


Код:
using System;
namespace HelloWorld
{
public class Program
{

public static char[] randomWord = new char[20]{'b','c','d','f','g','h','j','k','l','m','n','p','q','r','s','t','v','w','x','z'};
public static char[] randomWordVowel = new char[6]{'a','e','i','o','u','y'};
public static String randWordFromChar;

public static void Main(){
Random random= new Random();

for(int j = 0; j < 9; ++j){
      for(int i = 0;i < 3; ++i){
      int z = random.Next(20);
      int y = random.Next(6);
      Console.Write(randomWordVowel[y]);
      Console.Write(randomWord[z]);
      }
Console.Write("  ");
      for(int i = 0;i < 3; ++i){
      int z = random.Next(20);
      int y = random.Next(6);
      Console.Write(randomWord[z]);
      Console.Write(randomWordVowel[y]);
      }
    }

Console.Write("  ");

Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
}


}

}
 
Угу, по крайней мере мой код читаемый и без документации. А вот твою кашу-малу без построчного разжевывания не осилишь.
Я такой код пойму, разбуди меня спустя 20 лет посреди ночи, ибо все понятно
 
Назад
Сверху