Înainte de toate...un mic disclaimer:

“Un pic de sinceritate este un lucru periculos, o doza mai mare de sinceritate este absolut letala.” - Oscar Wilde

duminică, 21 noiembrie 2010

Cititor de flux RSS pentru iPhone / iPhone RSS feed reader

Una dintre temele pe care le-am avut de implementat în timpul stagiaturii mele (dezvoltare de aplicatii native iPhone, de la Mobile Touch) a fost un cititor de flux RSS. a fost un cititor de flux RSS. Țin minte și acum, că mi-am pierdut destul de multe ore la micul proiecțel. Era pentru prima dată când lucram practic cu feed-uri, iar nivelul meu de cunoștiințe în ale parserelor se rezuma doar la câteva exerciții pe care le făcusem la facultate. Așa că am pus mâna frumos și am început să caut un parser 3rd party rapid și ușor de implementat (NSXMLParser nefiind opțiunea cea mai bună din moment ce feed-urile nu depășeau câțiva KB și deci neavând nevoie de un parser event-driven - SAX, ci de unul DOM). Parserul ales a fost TouchXML. Probabil nu este cel mai light, dar dintre cele studiate mi s-a părut un "best-deal". Un document de referință foarte bun pe care l-am studiat îl găsiți aici. Pe lângă explicații ajutătoare pentru alegerea unui parser potrivit sunt prezentate si o serie de grafice de performanță, astfel încât după lecturare veți fi sigur că ați făcut cea mai bună alegere. Implementarea mea este una simplă tocmai pentru că s-a vrut a fi un exercițiu menit să facă o introducere în ceea ce înseamnă lucrul cu parsere, view controllere etc. Câteva remarci aș vrea să fac totuși: o implementare mai elegantă s-ar fi putut realiza folosind apeluri asincrone (ASIHTTPRequest este un bun exemplu), este posibil să găsiți mici greșeli, nu garantez că implementarea pe care am făcut-o în acel moment este cea mai eficientă (sigur nu este :) si spun asta pentru că multe din lucrurile pe care le-am făcut acolo, cu siguranță le-aș schimba acum), nu îmi asum responsabilitatea unor eventuale pierderi de ordin material/informațional în cazul în care ați folosit parțial sau în totalitate codul expus. Repet, codul se vrea a fi o simplă referință educațională. Am să insist pe acest aspect și în viitoarele postări.

Pentru distribuirea codului am pus la dispoziție un cont public pe SourceForge. Puteți accesa sursele prin download-ul arhivei / arhivelor (toate sursele care vor apărea pe iDev vor fi puse spre download) sau prin checkout pe SVN. Încurajez feedback-ul, și am rugămintea ca eventualele neclarități să fie postate pe pagina dedicată pe SourceForge, pe cât posibil în limba engleză, pentru ca și alți utilizatori sa poată beneficia de acele informații, sau pentru a evita postări duble.

Pagina web dedicată proiectului iDev se mai poate accesa si aici. De asemeni așa cum este precizat și pe pagină se acceptă mici donații pentru a susține proiectul.



Câteva imagini cu aplicația:
 
Autor: Emanuel Lupu-Marinei

Un comentariu:

  1. Postare de Informatician, nu gluma. :)) Toate detaliile tehnice prezente.

    Foarte utila aplicatia. :)

    RăspundețiȘtergere