2012-08-23 33 views
8

Nunca sé cuál es el nombre correcto para una función que escribe/almacena/guarda algo en un archivo. ¿Cuándo debo usar save() frente a store() frente a write() y cuál es la diferencia de significado entre esos?¿Diferencias semánticas entre guardar/escribir/almacenar y leer/cargar?

supongo store se utiliza si escribo a una base de datos, write para archivos de texto y save para datos binarios, ¿es correcto? ¿Qué pasa con los archivos XML?

Respuesta

2

Yo diría que save y store son más o menos intercambiables. Yo prefiero save sin embargo.

write Interpreto como escribir el contenido y no hago nada más, mientras que save también cierra el archivo.

+0

Buen punto. 'Save' por lo general consiste en' open' (o 'connect'),' write', 'close' (o' disconnect'), mientras que 'write' es, digamos, atomic. –

+1

Pero en una aplicación de escritorio como un procesador de textos o un programa de edición de imágenes, guardar normalmente no cierra el archivo. –

+1

@kirdie depende de la aplicación (es decir, gimp no bloquea el archivo, mientras que PS lo hace). –

3

Bueno, depende de usted. Yo personalmente uso saveXXX() y loadXXX() para la mayoría de dichos códigos y no es muy importante cómo se guardan los datos técnicamente (archivo, DB, etc.). Desde el punto de vista de la aplicación no hace diferencia. El código que guarda solo necesita datos para colocarlo en el almacenamiento, más o menos persistente, y realmente no molesta cómo lo hace la capa de almacenamiento. Simplemente sugiero mantener un nombre, básicamente por simplicidad y consistencia.

0

utilizo load/save para los métodos que conocen o implícitamente infieren dónde obtener o poner los datos, mientras que read y write métodos necesitan de forma explícita para ser dicho. Supongo que al final es completamente arbitrario, pero un consenso de la comunidad sobre cuándo usar qué palabra sería bueno saber.