Вы здесь

3.4 Вопросы программисту и обсуждение задачи

14 сообщений / 0 новое
Последнее сообщение
Аватар пользователя Маргарита
Маргарита
Лекториум
Не в сети
3.4 Вопросы программисту и обсуждение задачи
Здесь вы можете задать вопросы программисту Михаилу Коровкину, а также обсудить данное им задание.
Аватар пользователя Рейки
Рейки
Не в сети

Кодить на Джаве видимо мало кто могет ? :D

Аватар пользователя Цысарь Андрей Викторович
Цысарь Андрей В...
Не в сети

Мне больше нравится разбирать XML на основе "XML data binding", т.к. такой код легче сопровождать.

Аватар пользователя vosolman
vosolman
Не в сети

Всегда хотел выучить какой-нибудь язык программирования, но пока другие приоритеты)

Аватар пользователя Виктор
Виктор
Не в сети

Я думаю что надо начинать с малово.Сначала  паскаль ,потом выбирать свою спецализацию  

веб-разрабодчик ,системный программист и прикладной программист.А там и C++ и С#  и PHP  и т.д.Я вот например в школе уже изучил паскаль ,сеичас Cи .Я уже заканчиваю 11 класс и этим летом пойду направление бизнес-информатик -это мне поможет в освоиний многих языков.Всем советую самообразование,курсы и если возможно поступить ВВУЗ.)

 
Аватар пользователя Dronnn1349
Dronnn1349
Не в сети

Я конечно всё понимаю, но это задание по моему перебор. Здесь, что предлагается освоить джаву с нуля?
Может стоило бы написать какую-нибудь программу на тех языках которые участники курса знают?

Аватар пользователя Михаил Коровкин
Михаил Коровкин
Не в сети

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

Но отдельно хочу заметить, что в процессе работы в реальных условиях очень часто приходиться сталкиваться с новыми технологиями или языками программирования. Поэтому нужно быть всегда открытым к изучению нового. Данный код не представляет собой большой программы и для его написания достаточно поверхностных знаний. Так часто бывает - появляется задача, для ее решения необходимо что-то новое изучить (технологию или язык). Тогда сначала нужно поверхностно изучить язык/технологию, потом написать код, чтобы он скомпилировался, потом написать код, чтобы он работал правильно хоть в каких-то случаях, потом проверить все остальные случаи и написать тесты.

Аватар пользователя Stas
Stas
Не в сети

А если использовать только условие допустим если добавилась новая статья то у себя последнюю убрать а новую на первую поставить? И выводить не все статьи за сегодня а последнии 5 статей мне кажется так будет более интересней и на сайте ненужно будет увеличивать размер новостей если вышло больше статей за день. и еще вопрос почему используется так много методов ( кажется так называется )?

Аватар пользователя Molly Klug
Molly Klug
Не в сети

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>. То есть количество статей, которые будут указаны в данном документе с этой датой генерации - постоянно. Не добавится новых статей, опубликованных вчера, если только не разрешат публикацию задним числом. 

По поводу вместимости новостной ленты сайта: сайт - не коробка, влезет всё, что нужно. :)

Наличие и разнообразие методов - необходимость. Метод можно сравнить с алгоритмом. Для пришивания пуговиц мы будем использовать один алгоритм, а для сбора винограда - совершенно другой. В примере парсинга каждый метод срабатывает только при определённом условии и делает то, что мы ему указали делать.

Тут можно провести прямую аналогию с жизнью - для каждой задачи у нас есть алгоритм (пришивание пуговиц). Мы начинаем его исполнять только когда возникает потребность пришить пуговицу. Ожидаемый результат выполнения алгоритма - пришитая пуговица. При этом, обладая одним таким алгоритмом, можно пришивать не только лишь одну-единственную пуговицу, но и любые другие. Если нужно пришить пять пуговиц - то будем выполнять цикл из пяти одинаковых алгоритмов пришивания пуговиц с одним изменяющимся параметром - место, куда надо пришить пуговицу. 

Аватар пользователя Molly Klug
Molly Klug
Не в сети

Михаил, я не увидела в примере, как обрабатывается вот это: <![CDATA[ ... ]]>

Что оно делает и куда оно девается? Подозреваю, что это забота SAX парсера, он отсеивает эту информацию и подаёт на вывод только то, что внутри квадратных скобок.

Аватар пользователя Данила
Данила
Не в сети

CDATA является сигналом для парсера о том, что все, что помещено внутри  <![CDATA[          ]]> необходимо рассматривать как символьные данные, а не разметку.

Например, <![CDATA[<item>Title</item>]]> эквивалентно &lt;item&gt;Title&lt;/item&gt;

Другой пример. Последовательность &#350; интерпретируется как символ Юникода U+015E (Ş). Но если эта последовательность появится в разделе CDATA, она будет разделена на 6 символов: амперсанд, знак решетки, цифру 3, цифру 5, цифру 0 и точку с запятой.

Аватар пользователя Molly Klug
Molly Klug
Не в сети

Спасибо! :)

Аватар пользователя Настя
Настя
Не в сети

Лично я в компьютере не очень.:(

Аватар пользователя SirathSaberfire
SirathSaberfire
Не в сети

То чувство когда ты знаешь Паскаль и Си, а Java даже и не думал брать:D Стыдно мне, ой стыдно