Antes que nada quiero agradecer a los ingenieros de la API de Google GData por su buen trabajo y me gustaría mencionar que esta pregunta no pretende criticar nada. Solo señala cosas.¿Por qué la biblioteca del cliente google api no está construida sobre el framework Abdera de Apache?
¿Alguien podría explicarme eso? Por lo que puedo ver, los desarrolladores de la biblioteca del cliente google api de java están reinventando la rueda. Es como escribir un nuevo JDK para un proyecto Java, porque el cliente abdera hace lo que hace la biblioteca del cliente google api y las características y adaptadores del servidor abdera también se pueden usar para muchas cosas, como persistencia de entrada y muchas otras.
Soy consciente del hecho de que el protocolo de datos de Google es una publicación atómica poco específica, pero si uno necesita usar algunas de las extravagantes extensiones y características que ofrece el proyecto Apache Abdera para este protocolo, es mejor no usar google api client library e implementar el cliente desde el principio con Abdera ... Y estoy seguro de que en muchos casos sus características como el adaptador JCR de Abdera serían muy útiles para google docs, google translator toolkit y prácticamente para la mayoría de otros.
Ahora es genial que haya una biblioteca de cliente google api para ser utilizada para los documentos de google, pero ¿qué voy a hacer con los documentos y las respuestas de feed de átomos? Creo que en más de la mitad de los casos también hay un repositorio o base de datos en el otro lado. Y en ese caso, se necesita abdera, no los simples clientes de google api que solo están coordinando/deshaciendo los feeds ...
De hecho, hay algo que persiste en todas las API de Google. Tendría sentido, si Google decidiera invertir el esfuerzo en la mejora o integración de Abdera ... Esto no ... Especialmente considerando un hecho muy conocido en el desarrollo de software, esa segunda versión generalmente se reescribe desde cero. Apache Abdera es un proyecto maduro con 5 años de existencia, utilizado por toneladas de aplicaciones.
Si hay razones por las cuales no veo y la implementación del cliente con el uso de pull parser solo era realmente necesaria, al menos usaría un xml pull parser que no está en desuso. Xmlpull.org tiene 6 años, pero está inactivo y ni siquiera implementa la api StAX. Implementación de referencia de stax.codehaus.org, implementación de stax por defecto de JRE, implementación de Apache Axiom y principalmente la implementación de woodstox.codehaus.org sería mucho mejor, ¿por qué evitar especificaciones y proyectos activos con soporte y comunidad?
Mis disculpas a los desarrolladores de google api client biblioteca java para esta crítica, pero realmente me gusta google apis, pero trabajar con la primera versión de este cliente fue realmente amarga experiencia, el lanzamiento actual es agradable. Pero en realidad se desperdició mucho tiempo principalmente debido a Reinventing the wheel y esos cambios extremos entre versiones de la versión 0 a través de gdata-java-client a google-api-client-java.
Finalmente, Google hace que las API se restrinjan después de que las personas invierten tanto tiempo como dinero, así que ¿por qué preocuparse? :-)
Recupero lo que dije, el software y el protocolo han cambiado mucho desde entonces ... ¡Ahora, cuando GData también sea compatible con JSON, ni siquiera tendría sentido usarlo!
Google es muy, muy exigente con la calidad (y probablemente la licencia) de cualquier código en el que basan su infraestructura. Hasta cierto punto, a veces se parece al síndromo [no inventado aquí] (http://en.wikipedia.org/wiki/Not_Invented_Here). Prefieren volver a implementar una biblioteca que vivir con algo que no se ajusta a sus necesidades. Eso es bueno o no tendríamos Google Collections/Guava ;-) –