- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
BOOL classDescendsFromClass(Class classA, Class classB)
{
while(classA)
{
if(classA == classB) return YES;
classA = class_getSuperclass(classA);
}
return NO;
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−408
BOOL classDescendsFromClass(Class classA, Class classB)
{
while(classA)
{
if(classA == classB) return YES;
classA = class_getSuperclass(classA);
}
return NO;
}
Why not just use isSubclassOfClass: ?
−407
//
// @property (nonatomic, strong) NSString *name; @property (nonatomic, strong) NSString *name;.m
// Govnocode
//
// Created by Khrishna on 28/03/14.
// Copyright (c) 2014 Khrishna Ravi. All rights reserved.
//
#import "@property (nonatomic, strong) NSString *name; @property (nonatomic, strong) NSString *name;.h"
@implementation _property__nonatomic__strong__NSString__name___property__nonatomic__strong__NSString__name_
@end
Безжалостные русские индусы
−336
- (BOOL)isTabBarHidden
{
return (self.tabBar.alpha < 0.01);
}
Встретил такое в своем проекте...
−268
NSMutableArray * constraints_to_remove = [ @[] mutableCopy] ;
Мсье знает толк!
−184
- (Pt) menuItemPos: (int) i colRef: (int *) colr
{
int rowBeg [6] = { 1, 8, 15, 22, 28, 100 };
float rowNum [6] = { 7, 7, 7, 6.0, 5.0 };// { 7.03, 6.72, 7, 5.65, 4.43 };
int col = -5;
int row = -5;
for(int j = 1; j < 6; ++j)
if(i < rowBeg[j] && i >= rowBeg[j - 1])
{
row = j - 1;
col = i - rowBeg[row];
*colr = col;
break;
}
float S = _large ? 80 : 30;
float W = _large ? 1474/2 : 320;
float w = W - 2 * S;
float dx = w / (rowNum[row] - 1);
// float scX = _large ? 2.1 : 1.0;
float scY = _large ? 2.0 : 1.0;
float aX = _large ? 18 : 0;
return ccp( (S + col * dx) + aX, (210 - row * 56.0) * scY);
}
Хардкодинг 90 уровня. Все константы подобраны вручную, с заботой и любовью.
−131
[self
performSelectorOnMainThread: @selector(_blockCaller:)
withObject: ^{
[self _reportAchievement:achievement listener:listener];
}
waitUntilDone: YES
];
<...>
- (void) _blockCaller:(void(^)())blockHandler {
blockHandler();
}
GCD не в моде.
−104
-(BOOL) wasChanged
{
BOOL a,b,c,d,e,f;
if (dueDate == nil) {
a = (_task.dueDate == nil?YES:NO);
}
else
a = [dueDate isEqualToDate:_task.dueDate];
if (reminderTime == nil) {
b = (_task.reminderTime == nil?YES:NO);
}
else
b = [reminderTime isEqualToDate:_task.reminderTime];
c = (importance == _task.importance?YES:NO);
d = (reccurentType == _task.reccurentType?YES:NO);
e = [list isEqualToString:_task.parentID];
f = [body isEqualToString:_task.body];
if (a && b && c && d && e && f) {
return NO ;
}
return YES;
}
Вот такая радость в проекте..
−87
while ([self string:[commentText copy] containsString:@"<br>"]) {
commentText = [commentText stringByReplacingOccurrencesOfString:@"<br>" withString:@"/n"];
}
No comments :)
−95
[dic setObject:[NSNumber numberWithInt:TWITTER] forKey:@"source"];
Как можно простые вещи сделать сложными.
Эквивалентно: dict[@"source"] = @(TWITTER);
−104
return (loginLength * passwordLength) > 0 ? YES:NO;
А вдруг?