[WT] [Архив] [Поиск] Главная Управление
[Совместно с Ычаном]

[Назад] [Вся нить] [Последние 50 сообщений]
Ответ в нить
Имя
Animapcha image [@] [?]
Тема   ( ответ в 4601)
Сообщение flower
Файл 
Пароль  (для удаления файлов и сообщений)
Параметры   
  • Прежде чем постить, ознакомьтесь с правилами.
  • Поддерживаемые типы файлов: 7Z, BZ, BZ2, GIF, GZ, JPG, MO, MP3, OGG, PDF, PNG, PSD, RAR, SVG, SWF, TXT, XCF, ZIP
  • Максимально допустимый размер файлов: 10000 кБ.
  • Изображения, размер которых превышает 200 на 200 пикселей, будут уменьшены.
  • Ныне 1256 unique user posts. Посмотреть каталог
  • Радио:

Файл: 130574350267.jpg-(2.13KB, 37x50, tranklukator.jpg)
4601 No. 4601 watch    
Привет, автобус.
Возникла у меня такая идея - создать что-то вроде клиента для любимых тредов АИБ. Целями помимо готовой программы являются: научиться работать с сетью, файлами, БД и делать нормальный гуй. С ООП немного знаком, но, к сожалению, не с самими нужными языками. Так что попробовать написать постараюсь на VB, попутно разбираясь во всех подробностях этого дела. Здесь будет мой тред, в который я возможно буду лить апдейты по состоянию.
Текущий статус: научился доставать исходный код из веб-страницы.
Следующие шаги: научиться делать поиск по имеющемуся тексту, динамически конструировать шаблонный интерфейс.
Развернуть все изображения
>> No. 4602    
>VB
Я не навязываю своё мнение и не стараюсь загубить твой проект, но VB это фубля.
>> No. 4603    
>научился доставать исходный код из веб-страницы
Веб страница и есть "исходный код", который рендерит браузер, нэ?
>> No. 4604    
>>4602
Так как 'проект' это что-то вроде 'разведки боем', я думаю можно и VB. Стив, а что бы посоветовал ты?
>>4603
Ну да. Собственно план и есть брать этот код и искать в нем нужные куски для выстраивания базы сообщений.
>> No. 4605    
>>4604
>Стив, а что бы посоветовал ты?
Решётку.
Сеть, работа с БД (SQLite, MMSSQL, MSSQL CE), гуй (если хочешь красявости, то можно начать изучать WPF, хотя, по моему мнению к wpf следует подходить уже имея какие-то навыки), ООП.

