Лучшие комментарии в исходниках

Лучшие комментарии в исходном коде.

Иногда люди оставляют в коде забавные комментарии.
Здесь выложен перевод некоторых (понравившихся) коментариев из первых трех страниц этой темы:
http://stackoverflow.com/questions/184618?sort=votes&page=4#sort-top
Мой английский далёк от идеала, но уж что есть то есть. Старался переводить близко к оригиналу, иногда литературно. Матные слова так же переведены как они есть.
Поехали:

Оригинал Перевод
// sometimes I believe compiler ignores all my comments // иногда мне кажется, что компилятор игнорирует все мои комментарии
// Magic. Do not touch.

// Магия. Не трогать.
return 1; # returns 1

return 1; # returns 1
//When I wrote this, only God and I understood what I was doing

//Now, God only knows

//Когда я писал это, лишь господь и я знали, что делает это код.
//Теперь лишь господь знает
// I'm sorry.

// Простите меня.

//

// Dear maintainer:
//

// Once you are done trying to 'optimize' this routine,

// and have realized what a terrible mistake that was,
// please increment the following counter as a warning
// to the next guy:
//
// total_hours_wasted_here = 16
//

//
// Дорогой программист

//
// Когда ты закончишь свои потуги "оптимизировать" это простой код,
// и осознаешь какой ужасной ошибкой было это решение,
// пожалуйста увеличь щечек ниже, как предостережение
// следующему человеку, который попытается повторить твою ошибку:
//
// общее_количество_часов_потраченное_здесь_впустую = 16
//

/*
* You may think you know what the following code does.
* But you dont. Trust me.
* Fiddle with it, and youll spend many a sleepless

* night cursing the moment you thought youd be clever
* enough to "optimize" the code below.
* Now close this file and go play with something else.
*/

/*
* Тебе может показаться, что ты знаешь, что делает следующий код.

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

const int TEN=10; // As if the value of 10 will fluctuate... const int ДЕСЯТЬ=10; // Будто значение 10 может измениться...

Exception up = new Exception("Something is really wrong.");
throw up;
//ha ha

Exception up = new Exception("Что-то действительно не так.");
throw up;
//ха ха
//This code sucks, you know it and I know it.
//Move on and call me an idiot later.
//Этот код отстой, и мы оба это знаем.
//Так что двигайся дальше, а идиотом ты назовешь меня потом.
// If this comment is removed the program will blow up // Если этот комментарии будет удален, то тогда программа взорвется

/* You are not meant to understand this */

/* Никто и не думает, что ты поймешь это */
/**
* Always returns true.

*/
public boolean isAvailable() {
  return false;
}

Never rely on a comment...

/**
* Всегда возвращает true.
*/
public boolean isAvailable() {
  return false;

}
Никогда не полагайся на комментарии...

//I am not sure why this works but it fixes the problem.
This was before a set of code that technically did fix the problem it was meant to but broke 3 other things....
//Не уверен почему этот код работает, но проблема решена.

Это было перед кодом, который решил пробему(технически), но ломал программу в трёх других местах....

/* TODO: this is obviously not right ... this whole f*cking module
sucks anyway */
/* FIXME: please god, when will the hurting stop? Thus function is so

f*cking broken it's not even funny. */

/* TODO: очевидно это неправильное решение... но этот *баный модуль уже всё равно уже не испортишь */
/* FIXME: пожалуйста, господи, когда эта пытка закончится? Эта бл*тская функция уже настолько испорчена, что это уже них*я не смешно. */
# code below replaces code above - any problems?

# yeah, it doesn't f*cking work.

# код что идет ниже заменяет код, который был выше - какие-то проблемы?
# да, он ни х*я не работает.
# To understand recursion, see the bottom of this file

At the bottom of the file:
# To understand recursion, see the top of this file

Комментарий в начале файла:
# Чтобы понять рекурсию, прочтите комментарий в конце файла.
Комментарий в конце того же файла:
# Чтобы понять рекурсию, прочтите комментарий в начале файла.
// I am not sure if we need this, but too scared to delete. // Не уверен, что это нужно здесь, но очень боюсь удалять.

//Please work

