ASSISTOTECH

YENİ PROJELER İÇİN TEKLİF ALIYORUZ

İş Yazılımları

Masaüstü uygulama mı, web uygulaması mı?

Donanım erişimi, çevrimdışı çalışma, dağıtım ve güncelleme açısından masaüstü ve web uygulamalarını karşılaştırıyor, hangi durumda hangisini seçeceğinizi anlatıyoruz.

Masaüstü bilgisayarda çalışan iş uygulaması

Kısa cevap

Yazıcı, terazi, barkod okuyucu, seri port gibi donanımlara derin erişim, internetsiz uzun süre çalışma ya da yerel dosyalarla yoğun iş gerekiyorsa masaüstü uygulama; kurulum istemeyen erişim, çok sayıda kullanıcı, farklı cihazlardan kullanım ve merkezi güncelleme öncelikliyse web uygulaması daha uygundur. Birçok iş yazılımında en dengeli çözüm, web teknolojileriyle yazılıp gerektiğinde masaüstü kabuğuna sarılan karma yaklaşımdır.

"Masaüstü mü, web mi?" sorusu, yeni bir iş yazılımı planlayan hemen herkesin karşısına çıkar. Tarayıcıların yetenekleri son yıllarda çok arttı; birçok iş artık tarayıcıda rahatça yapılabiliyor. Buna rağmen kasada, depoda, üretim hattında ya da laboratuvarda çalışan yazılımlarda masaüstü uygulamanın hâlâ güçlü gerekçeleri var.

Bu yazıda iki yaklaşımı donanım erişimi, çevrimdışı çalışma, dağıtım, güncelleme, güvenlik ve maliyet açısından karşılaştırıyor, hangi durumda hangisinin seçileceğini somut örneklerle anlatıyoruz.

Masaüstü uygulama nedir, web uygulaması nedir?

Masaüstü uygulama, kullanıcının bilgisayarına (Windows, macOS ya da Linux) kurulan ve işletim sisteminin kaynaklarına doğrudan erişebilen yazılım demektir. Web uygulaması ise sunucuda çalışan ve kullanıcının tarayıcı üzerinden, kurulum yapmadan eriştiği yazılımdır.

İki yaklaşım arasındaki sınır bugün eskisi kadar keskin değildir:

  • PWA (Progressive Web App): Tarayıcıdan "yüklenebilen", kendi penceresinde açılan ve sınırlı çevrimdışı çalışabilen web uygulamaları
  • Electron ve Tauri: Web teknolojileriyle (HTML, CSS, JavaScript) yazılan arayüzü masaüstü uygulaması olarak paketleyen çatılar
  • Yerel (native) masaüstü: .NET (WPF, WinUI), Swift gibi platforma özgü teknolojilerle yazılan uygulamalar

Karşılaştırma: masaüstü ve web uygulaması

Ölçüt Masaüstü uygulama Web uygulaması
Kurulum Her bilgisayara kurulum gerekir Tarayıcı yeterli
Güncelleme Güncelleme mekanizması kurulmalı Sunucuda güncellenir, herkes aynı sürümü görür
Donanım erişimi Geniş ve doğrudan Tarayıcı API'leriyle sınırlı
Çevrimdışı çalışma Doğal olarak mümkün Service worker ile kısmen mümkün
Erişim Kurulu cihazla sınırlı Her cihazdan, her yerden
Performans Yerel kaynakları tam kullanır Tarayıcı ve ağ hızına bağlı
Çoklu platform Her platform için paketleme ve test Tarayıcı uyumluluğu yeterli
Veri konumu Yerel, merkezi ya da karma Çoğunlukla merkezi

Ne zaman masaüstü uygulama seçilmeli?

Masaüstü uygulamanın en güçlü olduğu alan, bilgisayarın dış dünyayla konuştuğu noktalardır. Aşağıdaki durumlardan biri varsa masaüstü ya da masaüstü kabuklu bir çözüm ciddi olarak düşünülmelidir.

  • Donanım entegrasyonu: Fiş yazıcısı, etiket yazıcısı, terazi, kart okuyucu, seri port ya da USB üzerinden çalışan ölçüm cihazları
  • Uzun süreli çevrimdışı çalışma: İnternetin güvenilir olmadığı şantiye, depo, mağaza ya da saha ortamları
  • Yoğun yerel dosya işleme: Büyük görüntü, video, CAD ya da veri dosyalarıyla çalışan uygulamalar
  • Arka planda sürekli çalışma: Klasör izleme, otomatik yedekleme, cihazdan veri toplama gibi görevler
  • Kiosk ve tek amaçlı cihazlar: Kullanıcının yalnızca tek bir uygulamayı görmesi gereken ekranlar

