- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
...
SomeObject o = null;
try {
o = someGetOperation();
} catch (Exception e) {}
try {
o.doSomeMethod();
...
} catch (Exception e) {}
...
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+80
...
SomeObject o = null;
try {
o = someGetOperation();
} catch (Exception e) {}
try {
o.doSomeMethod();
...
} catch (Exception e) {}
...
1. второй try/catch это просто защита от NPE, который возникнет, если не прошел первый try
2. catch-секции приведены как они есть в проекте - пустые и ловится всегда Exception
в 95% проекта (>1000 классов) используются такие конструкции
+156
foreach ($item as $prop) {
if ($prop['tag']==$this->props[0]){
$new_item['sku']=(int)$prop['value'];
} else {
if ($prop['tag'] == $this->props[1]) {
$new_item['name']=$prop['value'];
} else {
if ($prop['tag'] == $this->props[2]) {
$new_item['price']=(float)$prop['value'];
} else {
if ($prop['tag'] == $this->props[3]) {
$new_item['is_spec']=(float)$prop['value'];
} else {
if ($prop['tag'] == $this->props[4]) {
$new_item['spec_price']=(float)$prop['value'];
} else {
if ($prop['tag'] == $this->props[5]) {
$new_item['old']=(float)$prop['value'];
}
}
}
}
}
}
}
XML бессмысленный и беспощадный
+151
class A {
public function getUser() {
.....
}
public function init() {
......
}
}
class B extends A {
........
// close some parent methods from outside
public function getUser () {}
public function init () {}
}
труЪ ООП: Инкапсуляция посредством полиморфизма!
+149
<h2>Задать вопрос online</h2>
<?
if (isset ($_POST['message'])) {
$name = @ trim ($_POST['name']);
$contact = @ trim ($_POST['contact']);
$phone = @ trim ($_POST['phone']);
$message = @ trim ($_POST['message']);
if (! $name or ! $contact or ! $message) echo ('<p style="color: red">Необходимо заполнить поле e-mail</p>');
else { mail ("[email protected]",
"Новое сообщение на сайте!",
"$message \n\n E-mail: \n $contact",
"\n\n Телефон: \n $phone",
"Content-type:text/plain; charset=utf-8");
echo ('<p style="color: green">Ваше сообщение отправлено, спасибо!</p>');
$_POST['name'] = $_POST['contact'] = $_POST['phone'] = $_POST['message'] = '';
}
}
?>
<form method="POST">
<p>Ваше имя:</p>
<input name="name" value="<?=@$_POST['name'];?>"><br><br>
<p>E-mail*:</p>
<input name="contact" value="<?=@$_POST['contact'];?>"><br><br>
<p>Телефон:</p>
<input name="phone" value="<?=@$_POST['phone'];?>"><br><br>
<p>Ваше сообщение:</p>
<textarea name="message"><?=@$_POST['message'];?></textarea><br><br><br><br><br><br>
<p><input type="submit" value=" Отправить "></p>
</form>
+80
/**
* Форматирует double, c arround кол-вом знаков после запятой
* @param d double
* @param arround int
* @return String
*/
public static String formatDouble(double d, int arround) {
if (arround > 6) {
throwIllegalFormat();
}
StringBuffer sb = new StringBuffer(10);
boolean minus = d < 0;
if (minus) {
d = -d;
}
for (int i = 0; i < arround; i++) {
d *= 10;
}
long l = (long) (d + 0.000000001);
do {
char digit = (char) ('0' + (l % 10));
l = l / 10;
sb.append(digit);
if (--arround == 0) {
sb.append('.');
}
} while (l != 0 || arround >= 0);
if (minus) {
sb.append('-');
}
return sb.reverse().toString();
}
+121
if
(MatchPattern MatData Pattern:"MeshID *: *") and (
local Params = (FilterString (SubString MatData 8 -1) ":")
Params.Count == 2 and (
MatData = (TrimLeft (TrimRight Params[2]))
MID = (Params[1] as integer)
if
MID < 1 or
MID > 1000
then
InputOK = false
)
)
then (
...
)
MAXScript
Чумачечая валидация ввода информации о материале по несложному паттерну:
MeshID <Mesh material ID, a number from 1 to 1000>: <Material name>
...
Use LINQ, Luke!
+150
$duration_date = date(
'Y-m-d H:i:s',
strtotime(
date(
'Y-m-d H:i:s',
strtotime($_REQUEST['task_start_date'])) . ' + ' . $_REQUEST['task_frequency'] . ' ' . $freq_type . ''
)
);
Кто-то может это упростить ? Я уже устал
+129
private List<Ball> _balls;
private Interaction GetInteraction(Ball ball) {
foreach (var b2 in _balls.SkipWhile(b => b != ball).Skip(1)) {
/* ... */
}
}
var table = _balls.Select(GetInteraction);
Откопал в своей проге.
нужно было определить, какой шарик с кем взаимодействует раньше всего, притом если уже рассчитано взаимодействие 1 и 2 шарика (при рассчёте взаимодействий 1 и 2, 1 и 3, 1 и 4, ... и выделено самое раннее взяимодействие шарика 1), то взимодействие 2 и 1 рассчитываеть не надо. Таким образом, нужно было пройти все пары шариков так, чтоб первый встретился в списке раньше второго.
Массивы, индексы и циклы? Не, не знаем такого. Только Select, только ФП, только колдовство со SkipWhile(b => b!=ball).Skip(1).
+149
<?php
if ($update_flag == '1') {
$updat_finished_task = $db->update(
'tbl_user_task',
array(
'is_finished' => '0',
'user_task_update_datetime' => date('Y-m-d H:i:s')
),
'1=1'
);
}
?>
UPDATE
tbl_user
SET
is_finished = [is_finished],
user_task_update_datetime = [data_time]
WHERE 1 = 1
MySQL 5
+151
for($j = 0; $j < count($_REQUEST['option_question']); $j++)
{
$max_id = $db->max_field("tbl_task_option","option_question_id","1=1");
$max_id = $max_id+1;
$tbl_option_insert=array(
'task_id' => $_REQUEST['task_id'],
'subtask_id' => $subtask_id,
'option_question_id' => $max_id,
'option_question' => $_REQUEST['option_question'][$j],
'option_answer' => $_REQUEST['option_ans'][$j][0],
'option_insert_datetime' => date('Y-m-d H:i:s')
);
$task_option_id = $db->insert($tbl_option_insert,"tbl_task_option");
$i = $i + 1;
}
option_question_id INT NOT NULL AUTO_INCREMENT