Экзамен №2. Вопросы и ответы по заданиям

Экзамен №2. Вопросы и ответы по заданиям

Тема для обсуждения заданий экзамена №2. Здесь можно уточнить условия задания и правила решения. В этой теме обсуждаем только задания и правила решения!, все остальные сообщения будут модерироваться Опечатки из описания и заданий экзамена - пишите в личку.

Материалы - Описание экзамена - Задания для подготовки, материалы к ним - Тестовый билет 1 , билет 2 для оценки объема заданий на экзамене.

Чтобы успешно сдать, нужно: - Разобраться как решать задачи по темам экзамена. - Понять на практике, что обозначают все указанные правила. - Убедиться что тестовый билет решаете локально быстрее, чем отведенное время на экзамене.Подробно о правилах прохождения и подготовке на сайте

Помните, что хорошо составленный вопрос уже содержит половину ответа Если вы хотите уточнить условие - то напишите как вы его поняли и что именно требует уточнения.Если по решению - то опишите ваш вариант, тогда можно обсудить верно оно или нет.

[ex2-34] Установить значение тега meta «specialdate» в компоненте news.list

Здесь имеется ввиду использование $APPLICATION->SetPageProperty$APPLICATION->GetPageProperty

и что означает фраза"Управление значением content для разделов сайта и статичных страниц должно быть доступно администратору сайта. "

ЦитатаРуслан Стрельников написал:Добрый день!Многократно указано требование запрета "добора" запросами данных в цикле.Значит ли это, что использовать $ob->GetProperties(), $ob->GetGroups() как в конструкциях из документации link , при решении задач экзамена нельзя?

Совсем нельзя - собирать элементы и разделы по однотипному фильтру внутри цикла, тут сразу не сдал.

GetProperties в цикле не будет ошибкой. Хотя альтернатива GetProperties для получения свойства нескольких элементов без цикла уже есть, посмотрите типовой компонент каталога.

GetGroups - не самый лучший способ. GetElementGroups позволяет получить разделы сразу для нескольких элементов.

ЦитатаАлексей Чичканов написал:Добрый день! [ex2-34] Установить значение тега meta «specialdate» в компоненте news.listЗдесь имеется ввиду использование $APPLICATION->SetPageProperty$APPLICATION->GetPageProperty

Да, решение предполагает использование отложенными фунций.

ЦитатаАлексей Чичканов написал:и что означает фраза"Управление значением content для разделов сайта и статичных страниц должно быть доступно администратору сайта. " ЦитатаРуслан Стрельников написал:[ex2-60] Добавить постраничную навигацию в созданный простой компонентНавигация должна считать количества типов элементов или всего элементов (включаю дубли в разных разделах) на странице?т.е. Считать ли повторяющиеся элементы как один? ЦитатаРуслан Стрельников написал:В заданиях с простыми компонентами нужно обеспечивать работу с обоими версиями инфоблоков? Если достаточно работы только с первой версией инфоблоков, то делать ли проверку на версию? ЦитатаРуслан Стрельников написал:В задание с выводом максимумов и минимумов допускается ли вычислять минимумы и максимумы средствами php из значений ограниченных действиями фильтров и постраничной навигации? ЦитатаРуслан Стрельников написал:1. где хранить и как подключать 'лэнговые' файлы относящиеся к /local/php_interface/init.php, /local/php_interface/include/?

Сейчас нет четкого правила при оценке экзамена, возможно стоит сделать.

ЦитатаРуслан Стрельников написал:2. допускается ли 'магические переменные' хранить в виде define('ICBLOCK_NEWS_ID', 2); для /local/php_interface/*/* в файле /local/php_interface/constsns.php (или в /local/php_interface/*/constsns.php ). Для ..//*/* в ..//constsns.php

В описании есть же правило на это тему. В компоненте зачем вам константы выносить в специальный файл? Во первых , кто их там искать будет, храните одном месте для всего проекта. Во вторых зачем в компоненте вообще константы если есть входные параметры.

ЦитатаРуслан Стрельников написал:3. 'лэнговых' фраз довольно много. Допускается ли создание элементов массивов только для русского языка? ЦитатаРуслан Стрельников написал:4. для входных данных из arParams достаточно ли проверки на существование значений и правильности типа или нужно отдельно запросами проверять существование инфоблоков, кодов свойств?

Неделю назад отстрелялся, сегодня получил результаты. По ощущениям казалось, что сделано 4 из 5-и, но оказалось 2 из 5-и. Два задания слил из-за невнимательности (в одном задании не убрал условие, установленное при отладке, во втором - название константы совпало с системной), одно - недоучил.

По ощущениям, экзамен стал более сбалансированным по сравнению с первой версией. Скорость работы терминала была достаточно комфортной, заметных задержек не было. Времени хватило с небольшим запасом минут в 15 и еще 15 минут я потерял на подключении.

Что могу порекомендовать в плане подготовки:- прорешать все задачи дважды с интервалом в 3-7 дней, записывая время в таблицу. Также пишем, на чем споткнулись. Условно задачи можно разделить на "большие" и "маленькие". На первые должно уходить не более часа, на вторые - до 30 мин. Суммарно, как и говорилось - не более 3-х часов локально. Сложные моменты, на которых были затыки - смотрим, отрабатываем до автоматизма. Например, как в школе, пишем прописи $this->__component->SetResultCacheKeys(array('')); - это здорово экономит время- за день перед экзаменом прорешать 4-5 самых проблемных задач в тестовой среде. Важно именно так, через неделю придется снова вспоминать, как подключается NoMashine

На самом экзамене нужно после решения задачи проверить ее дважды. Первый раз - сразу, второй- через некоторое время, свежим взглядом. Это поможет снизить количество ошибок из-за невнимательности.

Считаю, что опыт был полезный. Скорее всего, позже сделаю второй заход с учетом полученных замечаний и опыта.

📎📎📎📎📎📎📎📎📎📎