Alan Cooper'ın Birleşik Dosya Modeline ne oldu?


13

Alan Cooper ("About Face" kitabının 3 versiyonunda), diğer şeylerin yanı sıra, şimdiye kadar icat edilen en aptalca mesaj kutusu dediği şeyden vazgeçmek için "birleşik bir dosya modeli" ni tanıtmaktadır. "Değişikliklerinizi silmek istiyor musunuz?" yazan bir uygulama veya formdaki kapat düğmesine basıldığında açılır. Fikri ve argümanlarını seviyorum, ama aynı zamanda çoğu tecrübeli programcı ve kullanıcının sahip olduğu buna karşı diz sarsıntısı var.

Cooper'ın kitabı oldukça popüler ve saygın görünse de, Web'de bulabileceğim bu konu hakkında çok az tartışma var. "Endüstriyel Güç Pencerelerinin Programlanması" nın yazarı Petter Hesselberg bundan bahsediyor, ama öyle görünüyor.

Bunu üzerinde çalıştığım (masaüstü) projede uygulama fırsatım var, ancak elbette MS Word ve Excel'e bir şeyler yapmanın yollarını bilen müşteriler ve iş arkadaşları tarafından karşı karşıya kalıyorum. İtirazlarını geçersiz kılacak bir pozisyondayım ama yapmam gerekip gerekmediğinden emin değilim.

Sorularım:

Bulamamış olduğum iyi tartışmalar var mı? Uygulamalarında bunu yapan var mı? Diyelim ki Microsoft bunu yapana kadar uygulanmasının ne yazık ki pratik olmadığı iyi bir fikir mi?


2
Google Dokümanlar "birleşik dosya modeli" kullanır. Hala bir kaydet düğmesi var, ama gerçekte bir plasebo: her değişiklik yaptığınızda dosya "kaydedilir". Elbette, Google Dokümanlar'ın daha önce istediğiniz herhangi bir düzeltmeye geri dönebileceğiniz çok sağlam bir "geçmiş" modeli vardır.
Dean Harding

Yanıtlar için herkese teşekkürler. Özellikle ElGringoGrande ve Berin Loritsch. Berin'i seçtim, çünkü biraz daha eksiksiz görünüyordu. Hâlâ alınacak yönü düşünüyorum.
PAUL Mansour

Yanıtlar:


5

Birleşik Dosya Sisteminin uygunluğu gerçekten eldeki uygulamaya bağlıdır. Web uygulamaları, Microsoft OneNote ve iOS uygulamaları gibi şeyler kendilerini bu modele borçludur. Bir uygulama veritabanına dayalı olduğunda, bu modele de kendini verir. Ancak, bunun en iyi seçenek olmadığı alanları da düşünebilirim. Özellikle, bir uygulama o uygulamadan gelmeyen verileri tüketebiliyorsa, bilgileri bulmak için bir dosya sistemi kavramına ihtiyacınız vardır.

Hafızayı ve diski senkronize halde tutmak istiyorum, ama kelime işlemcim için istemiyorum. Dosyamı kaydetmek için zaman ayırdım, hiçbir bilgi kaybetmediğimden emin olmak isteyebilirim. Bu ihtiyaç, birkaç yıldır sahip olduğumuz otomatik kaydetme özelliği ile karşılandı. Birisi güç kablosunun üzerinden geçerse, en azından bir kısmını geri alabilirim. Ancak, dosya sistemimi çöpe atmak istemediğim birtakım belgeleri topluyorum. Yalnızca bir gün boyunca kullanılacak, yazı tipi örnekleriyle vb.

Cevap, duruma bağlı". Cooper'ın UFS'si bazı durumlarda yararlıdır, bazılarında ise daha az faydalıdır. Kullanıcılarınızın teknik bilgisi de kararınızı verebilir. Birçoğumuz statüko ile büyüdük ve bazen değişimin faydaları değişim maliyetinden ağır basmıyor. Uygulamanızdaki bu yaklaşımın uygunluğunu değerlendiririm.


7

Microsoft bunu OneNote'ta yapar.

Kullanıcının isteklerini geçersiz kılmazdım. Bunu uygulamayı düşündük, ancak birçok kullanıcının düşünmeden bir şeyler yaptığını öğrendik ve hatalarının kaydedilmesini önlemek için formu kapat düğmesini (veya yoksa ctrl-alt-del) kullanın.

Bir önceki oturuma (büyük bir geri alma türü) geri dönmelerine izin verecek şekilde uygulayabilirseniz, kabul edilebilir. Ancak insanlar çevrelerindeki ortamdan faydalanmak için tasarlanmıştır. Ortamı değiştirin ve keşfettikleri avantajı yok etme riskiyle karşı karşıyasınız.


1
Ve oturum satırlarını geçen geri almaların sağlanması kendi sorunlarına neden olur. Kaç kişi düşündüklerini söyleyerek mektuplara başlar ve diplomatik yaparak bitirir? Ayrı bir dışa aktarma işlevine ihtiyacınız olacaktır.
David Thornley

