SlideShare une entreprise Scribd logo
1  sur  24
Télécharger pour lire hors ligne
Creating Papers
mekentosj.com
Alexander Griekspoor | mek@mekentosj.com


    Who is mekentosj?
•



    What’s Papers?
•



    MacOSX as a development platform
•



    Cocoa & Papers
•
mekentosj.com
Alexander Griekspoor | mek@mekentosj.com


    Who is mekentosj?
•



    What’s Papers?
•



    MacOSX as a development platform
•



    Cocoa & Papers
•
mekentosj.com
Alexander Griekspoor | mek@mekentosj.com


    Who is mekentosj?
•



    What’s Papers?
•



    MacOSX as a development platform
•



    Cocoa & Papers
•
Demo
Photo copyright by dejus | flickr.com



                                                      Developing native applications
                                Objective-C & Cocoa   for MacOSX
Objective-C & Cocoa

• Objective-C, a small superset of ANSI-C that allows object oriented programming
 [object performActionWithParameter: aParameter];



• Cocoa, a powerful API for creating native MacOSX applications



                                   Objective-C
                                    Aqua UI

                                  Runtime
                                                             Cocoa
                         Foundation       Appkit
                                      ANSI-C
                                 CoreFoundation
Cocoa & Objective-C

• Objective-C, a small superset of ANSI-C that allows object oriented programming
 [object performActionWithParameter: aParameter];



• Cocoa, a powerful API for creating native MacOSX applications



                                     Aqua UI


    CoreData       Webkit         PDFkit            Foundation     Appkit


                                 CoreFoundation
Core Data            Cocoa Bindings          PDFKit



                         Tab controls


            WebKit
                                                   Spotlight



            Papers & Cocoa        life made easy
An example: dynamic plugins
• Importers / Exporters


• Search Engines
                                  - (BOOL)readyToPerformSearch
• Protocols & Delegation
                                  - (void) performSearchWithQuery:

• Simple but powerful                           - (void)didBeginSearch:(id)sender


                                  - (void)didRetrieveObjects:(NSDictionary *)dict
• Dynamically loaded at runtime
                                                - (void)didEndSearch: (id)sender;


                                  - (BOOL)successfulCompletion;!


                                  - (void) performCleanup;
New
A free toolbox: XCode 3.0
• GCC


• XCode 3.0
   • Better workflows
   • Refactoring
   • Snapshots
   • Inline debugging

• Interface builder 3.0
   • Completely redone from scratch
   • Support for core animation built-in
New
New ways to debug: Xray

• CHUD Tools (Shark)


• Garageband like UI
  • System monitoring
  • Memory
  • Network
  • etc

• Build on DTrace
How to get started

• visit developer.apple.com


• signup for free developer
  account at connect.apple.com


• mekentosj.com/programs/
  how.html


• email: mek@mekentosj.com


• MacResearch.org /
  SciComp@Cam OSX User group



Photo copyright by shio | flickr.com
mekentosj.com - building Papers

Contenu connexe

Tendances

Life of a Chromium Developer
Life of a Chromium DeveloperLife of a Chromium Developer
Life of a Chromium Developer
mpaproductions
 

Tendances (20)

HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...
HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...
HTML5 Apps on AGL Platform with the Web Application Manager (Automotive Grade...
 
Moving To The Client - JavaFX and HTML5
Moving To The Client - JavaFX and HTML5Moving To The Client - JavaFX and HTML5
Moving To The Client - JavaFX and HTML5
 
Moving to the Client - JavaFX and HTML5
Moving to the Client - JavaFX and HTML5Moving to the Client - JavaFX and HTML5
Moving to the Client - JavaFX and HTML5
 
Moving to the Client - JavaFX and HTML5 (PowerPoint Version)
Moving to the Client - JavaFX and HTML5 (PowerPoint Version)Moving to the Client - JavaFX and HTML5 (PowerPoint Version)
Moving to the Client - JavaFX and HTML5 (PowerPoint Version)
 
Webkit Chromium Contribution Process
Webkit Chromium Contribution ProcessWebkit Chromium Contribution Process
Webkit Chromium Contribution Process
 
Petri Niemi Qt Web Kit
Petri Niemi Qt Web KitPetri Niemi Qt Web Kit
Petri Niemi Qt Web Kit
 
JS digest. February 2017
JS digest. February 2017JS digest. February 2017
JS digest. February 2017
 
Roman Iovlev. Comaqa Spring 2018. Архитектура Open Source решений для автомат...
Roman Iovlev. Comaqa Spring 2018. Архитектура Open Source решений для автомат...Roman Iovlev. Comaqa Spring 2018. Архитектура Open Source решений для автомат...
Roman Iovlev. Comaqa Spring 2018. Архитектура Open Source решений для автомат...
 
Hw accelerated webkitgtk+ on raspberry pi
Hw accelerated webkitgtk+ on raspberry piHw accelerated webkitgtk+ on raspberry pi
Hw accelerated webkitgtk+ on raspberry pi
 
Qtws19 how-to-build-qml-app-for-webos
Qtws19 how-to-build-qml-app-for-webosQtws19 how-to-build-qml-app-for-webos
Qtws19 how-to-build-qml-app-for-webos
 
Life of a Chromium Developer
Life of a Chromium DeveloperLife of a Chromium Developer
Life of a Chromium Developer
 
React Native for ReactJS Devs
React Native for ReactJS DevsReact Native for ReactJS Devs
React Native for ReactJS Devs
 
Functional as a service TDC 2020
Functional as a service TDC 2020Functional as a service TDC 2020
Functional as a service TDC 2020
 
Serverless with Firebase - Launchpad Build Burgos
Serverless with Firebase - Launchpad Build Burgos Serverless with Firebase - Launchpad Build Burgos
Serverless with Firebase - Launchpad Build Burgos
 
WebKit2 And You (GUADEC 2013)
WebKit2 And You (GUADEC 2013)WebKit2 And You (GUADEC 2013)
WebKit2 And You (GUADEC 2013)
 
Kiosk-mode browser using Chromium Embedded Framework (CEF)
Kiosk-mode browser using Chromium Embedded Framework (CEF)Kiosk-mode browser using Chromium Embedded Framework (CEF)
Kiosk-mode browser using Chromium Embedded Framework (CEF)
 
Application Architectures in Grails
Application Architectures in GrailsApplication Architectures in Grails
Application Architectures in Grails
 
Multimedia in WebKitGtk+, past/present/future
Multimedia in WebKitGtk+, past/present/futureMultimedia in WebKitGtk+, past/present/future
Multimedia in WebKitGtk+, past/present/future
 
Efficient multimedia support in QtWebKit on Raspberry Pi (GStreamer Conferenc...
Efficient multimedia support in QtWebKit on Raspberry Pi (GStreamer Conferenc...Efficient multimedia support in QtWebKit on Raspberry Pi (GStreamer Conferenc...
Efficient multimedia support in QtWebKit on Raspberry Pi (GStreamer Conferenc...
 
WebKit and GStreamer
WebKit and GStreamerWebKit and GStreamer
WebKit and GStreamer
 

Similaire à mekentosj.com - building Papers

Building Papers
Building PapersBuilding Papers
Building Papers
Mahmoud
 
RIM Casual Meetup - Bandung #DevIDBdg
RIM Casual Meetup - Bandung #DevIDBdgRIM Casual Meetup - Bandung #DevIDBdg
RIM Casual Meetup - Bandung #DevIDBdg
Ziyad Bazed
 
Auto cad 2006_api_overview
Auto cad 2006_api_overviewAuto cad 2006_api_overview
Auto cad 2006_api_overview
scdhruv5
 

Similaire à mekentosj.com - building Papers (20)

Building Papers
Building PapersBuilding Papers
Building Papers
 
Between Cocoa and Cocoa Touch: A Comparative Introduction
Between Cocoa and Cocoa Touch: A Comparative IntroductionBetween Cocoa and Cocoa Touch: A Comparative Introduction
Between Cocoa and Cocoa Touch: A Comparative Introduction
 
RIM Casual Meetup - Bandung #DevIDBdg
RIM Casual Meetup - Bandung #DevIDBdgRIM Casual Meetup - Bandung #DevIDBdg
RIM Casual Meetup - Bandung #DevIDBdg
 
DevOpsDays Warsaw 2015: Automating microservices in Syncano – Michał Kobus & ...
DevOpsDays Warsaw 2015: Automating microservices in Syncano – Michał Kobus & ...DevOpsDays Warsaw 2015: Automating microservices in Syncano – Michał Kobus & ...
DevOpsDays Warsaw 2015: Automating microservices in Syncano – Michał Kobus & ...
 
Lecture 8 - Qooxdoo - Rap Course At The University Of Szeged
Lecture 8 - Qooxdoo - Rap Course At The University Of SzegedLecture 8 - Qooxdoo - Rap Course At The University Of Szeged
Lecture 8 - Qooxdoo - Rap Course At The University Of Szeged
 
Auto cad 2006_api_overview
Auto cad 2006_api_overviewAuto cad 2006_api_overview
Auto cad 2006_api_overview
 
Introducing Sudz-C
Introducing Sudz-CIntroducing Sudz-C
Introducing Sudz-C
 
Spring on Kubernetes
Spring on KubernetesSpring on Kubernetes
Spring on Kubernetes
 
Exploring Next Generation Buildpacks - Anand Rao & Scott Deeg
Exploring Next Generation Buildpacks - Anand Rao & Scott DeegExploring Next Generation Buildpacks - Anand Rao & Scott Deeg
Exploring Next Generation Buildpacks - Anand Rao & Scott Deeg
 
Developing for BlackBerry 10 – Tools and SDKs by Luca Filigheddu
 Developing for BlackBerry 10 – Tools and SDKs by Luca Filigheddu Developing for BlackBerry 10 – Tools and SDKs by Luca Filigheddu
Developing for BlackBerry 10 – Tools and SDKs by Luca Filigheddu
 
QNX, C/C++, Qt, Cascades, HTML5… So what’s now BlackBerry 10 application deve...
QNX, C/C++, Qt, Cascades, HTML5… So what’s now BlackBerry 10 application deve...QNX, C/C++, Qt, Cascades, HTML5… So what’s now BlackBerry 10 application deve...
QNX, C/C++, Qt, Cascades, HTML5… So what’s now BlackBerry 10 application deve...
 
#dddsw - Modernizing .NET Apps with Docker
#dddsw - Modernizing .NET Apps with Docker#dddsw - Modernizing .NET Apps with Docker
#dddsw - Modernizing .NET Apps with Docker
 
Modernizing .NET Apps with Docker
Modernizing .NET Apps with DockerModernizing .NET Apps with Docker
Modernizing .NET Apps with Docker
 
Nodejs Native Add-Ons from zero to hero
Nodejs Native Add-Ons from zero to heroNodejs Native Add-Ons from zero to hero
Nodejs Native Add-Ons from zero to hero
 
Progressive web apps with QCObjects (AngularJS Chile Community Talk)
Progressive web apps with QCObjects (AngularJS Chile Community Talk)Progressive web apps with QCObjects (AngularJS Chile Community Talk)
Progressive web apps with QCObjects (AngularJS Chile Community Talk)
 
From React to React Native - Things I wish I knew when I started
From React to React Native - Things I wish I knew when I startedFrom React to React Native - Things I wish I knew when I started
From React to React Native - Things I wish I knew when I started
 
#SDD2017 - Modernizing .NET Apps with Docker
#SDD2017 - Modernizing .NET Apps with Docker#SDD2017 - Modernizing .NET Apps with Docker
#SDD2017 - Modernizing .NET Apps with Docker
 
Guides To Analyzing WebKit Performance
Guides To Analyzing WebKit PerformanceGuides To Analyzing WebKit Performance
Guides To Analyzing WebKit Performance
 
Deploying windows containers with kubernetes
Deploying windows containers with kubernetesDeploying windows containers with kubernetes
Deploying windows containers with kubernetes
 
Forge - DevCon 2016: Drawings! Drawings! Everywhere!
Forge - DevCon 2016: Drawings! Drawings! Everywhere!Forge - DevCon 2016: Drawings! Drawings! Everywhere!
Forge - DevCon 2016: Drawings! Drawings! Everywhere!
 

Dernier

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Dernier (20)

The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 

mekentosj.com - building Papers

  • 2. mekentosj.com Alexander Griekspoor | mek@mekentosj.com Who is mekentosj? • What’s Papers? • MacOSX as a development platform • Cocoa & Papers •
  • 3. mekentosj.com Alexander Griekspoor | mek@mekentosj.com Who is mekentosj? • What’s Papers? • MacOSX as a development platform • Cocoa & Papers •
  • 4. mekentosj.com Alexander Griekspoor | mek@mekentosj.com Who is mekentosj? • What’s Papers? • MacOSX as a development platform • Cocoa & Papers •
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15. Demo
  • 16. Photo copyright by dejus | flickr.com Developing native applications Objective-C & Cocoa for MacOSX
  • 17. Objective-C & Cocoa • Objective-C, a small superset of ANSI-C that allows object oriented programming [object performActionWithParameter: aParameter]; • Cocoa, a powerful API for creating native MacOSX applications Objective-C Aqua UI Runtime Cocoa Foundation Appkit ANSI-C CoreFoundation
  • 18. Cocoa & Objective-C • Objective-C, a small superset of ANSI-C that allows object oriented programming [object performActionWithParameter: aParameter]; • Cocoa, a powerful API for creating native MacOSX applications Aqua UI CoreData Webkit PDFkit Foundation Appkit CoreFoundation
  • 19. Core Data Cocoa Bindings PDFKit Tab controls WebKit Spotlight Papers & Cocoa life made easy
  • 20. An example: dynamic plugins • Importers / Exporters • Search Engines - (BOOL)readyToPerformSearch • Protocols & Delegation - (void) performSearchWithQuery: • Simple but powerful - (void)didBeginSearch:(id)sender - (void)didRetrieveObjects:(NSDictionary *)dict • Dynamically loaded at runtime - (void)didEndSearch: (id)sender; - (BOOL)successfulCompletion;! - (void) performCleanup;
  • 21. New A free toolbox: XCode 3.0 • GCC • XCode 3.0 • Better workflows • Refactoring • Snapshots • Inline debugging • Interface builder 3.0 • Completely redone from scratch • Support for core animation built-in
  • 22. New New ways to debug: Xray • CHUD Tools (Shark) • Garageband like UI • System monitoring • Memory • Network • etc • Build on DTrace
  • 23. How to get started • visit developer.apple.com • signup for free developer account at connect.apple.com • mekentosj.com/programs/ how.html • email: mek@mekentosj.com • MacResearch.org / SciComp@Cam OSX User group Photo copyright by shio | flickr.com