Yeni Soru Sor
Paylaşım Yap
Tüm Reklamları Kapat
Sorulara Dön
Metin Akk
Üye
1

Neden sıkıştırdığımız dijital programları kullanmıyoruz?

Burada steam de indirdiğim uygulama sıkıştılarak indirildiği için 25 GB daha az yer kaplayarak iniyor ve bu sıkıştırmadan çıktığında yine aynı dosyalara karşılık gelecek. Bire bir karşılık gelen ve daha az yer kaplayan kod öbeği oluşturabiliyoruz ama kullanamıyor muyuz?
265 görüntülenme
Neden sıkıştırdığımız dijital programları kullanmıyoruz?
Neden sıkıştırdığımız dijital programları kullanmıyoruz?
0
  • Paylaş
  • Alıntıla
  • Alıntıları Göster
  • Dış Sitelerde Paylaş
  • Soruyu Takip Et
  • Raporla
  • Mantık Hatası Bildir
Tüm Reklamları Kapat
1 Cevap
Ege Yıldırım
Senior Yazılım Mühendisi

Bir yazılım, uygulama veya sistem geliştirirken gözettiğimiz 2 önemli faktör bulunmakta, 1- Zaman Karmaşıklığı (Hız), 2- Boyut Karmaşıklığı.

Zaman boyuttan, boyut ise zamandan her zaman önemli değildir. Bahsettiğin örnekteki gibi dosya sıkıştırmak, boyuttan tasarruf ederek zamanı arttırır (Sıkıştırılan dosyaların oyun motorunun anlayacağı şekilde geri çıkarılması için zaman harcanıyor) Sıkıştırma yaparak kullanıcının internetini kullanıp indirdiği boyutun azalması, kullanıcı deneyimini tabii ki pozitif etkiliyor.

Gelelim asıl soruya, o zaman neden oyunlar sıkıştırılmış dosyalar gibi küçük boyutlu dosyalar yerine genişletilmiş dosyalarla çalışmak zorunda? Aslında dediğin gibi, zorunda değil. Bu kod parçalarını, görselleri, 3 boyutlu modelleri faklı bir formata sıkıştırıp oyunda kullanmayı teorik olarak başarabiliriz. Ama bu aradaki %20-30 boyut azaltmanın yanında çok çok büyük bir problem yaratacaktır. Buna biz "runtime overhead" veya direkt Türkçe çevirisi ile "çalışır zamandaki genel gider" diyoruz. Örnekten ilerlemek gerekirse; GTA oynarken bir NPC ile karşılaştığında, NPC ekranda renderlanırken onun sahip olduğu model, doku, renk, hatta diyalog gibi verilerin o anda decompress edilmesi gerekecektir. Bu da ekranda gözüken her objenin kullandığı her kaynak için bir decompression işlemi demek. Kullanılan sıkıştırma algoritmasına göre modern bilgisayarlarda gerçek zamanlı yapması neredeyse imkansız olacağı için ölçeklendirilebilir bir method hiç değil.

Tüm Reklamları Kapat

