Смету в студию, чтобы профессионалы оценили адекватность ценников на услуги.
Честно слово – я был бы очень рад, если бы глядя в конкретные цифры знающие люди сказали, – Да. Это стоит потраченных денег.
Но пока виден лишь (временный) унылый, падающий сайт с годовым бюджетом в два миллиона рублей. ДВА МИЛЛИОНА РУБЛЕЙ за год на «временное решение»! Во что же будет ежегодно вставать ГОТОВЫЙ САЙТ? Это просто ппц.
Отмазки типа «Ой, ля, мы не знали сколько это стоит на самом деле и потому злые жадные дельцы нас оказывается кинули» не канают поскольку там же инновации, мозги, современная современность и эффективный менеджмент. Как-то стыдно лохонуться в банальном вопросе создания сайта, когда у них ТАКИЕ-ТО амбиции.
Какое, блядь, iSkolkovo на YouTube? Кто-нибудь из вас про это вообще слышал? Кто-нибудь смотрел? А ведь тут далеко не самые отдаленные от современных веяний и технологий люди сидят.
Короче КПД паровоза, а замашки того же Королёва. Достало. Можете выпилить мне карму.
1., 2.: Есть массив кода. Везде прописано (например): $tSome = new A();
Добавилась пара плагинов — B и C, но обращения везде идут к A. Надо переписывать.
Ну, используя и парся неймспейсы в моём велосипеде что угодно можно плагинизировать. Тут пытался привести простейший вариант, годный для дальнейшего затачивания под контекст.
но обращаться придется к объекту класса «C», а если товарищи по кнопкам добавят своих классов? везде переписывать?
да и :: указывает на использование статичного метода. статичный метод это неплохо. в конкретном контексте…
Абстрактный синглтон нерабочий. Совсем нерабочий. Никак нерабочий. Нерабочий начиная с обратного слеша перед get_called_class(), написанием static:: вместо self:: и заканчивая тем, что в абстрактном классе никак сделать new self() – на то он и абстрактный класс.
'cache_prefix' => Helly_UriManager::ClearUri($Config['WEB_DIR']), // Prefix for files of cache
'cache_dir' => $Config['DATA_DIR']. '/cache', // Directory for files of cache
'memcached_servers' => array( // Settings for connecting to memcached servers
array(
'host' => '*************',
'port' => *****,
'persistent'=> true
),
),
'memcached_compression' => true, // Use memcached compression
);
Честно слово – я был бы очень рад, если бы глядя в конкретные цифры знающие люди сказали, – Да. Это стоит потраченных денег.
Но пока виден лишь (временный) унылый, падающий сайт с годовым бюджетом в два миллиона рублей. ДВА МИЛЛИОНА РУБЛЕЙ за год на «временное решение»! Во что же будет ежегодно вставать ГОТОВЫЙ САЙТ? Это просто ппц.
Отмазки типа «Ой, ля, мы не знали сколько это стоит на самом деле и потому злые жадные дельцы нас оказывается кинули» не канают поскольку там же инновации, мозги, современная современность и эффективный менеджмент. Как-то стыдно лохонуться в банальном вопросе создания сайта, когда у них ТАКИЕ-ТО амбиции.
Какое, блядь, iSkolkovo на YouTube? Кто-нибудь из вас про это вообще слышал? Кто-нибудь смотрел? А ведь тут далеко не самые отдаленные от современных веяний и технологий люди сидят.
Короче КПД паровоза, а замашки того же Королёва. Достало. Можете выпилить мне карму.
Добавилась пара плагинов — B и C, но обращения везде идут к A. Надо переписывать.
3. Не гони, бро.
да и :: указывает на использование статичного метода. статичный метод это неплохо. в конкретном контексте…
Извините.
<?php
$Config = Helly_Config::GetInstance();
// Site pathes:
$Config['ROOT_DIR'] = ROOT_DIR;
$Config['WEB_DIR'] = 'http://lastproof.ru';
$Config['COOKIE_PATH'] = '.lastproof.ru';
$Config['DIRS_RIGHTS'] = 0755;
$Config['FILES_RIGHTS'] = 0644;
// Metadata:
$Config['META_TITLE'] = 'Последнее доказательство';
$Config['META_DESCRIPTION'] = 'LastProof.Ru – генератор доказательств, непредвзято доказывающий что угодно.';
$Config['META_KEYWORDS'] = 'доказательство, proof, спор, холивар, генератор доказательств, правосудие, пари, аргумент, доказательства, lastproof.ru';
// Behaviour:
$Config['SITE_DEFAULT_LANG'] = 'ru';
$Config['SITE_PRODUCTION_MODE'] = false;
$Config['SITE_SKIN'] = 'default';
$Config['SITE_CLOSED'] = false;
$Config['INVITES_ENABLED'] = false;
// Basic directory:
$Config['HELLY_DIR'] = HELLY_DIR;
$Config['APPLICATION_DIR'] = APPLICATION_DIR;
$Config['APPLICATION_WEB_DIR'] = $Config['WEB_DIR']. '/app';
$Config['DATA_DIR'] = $Config['APPLICATION_DIR']. '/data';
$Config['LANGUAGES_DIR'] = $Config['DATA_DIR']. '/langs';
$Config['MODELS_DIR'] = $Config['APPLICATION_DIR']. '/models';
//$Config['PLUGINS_DIR'] = $Config['APPLICATION_DIR']. '/plugins';
$Config['SKINS_DIR'] = $Config['APPLICATION_DIR']. '/skins';
$Config['SKINS_WEB_DIR'] = $Config['APPLICATION_WEB_DIR']. '/skins';
$Config['SKIN_DIR'] = $Config['SKINS_DIR']. '/'. $Config['SITE_SKIN'];
$Config['SKIN_WEB_DIR'] = $Config['SKINS_WEB_DIR']. '/'. $Config['SITE_SKIN'];
$Config['PUBLIC_DIR'] = $Config['ROOT_DIR']. '/public';
$Config['PUBLIC_WEB_DIR'] = $Config['WEB_DIR']. '/public';
// Config for Helly_Router:
$Config['HELLY_ROUTER'] = array (
'allowed_controllers' => array (
'home' => 'Controller_Home',
'errors' => 'Controller_Errors',
'gates' => 'Controller_Gates',
'pages' => 'Controller_Pages',
'proof' => 'Controller_Proof',
),
'default_controller'=> 'home',
'errors_controller' => 'errors',
);
// Config for Helly_Viewer:
$Config['HELLY_VIEWER'] = array
(
'compile_check' => (false === $Config['SITE_PRODUCTION_MODE']? true: false),
'caching' => false,
'samples' => array(
'content' => array('messages'),
'sidebar' => array('empty'),
),
);
// Config for Helly_Database:
$Config['HELLY_DATABASE'] = array (
'db_configs' => array (
'default' => array (
'type' => 'mysql',
'host' => '***.**.***.***',
'port' => '****',
'user' => '**********',
'pass' => '**********',
'db_name' => '**********',
'prefix' => '****',
'charset' => 'utf8'
),
'xbt' => array (
'type' => 'mysql',
'host' => '***.**.***.***',
'port' => '****',
'user' => '*******',
'pass' => '********',
'db_name' => '*******',
'prefix' => '****',
'charset' => 'cp1251'
),
),
'log_errors' => true, // Log sql errors.
'log_queries' => true, // Log all sql queries.
);
// Config for Helly_Cacher:
$Config['HELLY_CACHER'] = array (
'cache_enabled' => true, // bool
'cache_type' => 'memory', // string[files/memory]
'cache_prefix' => Helly_UriManager::ClearUri($Config['WEB_DIR']), // Prefix for files of cache
'cache_dir' => $Config['DATA_DIR']. '/cache', // Directory for files of cache
'memcached_servers' => array( // Settings for connecting to memcached servers
array(
'host' => '*************',
'port' => *****,
'persistent'=> true
),
),
'memcached_compression' => true, // Use memcached compression
);
// Sending E-mails:
$Config['HELLY_MAILER'] = array (
'type' => 'smtp', // string[php/smtp]
'email' => '*******************',
'from' => $Config['META_TITLE'],
'smtp_host' => 'smtp.yandex.ru',
'smtp_port' => 25,
'smtp_user' => '*******************',
'smtp_password' => '********',
'smtp_auth' => true,
);
// Logging:
$Config['LOGS_DIR'] = $Config['DATA_DIR']. '/logs';
$Config['LOGS_FILE'] = 'helly.log';
?>
↑ это в оригинале 143 строки
И там ниже ↓ – што-што, простите? Не понял – вы для генерации одной страницы «считываете конфиг» более одного раза?
*Одел шляпу*
– Снимаю шляпу.
*Снял шляпу*
> Данные примеры будут полезны, только при очень большом наплыве пользователей
Ну почему у него в лучшем случае конфиг читается всего в два раза быстрее, чем у меня весь сайт работает (с известными шаблонизатором и БД)?!