>брать этот код и искать в нем нужные куски
Парсить html на решётке:
http://stackoverflow.com/questions/56107/
http://stackoverflow.com/questions/100358/
Можно написать свой велосипед, можно использовать регулярки.
>> No. 4606    
Уж лучше яву, кроссплатформенно будет. VB для массового софта никак не годен, на нем пишут мелкие тузлы для админства да бухам макросы. Нет, он проще всего, не спорю, но вес фреймворков и работоспособность готового софта на разных системах оставляют желать лучшего.
>> No. 4607    
>>4606
Можно и яву, если ОП хочет кроссплатформенность.
Кстати, как там у жабы с гуями? В эклипсе или нетбинсе есть нормальный конструктор?
>> No. 4608    
>>4605>>4606>>4607
Сердечно благодарю.
Тогда значит решетка, да.
>> No. 4609    
>Целями помимо готовой программы являются: научиться работать с сетью, файлами, БД и делать нормальный гуй.
Качалку для данбуры напиши с базой тегов в sqlite.
>> No. 4611    
>>4608
На питоне попроще будет написать, не слушай сишарп хуесосов.
>> No. 4619    
Обмазался http://www.amazon.com/Microsoft®-Visual-®-2010-Step/dp/0735626707 и сотнями свободного времени.
Пойдет?
>> No. 4620    
>>4619
Книгу не читал, поэтому сказать не могу.
Сам вот эту читал:
> http://www.amazon.com/C-3-0-COMPLETE-REFERENCE-3/dp/0071588418/
>> No. 4627    
Файл: 130609025273.jpg-(104.31KB, 480x700, 24180bd3247b809cf8a61a6517ec93cb.jpg)
4627
Писал когда-то нечто подобное на яве.
БД, кстати, ты как сюда умудрился притянуть?
>>4607
У жабы с гуями всё ок. Swing, во-первых, сам по себе очень простой. А во-вторых, в эклипсе есть (ну как есть, плагин отдельный качается) довольно-таки неплохой visual editor, генерирующий весьма годный читабельный код (особенно если layout правильно подобрать).
>> No. 4628    
>>4627
Пока никак. Думаю оставить на очень далеко обозримое будущее, пока что в планах
>научиться делать поиск по имеющемуся тексту
Пытаюсь переварить парсеры из >>4605, чувство, что все-таки придется делать велосипед.
Ах да, БД для того, чтобы сохранять всё это дело на манер оверчана.
>> No. 4629    
Файл: 130614435635.jpg-(149.08KB, 530x697, d2168f561d8b15400bdfe29175ce6fcc.jpg)
4629
>>4628
>Пытаюсь переварить парсеры из >>4605, чувство, что все-таки придется делать велосипед.
Не знаю как там в решетке. Но в яве обычно парой методов строится dom по html и работа идет уже с ним.
>> No. 4642    
ОП, у меня для тебя плохие новости. а разных бордах структура тредов сильно различается. Так что придется писать под каждую отдельно. Сам столкнулся с этим, когда жаба-скрипт для своей программы писал.
>> No. 4643    
>>4642
>На разных
фикс
>> No. 4648    
>>4642
Я знаю. Спасибо за ответ, кстати. Поэтому вот для анализа содержимого тредов для различных борд собираюсь писать несколько различных взаимозаменяемых методов, в зависимости от борды. Естественно, пока что буду плясать от ычана, как от достаточно медленной, голой и, главное, домашней борды.
Прогресс сейчас: программа учится выуживать текст из постов. Алгоритм на разбивку хтмл на составляющие за сегодняшний вечер готов, осталось обратить это всё в код, чем я и займусь с утреца, голова сейчас плохо варит.
>> No. 4649    
Файл: 130655778127.jpg-(106.84KB, 509x569, 9a6e1225a7413bcf7f87361c7933bd3a.jpg)
4649
>>4648
Я придумала для твоей программы уникальную фичу. Берешь тред, посты из него по очереди прогоняешь через гугл транслейт (русский-немецкий-китайский-английский-русский「сочетания можно менять」), затем тред сохраняешь в htm и постишь его. Всем весело? Профит. Главное условие - тред должен быть содержательным.
>> No. 4655    
>>4648
>Алгоритм на разбивку хтмл на составляющие
Либо я тебя не понял, либо ты не смог в сторонние библиотеки.
>> No. 4657    
Файл: 130657280198.jpg-(52.79KB, 300x300, orioribs.jpg)
4657
>>4655
Нет, я во-первых не хочу в сторонние библиотеки (10к строк кода), а во-вторых, хочу сам набрать некоторый опыт.
>> No. 4659    
>>4657
>не хочу в сторонние библиотеки (10к строк кода)
Лучше эти 10к написать самому, с багами, а потом еще самому же и поддерживать, да, особенно, если это всего лишь необходимая утилита, а не цель.
>набрать некоторый опыт
Какого именно опыта ты хочешь? Хочешь научиться хтмл, прочитай хтмлбук. Хочешь научиться в регулярки и парсинг? Но тогда ты выбрал совсем не тот язык, это гораздо приятнее делать в специально заточенных для этого языках, вроде перла.
>> No. 4661    
>>4659
Да забей уже.
>> No. 4662    
>>4659
Он учиться писать программы. Ведь так, оп?
>> No. 4670    
Сторонние библиотеки - это, конечно, хорошо. Но, во-первых, в этом случае всем, кто компилирует его (оп, ты же опенсорс проект делаешь, надеюсь?) придется ставить эти библиотеки, а во-вторых, алгоритм для разных борд все равно будет значительно отличаться, поэтому серьезного выигрыша скорее всего не будет.
Собственно, тут ничего особо умного и не нужно делать. Смотришь, какими тегами "окаймлён" пост - и все дела.
Алсо, в github или подобные системы выкладывать будешь?
>> No. 4673    
Файл: 130669274324.png-(122.93KB, 979x732, ohthis.png)
4673
Так, вот скриншот. Не переживайте насчет ужасного интерфейса, во-первых я нуб, а во-вторых пока просто отрабатываю алгоритмы.
>> No. 4674    
>iichan/d/
coolface.png
>> No. 4676    
>>4674
Нужен был тред в три-четыре поста, желательно без картинок. Так, оппост дробить я научился, следующий шаг: парсер обычных постов и превращатель ссылок в тэгах в нечто удобоваримое.
>> No. 4677    
>>4670
Если ты действительно собрался это компилировать, то библиотеки у тебя уже есть. Они обычно и без этого есть, потому что используются другим софтом.
>серьезного выигрыша скорее всего не будет
Подозреваю, что ты никогда не писал парсеров.
>> No. 4679    
>>4677
Если что, >>4670 - это не я :3
Я понимаю, что от парсеров можно получить неплохой выигрыш по скорости, но так как Вакаба достаточно просто структурирована, не вижу смысла впаивать в свой унылый быдлокод что-то стороннее.
>> No. 4683    
>>4677
Много ли пользы, когда все, что нужно - найти один-два тега?
>> No. 4684    
>>4683
Ящитаю, что нет. Сравни парсеры в 10к и 5к строк текста и мой ОП-пост-парсер на пикрелейтеде >>4673
>> No. 4690    
>>4673
А если регулярку использовать?

