14 berichten aan het bekijken - 1 tot 14 (van in totaal 14)
  • Q:
    Bijdrager
    jacogrinwis

    Hoe update ik iets in Core Data met Swift voor MacOS

    In iOS kan je dat doen door de

    indexPath: IndexPath

    te gebruiken maar in macOS gebruik je

    row: Int

    in iOS kan je dit doen

     
    let notebookObj = self.fetchedResultsController.object(at: indexPath)
     

    Maar dit werkt niet in macOS maar hoe kan het dan wel?

    Zie op Google Youtube Udemy en Lynda alleen maar iOS manieren
    En de Apple documentatie word ik ook niet veel wijzer van.

    Inactief
    Anoniem

    NSFetchedResultsController werkt vanaf 10.12. Daarvóór kun je bindings gebruiken.

    Bijdrager
    jacogrinwis

    Ik ben nog vrij nieuw met apps maken in Swift. Koen zou je dit wat verder kunnen toelichten of een voorbeeld tonen?

    Inactief
    Anoniem

    Zelf iets opzoeken leer je het meeste van. En als je beginner bent, zou ik nog maar even wachten met CoreData.

    Bijdrager
    joopgran
    Bijdrager
    jacogrinwis

    Dank je joopgran voor het mee denken. Alleen zie ik dat dit ook voor iOS is en ook nog eens in Objective C.
    Daar werken ze weer met indexPath: IndexPath wat ik niet in macOS vind wand daar is het row: Int

    Inactief
    Anoniem

    Nogmaals, CoreData is een onderwerp voor gevorderden.

    Alles wat je wilt weten staat in de Apple documentatie. Dat kun je ook raadplegen via Xcode. Als je daar ‘niet veel wijzer’ van wordt, moet het gewoon nogmaals lezen, en eventueel nog een keer. En gewoon blijven proberen.

    Bijdrager
    jacogrinwis

    Koen ik heb kunnen vinden hoe ik een insert delete en show moet doen allen en update nog niet.
    Ik probeer ook nog steeds te snappen wat er zo makkelijker moet zijn aan core data dan gewoon sql want tot nu toe vind ik het in php veel simpeler gaan dan hoe het in swift gaat.

    Maar ik hou vol ooit ga ik het vinden alleen wel teleurstellend om zo lang te moeten zoeken vind de documentatie van Apple erg slecht.
    Lijkt dat apple niet veel aandacht heeft voor macOS wand voor iOS is veel meer documentatie over vermeld

    Bijdrager
    e.abrahamse

    Beste Jaco,

    Zoals Koen al aangaf is CoreData een onderwerp voor gevorderden. Dat er niets over CoreData te vinden is meer een kwestie van weten wat en waar je moet zoeken. CoreData voor iOS en macOS verschillen nogal vanwege hun historische achtergrond. Het framework is in basis voor beiden hetzelfde.

    Er is een recent boek van een Belgische ontwikkelaar Bart Jacobs die CoreData voor meerdere Apple platformen uitstekend uitlegt. Hierin maakt Bart gebruik van Swift 4 en Xcode 9. In zijn welkomswoord verneldt hij het volgende:

    ‘Welcome to Mastering Core Data With Swift. In this book, you’ll learn the ins and outs of Apple’s popular Core Data framework. Even though we’ll be building an iOS application, the Core Data framework is available on iOS, tvOS, macOS, and watchOS, and the contents of this book apply to each of these platforms.’ – Uittreksel van: Bart Jacobs. ‘Mastering Core Data With Swift: Update for Xcode 9 and Swift 4’.

    Dit boek is te koop bij: ‘http://leanpub.com/mastering-core-data-with-swift’

    Ik wens je veel succes met je applicatie en laat via PM even weten hoe je vordert!

    Inactief
    Anoniem

    (y) voor Bart Jacobs.

    Bijdrager
    jacogrinwis

    Bedankt e.abrahamse ik ga het eens onderzoeken of dat boek ook iets heeft voor macOS. Ik heb nu al heel wat gekocht alleen allemaal voor iOS en dat weet ik nu wel hoe dat daar ongeveer gaat.

    Bijdrager
    e.abrahamse

    Hoi Jaco en anderen,

    CoreData is een lastig en omvangrijk framework dat niet gericht is op snelle oplossingen. De mogelijkheden die CoreData bieden zijn zeker voor een beginner (die snel resultaat wil zien) de nodige uitdagingen. Het unieke van het boek van Bart is nu juist dat het voor alle platformen een basis legt voor effectieve datastructuren. Ondanks de prijs van €39,00 is het volgens mij de meest crashvrije weg naar een succesvolle app met CoreData.

    Overigens is CoreData niet de enige manier om data op te slaan en weer uit te vragen. Kijk op de Nederlandse SwiftDev.nl website op de pagina http://www.swiftdev.nl/artikels/videos/ en zoek de video ZON-2016-08-21 Lokaal opslaan van data. Deze uitleg zal je zeker verder helpen om snellere resultaten te bereiken. Op deze website van SwiftDev.nl kun je meer voorbeelden en oplossingen vinden.

    Voor macOS ontwikkelaars zijn er een aantal courses van Rob Walter en Devslopes. Je vindt ze o.a. via Udemy. Ook de iOSAcademie heeft een dag aandacht besteed aan het ontwikkelen van apps voor macOS in Xcode en met Swift.

    Ben je geinteresseerd in de ontwikkeling van apps in Swift en vind je het leuk dat met andere Nederlandse ontwikkelaars samen te doen of hen als backup te gebruiken, ben je van harte welkom. Meld je via het Discord-kanaal aan en leg snel contact met meer ervaren gelijkgestemden.

    Bijdrager
    bitsflew
    e.abrahamse op 20 september 2017

    Beste Jaco,

    Zoals Koen al aangaf is CoreData een onderwerp voor gevorderden. Dat er niets over CoreData te vinden is meer een kwestie van weten wat en waar je moet zoeken. CoreData voor iOS en macOS verschillen nogal vanwege hun historische achtergrond. Het framework is in basis voor beiden hetzelfde.

    Dat klinkt tegenstrijdig:)

    Maar dat laatste klopt, het iOS en macOS CoreData framework zijn identiek.
    Het probleem wat hier speelt is de koppeling met de UI.

    Onder macOS kun je bindings gebruiken (NSArrayController koppelen aan de CoreData context/entiteit en de TableView kolom(men) koppelen aan de ArrayController)

    Werkt prachtig (zonder amper een regel code te moeten schrijven) maar het heeft een steile leercurve en is in geval van problemen zeer lastig te debuggen.

    Niet iets om als onervaren macOS developer mee te starten.

    Om te beginnen gewoon de data ophalen met een NSFetchRequest en het resulterende array gebruiken als datasource voor de tableview.

    Bijdrager
    jacogrinwis

    Bedankt bitsflew voor de informatie van de NSArrayController ik ga dat opzoeken.

    Heel erg bedankt e.abrahamse voor het filmpje ZON-2016-08-21 op http://www.swiftdev.nl/artikels/videos/ wand op het einde word uitgelegd hoe je gewoon met sqllite3 kan werken. Dit is voor mij goed te berijpen omdat ik daar vaker mee gewerkt heb. Nu kan ik toch gewoon verder met een app bouwen die ik kan gebruiken. Ik ga ook gewoon verder met het uitpluizen hoe ik met core data een update doe. En wat bitsflew ook al zij “Het probleem wat hier speelt is de koppeling met de UI.”

14 berichten aan het bekijken - 1 tot 14 (van in totaal 14)

Je moet ingelogd zijn om een reactie op dit onderwerp te kunnen geven.