Tarayıcılar bu alanlarda da ilerledi; örneğin Web Serial ve WebUSB gibi API'ler bazı donanımlara tarayıcıdan erişime izin veriyor. Ancak bu API'ler her tarayıcıda desteklenmiyor ve her cihaz sürücüsüyle çalışmıyor. Kritik bir donanım entegrasyonunu yalnızca bu API'lere dayandırmadan önce hedef tarayıcı ve cihazlarla test etmek gerekir.

Ne zaman web uygulaması seçilmeli?

Web uygulaması, erişimin ve yönetimin kolay olması gereken çoğu iş yazılımı için doğal başlangıç noktasıdır.

  • Kullanıcılar farklı konumlardan ve farklı cihazlardan bağlanıyorsa
  • Kullanıcı sayısı çok ve her bilgisayara kurulum yapmak pratik değilse
  • Müşteri, bayi ya da tedarikçi gibi şirket dışı kişiler de sisteme erişecekse
  • Veri merkezi olarak tutulmalı ve herkes aynı anda güncel veriyi görmeliyse
  • Ürün bir SaaS olarak abonelikle sunulacaksa

Web uygulamasının bir avantajı da güncellemenin tek noktadan yapılmasıdır. Bir hata düzeltildiğinde tüm kullanıcılar bir sonraki sayfa yüklemesinde yeni sürümü alır. Masaüstünde ise eski sürümde kalan kullanıcıları yönetmek ayrı bir iştir. Web uygulamalarına yaklaşımımızı web uygulama hizmet sayfamızda bulabilirsiniz.

Electron, Tauri ya da yerel masaüstü: hangi teknoloji?

Masaüstü uygulamaya karar verildiğinde teknoloji seçimi ekibin yetkinliğine, hedef platformlara ve uygulamanın ihtiyaçlarına göre yapılır.

Teknoloji Güçlü yanı Dikkat edilecek nokta
Electron Geniş ekosistem, web ekibi hızla üretir, olgun güncelleme araçları Uygulama boyutu ve bellek kullanımı görece yüksek
Tauri İşletim sisteminin web görünümünü kullanır, paket boyutu küçük Arka uç kodu Rust ile yazılır; platformlar arası görünüm farkları test edilmeli
.NET (WPF, WinUI) Windows ile derin entegrasyon, kurumsal ortamlarda yaygın Ağırlıklı olarak Windows'a odaklı
Platforma özgü (Swift vb.) En iyi performans ve sistem uyumu Her platform için ayrı kod

Web ve masaüstü sürümü birlikte gerekecekse Electron ya da Tauri gibi çatılar, arayüz kodunun büyük kısmını iki ortamda paylaşmayı sağlar. Bu, iki ayrı ürünü ayrı ayrı geliştirmekten çoğu zaman daha ekonomiktir.

Karma yaklaşım: web çekirdek, masaüstü kabuk

Pratikte en sık önerdiğimiz yapı şudur: iş mantığı ve veri merkezi bir sunucuda ve web arayüzünde yaşar; donanım ya da çevrimdışı çalışma gereken noktalarda aynı arayüz bir masaüstü kabuğuyla paketlenir. Örneğin bir restoran ya da mağaza yazılımında yönetim paneli tarayıcıda çalışırken, kasada çalışan ekran yazıcı ve ödeme cihazıyla konuşabilmek için masaüstü uygulaması olarak kurulabilir.

Bu yaklaşımın avantajları:

  1. Tek kod tabanı, iki dağıtım biçimi
  2. Masaüstü kabuk yalnızca donanım ve yerel önbellek gibi ince işleri üstlenir
  3. Çevrimdışı alınan veri, bağlantı geldiğinde merkezi sunucuyla eşitlenir
  4. Yönetim ve raporlama her cihazdan erişilebilir kalır

Tablet ve telefon kullanıcıları ne olacak?

İş yazılımı kararında yalnızca masaüstü bilgisayarları düşünmek, sahadaki gerçeği atlamak olabilir. Depoda el terminali, satış ekibinde telefon, toplantıda tablet kullanılıyorsa web uygulamasının mobil uyumlu tasarlanması ilk ihtiyaçtır. Kamera, konum, anlık bildirim ya da uzun süreli çevrimdışı kullanım gibi gereksinimler varsa ayrıca bir mobil uygulama gündeme gelir.

Bu durumda doğru soru "masaüstü mü, web mi?" yerine "hangi kullanıcı, hangi cihazda, hangi işi yapıyor?" olur. Mobil tarafta native ve cross-platform seçeneklerini bu yazımızda karşılaştırdık.

Dağıtım, güncelleme ve güvenlik

