Ek macOS Sierra Çerçeve Değişiklikleri
Çerçeve Geliştirmelerini Hızlandırma
macOS Sierra için Accelerate Framework'e aşağıdaki geliştirmeler yapılmıştır:
- Quadrature (integral calculus) eklendi.
- Sinir ağları oluşturmak için temel işlevler eklendi.
- İki geometrik nesnenin kesişimi gibi şeyleri test etmek için Geometrik koşul işlevleri eklendi.
AppKit Framework Geliştirmeleri
macOS Sierra için AppKit Framework'de aşağıdaki geliştirmeler yapılmıştır:
- Aşağıdakiler gibi çeşitli geliştirmeler
NSCollectionView
:- Daraltılabilir Bölümler - Kullanıcının koleksiyon görünümü bölümünü tek bir yatay satıra daraltmasını sağlar.
- Kayan Üst Bilgiler - Üst Bilgiler ve Alt Bilgiler artık iOS'ta UICollectionView ile aynı API kullanılarak kaydırılabilir (akış düzeninde).
- Kaydırılabilir Arka Plan Görünümleri - Koleksiyon Görünümleri arka planı artık içerikle birlikte kaydırılacak şekilde ayarlanabilir.
- Ertelenen görünüm düzeni geçişi iyileştirildi ve genişletildi.
- Sürükleyip bırakma API'sinde artık sürükle sürülmeye yönelik yeni
NSFilePromiseProvider
veNSFilePromiseReceiver
sınıflar yer alıyor. - Mevcut denetimlere çeşitli kolaylık oluşturucuları eklendi:
NSButton
anında iletme düğmeleri, onay kutuları ve radyo düğmeleri oluşturmak için yeni oluşturucular içerir.NSTextField
sarmalama ve sarmalanmamış etiketler, öznitelikli etiketler ve düzenlenebilir metin alanları oluşturmak için yeni oluşturucular içerir.NSSegmentedControl
bir etiket veya görüntü grubundan kesimli denetimler oluşturmak için yeni oluşturucular içerir.NSSlider
yatay doğrusal kaydırıcılar oluşturmak için yeni oluşturucular içerir.NSImageView
, belirliNSImage
bir sürümünden düzenlenemez görüntü görünümleri oluşturmak için yeni oluşturucular içerir.
NSGridView
Yeni, bir alt görünüm koleksiyonunu dinamik olarak gizlenebilen veya gösterilebilen, değişken boyutlu satırlar ve sütunlar içeren bir kılavuza otomatik olarak düzenine eklendi.
AVFoundation Framework Geliştirmeleri
macOS Sierra için AVFoundation Framework'de aşağıdaki geliştirmeler yapılmıştır:
- macOS'ta, uygulamanın artık içerik türüne göre farklı AVPlayerItem davranışları uygulaması gerekmez. Özelliği ayarlamanız
Rate
yeterlidir ve AVFoundation, oynatma için yeterli içeriğin ne zaman kullanılabilir olduğunu beklemeden belirler. - Yeni
AVPlayerLooper
sınıf, kayıttan yürütme sırasında belirli bir medya parçasını döngüye almak kolaylaştırır. - sınıfı,
AVAssetDownloadURLSession
FairPlay şifrelenmiş HLS akışlarının indirilmesine ve daha sonra kayıttan yürütülmesine olanak tanır.
Çekirdek Veri Çerçevesi Geliştirmeleri
macOS Sierra için Core Data Framework'de aşağıdaki geliştirmeler yapılmıştır:
- Kök NSManagedObjectContext nesneleri, serileştirme olmadan eşzamanlı hata ve getirmeyi destekler.
- NSPersistentStoreCoordinator sınıfı bir SQLite veri depoları havuzu tutar.
- WAL Günlük Modu'nda SQLite veri depolarına sahip NSManagedObjectContext nesneleri, yönetilen nesne bağlamlarının (MOC) gelecekteki getirme ve hata işlemleri için belirli veritabanı sürümlerine sabitlenebildiği yeni sorgu oluşturma özelliğini destekler.
- , NSManagedObjectModel ve diğer Temel Veri yapılandırma kaynaklarına başvurmak
NSPersistentStoreCoordinator
için üst düzeyNSPersistenceContainer
kullanma. - Getirme işlemlerini gerçekleştirmeyi ve alt sınıf oluşturmayı kolaylaştırmak için
NSManagedObject
birkaç yeni kolaylık yöntemi eklendi.
Daha fazla bilgi için bkz. Apple'ın Çekirdek Veri Çerçevesi Başvurusu.
Çekirdek Görüntü Çerçevesi Geliştirmeleri
macOS Sierra için Core Image Framework'de aşağıdaki geliştirmeler yapılmıştır:
ImageWithExtent
CIFilter sınıfının yöntemi, filtre işlemine özel işleme eklemek için kullanılabilir. Çekirdek Görüntü, bir görüntüyü çıkış veya görüntü için işlerken filtreler arasında verilen geri çağırmayı çağırır.- Uygulama artık işleme öncesinde ve sonrasında renk alanını dönüştürerek Çekirdek Görüntü bağlamının çalışma renk alanının dışındaki bir renk alanında görüntüleri işleyebilir.
- Çekirdek Görüntü çekirdeği artık belirli bir piksel çıkış biçimi isteyebilir.
- Aşağıdaki yeni görüntü filtreleri eklendi:
CINinePartTitled
,CINinePartStretched
,CIHueSaturationValueGradient
veCIEdgePreserveUpsampleFilter
CIClamp
.
Foundation Framework Geliştirmeleri
macOS Sierra için Foundation Framework'te aşağıdaki geliştirmeler yapılmıştır:
- NSDimentions API'sini kütle, uzunluk, hız, süre ve sıcaklık gibi en yaygın fiziksel birimleri temsil etmek, dönüştürmek ve görüntülemek için kullanın.
- ISO 8601 biçimlendirilmiş tarihleri ayrıştırma ve oluşturma için NSISO8601DateFormatter sınıfını kullanın.
- Aralıkları karşılaştırmak ve aralık kesişimleri için test etmek üzere süreler gibi tarih ve saat aralığı hesaplamaları yapmak için yeni NSDateInterval sınıfını kullanın.
- Bir dizeden bir kişinin adının öğelerini ayrıştırmak için NSPersonNameComponentsFormatter sınıfını kullanın.
- URL ağ oturumu ölçümlerini almak için yeni NSURLSessionTaskMetrics sınıfını kullanın.
Daha fazla bilgi için bkz. Apple'ın OS X v10.12 ve iOS 10 için Temel Sürüm Notları.
GameKit Framework Geliştirmeleri
macOS Sierra için GameKit Framework'e aşağıdaki geliştirmeler yapılmıştır:
- Game Center Uygulaması kullanım dışı bırakıldı ve macOS'tan kaldırıldı. Uygulama GameKit kullanıyorsa puan tabloları gibi GameKit özelliklerini görüntülemek için kendi arabirimini sunması gerekir .
- GKCloudPlayer sınıfı tarafından yeni bir yalnızca iCloud hesabı türü uygulandı.
- Yeni GKGameSession sınıfı, Game Center'da kalıcı veri depolamayı yönetmek için genelleştirilmiş bir çözüm sağlar.
GKGameSession
bir oyuncu listesi tutar ve uygulama, katılımcı tarihinin nasıl ve ne zaman depolandığını, alınıp alınma şeklini uygulayan sorumlu bir formdur. Birçok durumda Oyun Oturumları mevcut sıra tabanlı eşleşmelerin, gerçek zamanlı eşleşmelerin veya kalıcı oyun kaydetme yöntemlerinin yerini alabilir.
GamePlayKit Framework Geliştirmeleri
macOS Sierra için GamePlayKit Framework'e aşağıdaki geliştirmeler yapılmıştır:
- Yordamsal gürültü üretimi eklenmiştir ve doğal görünümlü dokularda gerçekçiliği geliştirmek, kamera hareketlerine gerçekçilik eklemek ve zengin oyun dünyaları oluşturmaya yardımcı olmak için kullanılabilir.
- Verimli arama için oyun dünyası verilerini bölümlendirmek için Uzamsal Bölümleme'yi kullanın.
- Kapsamlı olası hareket hesaplaması için yeni bir Monte Carlo stratejisti (GKMonteCarloStrategist) eklendi.
- Oyun geliştirme yapay zekasını geliştirmek için yeni bir Karar Ağacı API'si (GKDecisionTree ve GKDecisionNode) eklendi.
- Yeni GKAgent3D ve GKGraphNode3D sınıfları kullanılarak mevcut aracıya ve yol bulma davranışlarına 3B destek eklendi.
- Yüksek performanslı, doğal görünümlü yollar sağlamak için yeni GKMeshGraph sınıfını kullanın.
- Yeni GKScene ve GKSKNodeComponent sınıfları, GameplayKit ve SpriteKit'i birleştirmeyi her zamankinden daha kolay hale getirir.
Metal Framework Geliştirmeleri
macOS Sierra için Metal Framework'de aşağıdaki geliştirmeler yapılmıştır:
- 3B uygulamalar ve oyunlar artık KARMAŞıK sahneleri ve geometriyi GPU aracılığıyla verimli bir şekilde işlemek için Tessellation'ı kullanabilir.
- Bir sahne için yüksek düzeyde iyileştirilmiş malzeme ve ışık bileşimi işlevleri koleksiyonu oluşturmak için İşlev Uzmanlığı'na tıklayın.
- Kaynak Yığınları ve Belleksiz İşleme Hedeflerini kullanarak Metal tabanlı uygulamaların performansını iyileştirmek için kaynak ayırmada ayrıntılı denetim sağlayın.
Daha fazla bilgi edinmek için lütfen Apple'ın Metal Programlama Kılavuzu'na bakın.
Model G/Ç Çerçevesi Geliştirmeleri
macOS Sierra için Model G/Ç Çerçevesi'ne aşağıdaki geliştirmeler yapılmıştır:
- USD dosya biçimi artık desteklenmektedir.
- Modellerde çalışma zamanı değişikliklerini kolayca desteklemek için yeni
MDLMaterialPropertyGraph
sınıfı kullanın. - MDLVoxelArray sınıfına İmzalı Uzaklık Alanı desteği eklendi.
- Light Probe yerleştirme konusunda yardımcı olması için yeni
MDLLightProbeIrradianceDataSource
sınıfı kullanın.
Fotoğraflar Çerçevesi Geliştirmeleri
macOS Sierra için Fotoğraflar Çerçevesi'ne aşağıdaki geliştirmeler yapılmıştır:
- Canlı Fotoğraf düzenleme artık Fotoğraflar çerçevesini destekleyen uygulamalar ve fotoğraf düzenleme uzantıları için kullanılabilir (Fotoğraflar ve Kamera uygulamalarının içinde kullanım için).
- Canlı Fotoğraflar'ın hem video hem de hareketsiz içeriğine düzenlemeler uygulamak için yeni PHLivePhotoEditingContext sınıfını kullanın.
- Düzenlemeleri gerçekleştirmek için yeni Çekirdek Görüntü işlemci özelliğinden yararlanmak için CIImageProcessorInput ve CIImageProcessorOutput sınıflarını kullanın.
- Canlı Fotoğraflar'ı desteklemek için PHLivePhoto ve PHLivePhotoView sınıfları iOS'tan macOS'a taşınabilir.
SceneKit Framework Geliştirmeleri
macOS Sierra için SceneKit Framework'de aşağıdaki geliştirmeler yapılmıştır:
- Şimdi daha basit varlık yazma ile daha gerçekçi sonuçlar elde etme amacıyla yeni bir Fiziksel Tabanlı İşleme (PBR) sistemi içerir.
- Yeni SCNLightingModelPhysicallyBased gölgelendirme modelini kullanarak çok çeşitli gerçekçi gölgelendirme efektlerinin çarpımını yaparken yalnızca üç temel özellik (
Diffuse
Metalness
veRoughness
) gerekir. - PBR gölgelendirmesi ortam tabanlı aydınlatma ile en iyi şekilde çalıştığından, görüntü tabanlı aydınlatmayı
LightingEnvironment
tüm görünüme atamak için özelliğini kullanın. IESProfileURL
Yoğunluk (lümen) ve renk sıcaklığı (Kelvin derecelerinde) gibi gerçek dünya değerlerine göre aydınlatma tabanını tanımlayan gerçek dünya ışık armatürlerini içeri aktarmak için özelliğini kullanın.- SCN Kamera sınıfı, HDR özelliklerini ve efektlerini kullanarak daha gerçekçilik sağlayabilir. Otomatik efektler oluşturmak için uyarlamalı pozlama kullanın veya oyuna filmatik efektler eklemek için vinyet, renk saçaklama ve renk notlama kullanın.
- Hem PBR hem de HDR kamera özellikleri geleneksel işleme tekniklerinden daha iyi sonuçlar sağlar ve sonuç olarak, SceneKit artık tüm renk hesaplamalarını doğrusal bir renk alanında (geniş renkli cihaz ekranlarında P3 renk gamı kullanarak) gerçekleştirir.
- SceneKit artık renk profili bilgilerini okuyarak tüm renklerle eşleşir.
- SceneKit, tüm gölgelendirici türleri için doğrusal RGB renk alanında renk bileşeni değerlerini yorumlar.
- SceneKit doku görüntülerindeki renk profili bilgilerini okuduğundan ve ayarladığından, bu bilgilerin sağlandığından emin olmak için tüm görüntüler için Varlık Katalogları'nı kullanın.
- Hem doğrusal renk alanı işleme hem de geniş renk, uygulamanın
Info.plist
içinde veSCNDisableWideGamut
anahtarları belirtilerekSCNDisableLinearSpaceRendering
devre dışı bırakılabilir. - Yeni SCNGeometryPrimitiveTypePolygon sınıfıyla geometriyi belirtmek için rastgele çokgen primatlar (dosyalardan yüklenen veya program aracılığıyla oluşturulan) oluşturun.
Güvenlik Çerçevesi Geliştirmeleri
macOS Sierra için Güvenlik Çerçevesi'ne aşağıdaki geliştirmeler yapılmıştır:
- Arabirim
SecKey
tüm platformlarda (iOS, tvOS, watchOS ve macOS) modernleştirilmiş ve birleştirilmiştir.
SpriteKit Framework Geliştirmeleri
macOS Sierra için SpriteKit Framework'de aşağıdaki geliştirmeler yapılmıştır:
- Kutucuk haritaları artık , ve sınıflarını kullanarak
SKTileMapMode
SKTileGroup
SKTileGroupRule
2B, 2,5B ve yan kaydırma oyunları için kare, altıgen veSKTileSet
izometrik kutucuk şekillerini destekliyor. - SKSpriteNode veya SKEffectNode işlemesini uzatmak veya deforme etmek için yeni
SKWarpGeometry
sınıfı kullanın. Yeni SKAction sınıfı, warp efektleri arasındaki geçişlere animasyon eklemek için kullanılabilir. - Özel gölgelendiriciler, bir Öznitelik Değeri (
SKAttribute
) sağlayarak gölgelendiriciyi kullanan her düğüm tarafından ayrı olarak yapılandırılabilir öznitelikler (SKAttributeValue
) sağlayabilir. - SKView sınıfı, bir sahnenin ne zaman ve nasıl işlendiği üzerinde ayrıntılı denetim sağlamak için birkaç yeni yöntem sağlar.
Yeni Çerçeveler
macOS Sierra'ya aşağıdaki çerçeveler eklendi:
- Intents Framework - Bu çerçeve, uygulamanın etkileşimleri (konum veya kullanıcı eylemleri gibi) incelemesine ve bu bilgilere göre eylem gerçekleştirmesine olanak tanır.
- SafariServices Framework - Bu çerçeve, uygulamanın hem macOS hem de iOS için Safari için uygulama uzantıları (içerik engelleyicileri gibi) geliştirmesine olanak sağlar.