- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
class GridPanel extends JPanel {
protected Point myLocation;
@Override
public Point location() {
return this.myLocation;
}
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+146
class GridPanel extends JPanel {
protected Point myLocation;
@Override
public Point location() {
return this.myLocation;
}
}
убивал бы за такое.
+159
std::ostringstream s;
for( std::list< Candidate* >::iterator it = order_by_priority.begin();
it != order_by_priority.end(); ){
s << (*it)->id << "/" << priorityDesc((*it)->priority());
it++;
if( it!= order_by_priority.end() )
s << ", ";
}
return s.str();
Странное обращение с циклом for.
+118
public class TWriteableForEach
{
public delegate void TForEachDelegate<TItem>(TItem item);
public static void Exec<TItem>(IList<TItem> itemsCollection, TForEachDelegate<TItem> forEachDelegate)
{
for (int i = 0; i < itemsCollection.Count(); ++i)
forEachDelegate(itemsCollection[i]);
}
} ;
Велосипед с квадратными колёсами?
−117
private function formatCallResult(data : String) : URLVariables
{
try
{
var urlVariables : URLVariables = new URLVariables(data);
MonsterDebugger.trace(this,[urlVariables.msgdesc,urlVariables.msgbody]);
var pattern : RegExp = /\[s](.+)\[\/s\]/ig //*new RegExp("\\[s\\]([\\w\\s]+)\\[/s\\]", "ig");*/
var msgdescReady : String = urlVariables.msgdesc.replace(pattern, "<b>$1</b>");
var msgbodyReady : String = urlVariables.msgbody.replace(pattern, "<b>$1</b>");
var pattern2 : RegExp = /\[n](.+)\[\/n\]/ig;
//TODO Write nice regexp instead !
urlVariables.msgdesc = msgdescReady;
urlVariables.msgbody = msgbodyReady;
msgdescReady = urlVariables.msgdesc.replace(pattern2, "<b>$1</b>");
msgbodyReady = urlVariables.msgbody.replace(pattern2, "<b>$1</b>");
urlVariables.msgdesc = msgdescReady;
urlVariables.msgbody = msgbodyReady;
MonsterDebugger.trace(this,[urlVariables.msgdesc,urlVariables.msgbody]);
}
catch (e : Error)
{
}
return urlVariables;
}
Я уже минут 10 силюсь понять, что же оно должно было делать...
−858
FUNCTION get_yesterday
RETURN DATE
AS
dd VARCHAR2 (2);
mm VARCHAR2 (2);
yy VARCHAR2 (4);
BEGIN
SELECT TO_CHAR (SYSDATE - 1, 'yyyy')
INTO yy
FROM DUAL;
END get_yesterday;
Вычисляем вчерашнюю дату на PL/SQL
+74
@Name("solr")
@AutoCreate
public class SolrClient {
@Create
public void init() {
try {
server = startRemoteSolr();
} catch (Exception e) {
log.error(e, e);
}
}
public SolrServer startRemoteSolr() throws MalformedURLException, SolrServerException {
CommonsHttpSolrServer solr = new CommonsHttpSolrServer("http://localhost:8983/solr");
solr.setRequestWriter(new BinaryRequestWriter());
return solr;
}
}
Seam. Перевод для непричастного: на старте сайта вызывается метод startRemoteSolr(). Solr - это поисковый движок. Если он не запустится, на сайте не будет работать поиск. И если на запуске Solr будет ошибка, то в лог она попадёт просто как exception + stack trace.
Что не так в коде? Очевидно, его писали люди, не задумываясь об эксплуатации, что свойственно новичкам. А ведь устранение проблем в рабочем сайте - это приоритет номер один. Сама разработка сайта, сидя в удобном кресле с кашкой кофе - где-то сильно ниже.
Так вот, что не так?
1. При выводе ошибок надо писать - что это за ошибка. В данном случае: "Запуск поисковика неудался, ПОИСК НА САЙТЕ РАБОТАТЬ НЕ БУДЕТ." И уже потом - stack trace.
2. Если некая ошибка связана с ресурсами - сетевыми, или на файловой системе, в логе надо также описывать этот ресурс. Т.е. "Не удалось запустить клиент поисковика по адресу http://localhost:8983/solr". Что бы из логов сразу было видно, что порт указан правильно или нет, хост и тд.
Но выпускникам ВМК МГУ такие вещи неведомы, они слишком крутые что бы опускаться до таких мелочей. Чайники, хуле.
+160
<?
$ux=0;
$array = file( 'logins.TXT' );
$count = count( $array );
for ( $i = 0; $i < $count; $i++ )
{
If (trim($array[$i],"\n\r")==$Text1.$Password1) {$ux=1;};}
If ($ux==0) {
header('Location: index1.html');}
If ($ux==1) {$logins=$Text1;
$formers=<<<HERE
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Перенаправление</title>
<script language="JavaScript">
var seconds=3;
remain();
function remain(){
seconds--;
document.timer.clock.value=seconds;
if(seconds>0)
{window.setTimeout('remain()',3000)}
else
{
location.replace("insystem/1.php");}
}
</script>
</head>
<body onLoad="remain()">
<p>Вы авторизированы!!! Сейчас вы будите перенаправлены в систему. Щёлкните по ссылке, если ваш браузер не поддерживает автопереадресацию.</p>
<p><a href="insystem/insystem.php">Ссылка</a></p>
<p>Через 3секунды переход произойдет автоматически.</p>
<form action="" method="get" name="timer">
Переадресация через:
<input name="clock" type="text" size=2>
секунд
</form>
<form action="insystem/1.php" method="post">
<input type="hidden"
name="logint"
value="$logins">
</form>
</body>
</html>
HERE;
echo $formers;
print $logint;}
?>
+129
Exception Myex;
int responseVal = HelperMethods.DoPost(url, postdata, "text/xml; charset=utf-8", ref xmlResponse, null, out Myex);
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(new StringReader(xmlResponse));
string StatusID = xmlDoc.ChildNodes[1].ChildNodes[0].FirstChild.Value;
if (StatusID.ToLower() != "0")
Последняя строка не может не радовать. Никогда не знаешь каким большим может быть ноль ...
−110
require "date"
#Конвертируем массив цифр в двухмерный масив для отображения
def get_numbers(numbers)
output = []
one = [["-","-","-","*","*"],["-","-","*","-","*"],["-","*","-","-","*"],["*","-","-","-","*"],["-","-","-","-","*"],["-","-","-","-","*"],["-","-","-","-","*"]]
two = [["*","*","*","*","*"],["-","-","-","-","*"],["-","-","-","-","*"],["*","*","*","*","*"],["*","-","-","-","-"],["*","-","-","-","-"],["*","*","*","*","*"]]
three = [["*","*","*","*","*"],["-","-","-","-","*"],["-","-","-","-","*"],["*","*","*","*","*"],["-","-","-","-","*"],["-","-","-","-","*"],["*","*","*","*","*"]]
four = [["*","-","-","-","*"],["*","-","-","-","*"],["*","-","-","-","*"],["*","*","*","*","*"],["-","-","-","-","*"],["-","-","-","-","*"],["-","-","-","-","*"]]
five = [["*","*","*","*","*"],["*","-","-","-","-"],["*","-","-","-","-"],["*","*","*","*","*"],["-","-","-","-","*"],["-","-","-","-","*"],["*","*","*","*","*"]]
six = [["*","*","*","*","*"],["*","-","-","-","-"],["*","-","-","-","-"],["*","*","*","*","*"],["*","-","-","-","*"],["*","-","-","-","*"],["*","*","*","*","*"]]
seven = [["*","*","*","*","*"],["-","-","-","-","*"],["-","-","-","*","-"],["-","-","*","-","-"],["-","*","-","-","-"],["*","-","-","-","-"],["*","-","-","-","-"]]
eight = [["*","*","*","*","*"],["*","-","-","-","*"],["*","-","-","-","*"],["*","*","*","*","*"],["*","-","-","-","*"],["*","-","-","-","*"],["*","*","*","*","*"]]
nine = [["*","*","*","*","*"],["*","-","-","-","*"],["*","-","-","-","*"],["*","*","*","*","*"],["-","-","-","-","*"],["-","-","-","-","*"],["*","*","*","*","*"]]
zero = [["*","*","*","*","*"],["*","-","-","-","*"],["*","-","-","-","*"],["*","-","-","-","*"],["*","-","-","-","*"],["*","-","-","-","*"],["*","*","*","*","*"]]
seperator = [["-","-","-","-","-"],["-","*","-","*","-"],["-","-","-","-","-"],["-","-","-","-","-"],["-","-","-","-","-"],["-","*","-","*","-"],["-","-","-","-","-"]]
for i in numbers
case i
when "0"
output += [zero]
when "1"
output += [one]
when "2"
output += [two]
when "3"
output += [three]
when "4"
output += [four]
when "5"
output += [five]
when "6"
output += [six]
when "7"
output += [seven]
when "8"
output += [eight]
when "9"
output += [nine]
when ":"
output += [seperator]
end
end
return output
end
#Получаем массив с текущим временем
def get_time
t = Time.new
if t.hour.between?(0,9)
hour = "0" + t.hour.to_s
else
hour = t.hour.to_s
end
if t.min.between?(0,9)
min = "0" + t.min.to_s
else
min = t.min.to_s
end
if t.sec.between?(0,9)
sec = "0" + t.sec.to_s
else
sec = t.sec.to_s
end
time = [hour[0],hour[1],":",min[0],min[1],":",sec[0],sec[1]]
end
#Рисуем с заменой символов на в
def display_time(symbols = {:star => "0", :line => " "})
color_taf = 0
color_tab = 7
loop do
#Для очитки экрана в UNIX
if RUBY_PLATFORM == "i386-mingw32" then
system("cls")
else
system("tput reset")
end
#Цвет и фон
#system("tput setaf #{color_taf}")
#system("tput setab #{color_tab}")
m = get_numbers(get_time)
#Посимвольная прорисовка
for j in 0..6
for i in 0..m.size-1
for z in m[i][j]
case z
when "*"
print symbols[:star]
when "-"
print symbols[:line]
#sleep(0.01) Для просмотра прорисовки
end
end
print " "
end
print "\n"
end
sleep(1)
end
end
#Рисуем
display_time :star => "0", :line => " "
Фух... урезал до 100 строк :)
+155
if(file_exists("templates/".$config->design."/amxbans.css")) {
$smarty->assign("design",$config->design);
}
Ненавижу женскую логику.