- 1
- 2
- 3
- 4
public class clsActMarriage
{
...
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+5
public class clsActMarriage
{
...
}
Трудности перевода из серии "Ясные печеньки".
Как вам название сущности? Буквально "Акт женитьбы".
Оглянулся на 300+ строк вокруг и понял что это на самом деле "Акт брака" в контексте товара.
Класс занимается созданием и наполнением документа о наличии брака по утвержденной форме.
Ну кто так называет? Откуда это: лень, глупость или неграмотность? Как это пропустили на ревью?
Почему не "FlawReport" не "DefectBulletin" или
на худой конец "DocumentOfUnquality" если по инглишу в школе неуд был.
Кто-то в прошлом сэкономил 1 минуту, а в настоящем это обернулось потерей 20 минут на раскуривание.
Плохие имена переменных которые нельзя изменить - боль кровавого энтерпрайза.
Ух, пичот! (╯°□°)╯︵┻━┻
0
for (const auto& item : items)
{
if (!item.isValid())
continue;
else
{
// 200 строк кода
}
}
Что делать с такими колегами?
+1
public class Uptime {
private short minute;
private byte hour;
private short day;
private short month;
private short year;
public Uptime() {
ScheduledExecutorService executorService = Executors.newSingleThreadScheduledExecutor();
executorService.scheduleAtFixedRate(() -> {
minute++;
if(minute >= 61) {
hour++;
minute = 0;
if(hour >= 25) {
day++;
hour = 0;
if(day >= 31) {
month++;
day = 0;
if(month >= 13) {
year++;
month = 0;
}
}
}
}
}, 1, 1, TimeUnit.MINUTES);
}
public short getMinute() {
return minute;
}
public byte getHour() {
return hour;
}
public short getDay() {
return day;
}
public short getMonth() {
return month;
}
public short getYear() {
return year;
}
}
Код для получения аптайма приложения.
+1
<?php
namespace App\Http\Controllers\Admin;
use App\Command\Admin\User\Create\Command as UserCreateCommand;
use App\Command\Admin\User\Update\Command as UserUpdateCommand;
use App\Command\Admin\User\Remove\Command as UserRemoveCommand;
use App\Command\User\Auth\Verify\Command as UserVerifyCommand;
use App\Command\Admin\User\Draft\Command as UserDraftCommand;
use App\Command\CommandBus;
use App\Entity\User\User;
use App\Http\Controllers\Controller;
use App\Http\Requests\Admin\Users\CreateRequest;
use App\Http\Requests\Admin\Users\UpdateRequest;
use App\Query\Admin\User\FindUsersByDescQuery;
use App\Query\Admin\User\Role\GetUserRolesQuery;
use App\Query\Admin\User\Status\GetUserStatusesQuery;
use App\Query\QueryBus;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Http\Request;
class UsersController extends Controller
{
private $commandBus;
private $queryBus;
public function __construct(CommandBus $commandBus, QueryBus $queryBus)
{
$this->commandBus = $commandBus;
$this->queryBus = $queryBus;
}
public function index()
{
$query = $this->queryBus->query(new FindUsersByDescQuery());
$users = $query->paginate(20);
$statuses = $this->queryBus->query(new GetUserStatusesQuery());
$roles = $this->queryBus->query(new GetUserRolesQuery());
return view('admin.users.index', compact('users', 'statuses', 'roles'));
}
public function create()
{
return view('admin.users.create');
}
public function store(CreateRequest $request)
{
$this->commandBus->handle(new UserCreateCommand($request));
return redirect()->route('admin.users.index');
}
public function show(User $user)
{
return view('admin.users.show', compact('user'));
}
public function edit(User $user)
{
$roles = $this->queryBus->query(new GetUserRolesQuery());
return view('admin.users.edit', compact('user', 'roles'));
}
public function update(UpdateRequest $request, User $user)
{
$this->commandBus->handle(new UserUpdateCommand($request, $user));
return redirect()->route('admin.users.index');
}
public function destroy(User $user)
{
$this->commandBus->handle(new UserRemoveCommand($user));
return redirect()->route('admin.users.index');
}
public function verify(User $user)
{
$this->commandBus->handle(new UserVerifyCommand($user));
return redirect()->route('admin.users.show', $user);
}
public function draft(User $user)
{
$this->commandBus->handle(new UserDraftCommand($user));
return redirect()->route('admin.users.show', $user);
}
}
+3
$this->imageurl = str_replace('http' , 'https', (string)$data['imageurl']);
$this->largeimageurl = str_replace('http' , 'https', (string)$data['largeimageurl']);
0
Узнали? Согласны?
https://www.youtube.com/watch?v=0GIcP6xvW5Q
0
IT Оффтоп #19
#1: http://govnokod.ru/18142 https://govnokod.xyz/_18142
#2: http://govnokod.ru/18378 https://govnokod.xyz/_18378
#3: http://govnokod.ru/19667 https://govnokod.xyz/_19667
#4: http://govnokod.ru/21160 https://govnokod.xyz/_21160
#5: http://govnokod.ru/21772 https://govnokod.xyz/_21772
#6: http://govnokod.ru/24063 (потёр пидор сракер) https://govnokod.xyz/_24063
#7: http://govnokod.ru/24538 https://govnokod.xyz/_24538
#8: http://govnokod.ru/24815 (потёр пидор сракер) https://govnokod.xyz/_24815
#9: http://govnokod.ru/24867 https://govnokod.xyz/_24867
#10: http://govnokod.ru/25328 https://govnokod.xyz/_25328
#11: https://govnokod.xyz/_25436 http://govnokod.ru/25436 (потёр пидор сракер)
#12: https://govnokod.xyz/_25471
#13: https://govnokod.xyz/_25590 (потёр пидор сракер)
#14: https://govnokod.xyz/_25684
#15: https://govnokod.xyz/_25694
#16: https://govnokod.xyz/_25725
#17: https://govnokod.xyz/_25731
#18: https://govnokod.xyz/_25762
+1
case 1342:
{
if(!response) return true;
//ShowPlayerDialogEx(playerid,1342,DIALOG_STYLE_LIST, "Рыбалка","Начать / Закончить рыбалку\nНакопать червей\nПриготовить рыбу\nСъесть рыбу\nИнформация\nПомощь", "Выбор", "Выход");
switch(listitem)
{
case 0:
{
//if(!IsAtFishPlace(playerid)) return SendClientMessage(playerid,0x81DA99AA,"Вы должны находиться возле причала");
if(!GetPVarInt(playerid,"fish_began"))
{
if(!GetPVarInt(playerid,"fish_rod")) return SendClientMessage(playerid,0x81DA99AA,"У вас нет удочки");
if(!GetPVarInt(playerid,"fish_gear")) return SendClientMessage(playerid,0x81DA99AA,"У вас нет снастей");
if(!GetPVarInt(playerid,"fish_worms")) return SendClientMessage(playerid,0x81DA99AA,"У вас нет червей");
UpdateFish(playerid);
PlayerTextDrawShow(playerid,FishingText[playerid]);
SetPlayerAttachedObject(playerid, 0,18632,6,0.079376,0.037070,0.007706,181.482910,0.000000,0.000000,1.000000,1.000000,1.000000);
SetPVarInt(playerid,"fish_began",1);
DeletePVar(playerid,"fish_time");
DeletePVar(playerid,"fish_ready");
}
else
{
//if(ribachit[playerid] == 1) return SendClientMessage(playerid,0x81DA99AA,"В данный момент нельзя завершить рыбалку");
RemovePlayerAttachedObject(playerid,0);
DeletePVar(playerid,"fish_began");
DeletePVar(playerid,"fish_ready");
DeletePVar(playerid,"fish_time");
ClearAnimations(playerid);
PlayerTextDrawHide(playerid,FishingText[playerid]);
}
}
case 1:
{
if(!IsPlayerInRangeOfPoint(playerid, 25,1957.3359,206.6625,30.5146) && !IsPlayerInRangeOfPoint(playerid, 25,10.2461,-85.6648,3.1094) &&
!IsPlayerInRangeOfPoint(playerid, 25,-200.7619,6.3196,3.1094) && !IsPlayerInRangeOfPoint(playerid, 25,-1120.5344,-997.0002,129.2188) && !IsPlayerInRangeOfPoint(playerid, 25,-224.8588,-1363.7963,7.2658)) return SendClientMessage(playerid,0x81DA99AA,"Неудачное место для поиска");
if(random(2) == 1) ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 6.1, 0, 0, 0, 0, 0,1), SetPVarInt(playerid,"fish_worms",GetPVarInt(playerid,"fish_worms")+10), SendClientMessage(playerid,0x81DA99AA,"Вы нашли 10 червей!"), ShowPlayerDialogEx(playerid,1342,DIALOG_STYLE_LIST, "Рыбалка","Начать / Закончить рыбалку\nНакопать червей\nПриготовить рыбу\nСъесть рыбу\nПродать рыбу\nИнформация\nПомощь", "Выбор", "Выход");
else return ApplyAnimation(playerid, "BOMBER", "BOM_Plant", 6.1, 0, 0, 0, 0, 0,1), SendClientMessage(playerid,0x81DA99AA,"Вы ничего не нашли"), ShowPlayerDialogEx(playerid,1342,DIALOG_STYLE_LIST, "Рыбалка","Начать / Закончить рыбалку\nНакопать червей\nПриготовить рыбу\nСъесть рыбу\nПродать рыбу\nИнформация\nПомощь", "Выбор", "Выход");
}
case 2:
{
if(PTEMP[playerid][pFishesPach] >= 25) return SendClientMessage(playerid,0x81DA99AA,"У вас 25 / 25 пачек рыбы");
if(PTEMP[playerid][pFishes] < 20) return SendClientMessage(playerid,0x81DA99AA,"Для создания требуется 20 кг. рыбы");
PTEMP[playerid][pFishesPach]++;
PTEMP[playerid][pFishes]-=float(20);
SendMes(playerid,0x81DA99AA,"Вы приготовили рыбу. У вас %i / 25 пачек.",PTEMP[playerid][pFishesPach]);
ShowPlayerDialogEx(playerid,1342,DIALOG_STYLE_LIST, "Рыбалка","Начать / Закончить рыбалку\nНакопать червей\nПриготовить рыбу\nСъесть рыбу\nПродать рыбу\nИнформация\nПомощь", "Выбор", "Выход");
}
case 3:
{
if(PTEMP[playerid][pFishesPach] < 1) return SendClientMessage(playerid,0x81DA99AA,"Недостаточно рыбы");
PTEMP[playerid][pFishesPach]--;
PTEMP[playerid][pSatiety]=100;
SendMes(playerid,0x81DA99AA,"«Сытость» пополнена до 100. У вас %i / 25 пачек.",PTEMP[playerid][pFishesPach]);
ShowPlayerDialogEx(playerid,1342,DIALOG_STYLE_LIST, "Рыбалка","Начать / Закончить рыбалку\nНакопать червей\nПриготовить рыбу\nСъесть рыбу\nПродать рыбу\nИнформация\nПомощь", "Выбор", "Выход");
}
case 4:
{
for(new i = 1; i <= TotalBizz; i++)
{
if(PTEMP[playerid][pFishes] < 2) return SendClientMessage(playerid,0x81DA99AA,"Недостаточно рыбы");
if (PlayerToPoint(10, playerid,BizzInfo[i][bBarX], BizzInfo[i][bBarY], BizzInfo[i][bBarZ]) && BizzInfo[i][bType] == 2 && GetPlayerVirtualWorld(playerid) == BizzInfo[i][bVirtualWorld])
{
PTEMP[playerid][pCash] +=floatround(PTEMP[playerid][pFishes])*5;
if(BizzInfo[i][bProducts]+floatround(PTEMP[playerid][pFishes]) < 2000) BizzInfo[i][bProducts]+=floatround(PTEMP[playerid][pFishes]);
else BizzInfo[i][bProducts]=2000;
format(YCMDstr,sizeof(YCMDstr), "Вы продали %.1f кг. рыбы. Выручка: %i вирт",PTEMP[playerid][pFishes],floatround(PTEMP[playerid][pFishes]));
SendClientMessage(playerid,0x81DA99AA,YCMDstr);
PTEMP[playerid][pFishes] = 0;
ShowPlayerDialogEx(playerid,1342,DIALOG_STYLE_LIST, "Рыбалка","Начать / Закончить рыбалку\nНакопать червей\nПриготовить рыбу\nСъесть рыбу\nПродать рыбу\nИнформация\nПомощь", "Выбор", "Выход");
break;
}
}
}
И так ещё 2мб кода. Кому интересно глянуть полный перл - добро пожаловать на пастбин https://pastebin.com/JCyBWUVy. Язык - обрубок C для неумеющих в управление памятью, который называется Small. Сам кусок перла - часть хайлоад проекта с 1000 игроков онлайн одновременно(http://samp-rp.ru).
0
$products = $this->cart->getProducts();
foreach ($products as $product) {
$product_total = 0;
foreach ($products as $product_2) {
if ($product_2['product_id'] == $product['product_id']) {
$product_total += $product_2['quantity'];
}
}
....
}
Поечему опенкарт так странно вычисляет количество товаров в корзине? неужели нет способа изящней?
0
list($msec, $sec) = explode(chr(32), microtime()); // время запуска скрипта
$conf['headtime'] = $sec + $msec;