Burada sorgulamak gereken daha önemli ve komplike bir kısım var, dosya boyutunu düşürmek için muhakkak sıkıştırma yapmamız gerekmiyor. Bir yazılımda kullanılan dile göre yazılım geliştiricilerin yazdığı insan kodunu makine diline dönüştüren derleyiciler kullanılır, bunlar en nihayetinde küçüle küçüle işlemciye bir toplama işlemi yaptırmaya, veya ekran kartına x,y koordinatına kırmızı renkli bir pixel çiz demeye kadar indirgenebilir. Bu talimatların yazıldığı kodlar ise daha sonra çalıştırılmak üzere (Örneğin oyun içinde NPC'yi ekranda gösterirken) çalıştırılır. Bu kodların boyutu nihai üründeki boyutu belirler (Tabii ki bir oyunda ses dosyaları, görüntüler, modeller gibi bir çok varlık bulunmakta, ama sadece kod örneğinden ilerleyelim). İlk paragrafta bahsettiğim zaman, boyut pazarlığı bu seviye de geçerliliğini koruyor. Örneğin, derleyiciye optimizasyon seviyesini 1 verirsek, hızdan feragat edip bazı değişkenleri önceden hesaplayıp hafızada tutabilir, bu sayede daha sonra hesaplamasına gerek kalmayacağı için hızdan tasarruf eder, ama hafızada tuttuğu için uygulamanın boyutu artar.)

Çok Uzun Okumadım: Eksiksiz bir programda hızdan tasarruf etmek boyutu arttırırken, boyuttan tasarruf etmek hızı arttırır. İndirdiğimiz oyunlar veya diğer programlar en optimal kullanıcı deneyimi için bu pazarlığı göz önünde bulundurarak tasarlanmıştır.

Bu cevap, soru sahibi tarafından en iyi cevap seçilmiştir. Ancak bu, cevabın doğru olduğunu garanti etmez.
2
0
  • Paylaş
  • Alıntıla
  • Alıntıları Göster
  • Dış Sitelerde Paylaş
  • Raporla
  • Mantık Hatası Bildir
Daha Fazla Cevap Göster
Cevap Ver
Evrim Ağacı Soru & Cevap Platformu, Türkiye'deki bilimseverler tarafından kolektif ve öz denetime dayalı bir şekilde sürdürülen, özgür bir ortamdır. Evrim Ağacı tarafından yayınlanan makalelerin aksine, bu platforma girilen soru ve cevapların içeriği veya gerçek/doğru olup olmadıkları Evrim Ağacı yönetimi tarafından denetlenmemektedir. Evrim Ağacı, bu platformda yayınlanan cevapları herhangi bir şekilde desteklememekte veya doğruluğunu garanti etmemektedir. Doğru olmadığını düşündüğünüz cevapları, size sunulan denetim araçlarıyla işaretleyebilir, daha doğru olan cevapları kaynaklarıyla girebilir ve oylama araçlarıyla platformun daha güvenilir bir ortama evrimleşmesine katkı sağlayabilirsiniz.
Popüler Yazılar
30 gün
90 gün
1 yıl
Evrim Ağacı'na Destek Ol

Evrim Ağacı'nın %100 okur destekli bir bilim platformu olduğunu biliyor muydunuz? Evrim Ağacı'nın maddi destekçileri arasına katılarak Türkiye'de bilimin yayılmasına güç katın.

Evrim Ağacı'nı Takip Et!
Aklımdan Geçen
Komünite Seç
Aklımdan Geçen
Fark Ettim ki...
Bugün Öğrendim ki...
İşe Yarar İpucu
Bilim Haberleri
Hikaye Fikri
Video Konu Önerisi
Başlık
Gündem
Bugün bilimseverlerle ne paylaşmak istersin?
Bağlantı
Kurallar
Komünite Kuralları
Bu komünite, aklınızdan geçen düşünceleri Evrim Ağacı ailesiyle paylaşabilmeniz içindir. Yapacağınız paylaşımlar Evrim Ağacı'nın kurallarına tabidir. Ayrıca bu komünitenin ek kurallarına da uymanız gerekmektedir.
1
Bilim kimliğinizi önceleyin.
Evrim Ağacı bir bilim platformudur. Dolayısıyla aklınızdan geçen her şeyden ziyade, bilim veya yaşamla ilgili olabilecek düşüncelerinizle ilgileniyoruz.
2
Propaganda ve baskı amaçlı kullanmayın.
Herkesin aklından her şey geçebilir; fakat bu platformun amacı, insanların belli ideolojiler için propaganda yapmaları veya başkaları üzerinde baskı kurma amacıyla geliştirilmemiştir. Paylaştığınız fikirlerin değer kattığından emin olun.
3
Gerilim yaratmayın.
Gerilim, tersleme, tahrik, taciz, alay, dedikodu, trollük, vurdumduymazlık, duyarsızlık, ırkçılık, bağnazlık, nefret söylemi, azınlıklara saldırı, fanatizm, holiganlık, sloganlar yasaktır.
4
Değer katın; hassas konulardan ve öznel yoruma açık alanlardan uzak durun.
Bu komünitenin amacı okurlara hayatla ilgili keyifli farkındalıklar yaşatabilmektir. Din, politika, spor, aktüel konular gibi anlık tepkilere neden olabilecek konulardaki tespitlerden kaçının. Ayrıca aklınızdan geçenlerin Türkiye’deki bilim komünitesine değer katması beklenmektedir.
5
Cevap hakkı doğurmayın.
Bu platformda cevap veya yorum sistemi bulunmamaktadır. Dolayısıyla aklınızdan geçenlerin, tespit edilebilir kişilere cevap hakkı doğurmadığından emin olun.
Ekle
Soru Sor
ve seni takip ediyor

Göster

Şifremi unuttum Üyelik Aktivasyonu

Göster

Şifrenizi mi unuttunuz? Lütfen e-posta adresinizi giriniz. E-posta adresinize şifrenizi sıfırlamak için bir bağlantı gönderilecektir.

Geri dön

Eğer aktivasyon kodunu almadıysanız lütfen e-posta adresinizi giriniz. Üyeliğinizi aktive etmek için e-posta adresinize bir bağlantı gönderilecektir.

Geri dön

Close