+1, özellikle son paragraf için. Kaydetirken önceki içeriğin üzerine yazmayın, ancak eski sürümleri olduğu gibi bırakarak yeni bir "sürüm" ekleyin. Yerden tasarruf etmek için, verileri (değiştirilemez) paylaşan birden fazla sürümünüz olabilir.
Joey Adams

1
@David: Bu, "bu sürüm akışına yeni bir sürüm kaydet" komutu yerine gerçekten bir "yayınla" komutu istemeye iyi bir örnektir.
Alex Feinman

1
@Alex: Kesinlikle - çoğu kişi bir "yayınla" veya "dışa aktar" komutu aramayacak. Ne de olsa hemen görünür bir fark yok ve sadece dosyanın son sürümünü göndermek için kullanılıyorlar.
David Thornley

Birleştirilmiş modeli kullanacaksa, "önceki sürüme geri dön" seçeneğine sahip olmanız gerektiğini kabul ediyorum. Aslında, benim durumumda, tüm veriler (bunlar uygulamaya özel öğeler, gerçekten dosyalar değil, ama hepsi aynı) yıkıcı güncellemelere izin vermeyen bir DBMS'de, bu yüzden şimdiye kadar kaydedilmiş her sürüm var. Birleştirilmiş modeli düşünmemin bile nedenlerinden biri budur, çünkü bir öğenin eski sürümlerini hatırlamak serbesttir.
PAUL Mansour

6

Birleştirilmiş dosya sistemi zaten kazandı!

Tüm iOS * uygulamaları bu şekilde çalışır. 'Dosya' yoktur, dosya sistemi yoktur, kaydetme yoktur, yalnızca silmediğiniz sürece her zaman geri dönebileceğiniz veriler içeren uygulamalar. MacOS'un bir gün iOS'a düşebileceği göz önüne alındığında, modelin kesinlikle yakalandığını söyleyebilirim.

Web siteleri de bu şekilde çalışır - nadiren bir belgeyi 'kaydedersiniz', nadiren bir dizi belgede dolaşırsınız ve belgeleri nadiren web siteleri arasında paylaşırsınız. Belgeler site içinde, bu soruların ve cevapların StackExchange içine yerleştirildiği şekilde yerleştirilir.

Tarihsel olarak, bunu Windows ve Mac'lere dönüştürmek için birkaç garip girişim vardı ve bu insanları fikre çevirdi. Ancak kimsenin bir dosya tarayıcısı olmasını beklemediği yeni bir platforma geçiş, şirketleri tamamen geçişe özgür bıraktı.

(* Android veya diğer telefon işletim sistemlerinden bilmiyorum; belki de orada.)


2
Ancak veri ve arayüzleri programlardan ve uygulamalardan ayırmak için dosya sistemleri (iyi bir kısımda) mevcuttur. Her iki tarafta da argümanlar var.
Jé Queue

2
@Alex, ancak uygulamalar arasında bilgi paylaşamamanız. Başka bir uygulamanın korumalı alana erişimi olmadığından, bir oyun kaydetme dosyası iOS'ta bir metin düzenleyicisi tarafından açılamaz.
Stephen Furlani

@Stephen, bu doğru ve dosya tabanlı bir zihinsel modeli ortadan kaldırmanın önemli bir yönü. Verileri uygulamalar arasında taşımak istiyorsanız, uygulamalar arasında doğrudan paylaşmaya ("bunu Facebook'ta paylaşın!") Ya da her ikisinin de konuşabileceği bir araca (pano gibi) başvurmanız gerekir. Senin "hariç" ile kafam karıştı.
Alex Feinman

Uygulamalar arasında bilgi paylaşabilirsiniz - iOS dosya işleyicileri destekler ve ayrıca URL işleyicileri aracılığıyla bilgi iletir. Bu, kullanıcıların aktarım sürecinde aracı olmadan, uygulamalar arasında veri bağladıkları bir düzeyde yapılır.
Kendall Helmstetter Gelner

1
@Alex, bekleyin, bu yüzden pano (geçici) aracı kullanarak kabul edilebilir ama ortak bir dosya sistemi (kalıcı) kullanarak değil mi?
Stephen Furlani

1

Verilerini dosyalarda mı yoksa bir çeşit veritabanında mı saklayacaksınız?

Dosyalara fiziksel erişime sahip olmasını beklerseniz, dosyalarınızın 'özel' olduğunu öğretmeniz gerekir. Mevcut zihinsel modellerinde kopyalayabilir, yapıştırabilir, yeniden adlandırabilir ve silebilirler. Eminim bazıları zaten 'yeniden' verilerinin sürümünü (örneğin resume2010.doc, SalesDataFromBob2.xls) kullanmak için rename kullanın.

Eğer bir veritabanı ise, eminim bir noktada dosyaları dışa / içe aktarmak isteyeceklerdir.


0

Uygulaması zor olan kullanıcı için belirgin bir şekilde "her zaman kaydet" seçeneği görüntüleniyor mu?


1
Hayır, uygulamak hiç zor değil. Ancak burada bir seçenek oluşturmak ve iki modeli desteklemek gerçekten iyi bir fikir mi? Ben öyle düşünmüyorum. Sanırım birini seçip ona bağlı kalmak daha iyi.
PAUL Mansour
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.