Тред не читал, мельком вглянул на код на скриншоте.
>> No. 4692    
>>4690
Я так понял, что он использует, или ты считаешь, что он настолько наркоман, что делает это по другому?
>> No. 4695    
>>4692
Считаю наркоманом или новичком.
Не вижу на скриншоте регулярку. Или она там есть, но просто не поместилась?
>> No. 4908    
Файл: 130926013612.jpg-(124.17KB, 1200x1200, IMAGE_489_2.jpg)
4908
Некоторое время отсутствовал. Сейчас вернулся к нубонаписанию нубокода.
>>4695
Новичок, да. Спасибо за регуляркосовет. Переписал кусок выше под них.
Из нового: теперь программа цепляет все посты из треда по маске, сует их в массив и готовит к передаче в обрабатывалку.
Следующие шаги: обработка содержимого поста.
>> No. 4909    
>>4908
>сует их в массив и
А почему не в коллекцию?
>> No. 4910    
>>4909
Потом разберусь, если надо будет - переделаю.
>> No. 4911    
>>4910
А вообще весело - пытаться что-то делать и научиться в процессе. :3 Читаю литературу, скорее всего в коллекции и полезу.
Насколько сложно реализовать динамический интерфейс (то есть генерировать блоки из простых интерфейсных элементов кнопка-поле-галки по готовому шаблону)?
>> No. 4912    
Файл: 130928130368.png-(46.21KB, 700x700, PlanetsListBox2[1].png)
4912
>>4911
>генерировать блоки из простых интерфейсных элементов кнопка-поле-галки по готовому шаблону
В WinForms это сложновато: вручную добавлять контролы (не помню, как называется тот контрол), прикручивать к каждому контролу события и всё такое. В WPF это гораздо легче (я его сам недавно начал изучать, всех тонкостей не знаю).

