Další změny architektury macOS Sierra

Vylepšení architektury zrychlení

V rozhraní akcelerace macOS Sierra byly provedeny následující vylepšení:

  • Přidání quadrature (integrální Calculus).
  • Přidali jsme základní funkce pro vytváření neuronové sítí.
  • Byly přidány funkce geometrického predikátu pro testování věcí, jako je průnik dvou geometrických objektů.

Vylepšení architektury Appkitu Framework

V rozhraní Appkitu Framework byly provedeny následující vylepšení macOS Sierra:

  • Několik vylepšení NSCollectionView , například:
    • Sbalitelné oddíly – umožní uživateli sbalit si oddíl zobrazení kolekce do jednoho vodorovného řádku.
    • Plovoucí hlavičky – záhlaví a zápatí se teď dají na plovoucím místě (v rozložení toku) použít stejné rozhraní API jako UICollectionView v iOS.
    • Rolovací zobrazení na pozadí – zobrazení kolekce pozadí se teď dá nastavit tak, aby se současně přesunula k obsahu.
  • Úspěšnost rozložení odloženého zobrazení je optimalizovaná a rozšířená.
  • Rozhraní API pro přetahování teď obsahuje nové NSFilePromiseProvider třídy a NSFilePromiseReceiver , aby se podporovalo přetažení do hejn.
  • K existujícím ovládacím prvkům bylo přidáno několik praktických konstruktorů:
    • NSButton obsahuje nové konstruktory pro vytváření tlačítek, zaškrtávací políčka a přepínače.
    • NSTextField obsahuje nové konstruktory pro vytváření zalomení a nezalamování popisků, popisků s atributy a upravitelných textových polí.
    • NSSegmentedControl obsahuje nové konstruktory pro vytváření segmentických ovládacích prvků ze skupiny popisků nebo obrázků.
    • NSSlider obsahuje nové konstruktory pro vytváření vodorovných lineárních jezdců.
    • NSImageView obsahuje nové konstruktory pro vytváření zobrazení obrázků, která nejsou upravitelná z daného NSImage typu.
  • K automatickému rozložení kolekce dílčích zobrazení do mřížky s proměnlivou velikostí řádků a sloupců, které se dají dynamicky skrývat nebo zobrazují, se přidala nová NSGridView .

Vylepšení architektury AVFoundation Framework

V rozhraní AVFoundation Framework byly provedeny následující vylepšení macOS Sierra:

  • V macOS už aplikace nepotřebuje implementovat různá chování AVPlayerItem na základě typu obsahu. Jednoduše nastavte vlastnost a AVFoundation určí, kdy bude k dispozici dostatek obsahu pro přehrávání bez zastavení Rate .
  • Nová AVPlayerLooper Třída usnadňuje procházení daného média během přehrávání.
  • AVAssetDownloadURLSessionTřída umožňuje stažení a pozdější přehrávání Fairplay šifrovaných HLS datových proudů.

Vylepšení základních datových architektur

V základních datových architekturách pro macOS Sierra byly provedeny následující vylepšení:

  • Kořenové objekty NSManagedObjectContext podporují souběžné selhání a načítají se bez serializace.
  • Třída NSPersistentStoreCoordinator udržuje fond úložišť dat sqlite.
  • Objekty NSManagedObjectContext s úložištěm dat SQLite v režimu deníku Wal podporují novou funkci generování dotazů, kde kontexty spravovaného objektu (Course) je možné připnout na konkrétní verze databáze pro budoucí načítající a chybové transakce.
  • Použití vysoké úrovně NSPersistenceContainer k odkazování na NSPersistentStoreCoordinatorNSPersistenceContainer a další prostředky konfigurace základních dat.
  • Bylo přidáno několik nových pohodlných metod, které NSManagedObject usnadňují provádění načítání a vytváření podtříd.

Další informace najdete v základních referencích k rozhraní .NET Core data Framework.

Vylepšení architektury Core image Framework

V základní architektuře imagí pro macOS Sierra jsme udělali následující vylepšení:

  • ImageWithExtentMetodu třídy ImageWithExtent lze použít k vložení vlastního zpracování do operace Filter. Základní obrázek vyvolá dané zpětné volání mezi filtry při zpracování obrázku pro výstup nebo zobrazení.
  • Aplikace teď může zpracovat obrázky v barevném prostoru mimo pracovní prostor základního obrázku, a to tak, že se převede do a z barevného prostoru před a po zpracování.
  • Základní jádro image teď může vyžádat konkrétní formát výstupu v pixelech.
  • Přidali jsme následující nové filtry obrázků: CINinePartTitled , CINinePartStretched , CIHueSaturationValueGradientCIEdgePreserveUpsampleFilterCIClamp a.

Vylepšení Foundation Frameworku

V rámci macOS Sierra Foundation byly provedeny následující vylepšení:

  • Rozhraní NSDimentions API můžete použít k reprezentaci, převodu a zobrazení mnoha nejběžnějších fyzických jednotek, jako jsou například množství, délka, rychlost, doba trvání a teplota.
  • Použijte třídu NSISO8601DateFormatter pro analýzu a generování formátovaných dat ISO 8601.
  • Použijte novou třídu NSDateInterval k provedení výpočtů pro datum a čas, jako jsou například trvání, pro porovnání intervalů a testování mezioddílů intervalu.
  • Použijte třídu NSPersonNameComponentsFormatter k analýze prvků názvu osoby z řetězce.
  • Novou třídu NSURLSessionTaskMetrics použijte k získání metrik pro relaci sítě URL.

Další informace najdete v poznámkách k verzi společnosti Apple pro OS X v 10.12 a iOS 10.

Vylepšení architektury GameKit Framework

V rozhraní GameKit Framework byly provedeny následující vylepšení macOS Sierra:

  • Game Centerová aplikace se už nepoužívá a odebrala se z MacOS. Pokud aplikace používá GameKit, musí představovat vlastní rozhraní pro zobrazení funkcí GameKit, jako je například žebříčky atd.
  • Třída GKCloudPlayer implementovala nový typ účtu, který je jenom iCloud.
  • Nová třída GKGameSession poskytuje zobecněné řešení pro správu trvalých datových úložišť na Game Center. GKGameSession udržuje seznam hráčů a aplikace zodpovídá za implementaci způsobu, jakým jsou data účastníka ukládána, načtena nebo vyměněna mezi hráči. V mnoha instancích hry můžou pracovní relace nahradit existující shody na základě typu, shody v reálném čase nebo metody trvalého uložení her.

Vylepšení architektury GamePlayKit Framework

V rozhraní GamePlayKit Framework byly provedeny následující vylepšení macOS Sierra:

  • Bylo přidáno procedurální zpracování šumu a můžete ho použít ke zlepšení reálných textur v přirozených texturách, přidání reálných funkcí do pohybů kamery a k vygenerování bohatě světů her.
  • Pomocí prostorového dělení můžete rozdělit data ze hry do oddílů pro efektivní hledání.
  • Bylo přidáno nové Monte Carlo Strategist (GKMonteCarloStrategist), které umožňuje přemístit přesunutí.
  • Bylo přidáno nové rozhraní API rozhodovacího stromu (GKDecisionTree a GKDecisionNode), které vylepší herní sestavování souborů AI.
  • podpora 3D byla přidána do stávajícího chování agenta a hledání cest pomocí nových tříd GKAgent3D a GKGraphNode3D .
  • Použijte novou třídu GKMeshGraph a poskytněte vysoce výkonné a přirozené cesty, které se hledají.
  • Nové třídy GKScene a GKSKNodeComponent usnadňují kombinování GameplayKit a SpriteKit než kdy dřív.

Vylepšení rozhraní Metal Framework

Pro macOS Sierra byly provedeny následující vylepšení architektury:

  • Trojrozměrné aplikace a hry teď můžou použít teselaci k efektivnímu vygenerování složitých scén a geometrie přes GPU.
  • Pomocí specializace funkce můžete vytvořit vysoce optimalizovanou kolekci materiálových a lehkých kombinovaných funkcí pro scénu.
  • Poskytněte jemně odstupňovanou kontrolu nad přidělením prostředků, abyste mohli optimalizovat výkon aplikací založených na Metalech pomocí hald prostředků a cílů vykreslování bez paměti.

Další informace najdete v tématu Průvodce programovánímpro výrobce společnosti Apple.

Rozšíření I/O rozhraní architektury modelu

V architektuře I/O modelu pro macOS Sierra byly provedeny následující vylepšení:

  • Formát souboru USD se teď podporuje.
  • Pomocí nové MDLMaterialPropertyGraph třídy můžete snadno podporovat změny v modulech runtime modelů.
  • Do třídy MDLVoxelArray byla přidána podpora pole se znaménkem na dálku.
  • Použijte novou MDLLightProbeIrradianceDataSource třídu, která vám pomůže při lehkém umísťování sondy.

Vylepšení architektury fotek

