<?xml version="1.0" encoding="UTF-8"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" >

  <channel>
    <title><![CDATA[Комментарии / Профиль codekeeper]]></title>
    <link>https://habr.com/ru/users/codekeeper/comments/</link>
    <description><![CDATA[Хабр: комментарии пользователя codekeeper]]></description>
    <language>ru</language>
    <managingEditor>editor@habr.com</managingEditor>
    <generator>habr.com</generator>
    <pubDate>Wed, 29 Apr 2026 14:40:23 GMT</pubDate>
    
    
      <image>
        <link>https://habr.com/ru/</link>
        <url>https://habrastorage.org/webt/ym/el/wk/ymelwk3zy1gawz4nkejl_-ammtc.png</url>
        <title>Хабр</title>
      </image>
    

    
      

      
        
  
    <item>
      <title>10.08.2017 05:52:16 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/334390/#comment_10353020</guid>
      <link>https://habr.com/ru/articles/334390/#comment_10353020</link>
      <description><![CDATA[А что именно вы понимаете под теримином «Утиная типизация»?]]></description>
      <pubDate>Thu, 10 Aug 2017 05:52:16 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>02.08.2017 08:38:08 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/334390/#comment_10339568</guid>
      <link>https://habr.com/ru/articles/334390/#comment_10339568</link>
      <description><![CDATA[<blockquote>Мне больше нравится как оно звучит на английском языке, лучше передает суть — boilerplate code.<br>
Да, именно такого кода, который программист обычно copy-paste-ит мы хотим избегать.<br>
</blockquote><br>
<br>
Немного смешно звучит учитывая что при создании модуля мы постоянно делаем рутинные действия, например создание модели, с ресурс моделью и коллекцией.<br>
<br>
<blockquote>Magento по-факту сама вставит вам кастомизированную зависимость в Child, если кто-то кастомизировал ее для Parent, а для Child она не переопределена. Вам для этого не нужно ничего указывать.</blockquote><br>
<br>
А это в каком случае? В случае использования Context? В случаях в preference или в случаях virtual types?<br>
<br>
<blockquote>Декларацию parent, как в Symfony мы также хотим избегать, во-первых, по причине описанной выше, а во-вторых, потому что Magento не рекомендует использовать Inheritance Based API, т.е. расширение путем наследования в целом. Мадженто для этого предоставляет достатоно других механизмов взамен. И рекомендованным путем является композиция объектов.</blockquote><br>
<br>
Ну для начала <a href="https://symfony.com/doc/current/service_container/parent_services.html">parent</a> в Symfony это не более чем механизм который позволяет избавится от дублирующего кода, так же как <a href="https://symfony.com/doc/current/form/without_class.html">динамическое создание формы минуя создание класса</a>. Ну и потом, звучит немного странно на фоне того, что при создании модуля мы все так же наследуем базовые классы(<a href="https://github.com/magento/magento2/blob/develop/app/code/Magento/Cms/Model/Page.php#L26">раз</a>, <a href="https://github.com/magento/magento2/blob/develop/app/code/Magento/Cms/Model/ResourceModel/Page.php#L26">два</a>, <a href="https://github.com/magento/magento2/blob/develop/app/code/Magento/Cms/Model/ResourceModel/Page/Collection.php#L14">три</a>, <a href="https://github.com/magento/magento2/blob/develop/app/code/Magento/Cms/Model/Block/DataProvider.php#L14">четыре</a>, <a href="https://github.com/magento/magento2/blob/develop/app/code/Magento/Cms/Block/Page.php#L15">пять</a>, <a href="https://github.com/magento/magento2/blob/develop/app/code/Magento/Cms/Helper/Page.php#L16">шесть</a>), при том что ничего плохого в наследовании нет, поскольку композиция не всегда является гибким решением.<br>
<br>
<blockquote>Но Magento — это Open Source проект, об этом была моя первая презентация, видео которой тут выложено. Поэтому если Вы видите как Вы можете что-то улучшить в коде или в документации, Вы можете поставить Pull Request, и если он соответствует нашим требованиям, то мы его обязательно приймем, а если не соответсвует, но идея покажется нам полезной — поможем доработать его до вида, чтобы влить его в мейнлайн.<br>
Это касается и автоматического отслеживания изменений и тегов @ see, которые мы пока не бекпортировали в 2.1.*</blockquote><br>
<br>
Я ждал несто подобное) Увы, пока есть куча работы основной, но как только выдастся минутка обязательно внесу свой вклад. И раз пошла такая петрушка, куда я могу оформить баг, при котором админка мадженты уходит в цыклический редирект?]]></description>
      <pubDate>Wed, 02 Aug 2017 08:38:08 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>31.07.2017 17:16:43 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/334390/#comment_10337268</guid>
      <link>https://habr.com/ru/articles/334390/#comment_10337268</link>
      <description><![CDATA[<blockquote>мы сделали auto-injection в DI, в отличие от Symfony опять же, чтобы избавить программиста от написания шаблонного кода.<br>
</blockquote><br>
<br>
Интересно, шаблонный код это явно указание зависимости, например,<a href="https://github.com/orocommerce/orocommerce/blob/master/src/Oro/Bundle/PaymentBundle/Resources/config/services.yml#L6"> в yml</a>? <br>
<br>
<blockquote>И чтобы он конфигурировал, только то, что ему нужно конфигурировать. А не все зависимости класса. </blockquote><br>
<br>
В симфони для этого существует <a href="https://symfony.com/doc/current/service_container/parent_services.html">parent</a>, который избавляет от внедрения всех зависимостей, а так же повторного вызова методов необходимых для создания класса.<br>
<br>
<blockquote>когда пишешь код в режиме Develop (а именно в этом режиме обычно пишут код программисты) нет надобности перегенеривать после любых изменений все код-генерированные сущности.<br>
<br>
Достатчоно удалить, только нужные файлы, которые были изменены. И система пересоздаст только их. Не нужно удалять всю папку 'generated' при этом. Это не должно занять много времени.<br>
<br>
Вероятно сейчас после каждых изменений Вы запускаете DI компиляцию всего. Этого делать не нужно</blockquote><br>
<br>
Хорошо, допустим. Почему тогда это нигде не отражено в офф документации? Почему об этом нигде не написанно в той же офф документации? И почему бы не реализовать механизм автоматического отслеживания измененых файлов что бы перегенерировать только измененные код-герерированые сущности? Или как с методами <a href="https://github.com/magento/magento2/blob/2.1/lib/internal/Magento/Framework/Model/AbstractModel.php#L627">save и load</a> в модели. @deprecated есть, а <a href="https://habrahabr.ru/users/see/" class="user_link">see</a> нет. И ищи информацию по форумам))) Хорошо что хоть описание в последнюю версию добавили.]]></description>
      <pubDate>Mon, 31 Jul 2017 17:16:43 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>31.07.2017 16:55:28 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/334390/#comment_10337244</guid>
      <link>https://habr.com/ru/articles/334390/#comment_10337244</link>
      <description><![CDATA[<blockquote>3. Не совсем понятен вопрос. Тоесть таки нарушаем но чуть чуть? Это как? Вы проде бы и согласны что построение зависимости на основе реализации, а не на основе абстракций это нарушение принципа OCP, но вроде бы и не согласны. Более того я говорю о том что иногда мы можем отходить от следования данного принципа, но все таки это будет отхождение а не «вопиющее» или не «вопиющие» нарушение. Вопрос в том оправдано ли оно. Если мы знаем что мы никогда не будем менять зависимость, то возможно нам и не нужно создавать зависимость на абстракции. Но в случае Magento 2, когда нам предоставлен механизм указания нужной реализации, я считаю, что все таки стоит избегать таких случаев. Где вычитал — Agile Principles, Patterns, and Practices in C# By Martin C. Robert, Martin Micah (http://druss.co/wp-content/uploads/2013/10/Agile-Principles-Patterns-and-Practices-in-C.pdf). </blockquote><br>
<br>
Да в принципе в другой ветке был дан ответ <a href="https://habrahabr.ru/post/334390/#comment_10337172">на вопрос по поводу нарушения solid</a>. Magento2 представляет механизм несовсем указания. Посути это просто механизм подмены интерфейса или конкретного класса, поскольку можно написать <br>
<br>
<code>preference for="Magento\Framework\Logger\Monolog" type="Coolryan\PreferenceExample\Model\Log" <br>
</code><br>
И спокойно подменить логер. <br>
<br>
В любом случае спасибо за ответ. <br>]]></description>
      <pubDate>Mon, 31 Jul 2017 16:55:28 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>31.07.2017 16:32:29 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/334390/#comment_10337202</guid>
      <link>https://habr.com/ru/articles/334390/#comment_10337202</link>
      <description><![CDATA[<blockquote>Принцип Лисков в первую очередь говорит о том, что Наследование это очень сложное отношение между объектами, которое добавляет большой coupling, и многие его используют не правильно. Большинство использует его только чтобы избавиться от дублирования кода. Но для наследования должно еще выполняться отношение is_a (является).<br>
То что докладчик выбрал механизм консольных команд представленный в Magento 2 (которые действительно расширяют Symfony\Component\Console\Command\Command) не есть проблемой. <br>
В данном примере, новая команда чистит кеш, но при этом отношение is_a по отношению к родительской команде соблюдается.</blockquote><br>
<br>
Спасибо за ответ. Пересмотрел <a href="https://github.com/symfony/console/blob/master/Command/Command.php">класс родитель</a>, да, если прочитать Ваш ответ, так и есть. <br>
<br>
<blockquote>Класс это тоже интерфейс, точней два интерфейса — один открытый, второй защищенный. Поэтому зависимость на конкретный класс, в месте, которое предполагает расширение в будущем — это плохо, так как программист, который захочет расширить базовое поведение, будет вынужден наследоваться от вашего класса. А это не правильно, так как с высокой долей вероятности вы нарушите принцип Лисков</blockquote><br>
<br>
Да, но докладчик говорит о нарушении ссылаясь на «конкретную реализации», т.е. ссылаясь на предыдущий пункт Dependency Inversion. И из-за этого складывается ощущение что он сам слабо понимает о чем говорит.]]></description>
      <pubDate>Mon, 31 Jul 2017 16:32:29 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>31.07.2017 16:23:36 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/334390/#comment_10337188</guid>
      <link>https://habr.com/ru/articles/334390/#comment_10337188</link>
      <description><![CDATA[<blockquote>Вы про код генерацию в принципе или про что-то конкретное Interceptor, Factory, Proxy? <br>
<br>
Мы используем код генерацию там, где считаем она избавит программиста от написания шаблонного кода (boilerplate code).<br>
Например, логика Factory и Proxy в шаблонном случае одинакова — поэтому мы кодгенерим классы просто когда программист указывает нужный суфикс (Factory или Proxy) добавляя его к имени сущности, которую он хочет создать.<br>
<br>
в случае интерсептеров мы также избавляем программиста от написания шаблонного кода. А меньше кода — меньше возможностей допустить ошибку.<br>
</blockquote><br>
<br>
Да именно про это. Ок, допустим. Но теперь времяна разработку увеличилось, за счет того что при добавлении новой зависимости в класс, например кастомной CollectionFactory(и кстати это не очевидно, поскольку на момент добавления зависимости класс еще не сгенерирован), нужно заново перегенирировать код. У меня на ноуте(i3, 8GB Ram, 512 SSD) на перегенерацию кода на чистой мадженте с одним катсомным модулем уходит 4 минуты! И при том, я так понимаю, про механизм отслеживания изменений и перегенерацию только необходимого никто не задумывался и реализовывать не будет?<br>
<br>
<blockquote>В Magento 2 используется концепт Service Layer, и API находятся в папках каждого модуля. На эти API мапятся Web API. Например, здесь можно почитать как API добавлялись для одного из модулей.<br>
Я не понял какая именно магия имеется в виду.</blockquote><br>
<br>
Я прошу прощения, если ввел в заблуждение. Когда я говрил сервис, я имел ввиду описание создание класса для DI Container как это наприммер сделано в symfony, <a href="https://github.com/javiereguiluz/EasyAdminBundle/blob/master/Resources/config/services.xml#L1">пример 1</a>, <a href="https://github.com/orocommerce/orocommerce/blob/master/src/Oro/Bundle/PaymentBundle/Resources/config/services.yml#L70">пример 2</a><br>]]></description>
      <pubDate>Mon, 31 Jul 2017 16:23:36 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>31.07.2017 16:08:04 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/334390/#comment_10337154</guid>
      <link>https://habr.com/ru/articles/334390/#comment_10337154</link>
      <description><![CDATA[Тут согласен. Но тогда стоит отметить, что и в M2 не все так прозрачно, за счет использования <a href="https://github.com/magento/magento2/blob/develop/app/code/Magento/Cms/Test/Unit/Block/BlockTest.php#L18">Magento\Framework\TestFramework\Unit\Helper\ObjectManage</a>r]]></description>
      <pubDate>Mon, 31 Jul 2017 16:08:04 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>31.07.2017 15:32:48 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/334390/#comment_10337100</guid>
      <link>https://habr.com/ru/articles/334390/#comment_10337100</link>
      <description><![CDATA[Пользуясь случаем. раз мне ответил сам Magento 2 Architect(если верить описанию), хочу задать пару вопросов.<br>
<br>
Почему в magento2 была выбрана стратегия кодогенерации? <br>
Почему в magento2 не сделали явное описание создания сервисов, как например в symfony? Зачем нужна эта магия?]]></description>
      <pubDate>Mon, 31 Jul 2017 15:32:48 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>31.07.2017 15:28:14 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/334390/#comment_10337092</guid>
      <link>https://habr.com/ru/articles/334390/#comment_10337092</link>
      <description><![CDATA[Вопрос не в том сложно их было назвать unit или нет. Вопрос в том, что докладчик утверждает что unit тесты отстутствуют в M1(наверное потому что не шли с под коробки), а это как минимум не совсем корректно. Опять же наскидку про unit tests упоминается на <a href="http://inchoo.net/magento/magento-unit-testing/">Inchoo</a> и на <a href="https://www.atwix.com/magento/php-unit-testing/">Atwix</a> <br>
<br>
<blockquote>Обратите еще внимание, что класс Mage был объявлен как final<br>
https://github.com/engineyard/magento-ce-1.9/blob/master/app/Mage.php</blockquote><br>
<br>
Ну если сильно извратится то можно <a href="https://stackoverflow.com/questions/32213542/php-mocking-final-class">мокнуть и финальный класс </a>, но изврат еще тот, так что согласен.]]></description>
      <pubDate>Mon, 31 Jul 2017 15:28:14 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>31.07.2017 13:54:10 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/334390/#comment_10336922</guid>
      <link>https://habr.com/ru/articles/334390/#comment_10336922</link>
      <description><![CDATA[Про прмер принципа Лисков https://youtu.be/FquSm_LOmS4?t=1041<br>
<br>
Чисто ради интереса, понимает ли докладчик, что показывает прмер использования <a href="http://symfony.com/doc/current/components/console.html">Symfony Console Component</a> и почему он считает что именно это пример <a href="https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%B8%D0%BD%D1%86%D0%B8%D0%BF_%D0%BF%D0%BE%D0%B4%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B8_%D0%91%D0%B0%D1%80%D0%B1%D0%B0%D1%80%D1%8B_%D0%9B%D0%B8%D1%81%D0%BA%D0%BE%D0%B2">принципа подстановки Барбары Лисков</a>?<br>
<br>
Про unit тестирование https://youtu.be/FquSm_LOmS4?t=1304<br>
<br>
Никто не запрещал в M1 писать юнит тесты(вот на вскидку <a href="https://magento.stackexchange.com/questions/143976/best-practice-for-unit-tests-in-magento-1-9">пример подключения</a> ), другое дело что в большинстве случаев заказчик не оплачивал тесты и их не писали. Да, DI, SOLID помогает в написание тестов, но это не одначает что из-за этого в M1 их небыло. <br>
<br>
Про нарушение принципов SOLID https://youtu.be/FquSm_LOmS4?t=1344<br>
<br>
Мне интересно где это вычитал докладчик? В какой конкретно статье или литературе? Или он только ссылается на Mаgento? Да, использовать в construct в качестве тайп хинта конкретный класс вместо интерфейса не привествуется, но и не описывается как вопиющее нарушение принципа. А если нам в конкретной реализации класса нужно будет внедрить несколько хелперов и сторонний класс которые не имеют интерфейсов? <br>
<br>]]></description>
      <pubDate>Mon, 31 Jul 2017 13:54:10 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>17.08.2016 04:39:46 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/307734/#comment_9754466</guid>
      <link>https://habr.com/ru/articles/307734/#comment_9754466</link>
      <description><![CDATA[<blockquote>Часть Битрикса теперь официально именуется Bitrix Framework</blockquote><br/>
<br/>
Ну именовать они могут как угодно, но это не означает что так и есть.<br/>
<br/>
<blockquote>Никто не запрещает не использовать админку Битрикса, не использовать никакие штатные компонента Битрикса и использовать Битрикс только в качестве фреймворка.</blockquote><br/>
<br/>
Ну во первых это не тоже самое, с тем что я приводил для примера с symfony components. Во вторых, мне страшно представить, что будет если брать их сборник низкокачественного кода и что-то на нем делать. ]]></description>
      <pubDate>Wed, 17 Aug 2016 04:39:46 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>16.08.2016 08:23:42 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/307734/#comment_9752786</guid>
      <link>https://habr.com/ru/articles/307734/#comment_9752786</link>
      <description><![CDATA[Если битрикс — фреймверк, то где я могу найти описание как я могу использовать его компоненты в других проектах(не битрикс)? Вот например в symfony это реализовано так http://symfony.com/components]]></description>
      <pubDate>Tue, 16 Aug 2016 08:23:42 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>16.08.2016 07:54:02 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/307734/#comment_9752732</guid>
      <link>https://habr.com/ru/articles/307734/#comment_9752732</link>
      <description><![CDATA[Если бы разработчики битрикса использовали нормальную архитектуру, то это бы позволило внедрить TDD который бы еще на этапе разработки исключал 85% — 95% багов и брешей безопасности. А данный костыль в виде «авто-тесты кода» не более чем «подорожник» который просто не способен качественно обработать кучи строк низкокачественного кода самого битрикса. ]]></description>
      <pubDate>Tue, 16 Aug 2016 07:54:02 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>01.08.2016 06:11:08 </title>
      <guid isPermaLink="true">https://habr.com/ru/companies/wix/articles/301644/#comment_9726440</guid>
      <link>https://habr.com/ru/companies/wix/articles/301644/#comment_9726440</link>
      <description><![CDATA[цююцУ ц чцыс j kkek. wk ]]></description>
      <pubDate>Mon, 01 Aug 2016 06:11:08 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>24.06.2016 05:21:10 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/303774/#comment_9672780</guid>
      <link>https://habr.com/ru/articles/303774/#comment_9672780</link>
      <description><![CDATA[<blockquote>Нет там связей, ни одного foreign key во всем дампе. Со связями конечно все проще, никто и не спорит.<br/>
Речь шла об одном конкретном продукте.<br/>
</blockquote><br/>
Смотрите. Вот еще один трюк как можно получить готовый sql запрос и не лезть в код движка. Включаем логирование SQL запросов, и находим нужный. Вот уже второй способ. И этот способ работает для любого продукта. <br/>
<br/>
<blockquote>Нет желания играть в телепатию, извините.</blockquote><br/>
Но как же так? Вы же так яро пытаетесь доказать, что я заблуждаюсь давая оптимистичные оценки. Это видно по данным фразам: <br/>
<br/>
<blockquote>Посмотрите, сколько у вас уйдет времени и других ресурсов.</blockquote><br/>
и <br/>
<blockquote>Вы сказали «не думаю что сильно много». Я предложил вам не гадать, а попробовать.</blockquote><br/>
<br/>
А сами оказывается не компетентны в вопросе?]]></description>
      <pubDate>Fri, 24 Jun 2016 05:21:10 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>23.06.2016 19:28:17 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/303774/#comment_9672492</guid>
      <link>https://habr.com/ru/articles/303774/#comment_9672492</link>
      <description><![CDATA[<blockquote>Видимо, вам очень нравится теоретизировать. Мне теперь тоже начинает казаться, что вы живете в стране розовых пони. Потому что EAV, и основных таблиц у вас всего 2 — iblock_element и iblock_element_property. В них, кроме товаров, могут храниться еще и новости, например. К ним сбоку приделывается catalog_price, и поверх всего этого навешивается система скидок. Чтобы понять, в каком порядке и по какому условию надо джойнить iblock_element_property с iblock_element_property, надо залезть в код.</blockquote><br/>
<br/>
Ну не Вам мне, как человеку который очень долго работает с Magento, рассказывать про EAV. Еще раз, я привел вполне конкретный пример(кстати из реальной задачи), с вполне конкретными данными. Я вижу все таблицы и связи между ними. Зачем мне лезть в код, если все связи, индексы и таблицы, а так же данные для сравнения у меня на виду? И это кстати, один из способов переноса данных. <br/>
<br/>
<blockquote>могут храниться еще и новости, например</blockquote><br/>
Как это мне мешает получить нужные мне данные по продукту?<br/>
<br/>
<blockquote>Мир шире, чем вам кажется.</blockquote><br/>
Сказал мне человек который доказывает, что что бы понять как спарсить данные с БД обязательно нужно лезть в код движка. <br/>
<br/>
P.S. Я вот кстати знаю в каком случае придется лезть в код. Интересно догадаетесь ли Вы, что это за место и что делать если нет доступа к данной логике. ]]></description>
      <pubDate>Thu, 23 Jun 2016 19:28:17 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>23.06.2016 18:02:04 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/303774/#comment_9672378</guid>
      <link>https://habr.com/ru/articles/303774/#comment_9672378</link>
      <description><![CDATA[Я не буду отвечать на всю простыню. Надоело писать одно и тоже. <br/>
<br/>
<blockquote>Нисколько, речь не об этом. Вы сказали «не думаю что сильно много». Я предложил вам не гадать, а попробовать. Также вы сказали, что «Перенести данные» и «Разрабатывать на битриксе» немного разные понятия. Это не так, и чтобы разобраться, как правильно перенести данные, вам надо разобраться в логике работы битрикса, то есть какое-то время с ним поработать. Это не означает, что надо обязательно писать новый код, но надо разобраться в старом. В общем-то, это справедливо для любой сложной системы, но весь вопрос в коэффициентах.</blockquote><br/>
<br/>
B так. Задача перенести данный с одной абстрактной системы А в другую системы Б имея только дамп базы. Возьмем пример продуктов. Допустим у продуктов должна быть цена, артикул, атрибуты, количество, картинки, и статус. И так захожу на сайт и беру первый попавшийся продукт, нахожу его по артикулу, смотрю связи таблицы нахожу остальные данные, пишу SQL запрос который вытащит все необходимое мне поля, и допустим запишу в csv файл для дальнейшего импорта. Теперь внимание вопрос. Зачем нужно лезть в код?]]></description>
      <pubDate>Thu, 23 Jun 2016 18:02:04 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>23.06.2016 16:50:39 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/303774/#comment_9672296</guid>
      <link>https://habr.com/ru/articles/303774/#comment_9672296</link>
      <description><![CDATA[<blockquote>Вы собеседовали джуниоров?</blockquote><br/>
Да<br/>
<br/>
<blockquote>Эхх, и так всегда. Диалог начинается с одного, а заканчивается отнекиванием.<br/>
<blockquote>Достаточно просто не работать с такими заказчиками, которые за разработчиков решают на чем строить систему</blockquote><br/>
Ну да ладно, это частое явление на хабре )</blockquote><br/>
<br/>
Не работать с некоторыми заказчиками === ставить им условия? Прям так радикально? Ну ок, пусть будет так. <br/>
<br/>
<blockquote>Видимо написать «Ответ на этот вопрос я написал ранее» вам проще, чем «Да» или «Нет» ) Чтож, вам счастливого дня. На этом наш диалог можно заканчивать.</blockquote><br/>
Видимо Вы осознал что больше нечем поживиться и решили ретироваться. Правильное решени. И Вам хорошего дня. ]]></description>
      <pubDate>Thu, 23 Jun 2016 16:50:39 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>23.06.2016 16:39:55 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/303774/#comment_9672274</guid>
      <link>https://habr.com/ru/articles/303774/#comment_9672274</link>
      <description><![CDATA[<blockquote>Вы были одним из тех людей, кто занимался наймом сотрудников?</blockquote><br/>
Не просто занимался, а еще и собеседовал. <br/>
<br/>
<blockquote>Ну судя по вашим ответам, нужно поставить условие заказчику и отказаться от него, если он с этими условиями не соглашается. Разве нет?</blockquote><br/>
Нужно меньше строить всяких домыслов. Я лишь описал вариант общения. И опять же, поскольку я общаюсь с троллем, напоминаю, что я предложил вариант решения как уйти от работы с битриксом, не более. А потом уже мне тут начали рассказывать свой неудачный опыт поиска работ и рабскую жизнь, доказывая что так везде и вся.<br/>
<br/>
<blockquote>Тобишь вы возьметесь за такую работу?</blockquote><br/>
Ответ на этот вопрос я написал ранее. ]]></description>
      <pubDate>Thu, 23 Jun 2016 16:39:55 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

  
    <item>
      <title>23.06.2016 16:34:42 </title>
      <guid isPermaLink="true">https://habr.com/ru/articles/303774/#comment_9672268</guid>
      <link>https://habr.com/ru/articles/303774/#comment_9672268</link>
      <description><![CDATA[<blockquote>Человек правильно вам говорит. Если вы с этим не сталкивались, это не значит, что этого нет.</blockquote><br/>
<br/>
Нет чего?<br/>
<br/>
<blockquote>Ок, часть джуниоров попала к этой части работодателей. Что делать остальным? А еще, представьте себе, бывает так, что нет денег на переезд в другой город. Как их заработать? Правильно, выполняя такую работу, которую готовы доверить джуниору без опыта.</blockquote><br/>
Я привел пример как можно переехат в другой город работая на фрилансе. Не могу понять, что мешает остальным повышать скилл и продолжать мониторить крупные компании? Ну и пусть выполняет. Я не могу понять где опровержение сказанного мной.<br/>
<br/>
<blockquote>Вот вы и признались, что у вас нет опыта в поиске работы. Вы искали работу всего 2 недели, а в следующий раз вы были уже не джуниор.</blockquote><br/>
И что? 2 недели не поиск? Или всю жизнь быть джуном и постоянно нужно искать работу и выполнять самые каловые поручения за еду? Хотя если так, то да. Все будет печально и будут рассказы про «реалии рынка» и «пони»<br/>
<br/>
<blockquote>а в следующий раз вы были уже не джуниор.</blockquote><br/>
Можно три года проработать с ZF/Symfony, а потом взяться за мадженту и первое время не понимать как сделать ту или иную задачу, которая на фреймверке давалась легко. И стать джуниорам при работе с маджентой. Случаи не единичный.<br/>
<br/>
<img src="http://habr.habrastorage.org/comment_images/0dd/f66/6c2/0ddf666c26d888123344e5d8992384eb.jpg"/> <br/>
<br/>
<blockquote>Поставьте себе демо-версию битрикса и попробуйте вынести все сущности, связанные с товарами, в отдельные таблицы. С сохранением ценообразования и прочими необходимыми финтифлюшками. Посмотрите, сколько у вас уйдет времени и других ресурсов.</blockquote><br/>
<br/>
Опять абстрактная постановка задачи. От трех дней. А сколько по вашему? Мне интересно послушать. А какими инструментами пользовались при переносе данных из одной базы в другую? А с какими трудностями предстоит столкнуться? Мне интересно послушать про ваш опыт переноса данных. ]]></description>
      <pubDate>Thu, 23 Jun 2016 16:34:42 GMT</pubDate>
      <dc:creator><![CDATA[]]></dc:creator>
    </item>
  

      

      

    
  </channel>
</rss>
