Отжыги от Sergei Kuchin
http://otl.sourceforge.net/
http://otl.sourceforge.net/otlv4_h.zip
ps. говорят что это - мегалиба.
четверг, января 25, 2007
Среднестатистический тест логера на PHP
require_once '../lib/paths.php';
require_once 'common.php';
require_once 'Logger.php';
class CPAHbE {
var $log;
function CPAHbE() {
$this->log = &Logger::getInstance(get_class($this));
}
function CPATb($i) {
$this->log->info("rABHO $i");
}
};
$instance = new CPAHbE();
echo "HACPATb!\n";
for ($i=0; $i < 1000; $i++) {
$instance->CPATb($i);
}
echo "BbICPATb!\n";
?>
require_once '../lib/paths.php';
require_once 'common.php';
require_once 'Logger.php';
class CPAHbE {
var $log;
function CPAHbE() {
$this->log = &Logger::getInstance(get_class($this));
}
function CPATb($i) {
$this->log->info("rABHO $i");
}
};
$instance = new CPAHbE();
echo "HACPATb!\n";
for ($i=0; $i < 1000; $i++) {
$instance->CPATb($i);
}
echo "BbICPATb!\n";
?>
вторник, января 16, 2007
И сново Java
ну понимаете ли... ну даже не важно для чего этот класс нужен...
package breakdowns;
import reports.TransactionReportRow;
import common.BaseBreakdown;
/**
* @author ЦЕНЗУРА class for selector by product of transaction
*/
public class ProductBreakdown extends BaseBreakdown {
/**
* constructor and fill products
*/
public ProductBreakdown() {
items.put("0", "All products");
items.put("1", TransactionReportRow.DOLLAR_JOIN);
items.put("2", TransactionReportRow.FREE_JOIN);
items.put("3", TransactionReportRow.SECOND_JOIN);
items.put("4", TransactionReportRow.SPOTCLUB_SUBSCRIPTION);
items.put("5", TransactionReportRow.VIP_SUBSCRIPTION);
items.put("6", TransactionReportRow.BLOCK);
items.put("7", TransactionReportRow.REFUND);
items.put("8", TransactionReportRow.NUDE_SHOW);
items.put("9", TransactionReportRow.BLOCK_DISCOUNT);
}
/** get product name via TransactionReportRow product constants */
public String getProduct() {
String res = "";
switch (getCurrent()) {
case 0: {
break;
}
case 1: {
res = TransactionReportRow.DOLLAR_JOIN;
break;
}
case 2: {
res = TransactionReportRow.FREE_JOIN;
break;
}
case 3: {
res = TransactionReportRow.SECOND_JOIN;
break;
}
case 4: {
res = TransactionReportRow.SPOTCLUB_SUBSCRIPTION;
break;
}
case 5: {
res = TransactionReportRow.VIP_SUBSCRIPTION;
break;
}
case 6: {
res = TransactionReportRow.BLOCK;
break;
}
case 7: {
res = TransactionReportRow.REFUND;
break;
}
case 8: {
res = TransactionReportRow.NUDE_SHOW;
break;
}
case 9:
res = TransactionReportRow.BLOCK_DISCOUNT;
break;
}
return res;
}
}
где items - LinkedHashMap, проще говоря "ассоциативный массив".
ну понимаете ли... ну даже не важно для чего этот класс нужен...
package breakdowns;
import reports.TransactionReportRow;
import common.BaseBreakdown;
/**
* @author ЦЕНЗУРА class for selector by product of transaction
*/
public class ProductBreakdown extends BaseBreakdown {
/**
* constructor and fill products
*/
public ProductBreakdown() {
items.put("0", "All products");
items.put("1", TransactionReportRow.DOLLAR_JOIN);
items.put("2", TransactionReportRow.FREE_JOIN);
items.put("3", TransactionReportRow.SECOND_JOIN);
items.put("4", TransactionReportRow.SPOTCLUB_SUBSCRIPTION);
items.put("5", TransactionReportRow.VIP_SUBSCRIPTION);
items.put("6", TransactionReportRow.BLOCK);
items.put("7", TransactionReportRow.REFUND);
items.put("8", TransactionReportRow.NUDE_SHOW);
items.put("9", TransactionReportRow.BLOCK_DISCOUNT);
}
/** get product name via TransactionReportRow product constants */
public String getProduct() {
String res = "";
switch (getCurrent()) {
case 0: {
break;
}
case 1: {
res = TransactionReportRow.DOLLAR_JOIN;
break;
}
case 2: {
res = TransactionReportRow.FREE_JOIN;
break;
}
case 3: {
res = TransactionReportRow.SECOND_JOIN;
break;
}
case 4: {
res = TransactionReportRow.SPOTCLUB_SUBSCRIPTION;
break;
}
case 5: {
res = TransactionReportRow.VIP_SUBSCRIPTION;
break;
}
case 6: {
res = TransactionReportRow.BLOCK;
break;
}
case 7: {
res = TransactionReportRow.REFUND;
break;
}
case 8: {
res = TransactionReportRow.NUDE_SHOW;
break;
}
case 9:
res = TransactionReportRow.BLOCK_DISCOUNT;
break;
}
return res;
}
}
где items - LinkedHashMap, проще говоря "ассоциативный массив".
вторник, января 09, 2007
Ученье - свет
В нашем славном АлтГТУ выращивают программистов по методичкам,
в одной из котрой содержатся такого рода рекомендации по написанию кода (Delphi):
procedure tsclad.put_trans(var trans:ttransistor);
// Помещает транзистор на склад
var i:integer;
begin
i:=self.Transistors_count;// определяем количество, содержащихся
// в хранилище транзисторов.
setlength(self.Transistors,i+1); // Увеличиваем на
//единицу размерность
// безразмерного массива
self.Transistors[i]:=trans;// Копируем в конец
//массива (i указывает
//на конец массива) транзистор,
// переданный в процедуру по ссылке (используется var в заголовке процедуры)
self.Transistors_count:=i+1; // увеличиваем счетчик
//количества транзисторов
trans:=nil; // присваиваем объекту-транзистору пустой адрес,
//и он перестает существовать вне хранилища
trans.free; //очистить память от объекта
end;
(C) Е.М. Патрушев, Методические указания к лабораторным и курсовым работам по курсу
«Теория и технология программирования»
для студентов специальности 190900
«Информационно-измерительная техника и технологии» Часть 2
Где ttransistor - class. Зачем так уродовать людей "на корню"?
Может я плохой знаток делфака, но
// присваиваем объекту-транзистору пустой адрес,
//и он перестает существовать вне хранилища
помоему - это уже слишком!
И почему сразу не научить людей использовать коллекции - тот же TList
В нашем славном АлтГТУ выращивают программистов по методичкам,
в одной из котрой содержатся такого рода рекомендации по написанию кода (Delphi):
procedure tsclad.put_trans(var trans:ttransistor);
// Помещает транзистор на склад
var i:integer;
begin
i:=self.Transistors_count;// определяем количество, содержащихся
// в хранилище транзисторов.
setlength(self.Transistors,i+1); // Увеличиваем на
//единицу размерность
// безразмерного массива
self.Transistors[i]:=trans;// Копируем в конец
//массива (i указывает
//на конец массива) транзистор,
// переданный в процедуру по ссылке (используется var в заголовке процедуры)
self.Transistors_count:=i+1; // увеличиваем счетчик
//количества транзисторов
trans:=nil; // присваиваем объекту-транзистору пустой адрес,
//и он перестает существовать вне хранилища
trans.free; //очистить память от объекта
end;
(C) Е.М. Патрушев, Методические указания к лабораторным и курсовым работам по курсу
«Теория и технология программирования»
для студентов специальности 190900
«Информационно-измерительная техника и технологии» Часть 2
Где ttransistor - class. Зачем так уродовать людей "на корню"?
Может я плохой знаток делфака, но
// присваиваем объекту-транзистору пустой адрес,
//и он перестает существовать вне хранилища
помоему - это уже слишком!
И почему сразу не научить людей использовать коллекции - тот же TList
Подписаться на:
Сообщения (Atom)