понедельник, 17 января 2011 г.

Live Writer Wrap Up Tool: моя версия

Как я уже говорил когда-то, парень по имени Simon May создал небольшую программку, которая позволяет Вам создать с помощью Live Writer сообщение, состоящее из перечисления Ваших же (или чужих – смотря на чью RSS-ленту натравить приложение) сообщений в блоге. Забавное и полезное приложение – ежемесячно экономит мне какое-то время. Однако я решил:

1) адаптировать ее слегка под собственные нужды

2) Написать, наконец, мое первое приложение с… Черт, я не писал ничего серьезнее скриптов уже лет 15. =)

Так что парень с больше, чем одним блогом и навыками программирования на уровне BASIC’овского (даже не VB) “Здравствуй, Мир” закрыл глаза, скачал Visual C# 2010 Express и начал разрабатывать свое собственное приложение. Ну ладно, глаза пришлось открыть еще на стадии скачивания VS. Потом я взял Саймоновские объяснения его процесса создания программы, потратил 10-15 (да, я знаю, у матерых программеров это заняло бы от силы пару часов, включая поиск иконок Winking smile ) часов в поисках решений возникавших передо мной проблем на MSDN и других ресурсах Интернет и… 

image

Да, моя программа далеко не так хорошо выглядит, как хотелось бы (я даже скачал Expressions, но кривым рукам он не поможет, увы =) ), однозначно более сложная, чем ее исходный вариант и содержит орфографические ошибки (будет исправлено в следующем “релизе”. Ага, я теперь могу делать “релизы”. Прям как настоящий сварщик программист =) )

Более того, некоторые куски кода внутри – уродливые костыли, поскольку я не знаю всех возможностей языка или от непродуманности всего продукта в целом. В других местах мой код должен являться предметом моего же дальнейшего изучения, поскольку я не понимаю, как он работает – просто нашел каску на свалке пример на просторах интернета. Вот посмотрите на один такой образчик:

/// Ну и расскажите мне на милость, что я тут только что сделал? Я так понял, это LINQ?
OrderedFeed = feed.Items.OrderBy(i => i.PublishDate);

Но эта штука РАБОТАЕТ! По крайней мере, в моих сценариях.


Я заменил календарь, который был в версии от Саймона на выбор дат, добавил возможность выбора двух предопределенных интервалов времени, возможность запоминать больше одной RSS-ленты и сортировку списка сообщений блога по времени. 




Какова мораль истории? Вы можете создавать свои программы, даже если Вы не профи в этом. С помощью Visual Studio это и впрямь легко. Так что если Вам нужно что-то маленькое, но Вы не можете найти программы, которая это делает – напишите ее.


В том случае, если Вы пожелаете попробовать мою программу, ссылку на установщик Вы найдете внизу. Всего несколько замечаний перед тем, как Вы решитесь на этот шаг:


1) Процесс был развлечением для меня. Программа была создана для меня. Я обещаю Вам, что не планировал никаких вредоносных функций для программы, однако, с какой стати Вы должны мне верить? Я уже не говорю о том, что она лежит на бесплатном хостинге, и никто не знает, что с ней там может случиться. В любом случае – я не несу никакой ответственности за ее использование и результаты оного. Разве что только за хорошие =)


2) Программа будет искать обновления при старте. Если Вам нужна версия, которая не делает этого – напишите ее сами. Мне так удобнее =) 


3) Если у Вас есть идеи по улучшению программы: напишите мне и я обдумаю Ваше предложение. Я не обещаю реализации Вашей идеи, и работа над программой вряд ли станет когда-нибудь высокоприоритетной задачей для меня, но иногда я буду заниматься и этим, почему нет?


4) Если Вам нужны исходники… Не проблема, но:




  • Если Вы новичок в программировании вообще или в C# в частности, то я рекомендовал бы написать ее с нуля. Так будет и веселее, и больше пользы, чем в случае, если Вы просто скачаете и скомпилируете мои исходники. 


  • Если Вы профи, то я дам Вам исходники только если после того, как Вы над ними отсмеетесь, Вы объясните мне как мне исправить или улучшить сотворенное =)

5) Программа создает в реестре ключ HKEY_CURRENT_USER\Software\WLWWrapupper, который не удаляется при деинсталляции программы. Удалите его вручную, если он Вас раздражает.


Ну и если Вас не напугали все мои предостережения, то устанавливайте ее  отсюда.

Комментариев нет: