<HTML><BODY><br>То есть вместо того чтобы использовать Class::XSAccessor который оптимизирован по самое не балуйся вы используете eval, тем самым:<br>1) Раздуваете working-set приложения<br>2) Теряете возможность рантаймого похачить базовый класс или сделать инъектирование к наследование, если уж вы не хотите mro::c3 с next::method пользовать и таким образом давать возможность пользовать миксины, если ОЧЕНЬ надо.<br>3) Теряете читабельность кода<br>4) Выигрываете мизерный процент на обращении к хешу.<br><br>И вы считаете это плюсом? Если вы где-то используете кодогеренацию вы что-то делаете не так.<br><br>---<br><br>Вы деретесь за сабы типа: <span class="pl-s1">ref<span class="pl-vo">${ft}</span>s</span> ? Так генерите их в базе с использованием какого-нибудь initialize метода так-же как и сейчас или заюзайте автолоад. А еще лучше посмотрите как это делает DBIx::Class.<br><br>---<br><br>Вам надо еще? Хорошо... Почему вы в коде где-то пользуете ссылку на CORE, а где-то нет? Вы в своем модуле, что defined и exists перебили? Или... Зачем это вообще? Причем в части коде есть CORE:: перед ref, в части нету...<br><br>---<br><br>Вы проверяете во время setup_row есть-ли у вас уже такой класс, только вот вы получаете имя класса и таблицу, а отдаете только имя класса... То есть я никоем образом не узнаю, что я 2й раз пытаюсь вызвать генерацию класса, и фиг с ним, если на одной и той-же таблице, а если на разных? Где там проверка на название таблицы и гроханье с большим ором, если она не такая. Где варн, если таблица та-же? Или это тренд такой "Если программист чего-то ступил, давайте ему максимально осложним поиск баги"?<br><br><br>Вы хотели ревью - вот он вам. Модуль выбросить или переписать по нормальному, а не через... кодогенерацию. Сейчас модуль безнадежен с точки зрения дальнейшего развития и использования. Его просто опасно использовать.<br><br>Fri, 16 Jan 2015 00:12:41 +0100 от PEF Secure <pef-secure@yandex.ru>:<br>
<blockquote style="border-left:1px solid #0857A6; margin:10px; padding:0 0 0 10px;">
        <div id="">
        



    









        
        


        
        
        

        

        
        

        
        

        
        



<div class="js-helper js-readmsg-msg">
        <style type="text/css"></style>
        <div>
                <base target="_self" href="https://e.mail.ru/">
                
                        <div id="style_14213635810000000615_BODY">On Friday, January 16, 2015 00:16:40 <a href="/compose?To=Warstone@list.ru">Warstone@list.ru</a> wrote:<br>
> Нет, все... Я на куче кодогенерации выпал в осадок.<br>
<br>
В ней весь смысл. Данные объекта-строки хранятся массивом, конкретные поля <br>
знают свои индексы в массиве. Первичные ключи знают свои индексы в этом <br>
массиве.<br>
-- <br>
PEF Developer<br>
-- <br>
Moscow.pm mailing list<br>
<a href="/compose?To=moscow%2dpm@pm.org">moscow-pm@pm.org</a> | <a href="http://moscow.pm.org" target="_blank">http://moscow.pm.org</a><br>
</div>
                        
                
                <base target="_self" href="https://e.mail.ru/">
        </div>

        
</div>


</div>
</blockquote>
<br></BODY></HTML>