Sobre librerias de archivos

27/04/2007 - 05:00 por DotNeteer | Informe spam
Bueno no se si el titulo estara bien, pero mi duda es la siguiente, es una
duda que me da vueltas hace tiempo a ver si alguien me puede ayudar.
He visto que muchos programas, como por ejemplo el windows media player 10 y
el itunes, uno los abre y mantienen un listado de archivos de audio,
¿Donde guardan este listado de archivos? he pensado que lo mas logico seria
una base de datos pero no veo donde este instalada, entonces pense despues,
en archivos???pero me parece muy ineficiente, ya que por lo menos en el
itunes cada ves que escribo en el buscador una letra este me despliega los
items que la poseen.
ASi que llegue a una conclusion de que no sabia nada, jeje, asi que consulto
a expertos como ustedes.
Es que en realidad me gustaria implementar lo mismo para un programa que
estoy realizando sobre computadores, espero sea un buen debate.

Como otra duda el tipo de almacenajen que utilizan estos programas ayuda a
la busqueda de itemes asi como lo hace el itunes???

Bueno muchisimas gracias.

Preguntas similare

Leer las respuestas

#1 Alfredo Novoa
28/04/2007 - 03:14 | Informe spam
On Fri, 27 Apr 2007 15:54:01 -0700, DotNeteer
wrote:

Pues para mis fines es muy basico, realmente antes ya he implementado "bases
de datos" con archivos planos, pero en modo de aprendizaje he ido observando
las aplicaciones que menciono en mi primer post, y me salto la duda, de que
como sera que manejan los datos estas aplicaciones, ¿como haran para trabajar
tan eficientemente sino estan utilizando una DB como access o sql.?



Pues pueden hacer lo mismo que los SGBD. Ya sabes, usar índices y esas
cosas :)

Ahora bien me menciona xml, no se nada en realidad de xml, lo que he podido
ver sobre estos es que sirven como archivos para configuraciones, no se si es
recomendable escribir en ellos datos y modificarlos.



No es nada recomendable.


Saludos
Respuesta Responder a este mensaje
#2 Daniel A. Calvin - Cooperator Team
28/04/2007 - 15:41 | Informe spam
Hola DotNeteer

Una buena opción muy piola para este tipo de cosas es una motor de base de
datos orietada a objetos que se llama db4o.
Es muy simple de usar, esos volumenes de datos los maneja con mucha
facilidad.
Solo requiere referenciar un unico assembly.

Un ejemplo e inserción de 100 objetos y su recuperación en una lista..

Cantante c;
IObjectContainer myDb = Db4oFactory.OpenFile("MiMusica");
try
{
for (int i = 0; i < 100; i++)
{
c = new Cantante();
c.Apellido = string.Format("Garcia{0}", i);
c.Nombre = string.Format("Jose{0}", 100 - i);
myDb.Set(c);
}
myDb.Commit();
}
catch (Exception e)
{
Console.WriteLine("Error");
}
finally
{
Console.WriteLine("Bien");
}
IList<Cantante> cs = myDb.Query<Cantante>(typeof(Cantante));
myDb.Close();

Pegale una mirada esta espectacular y trabaja con archivitos locales. Ideal
para este tipo de aplicaicones.

Espero te sirva para tu idea.


Daniel A. Calvin
Cooperator Team Member
http://www.cooperator.com.ar
Microsoft Certified Professional


"DotNeteer" escribió en el mensaje
news:
Gracias Daniel por tu interes, de verdad que pienso que es todo un tema.

Pues para mis fines es muy basico, realmente antes ya he implementado
"bases
de datos" con archivos planos, pero en modo de aprendizaje he ido
observando
las aplicaciones que menciono en mi primer post, y me salto la duda, de
que
como sera que manejan los datos estas aplicaciones, ¿como haran para
trabajar
tan eficientemente sino estan utilizando una DB como access o sql.?

Pero por ejemplo digamos que deseo crear una aplicacion que se llame
myJokeBox, y tengo unos 15000 mp3 (con tantos mp3 me pondria una radio
jajaja), que deseo manejar en mi aplicacion, si implemento esa aplicacion
usando un archivo plano, creo, no lo he probado, pero por expericiencia me
parece que seria lento el inicio del programa y una consulta ( supongo
que
la consulta seria mas lenta que el inicio de este).

Ahora bien me menciona xml, no se nada en realidad de xml, lo que he
podido
ver sobre estos es que sirven como archivos para configuraciones, no se si
es
recomendable escribir en ellos datos y modificarlos. voy a investigar al
respecto.

Me gusta mucho esa idea que tambien menciona sobre utilizar un hilo
mientras
se realiza una consulta.

Bueno como dice Daniel es un tema bastante amplio, desearia que mas
foreros
debatamos al respecto para ver puntos de vista, o que lo que Daniel y yo
escribamos aqui sirva para que otras personas se ayuden al respecto.

Gracias Daniel por su respuesta y a todos los que puedan colaborar.





"Daniel A. Calvin" wrote:

Hola DotNeteer

Todo un tema el que plantea Usted señor!!!! :))

Hoy levantar una lista de items desde un archivo de disco, algo que no
sea
una base de datos formal, es muy rápido.
Hay opciones elegantes y potentes como recurrir a xml y simpre por
supuesto
los archivos planos.

Quiero decir que no hace falta tener un MSSQL instalado para esto o una
base
access.

Se pueden manipular listas de objetos con bastante eficiencia hoy.

Hay programas que se nutren de información obtenida mediante webservices,
lo
hacen recurriendo a algún thread que busca mientras el usuario escribe en
una
caja de texto...

Hay muchas opciones.

El tema central seguramente es conocer el volumen de datos del cual
hablamos
y su complejidad, tal vez si pudieras contarnos algo de eso.

Saludos

Daniel A. Calvin
MCP


"DotNeteer" wrote:

> Bueno no se si el titulo estara bien, pero mi duda es la siguiente, es
> una
> duda que me da vueltas hace tiempo a ver si alguien me puede ayudar.
> He visto que muchos programas, como por ejemplo el windows media player
> 10 y
> el itunes, uno los abre y mantienen un listado de archivos de audio,
> ¿Donde guardan este listado de archivos? he pensado que lo mas logico
> seria
> una base de datos pero no veo donde este instalada, entonces pense
> despues,
> en archivos???pero me parece muy ineficiente, ya que por lo menos en
> el
> itunes cada ves que escribo en el buscador una letra este me despliega
> los
> items que la poseen.
> ASi que llegue a una conclusion de que no sabia nada, jeje, asi que
> consulto
> a expertos como ustedes.
> Es que en realidad me gustaria implementar lo mismo para un programa
> que
> estoy realizando sobre computadores, espero sea un buen debate.
>
> Como otra duda el tipo de almacenajen que utilizan estos programas
> ayuda a
> la busqueda de itemes asi como lo hace el itunes???
>
> Bueno muchisimas gracias.
Respuesta Responder a este mensaje
#3 Alfredo Novoa
28/04/2007 - 16:29 | Informe spam
Hola

On Sat, 28 Apr 2007 10:41:19 -0300, "Daniel A. Calvin - Cooperator
Team" wrote:

Una buena opción muy piola para este tipo de cosas es una motor de base de
datos orietada a objetos que se llama db4o.
Es muy simple de usar, esos volumenes de datos los maneja con mucha
facilidad.



Esto sirve si solo vas a hacer consultas muy muy sencillas. Si se
necesita un mínimo de flexibilidad entonces es mucho mejor usar un
SGBD de estilo relacional como Embedded Firebird.

http://www.codeproject.com/cs/datab...rebird.asp

Aunque no tengas previsto poder hacer consultas, puede ser interesante
usar algo como Firebird de todas formas, por que con un engendro como
db4o las posibilidades de crecimiento de la aplicación quedan muy
limitadas.


Saludos
Respuesta Responder a este mensaje
#4 Daniel A. Calvin - Cooperator Team
28/04/2007 - 19:48 | Informe spam
Lo probaste? , hisiciste alguna experiencia? o es criticar a DB4o
gratuitamente?

:)

Saludos

Daniel A. Calvin
Cooperator Team Member
http://www.cooperator.com.ar
Microsoft Certified Professional


"Alfredo Novoa" escribió en el mensaje
news:

Hola

On Sat, 28 Apr 2007 10:41:19 -0300, "Daniel A. Calvin - Cooperator
Team" wrote:

Una buena opción muy piola para este tipo de cosas es una motor de base de
datos orietada a objetos que se llama db4o.
Es muy simple de usar, esos volumenes de datos los maneja con mucha
facilidad.



Esto sirve si solo vas a hacer consultas muy muy sencillas. Si se
necesita un mínimo de flexibilidad entonces es mucho mejor usar un
SGBD de estilo relacional como Embedded Firebird.

http://www.codeproject.com/cs/datab...rebird.asp

Aunque no tengas previsto poder hacer consultas, puede ser interesante
usar algo como Firebird de todas formas, por que con un engendro como
db4o las posibilidades de crecimiento de la aplicación quedan muy
limitadas.


Saludos
Respuesta Responder a este mensaje
#5 DotNeteer
28/04/2007 - 20:18 | Informe spam
Gracias Alfredo y Daniel, muy util toda la info que dan aqui,

Me viene una pregunta ¿cual es la diferencia entre DB4O y SGBD?

Uno es mas potente que el otro??

Daniel tenes un ejemplo de DB4O???

Reitero gracias muy util su informacion???



"Daniel A. Calvin - Cooperator Team" wrote:

Lo probaste? , hisiciste alguna experiencia? o es criticar a DB4o
gratuitamente?

:)

Saludos

Daniel A. Calvin
Cooperator Team Member
http://www.cooperator.com.ar
Microsoft Certified Professional


"Alfredo Novoa" escribió en el mensaje
news:
>
> Hola
>
> On Sat, 28 Apr 2007 10:41:19 -0300, "Daniel A. Calvin - Cooperator
> Team" wrote:
>
>>Una buena opción muy piola para este tipo de cosas es una motor de base de
>>datos orietada a objetos que se llama db4o.
>>Es muy simple de usar, esos volumenes de datos los maneja con mucha
>>facilidad.
>
> Esto sirve si solo vas a hacer consultas muy muy sencillas. Si se
> necesita un mínimo de flexibilidad entonces es mucho mejor usar un
> SGBD de estilo relacional como Embedded Firebird.
>
> http://www.codeproject.com/cs/datab...rebird.asp
>
> Aunque no tengas previsto poder hacer consultas, puede ser interesante
> usar algo como Firebird de todas formas, por que con un engendro como
> db4o las posibilidades de crecimiento de la aplicación quedan muy
> limitadas.
>
>
> Saludos



Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida