Здесь вы можете задать вопросы программисту Михаилу Коровкину, а также обсудить данное им задание.
Вы здесь
3.4 Вопросы программисту и обсуждение задачи
13 апреля, 2015 - 11:53
#1
3.4 Вопросы программисту и обсуждение задачи
Кодить на Джаве видимо мало кто могет ? :D
Мне больше нравится разбирать XML на основе "XML data binding", т.к. такой код легче сопровождать.
Всегда хотел выучить какой-нибудь язык программирования, но пока другие приоритеты)
Я думаю что надо начинать с малово.Сначала паскаль ,потом выбирать свою спецализацию
веб-разрабодчик ,системный программист и прикладной программист.А там и C++ и С# и PHP и т.д.Я вот например в школе уже изучил паскаль ,сеичас Cи .Я уже заканчиваю 11 класс и этим летом пойду направление бизнес-информатик -это мне поможет в освоиний многих языков.Всем советую самообразование,курсы и если возможно поступить ВВУЗ.)
Я конечно всё понимаю, но это задание по моему перебор. Здесь, что предлагается освоить джаву с нуля?
Может стоило бы написать какую-нибудь программу на тех языках которые участники курса знают?
Dronnn1349, к сожалению, я сейчас смутно представляю, какие языки программирования знают школьники и уж тем более было сложно представить, какими знаниями владеет аудитория. Предлагалось написать на том, на чем можете, необязательно на джаве.
Но отдельно хочу заметить, что в процессе работы в реальных условиях очень часто приходиться сталкиваться с новыми технологиями или языками программирования. Поэтому нужно быть всегда открытым к изучению нового. Данный код не представляет собой большой программы и для его написания достаточно поверхностных знаний. Так часто бывает - появляется задача, для ее решения необходимо что-то новое изучить (технологию или язык). Тогда сначала нужно поверхностно изучить язык/технологию, потом написать код, чтобы он скомпилировался, потом написать код, чтобы он работал правильно хоть в каких-то случаях, потом проверить все остальные случаи и написать тесты.
А если использовать только условие допустим если добавилась новая статья то у себя последнюю убрать а новую на первую поставить? И выводить не все статьи за сегодня а последнии 5 статей мне кажется так будет более интересней и на сайте ненужно будет увеличивать размер новостей если вышло больше статей за день. и еще вопрос почему используется так много методов ( кажется так называется )?
Stas, открыла сей XML документ, почитала. Конечно, нельзя мои слова брать за 100% истину, Михаил Коровкин может ответить лучше.
Итак, файл, видимо, генерируется несколько раз в сутки, дата и время генерации XML документа указаны в теге
<channel> <pubDate> Thu, 23 Apr 2015 20:10:34 GMT </pubDate> </channel>.
В документ попадает выборка статей, опубликованных за время от Mon, 22 Apr 2015 20:10:34 GMT до Thu, 23 Apr 2015 20:10:34 GMT. У самих статей такая дата указана в теге <item> <pubDate>...</pubDate> </item>. То есть количество статей, которые будут указаны в данном документе с этой датой генерации - постоянно. Не добавится новых статей, опубликованных вчера, если только не разрешат публикацию задним числом.
По поводу вместимости новостной ленты сайта: сайт - не коробка, влезет всё, что нужно. :)
Наличие и разнообразие методов - необходимость. Метод можно сравнить с алгоритмом. Для пришивания пуговиц мы будем использовать один алгоритм, а для сбора винограда - совершенно другой. В примере парсинга каждый метод срабатывает только при определённом условии и делает то, что мы ему указали делать.
Тут можно провести прямую аналогию с жизнью - для каждой задачи у нас есть алгоритм (пришивание пуговиц). Мы начинаем его исполнять только когда возникает потребность пришить пуговицу. Ожидаемый результат выполнения алгоритма - пришитая пуговица. При этом, обладая одним таким алгоритмом, можно пришивать не только лишь одну-единственную пуговицу, но и любые другие. Если нужно пришить пять пуговиц - то будем выполнять цикл из пяти одинаковых алгоритмов пришивания пуговиц с одним изменяющимся параметром - место, куда надо пришить пуговицу.
Михаил, я не увидела в примере, как обрабатывается вот это: <![CDATA[ ... ]]>
Что оно делает и куда оно девается? Подозреваю, что это забота SAX парсера, он отсеивает эту информацию и подаёт на вывод только то, что внутри квадратных скобок.
CDATA является сигналом для парсера о том, что все, что помещено внутри <![CDATA[ ]]> необходимо рассматривать как символьные данные, а не разметку.
Например, <![CDATA[<item>Title</item>]]> эквивалентно <item>Title</item>
Другой пример. Последовательность Ş интерпретируется как символ Юникода U+015E (Ş). Но если эта последовательность появится в разделе CDATA, она будет разделена на 6 символов: амперсанд, знак решетки, цифру 3, цифру 5, цифру 0 и точку с запятой.
Спасибо! :)
Лично я в компьютере не очень.:(
То чувство когда ты знаешь Паскаль и Си, а Java даже и не думал брать:D Стыдно мне, ой стыдно