Например, здесь написано, как из обычного listbox'a сделать вот такую хероту, как на пикрелейте.
http://www.beacosta.com/blog/?p=40
>> No. 4926    
Регулярки внезапно сырно, модно и молодежно.
>> No. 4935    
Знакомый внезапно дал мне линкрелейтед. http://gskinner.com/RegExr/
Это божественно.
>> No. 4936    
>>4935
Я вот этим пользуюсь
http://sourceforge.net/projects/regextest/
>> No. 5136    
Восстаем из пепла.
Поняв, что основной проект я так быстро не осилю, решил немного отвлечься, занявшись маленькими сторонними.
Выделяя урывками время я накодерил две программы - Вордфильтр (проверяет и автоматом обходит вордфильтр в стенах текста) и BumpAware (сырая, но механизм я более-менее наладил - загоняешь в эту программу треды, оно создает лог для них, и смотрит, были ли бампаны какие-нибудь треды с последнего запуска).
Обе мини-программки используют механизмы из основы, так что я думаю, что со временем смогу влить их в одну.
А пришёл я вот по какому вопросу - у меня не делается NotifyIcon.ShowBalloonTip, лол.
Запускаю так:
notifyIcon1.ShowBalloonTip(10000, "Новый ответ в треде!", tiptext, ToolTipIcon.Info);
В итоге просто ничего не появляется. Я что-то делаю не так?
>> No. 5137    
>>5136
nvm, заработало
>> No. 5138    
И - возвращаясь к основе - как делать одно большое полотно с динамически конструируемыми кнопками аля скайп? Или хотя бы не как делать - а как подобное называется?
>> No. 5143    
>>5138
> динамически конструируемыми кнопками
Што?
>> No. 5144    
>>5143
Чтобы создавать по шаблону текстовое поле, вокруг него кнопки "удалить", "скрыть", "цитата". Всё это на полотно с прокруткой, чтобы можно было проматывать. Как-то так.
>> No. 5145    
>>5144
Я бы сделал отдельный контрол и добавлял бы по экземпляру его на каждое сообщение.
>> No. 5152    
Файл: 13142050954.png-(292.30KB, 1523x998, chanread.png)
5152
Если сильно покопатьяс в закромах винта. то я может накопаю исходники двух своих дельфовых форчанридеров... Первый писал как раз чтобы с концепцией разобраться, второй уже по опыту и ошибкам, с упором на интерфейс. В результате первый получился собранием костылей, а второй дальше интерфейса особо не продвинулся, хотя вроде умел работать с доброчаном, ычаном и тогдашним форчаном (это было до смены движка).

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

ЛОЛ ОНО РАБОТАЕТ ДО СИХ ПОР

Выглядела одна версия вот так, сейчс другую поищу...
>> No. 5153    
>>5138
В случае с Дельфями я просто скачал компонент, который отображает HTML3, сделал на тхт-шаблонах оформление и кастомный обработчыик кликов по ссылкам и картинкам.
>> No. 5154    
>>5153
>HTML3
Оно старше делфи, зачем?
>> No. 5156    
>>5154
Минимальные возможности оформления/разметки есть - и ладно. Была бы нужна мишура - вставил бы TWebBrowser.
>> No. 5196    
Файл: 131489846031.jpg-(173.07KB, 1280x1024, 2009-01-13-136582.jpg)
5196
Так, ребята, объясните-ка мне, зачем вообще нужен этот ваш клиент, и я напишу его качественно и со всеми плюшками.
скучающий qt-кодер-микуфаг
>> No. 5205    
Хочу написать на C#.
Недавно_начал_изучать_C#-быдло
>> No. 5214    
>>5196
Каталогизатор тредов Вакабы, только удобнее, сырнее и молодежнее, чем веб-интерфейс.
Скажем, открыл доску, пометил треды, сохранил их. Открыл программу на следующий день, увидел строчку: "Появилось X новых тредов - вот они!!1", а на всех до этого сохроненных: "В этом ИТТ треде n новых постов, вот они!". Можно сворачивать и при новом чьём-нибудь посте видеть в трее иконку "йееху, у нас новый пост 12345 в треде 12340! Жми, чтобы развернуть". Там же удобные фичи вроде ловилки ссылок, автозакачки всех картинок и прочего счастья.
Еще бы оче хорошо было бы прикрутить вакабовскую manager-mode ссылку, дабы делать дела не отходя от кассы - стандартный менеджер убог.
>> No. 5215    
>>5214
Да ну, по-моему все это нафиг не надо. Автозакачка (в том числе с полноразмерными картинками) мной уже написана, а количество новых постов - не пофиг ли на это?
Короче, сомнительно. Не убедили вы меня. Не вижу практической пользы.
>> No. 5226    
Файл: 131548365036.png-(59.80KB, 1040x645, del.png)
5226
А видели ридер для двача?
Это охуенно.
>> No. 5288    
геолокацию присобачите?
>> No. 5361    
>>5226
У меня где-то были исходники аногичной хауты для русских ИБ. Называлось как ни странно wishmaster
>> No. 6089    
ОП, ты еще занимаешься проектом или уже бросил?
[Назад] [Вся нить] [Последние 50 сообщений]


Удалить сообщение []
Пароль  
[Mod]