//Пожалуйста, работай
Next to a local variable that had to be declared just to pass a constant to a library function:
// This only exists because Scott doesn't know how to use const correctly
Комментарий идет после локальной переменной, которую пришлось объявить
лишь, для того чтобы пробежаться по константам в функции библиотеки:
// Это здесь лишь потому, что Скотт не знает, как правильно использовать слово const
int MyFunction()

{

    // There once was a man named Dave
    int Result = 0

    // Whose code just wouldn't behave
    MyObject *Ptr = new MyObject();

    // He left to go to a meetin'
    Result = Ptr->DoSomething();

    // And left his memory a leakin'
    return Result;

}

(здесь видимо кто-то решил поизмываться над чужим кодом и оставил комменты в стихах(перевод очень вольный)):
int MyFunction()
{

    // Жил был парень по имени Дейв
    int Result = 0

    // Чей код лишь падал не взлетев
    MyObject *Ptr = new MyObject();

    // Внезапно он ушел на встречу
    Result = Ptr->DoSomething();

    // Оставив памяти утечку
    return Result;
}

// I am not responsible of this code.
// They made me write it, against my will.
// Я не несу ответственности за этот код.
// Они меня заставили написать его против моей воли.
// I know the line below is wrong, but it came that way from our IP vendor, and
// the driver won't work if you "fix" it. I've had to revert this change 4 times
// now. Leave it alone, or I will hunt you down and hurt you
if (r = 0) {
}
// Я знаю, что следующий код не правильный, но так приходится делать из-за нашего
// IP вендора. И драйвер просто не будет, если ты попытаешься "починить" это. Мне
// уже 4 раза пришлось возвращать этот код на место. Не трогай его или я поймаю тебя
// и побью
if (r = 0) {
}
options.BatchSize = 300; //Madness? THIS IS SPARTA! (интересно, что в данном контексте означает batch?)
options.BatchSize = 300; //Безумие? ЭТО СПАРТА!
// I don't know why I need this, but it stops the people being upside-down
x = -x;
// Не знаю, зачем это нужно, но от этого люди перестают быть верх-ногами
x = -x;

i = 0x5f3759df - ( i >> 1 ); // what the fuck? i = 0x5f3759df - ( i >> 1 ); // что за х**ня?

long long ago; /* in a galaxy far far away */ непереводимое выражение =)
This seems to stop morons from messing my code...
// Autogenerated, do not edit. All changes will be undone.
Возможно после этого комментария всякие дебилы перестанут портить мой код...
// Это автоматически сгенерированный код. Не редактируйте его. Все изменения будут проигнорированы.
//Dear future me. Please forgive me.
//I can't even begin to express how sorry I am.
//Дорогой будущий я. Пожалуйста прости меня.
//Я не могу даже отдаленно выразить то, насколько я извиняюсь.
virgin = 0; /* you're not a virgin anymore, sweety */ девственность = 0; /* опа, и ты уже не девственница, дорогуша */
// I have to find a better job // Мне нужно найти работу получше

Not quite a comment but a goto label
ICantBelieveImUsingAGoto:

Не комментарий, но метка goto:
НеМогуПоверитьЧтоЯИспользуюGoto:
using namespace std; // So sue me using namespace std; // Подай на меня в суд
//You are not expected to understand this //Никто не ожидает, что ты поймешь это
////////////////////////// this is a well commented line ////////////////////////// это хорошо закоментированная строчка
// The following strings are meant to be funny. Do not edit these strings
// unless you are funny, too. If you don't know if you're funny, you're

// not funny. If fewer than 2 people unrelated to you haven't told you

// that you're funny, you're not funny.

// Следующий код является забавным. Не редактируйте следующий код,