Masaüstü uygulamanın en çok unutulan maliyeti dağıtım ve güncellemedir. Kurulum paketinin kod imzalama sertifikasıyla imzalanmaması, Windows ve macOS'ta güvenlik uyarılarına yol açar. Otomatik güncelleme mekanizması baştan kurulmazsa sahada farklı sürümlerin birlikte çalıştığı, desteği zor bir tablo oluşur.

Güvenlik açısından iki yaklaşımın riskleri farklıdır:

  • Web uygulamasında saldırı yüzeyi sunucu ve tarayıcıdır; OWASP Top 10 gibi listelerdeki zafiyetlere karşı önlem alınmalıdır.
  • Masaüstü uygulamada yerel verilerin şifrelenmesi, güncelleme kanalının güvenliği ve uygulamanın sahip olduğu sistem izinleri ayrıca düşünülmelidir.

Her iki durumda da yayından sonra düzenli bakım gerekir. Bakım kapsamının nasıl tanımlanacağını yazılım bakım ve destek sözleşmesi yazımızda anlattık. Masaüstü uygulama projeleri için yaklaşımımız ise masaüstü uygulama hizmet sayfamızda.

Sık sorulan sorular

Web uygulaması internetsiz çalışabilir mi?

Kısmen çalışabilir. PWA olarak tasarlanmış web uygulamaları, service worker ve tarayıcı depolaması sayesinde bazı ekranları ve işlemleri çevrimdışı sunabilir. Ancak uzun süreli, yoğun veri girişli çevrimdışı çalışma ve donanım erişimi gereken durumlarda masaüstü uygulama daha güvenilir bir çözümdür.

Electron uygulamaları yavaş mı?

Electron, her uygulamaya bir tarayıcı motoru gömdüğü için bellek kullanımı ve kurulum boyutu yerel uygulamalara göre daha yüksektir. İyi yazılmış bir Electron uygulaması iş yazılımlarında genellikle akıcı çalışır. Düşük donanımlı bilgisayarlar hedefleniyorsa Tauri ya da yerel teknolojiler değerlendirilebilir.

Mevcut masaüstü programımızı web'e taşıyabilir miyiz?

Çoğu durumda taşınabilir, ama bu genellikle yeniden yazım anlamına gelir. Önce programın hangi donanım ve yerel kaynaklara bağımlı olduğu çıkarılır; bu bağımlılıklar web'de karşılanamıyorsa küçük bir masaüstü yardımcı uygulamasıyla çözülebilir. Taşıma aşamalı yapılırsa kullanıcılar kesinti yaşamadan geçiş yapabilir.

Masaüstü uygulama Windows ve macOS'ta aynı anda çalışabilir mi?

Electron, Tauri ve bazı .NET çatıları gibi platformlar arası teknolojilerle tek kod tabanından Windows, macOS ve Linux paketleri üretilebilir. Yine de her platformun kurulum, imzalama ve dosya sistemi farklılıkları için ayrı test yapılmalıdır. Yalnızca Windows hedefleniyorsa platforma özgü teknolojiler de iyi bir seçenektir.

Hangisi daha ekonomik: masaüstü mü, web mi?

Tek platformlu, az kullanıcılı bir araçta masaüstü uygulama ekonomik olabilir. Çok kullanıcılı, çok konumlu ve sürekli güncellenen sistemlerde web uygulaması, kurulum ve sürüm yönetimi maliyetlerini ortadan kaldırdığı için çoğunlukla daha avantajlıdır. Karar verirken yalnızca geliştirme değil, yıllar boyunca dağıtım ve destek maliyetini de hesaba katmak gerekir.

Kaynaklar

  1. MDN: Progressive Web Apps
  2. MDN: Web Serial API
  3. Electron belgeleri
  4. Tauri 2 belgeleri
  5. Microsoft: Windows uygulama geliştirme

AssistoTech Ekibi

İstanbul'da web, mobil, masaüstü, oyun, SaaS ve kurumsal yazılım geliştiren ekibiz. Bu yazı, kendi ürünlerimizde ve müşteri projelerinde edindiğimiz deneyime dayanır. Projeniz için bize yazın.

DEVAMINI OKUYUN

İlgili yazılar

PROJENİZİ
KONUŞALIM

UÇTAN UCA YAZILIMİSTANBUL · TÜRKİYE

OFİS

  • İstanbul

    Denizköşkler Mah. Ferah Çıkmazı Sk.
    No: 2 İç Kapı No: 1
    Avcılar / İstanbul

  • Uzaktan

    Türkiye genelinde ve
    yurt dışındaki müşterilerle
    uzaktan çalışıyoruz

Formu göndererek kişisel verilerinizin KVKK Aydınlatma Metni kapsamında işlenmesine ilişkin bilgilendirmeyi okuduğunuzu kabul edersiniz.