- 1
- 2
- 3
- 4
- 5
- 6
Говно в женской логике. Ну и в Билайне.
фото http://uploads.ru/AxqkZ.jpg
подпись "Немного о рекурсии: завершен тренинг тренеров «Билайн». Я четвёртая слева" .....
Внимание барабанная дробь..... продолжение предложения "в синем"
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+143
Говно в женской логике. Ну и в Билайне.
фото http://uploads.ru/AxqkZ.jpg
подпись "Немного о рекурсии: завершен тренинг тренеров «Билайн». Я четвёртая слева" .....
Внимание барабанная дробь..... продолжение предложения "в синем"
+110
private string _guin = Convert.ToString(Convert.ToString(Convert.ToString((string)Guid.NewGuid().ToString()).ToString() as string).ToString() as string).ToString() as string;
+133
try
{
DirectoryInfo dir = new DirectoryInfo(Path.GetDirectoryName(filePath));
if (!dir.Exists)
{
dir.Create();
}
}
catch (IOException ex)
{
throw ex;
}
catch (Exception ex)
{
throw ex;
}
catch
{
throw new Exception("Системная ошибка при создании директории");
}
−123
function GetRaz()
Open "C:NeWFiles.txt" For Output As #1
Print #1, "0"
Close
Shell "cmd /X /C set PROCESSOR_ARCHITECTURE > C:NeWFiles.txt", vbHide
1
Open "C:NeWFiles.txt" For Input As #1
Do While Not EOF(1)
Input #1, Items
Loop
Close
If Items = "" Or items = "0" Then GoTo 1
GetRaz = Replace(Items, "PROCESSOR_ARCHITECTURE=", "")
End function
"Получаем разрядность Windows"
http://vbbook.ru/1401972927/
+161
static public function dumpObj($obj)
{
ob_start();
print_r($obj);
$dump = ob_get_contents();
ob_end_clean();
return $dump;
}
Нашел в коде проекта. Для тех кто не понял: посмотрите доку функции print_r, на второй аргумент...
+68
public String getCurrentUrl() {
if (webview == null) {
throw new SelendroidException("No open web view.");
}
long end = System.currentTimeMillis() + UI_TIMEOUT;
final String[] url = new String[1];
done = false;
Runnable r = new Runnable() {
public void run() {
url[0] = webview.getUrl();
synchronized (this) {
this.notify();
}
}
};
runSynchronously(r, UI_TIMEOUT);
return url[0];
}
final String[] url = new String[1];
url[0] = webview.getUrl();
return url[0];
Вы чо? Серьёзно?
+13
#define _BEGIN_LOCK(_Kind) \
{ \
typedef int _TmpTestType; \
__if_exists(_TmpTestType::ToString) \
{ \
bool _MustReleaseLock = false; \
int _LockKind = _Kind; \
System::Runtime::CompilerServices::RuntimeHelpers::PrepareConstrainedRegions(); \
try \
} \
{ \
__if_exists(_TmpTestType::ToString) \
{ \
System::Runtime::CompilerServices::RuntimeHelpers::PrepareConstrainedRegions(); \
try { } _M_CEE_FINALLY \
{ \
_STD _Lockit::_Lockit_ctor(_LockKind); \
_MustReleaseLock = true; \
} \
} \
__if_not_exists(_TmpTestType::ToString) \
{ \
_STD _Lockit _Lock(_Kind); \
}
+143
public bool IsValidDirectoryPath(string directoryPath)
{
bool isValid = true;
if (directoryPath == "") { isValid = false; }
return isValid;
}
Nuff said.
+136
// Playground - noun: a place where people can play
import Cocoa
// Изначальный массив и ссылка на него
var originalArray: Int[] = [1, 2, 3]; // [1, 2, 3]
var extraArray = originalArray // [1, 2, 3]
// Поменяем во втором массиве элемент
extraArray[0] = 666
// Оппа изменился и в первом
extraArray // [666, 2, 3]
originalArray // [666, 2, 3] O_o
// Не делись!
extraArray.unshare()
// Теперь они живут своей жизнью
extraArray[0] = 333
extraArray // [333, 2, 3] okay
originalArray // [666, 2, 3]
// А вот тут будет наоборот
var anotherArray = originalArray // [666, 2, 3]
// auto unshare
anotherArray.append(-1)
anotherArray.removeLast()
anotherArray[0] = 777
anotherArray // [777, 2, 3]
originalArray // [666, 2, 3]
// Словари вообще не так себя ведут, всегда копирование
var originalDictionary = [ 1: "hello", 2: "world"]
var extraDictionary = originalDictionary
extraDictionary[1] = "no way"
originalDictionary // [ 1: "hello", 2: "world"]
extraDictionary // [ 1: "no way", 2: "world"]
Я восхвалял Свифт, а же его и обосру.
В Свифте есть массивы и словари. Так вот словари при присваивании или передаче как аргумента копируются. Окей. Теперь массивы. Они, оказывается, не копируются, а разделяют значения между собой! Т. е. передал массив в ф-цию, она там что-то испортила, массив испортился везде, где засветился.
Чтобы эту фигню остановить, нужно вызывать спец. функцию unshare
Но это еще не все. При некоторых операциях с массивами (потенциально меняющих их длину) unshare делается автоматически!
Предвижу классическую ошибку свифтокодеров: ожидал, что массив поменяется, а он не поменялся снаружи; или передал массив, поюзал, а он снаружи неожиданно испортился. Плюс путаница, что базовые типы ведут себя по-разному.
Оправдание Apple: мы хотели перформанс С-массивов в Свифте, поэтому сделали эту хрень.
−130
Запрос.Текст = "
|...
| И УслугиОказанные.Проведен = &Истина
|...";
Запрос.УстановитьПараметр("Истина", Истина);
Вот как бывает когда людям платят за количество строк.
Коллега нашёл в отчёте из БГУ 1.0.