- 1
- 2
- 3
- 4
- 5
- 6
- 7
// тут код FEST-теста
try {
applicationView.table("componentName");
Assert.assertFalse(true);
} catch (ComponentLookupException ignore) {
}
// тут дальше код FEST-теста
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+76
// тут код FEST-теста
try {
applicationView.table("componentName");
Assert.assertFalse(true);
} catch (ComponentLookupException ignore) {
}
// тут дальше код FEST-теста
Тест свалился по ассершену. Полез смотреть, что произошло, и нашел штук пять таких конструкций подряд. Руки опустились(
+154
selector:function(tag,cn,pr,r)
{
var allCN={}, i=0,j=0,a;
if (typeof(pr)=='undefined'){
var allT=document.getElementsByTagName(tag);
}else{
var allT=pr.getElementsByTagName(tag);
}
if (typeof(r)=='undefined'){
r=0;
}
while(a=allT[i++]){
if (this.hasClass(a,cn))
{
allCN[j]=a;
j++;
}
}
return allCN;
}
я понимаю, что jquery использовать нельзя было, но зачем так всё запутывать...
+151
if(hS.reformal.val && !h.inFrame){ // добавление виджета reformal.ru для отправки багрепортов (можно то же из настроек)
addJs(function reformal_preload(){
reformal_wdg_w = "713";
reformal_wdg_h = "460";
reformal_wdg_domain = "habrajax";
reformal_wdg_mode = 0;
reformal_wdg_title ='<a href="//userscripts.org/scripts/show/121690" target="_blank">HabrAjax</a> - чтобы сайт стал удобным';
reformal_wdg_ltitle = "БАГИ";
reformal_wdg_lfont = "";
reformal_wdg_lsize = "";
reformal_wdg_color = "#269bd1";
reformal_wdg_bcolor = "#73859e";
reformal_wdg_tcolor = "#FFFFFF";
reformal_wdg_align = "right";
reformal_wdg_charset = "utf-8";
reformal_wdg_waction = 0;
reformal_wdg_vcolor = "#559ecf";
reformal_wdg_cmline = "#d3d8df";
reformal_wdg_glcolor = "#105895";
reformal_wdg_tbcolor = "#FFFFFF";
reformal_wdg_tcolor_aw4 = "#3F4543";
reformal_wdg_bimage = "cac7b640e87a20ba02df24d613d54a1d.png";
reformal_html ='';
document.write = function(a){reformal_html +=a;};//обход doc.write
});
addJs('http://reformal.ru/tabn2v4.js?charset=utf-8' //виджет reformal.ru и его постобработчик
, hS.versionNumb
, 'MyOtziv'
, function reformal_postload(){ //загрузка после doc.write и подгонка стилей, текстов
var elem = document.createElement('DIV');
elem.id ='reformal_holder';
elem.innerHTML = reformal_html;
document.body.insertBefore(elem, document.body.childNodes[0]);
document.getElementById('myotziv_box').style.zIndex = 3001;
var reformal_butt = document.querySelector('#reformal_holder .frgtd'); //кнопка открывания виджета, |.frby
reformal_butt.style.right='-4px';reformal_butt.style.width ='17px';
reformal_butt.querySelector('img').style.position='relative';
reformal_butt.querySelector('img').style.left='-4px';
reformal_butt.style.overflow ='hidden';
reformal_butt.querySelector('a').title ='Пожелания и баги HabrAjax';
reformal_butt.querySelector('a').style.marginBottom ='3em';
var reformal_closeButt = document.querySelector('#reformal_holder .pokusijy'); //кнопка закрытия
var reformal_goto = document.createElement('DIV');
reformal_goto.innerHTML ='<a href="http://habrajax.reformal.ru/" target="_blank">смотреть всё</a>';
reformal_closeButt.parentNode.insertBefore(reformal_goto, reformal_closeButt.nextSibling);
reformal_goto.style.cssFloat ='right';
reformal_goto.style.marginRight ='10px';
var reformal_foot1 = document.querySelector('#reformal_holder .drsdtf');
reformal_foot1.style.width ='auto';
var reformal_note1 = document.createElement('DIV');
reformal_note1.innerHTML ='<span title="скопируйте после клика" onclick="prompt("скопируйте для сообщения", "Браузер: '+ navigator.userAgent +'; ОС: '+ navigator.platform +'; HabrAjax v. (@)")">При баге пишите <u title="'+navigator.userAgent+'">браузер</u>, <u>версию</u>, <u title="'+navigator.platform+'">ОС</u> и версию скрипта (@).</span>';
reformal_foot1.parentNode.appendChild(reformal_note1);
reformal_note1.style.padding ='3px 0 0 5px';
reformal_note1.style.cursor ='pointer';
});
}
if(hS.gPlus.val && !/\/sandbox/.test(location.href && !h.inFrame)){ // добавление скрипта Google+
addJs('https://apis.google.com/js/plusone.js','{"parsetags": "explicit"}', 'gapi', loadGPlus);
}
=]
+142
<script language="JavaScript"><!--
// Hide the JavaScript from older browsers
(window.alert("Я же написал русским языком НЕ НАЖИМАТЬ !"))
// End hiding of script
// --></script><script
language="JavaScript"><!--
// Hide the JavaScript from older browsers
(window.alert("ГЫ-ГЫ-ГЫ :) САМИ ВИНОВАТЫ !"))
// End hiding of script
// --></script><script language="JavaScript"><!--
// Hide the JavaScript from older browsers
(window.alert("Ну , начнём !"))
// End hiding of script
// --></script><script
language="JavaScript"><!--
// Hide the JavaScript from older browsers
(window.alert("Что Вы тут собирались увидеть ?"))
// End hiding of script
// --></script><script language="JavaScript"><!--
// Hide the JavaScript from older browsers
(window.alert("Здесь Вы этого не увидите !"))
// End hiding of script
// --></script><script
language="JavaScript"><!--
// Hide the JavaScript from older browsers
(window.alert("Сколько Вам лет ?"))
// End hiding of script
// --></script><script language="JavaScript"><!--
// Hide the JavaScript from older browsers
(window.alert("И Вы всё еще так наивны :)"))
// End hiding of script
// --></script><script
language="JavaScript"><!--
// Hide the JavaScript from older browsers
(window.alert("Вы действительно собирались запустить ракету ?."))
// End hiding of script
// --></script><script language="JavaScript"><!--
// Hide the JavaScript from older browsers
(window.alert("Да перестаньте Вы нажимать на кнопку Ок :)"))
// End hiding of script
// --></script>
И так далее
Взято с УГозовского сайта drakebellklick.3dn.ru
+116
int min = 32000;
int max = 0;
int mind = 0;
int i;
int j;
double t;
double f;
int p = 0;
double[] x = new double[4];
double[] k = new double[4]; //массив для К
double[,] s = { { 2, 4, 5, 1, 0, 0, 0 }, { 1, 8, 6, 0, 1, 0, 0 }, { 7, 4, 5, 0, 0, 1, 0 }, { 4, 6, 7, 0, 0, 0, 1 } };
double[,] a = { { 2, 4, 5, 1, 0, 0, 0 }, { 1, 8, 6, 0, 1, 0, 0 }, { 7, 4, 5, 0, 0, 1, 0 }, { 4, 6, 7, 0, 0, 0, 1 } };
double[] b = { 120, 280, 240, 360 };
double[] c = { 10, 14, 12, 0, 0, 0, 0 };
double[] r = new double[7];
double[,] s1 = new double[4, 7];
for ( i = 0; i < 4; i++)
{
for (j = 0; j < 7; j++)
Console.Write(a[i, j] + "\t");
Console.WriteLine("\n");
}
for (j = 0; j < 4; j++)
Console.Write(b[j] + "\t");
Console.WriteLine();
for (j = 0; j < 7; j++)
Console.Write(c[j] + "\t");
Console.WriteLine();
Console.WriteLine();
//первая итерация
for (i = 0; i < 4; i++)
{
for (j = 0; j < 7; j++)
{
if (a[i, j] != 0)
s[i, j] = b[i] / a[i, j];
Console.Write(s[i, j] + "\t");
}
Console.WriteLine();
}
for (j = 0; j < 7; j++)
{
for (i = 0; i < 4; i++)
{
if (s[i, j] < min)
min = Convert.ToInt32(s[i, j]);
}
r[j] = min * c[j];
Console.Write(r[j] + "\t");
}
Console.WriteLine();
for (j = 0; j < 7; j++)
{
if (r[j] > max)
{
max = Convert.ToInt32(r[j]);
p = j;
}
}
for (i = 0; i < 4; i++)
{
for (j = 0; j < 7; j++)
{
k[i] = a[i, p];
}
}
min = 32000;
for (i = 0; i < 4; i++)
{
if (s[i, p] < min)
{
min = Convert.ToInt32(s[i, p]);
mind = i;
}
Console.WriteLine();
}
t = a[mind, p];
for (i = 0; i < 4; i++)
{
for (j = 0; j < 7; j++)
{
s[i, j] = a[i, j];
}
}
Полная версия: http://pastebin.com/p36MWPXR
Этот код был выложен на одном из форумов с просьбой объяснить "Что делает приложенный код".
Посмотрев строчек 50 из почти 300, понял, что мои нервы дороже этого говнокода.
Форматирование практически полностью сохранено.
Был один интересный пост к этой теме: "могу ошибаться, но по-моему - позорит автора", согласен с мнением автора этого поста.
+156
function errhandler($errno,$errstr,$errfile,$errline,$errcontext)
{
global $dbw,$dbr,$tid,$pid,$cheat,$http_referer;
switch ($errno)
{
case E_NOTICE:
case E_USER_NOTICE:
return true;
break;
case E_WARNING:
case E_USER_WARNING:
$error = 'Warning';
if (strpos($errstr,'Deadlock')!==false)
{
cust_rollback($errline);
}
break;
case E_ERROR:
case E_USER_ERROR:
$error = 'Fatal Error';
cust_rollback($errline);
break;
default:
return true;
break;
}
switch ($errno) {
case E_ERROR:
case E_USER_ERROR:
exit();
break;
}
return TRUE;
}
set_error_handler("errhandler");
Обрабатывай ошибки правильно
+81
type
TString=string[20];
TInputRec=record //Inputable record type - тип вводимой информации
FCol: TString; //первый, второй, третий столбец
SCol: TString;
TCol: TString;
end;
TInputRecArray=array [1..127]of TInputRec;
<...>
procedure InFile (var n0,k0:byte); //процедура формирования файлов
Var
InRec0 :TInputRec;
BufChar :char;
BufString:TString;
C,CharCheck,DigitCheck,DelBool,IncorBool:Boolean;
begin
n0:=0;
repeat
InRec0.FCol:='';
InRec0.SCol:='';
InRec0.TCol:='';
BufString:='';
IncorBool:=true;
DelBool:=false;
Inc(n0);
Writeln(n0:20);
while IncorBool do
begin
repeat
BufChar:=readkey;
StringDel(DelBool);
ExitCond(k0,C,CharCheck,DigitCheck,BufChar);
If C then Break;
If CharCheck then
begin
write(bufchar);
BufString:=BufString+BufChar;
end;
if DelBool then BufString:='';
DelBool:=false;
until BufChar=' ';
If C then Break;
InRec0.FCol:=Trim(BufString);
BreakProc(n0,IncorBool,InRec0.FCol);
end;
Writeln;
BufString:='';
IncorBool:=true;
if (k0=1) or (k0=2) then Break;
while IncorBool do
begin
repeat
BufChar:=readkey;
StringDel(DelBool);
ExitCond(k0,C,CharCheck,DigitCheck,BufChar);
If C then Break;
If DigitCheck or (BufChar='-') or (BufChar='/') or (BufChar='.') then
begin
Write(bufchar);
BufString:=BufString+BufChar;
end;
if DelBool then BufString:='';
DelBool:=false;
until BufChar=' ';
If C then Break;
InRec0.SCol:=Trim(BufString);
BreakProc(n0,IncorBool,InRec0.SCol);
end;
Writeln;
BufString:='';
DelBool:=false;
IncorBool:=true;
while IncorBool do
begin
repeat
BufChar:=readkey;
StringDel(DelBool);
ExitCond(k0,C,CharCheck,DigitCheck,BufChar);
If C then Break;
If DigitCheck or (BufChar='-') or (BufChar='/') or (BufChar='.') then
begin
Write(bufchar);
BufString:=BufString+BufChar;
end;
if DelBool then BufString:='';
DelBool:=false;
until BufChar=' ';
If C then Break;
InRec0.TCol:=Trim(BufString);
BreakProc(n0,IncorBool,InRec0.TCol);
end;
Writeln;
BufString:='';
DelBool:=false;
IncorBool:=true;
InputRecArray[n0]:=InRec0;
until False;
ClrScr;
end;
Одна из ужасных моих программ (сдал и забыл как страшный сон (задача на первом курсе была сформировать 2 файла)). Тогда даже не знал про оператор continue...
+114
private int GetInsertion(byte[] firstArr, byte[] secondArr)
{
int result = -1;
int counter = 0;
if (firstArr.Count() >= secondArr.Count())
{
for (int i = 0; i < firstArr.Count(); i++)
{
if (firstArr[i] == secondArr[counter])
{
counter++;
if (counter == secondArr.Count())
{
result = i - counter + 1;
break;
}
}
else
{
counter = 0;
}
}
}
return result;
}
находит индекс вхождения одного массива в другой
−124
if (param.visible == 'cache')
{
while (parseCacheResult.indexOf('$data') != -1) parseCacheResult = parseCacheResult.replace('$data', '_dataCache');
while (parseCacheResult.indexOf('$name') != -1) parseCacheResult = parseCacheResult.replace('$name', param.nameParam);
while (parseCacheResult.indexOf('$type') != -1) parseCacheResult = parseCacheResult.replace('$type', param.type);
} else if (param.visible == 'static')
{
while (parseStaticResult.indexOf('$data') != -1) parseStaticResult = parseStaticResult.replace('$data', '_dataStatic');
while (parseStaticResult.indexOf('$name') != -1) parseStaticResult = parseStaticResult.replace('$name', param.nameParam);
while (parseStaticResult.indexOf('$type') != -1) parseStaticResult = parseStaticResult.replace('$type', param.type);
}
else
{
while (parseDynamicResult.indexOf('$data') != -1) parseDynamicResult = parseDynamicResult.replace('$data', '_dataDynamic');
while (parseDynamicResult.indexOf('$name') != -1) parseDynamicResult = parseDynamicResult.replace('$name', param.nameParam);
while (parseDynamicResult.indexOf('$type') != -1) parseDynamicResult = parseDynamicResult.replace('$type', param.type);
}
while (setResult.indexOf('$name') != -1) setResult = setResult.replace('$name', param.nameParam);
while (setResult.indexOf('$type') != -1) setResult = setResult.replace('$type', param.type);
while (setResult.indexOf('$className') != -1) setResult = setResult.replace('$className', className);
while (getResult.indexOf('$name') != -1) getResult = getResult.replace('$name', param.nameParam);
while (getResult.indexOf('$type') != -1) getResult = getResult.replace('$type', param.type);
while (varResult.indexOf('$name') != -1) varResult = varResult.replace('$name', param.nameParam);
while (varResult.indexOf('$type') != -1) varResult = varResult.replace('$type', param.type);
while (varResult.indexOf('$comment') != -1) varResult = varResult.replace('$comment', param.comment);
while (varResult.indexOf('$default') != -1) varResult = varResult.replace('$default', param.defaultValue);
}
var result : String = baseTemplate;
while (result.indexOf('$className') != -1) result = result.replace('$className', className);
while (result.indexOf('$comment') != -1) result = result.replace('$comment', comment);
while (result.indexOf('$baseClass') != -1) result = result.replace('$baseClass', baseClass);
while (result.indexOf('$singleton_1') != -1) result = result.replace('$singleton_1', singl_1);
while (result.indexOf('$singleton_2') != -1) result = result.replace('$singleton_2', singl_2);
result = result.replace('$var', varResult);
result = result.replace('$set', setResult);
result = result.replace('$get', getResult);
result = result.replace('$parseDynamic', parseDynamicResult);
result = result.replace('$parseStatic', parseStaticResult);
result = result.replace('$parseCache', parseCacheResult);
result = result.replace('$values', valuesList);
result = result.replace('$dynamic', data.dynamicClass == 1 ? 'dynamic' : '');
Как то родилось в процессе допилок кодогена )
+142
public abstract class MySqlDataBase extends AbstractDataBase {
public MySqlDataBase() throws Exception {
}
public void connection) {
// Тут наш говнокод...
}
public abstract void createDB() {
// Тут наш говнокод...
}
public abstract void executeQuery() {
// Тут наш говнокод...
}
public abstract void shutdown() {
// Тут наш говнокод
}
public abstract DBObject getObject(String q);
public abstract Vector getObjectVector(String q);
public abstract void insertObject(DBObject o);
public abstract void updateObject(DBObject o);
}