V rozhraní Photos pro macOS Sierra byly provedeny následující vylepšení:

  • Pro aplikace, které podporují architekturu fotek a rozšíření pro úpravy fotek (pro použití v aplikacích pro fotky a kamery) je teď k dispozici živý střih fotek.
  • Použijte novou třídu PHLivePhotoEditingContext k aplikování úprav ve videu i stále i na obsahu živých fotek.
  • Použijte třídy CIImageProcessorInput a CIImageProcessorOutput , abyste mohli využít novou funkci základního image procesoru k provádění úprav.
  • Pro podporu živých fotek byly třídy PHLivePhoto a PHLivePhotoView z iOS do MacOS přepravované.

Vylepšení architektury SceneKit Framework

V rozhraní SceneKit Framework byly provedeny následující vylepšení macOS Sierra:

  • Teď obsahuje nový systém založený na bázi fyzického vykreslování (PBR) pro realističtější výsledky s jednodušším vytvářením prostředků.
  • Nový model stínování SCNLightingModelPhysicallyBased můžete použít k vytvoření široké škály realistických efektů stínování a přitom vyžadovat jenom tři základní vlastnosti ( Metalness a Roughness ).
  • Vzhledem k tomu, že stínování PBR funguje nejlépe s osvětlením na základě prostředí, použijte LightingEnvironment vlastnost k přiřazení osvětlení na základě bitové kopie k oddálení celé scény.
  • Tuto IESProfileURL vlastnost použijte k importu skutečných přípravek, které definují osvětlení v reálných hodnotách, jako je intenzita (v lumeních) a teplota barev (ve stupních Kelvinů).
  • Třída SCNCamera může poskytnout větší realitu pomocí funkcí a efektů HDR. Použijte adaptivní expozici k vytvoření automatických efektů nebo k přidání efektů filmatic do hry použijte vignetting, barevné narušování a barevné gradování.
  • Funkce pro kameru PBR i HDR poskytují lepší výsledky než tradiční techniky vykreslování a výsledkem je, že SceneKit teď provádí všechny výpočty barev v lineárním barevném prostoru (na displejích s velkou barevou zobrazuje barevný gamut P3).
  • Barva SceneKit Now se shoduje se všemi barvami, a to čtením informací o profilu barvy.
  • SceneKit interpretuje hodnoty barevných komponent v lineárním barevném prostoru RGB pro všechny typy shaderů.
  • Vzhledem k tomu, že SceneKit čte a upravuje informace o profilech barev v obrazech textury, použijte katalogy assetů pro všechny image, abyste zajistili, že tyto informace jsou
  • Vykreslování a šířku lineárního barevného prostoru lze zakázat zadáním SCNDisableLinearSpaceRendering klíčů a SCNDisableWideGamut v aplikaci Info.plist .
  • Sestavte libovolný Mnohoúhelníkový primates (načtený ze souborů nebo generovaných programově) a určete geometrii novou třídou SCNGeometryPrimitiveTypePolygon .

Vylepšení architektury zabezpečení

V rámci zabezpečení macOS Sierra byly provedeny následující vylepšení:

  • SecKeyRozhraní bylo moderní a sjednocené napříč všemi platformami (iOS, tvOS, watchOS a MacOS).

Vylepšení architektury SpriteKit Framework

V rozhraní SpriteKit Framework byly provedeny následující vylepšení macOS Sierra:

  • Tilemaps teď podporuje čtvercové, šestiúhelníkové a izometrické dlaždice pro 2D, 2,5 d a hry s pohybem na SKTileMapMode straně sebe pomocí tříd, SKTileGroupSKTileGroupRule a SKTileSet .
  • Použijte novou SKWarpGeometry třídu k roztažení nebo deformaci vykreslování SKWarpGeometry nebo SKEffectNode . Novou třídu SKAction lze použít k animaci přechodů mezi efekty pokřivení.
  • Vlastní shadery mohou poskytnout atributy ( SKAttribute ), které lze nakonfigurovat samostatně pomocí každého uzlu, který používá shader, zadáním hodnoty atributu ( SKAttributeValue ).
  • Třída SKView poskytuje několik nových metod pro přesnější kontrolu nad tím, kdy a jak se vykreslují scény.

Nové architektury

Do macOS Sierra byly přidány následující architektury:

  • Rámec záměrů – toto rozhraní umožňuje aplikaci kontrolovat interakce (například umístění nebo akce uživatelů) a provádět na základě těchto informací akci.
  • SafariServices Framework – toto rozhraní umožňuje aplikaci vyvíjet aplikační rozšíření pro Safari (například blokování obsahu) pro MacOS i iOS.