// если вы не являетесь забавным, тоже. Если вы не знаете являетесь ли вы
// забавным или нет, значит вы не являетесь забавным. Если менее двух
// человек, не сотстоящих с вами в родственных отношения, сказали вам что
// вы забавный, значит вы не являетесь забавным.
// Catching exceptions is for communists (это видимо комментарий времен холодной войны)
// Обработка исключений это происки коммунистов
/* Mark: If there's one thing you learn from this code, it is this...
Never, ever fly Air France. Their customer service is absolutely
the worst. I've never heard the words "That's not my problem" as

many times as I have from their staff -- It should, without doubt
be their corporate motto if it isn't already. Don't bother giving

them business because you're just a pain in their side and they

will be sure to let you know the first time you speak to them.

If you ever want to make me happy just tell me that you, too, will
never fly Air France again either (in spite of their excellent
cuisine).

Update by oej: The merger with KLM has transferred this

behaviour to KLM as well.
Don't bother giving them business either...

Only if you want to travel randomly without luggage, you
might pick either of them.
*/

/* Mark: Если есть хотя бы одна полезная вещь, которую ты познаешь из
этого кода то это...
Никогда, никогда не летай рейсами Air France. Они отвратительно
обслуживают клиентов. Я никогда не слышал фразу "Это не моя
проблема" настолько часто, сколько от их персонала. Без сомнений
им следует сделать это корпоративным лозунгом, если они до сих
пор этого не сделали. Не беспокой их попыткой воспользоваться их
услугами, потому что для них ты всего лишь головная боль и будь

уверен, они дадут тебе знать об этом сразу, как только ты
заговоришь с ними.

Если ты когда-нибудь захочешь сделать меня счастливым - просто
скажи мне, что ты тоже никогда не будешь снова пользоваться
услугами Air France(не смотря на их прекрасную кухню).

Update by oej: В добавок их слияние с KLM автоматически перенесло эти
черты поведения на KLM.

Не пользуйся и их услугами тоже...

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

(это тебе понравится, zmi)
on js code:
// hack for ie browser (assuming that ie is a browser)
В js коде:
// Хак для ie браузера (при условии, что ie это браузер)
// If you're reading this, that means you have been put in charge of my previous project.
// I am so, so sorry for you. God speed.
// Если вы читаете эти строки, значит вам поручили мой предыдущий проект.
// Я очень, очень сочувствую вам. Удачи.
// TODO: Fix this. Fix what? // TODO: Исправить это. Исправить что?
catch (Ex as Exception)
{

// oh crap, we should do something.
}
catch (Ex as Exception)

{

// вот дерьмо, мы должны что-то сделать.
}

// and there is where the dragon lives

followed by a function 4 people spent a day to understand what it's doing. Finally we realised it's not even used and does nothing.

// здесь живет дракон
На следующую за этим комментарием функцию 4 человека потатили день,
пытаясь понять что она делает. В итоге мы осознали, что она даже не используется
и ничего по сути не делает.
/*********************************/
/* deep wizardry. do not touch. */
/* */
/* no seriously. XXXXXX I'm looking at you. If you screw with this again */
/* I will kill you with my swingline stapler. */
/* */
/* ...
/*********************************/

/* сложная магия. не трогать. */
/* */
/* нет, серьёзно. Ты, XXXXXX, я смотрю на тебя. Если ты напортачишь здесь
снова*/
/* я убью тебя своим стиплером. */
/* */
/* ...

//Mr. Compiler, please do not read this //Мистер компилятор, пожалуйста, не читайте это
I see this one a lot:
// TODO make this work
Это я вижу часто:
// TODO заставить работать
$this->getSelect()->where ('main_table.product_id = -1'); // Mom, Dad...
sorry
$this->getSelect()->where ('main_table.product_id = -1'); //Мама, папа...
простите

/**
* If you don't understand this code, you should be flipping burgers
instead.
*/

/**
* Если ты не понимаешь этот код, то тебе следует переворачивать бюргеры в
закусочной.
*/
// if i ever see this again i'm going to start bringing guns to work // если я увижу это ещё раз, то начну приносить на работу оружие
// This comment is self explanatory.

// Этот комментарий всё объясняет.

(c) http://unick-soft.xost.ru

Рубрики: Компьютерный юмор | автор приколы и шутки udaffa.net | Комментарии

Шоколад Аленка Совет дня

Постоянные ссылки

При копировании ссылка на Удава.НЕТ обязательна

URI

Html (ЖЖ)

BB-код (Для форумов)

Друзья

Рубрики:

Поиск:

Мета: