SlideShare a Scribd company logo
1 of 100
iPhone Development Intro




                      www.braceta.com
Luis Azevedo    www.twitter.com/braceta
Overview

• Tools/SDK
• Setting up
• Objective-C
• Demo?
Setting up...
Setting up...
• Get a Mac
Setting up...
• Get a Mac
• Get the SDK
Setting up...
• Get a Mac
• Get the SDK
• Install
Setting up...
• Get a Mac
• Get the SDK
• Install
• Get an Apple Developer Connection
  account
Setting up...
• Get a Mac
• Get the SDK
• Install
• Get an Apple Developer Connection
  account
Setting up...
• Get a Mac
• Get the SDK
• Install
• Get an Apple Developer Connection €€€
  account
Setting up...
• Get a Mac
• Get the SDK
• Install
• Get an Apple Developer Connection €€€
  account
• Code
Setting up...
• Get a Mac
• Get the SDK
• Install
• Get an Apple Developer Connection €€€
  account
• Code
• Profit?
Tools/SDK

• Xcode
• iPhone/iPod or iPad
• Interface Builder
• iPhone Simulator
• Instruments
Xcode
Simulator
Interface Builder
Instruments
Languages

•C
• C++
• Objective-C
• Objective-C++
Objective-C
    History
C   Smalltalk
C   Smalltalk




     Objective-C
C   Smalltalk




     Objective-C

                C++
C   Smalltalk




     Objective-C

                C++

           Java    C#
C   Smalltalk




     Objective-C

                C++

           Java    C#
C   Smalltalk




     Objective-C

                C++

           Java    C#
Objective-C
   Description
Objective-C
Objective-C
• OOP
Objective-C
• OOP
• Dynamic
Objective-C
• OOP
• Dynamic
• based on message passing
Objective-C
• OOP
• Dynamic
• based on message passing
• single inherance
Objective-C
• OOP
• Dynamic
• based on message passing
• single inherance
• Protocols and Categories
Objective-C
• OOP
• Dynamic
• based on message passing
• single inherance
• Protocols and Categories
• full of [] and @s
Files


• .h - Header files
• .m - Class implementation files
Objective-C
    Sintax
Syntax Examples
Syntax Examples
[object method];
Syntax Examples
[object method];
int value = [object method];
Syntax Examples
[object method];
int value = [object method];
[object method:argument];
Syntax Examples
[object method];
int value = [object method];
[object method:argument];
[[object method] method2];
Syntax Examples
[object method];
int value = [object method];
[object method:argument];
[[object method] method2];
[object method:argument option:anotherArg];
.m file


- (id) thisIsAMethod:(int)param1
                 options:(float)param2
.m file


- (id) thisIsAMethod:(int)param1
                 options:(float)param2

 {
     for (int n = 0; n < 10; ++n)
     {
         NSLog(@”N=%d”, n);
         [object callMethod:1 thing:2];
     }
 }
.m file
@implementation MyClass
- (id) thisIsAMethod:(int)param1
                 options:(float)param2

 {
       for (int n = 0; n < 10; ++n)
       {
           NSLog(@”N=%d”, n);
           [object callMethod:1 thing:2];
       }
 }
@end
.m file
@implementation MyClass
- (id) thisIsAMethod:(int)param1
        @class     options:(float)param2
        @interface
  {
        @end
      for (int n = 0; n < 10; ++n)
      { @property
           NSLog(@”N=%d”, n);
        @private
           [object callMethod:1 thing:2];
      } @protected
  }
@end
.m file
@implementation MyClass
- (id) thisIsAMethod:(int)param1
                 options:(float)param2

 {
       for (int n = 0; n < 10; ++n)
       {
           NSLog(@”N=%d”, n);
           [object callMethod:1 thing:2];
       }
 }
@end
.m file
@implementation MyClass
- (id) thisIsAMethod:(int)param1
                 options:(float)param2

 {
       for (int n = 0; n < 10; ++n)
       {
           NSLog(@”N=%d”, n);
           [object callMethod:1 thing:2];
       }
 }
@end
.m file
@implementation MyClass
- (id) thisIsAMethod:(int)param1
                 options:(float)param2

 {
       for (int n = 0; n < 10; ++n)
       {
           NSLog(@”N=%d”, n);
           [object callMethod:1 thing:2];
       }
 }
@end
.m file
@implementation MyClass
- (id) thisIsAMethod:(int)param1
                 options:(float)param2

 {
       for (int n = 0; n < 10; ++n)
       {
        NSString
             NSLog(@”N=%d”, n);
             [object callMethod:1 thing:2];
       }
 }
@end
.h file
#import <Foundation/Foundation.h>

@interface MyClass : NSObject
{
      NSDictionary *member;
      bool otherMember;
}
- (void) init;
- (id) initWithItems:(NSArray*)array
               enabled:(bool)enabled;

+ (id) myClassWithItems:(NSArray*)array;

@end
.h file
#import <Foundation/Foundation.h>

@interface MyClass : NSObject
{
      NSDictionary *member;
      bool otherMember;
}
- (void) init;
- (id) initWithItems:(NSArray*)array
               enabled:(bool)enabled;

+ (id) myClassWithItems:(NSArray*)array;

@end
.h file
#import <Foundation/Foundation.h>

@interface MyClass : NSObject
{
      NSDictionary *member;
      bool otherMember;
}
- (void) init;
- (id) initWithItems:(NSArray*)array
               enabled:(bool)enabled;

+ (id) myClassWithItems:(NSArray*)array;

@end
.h file
#import <Foundation/Foundation.h>

@interface MyClass : NSObject
{
      NSDictionary *member;
      bool otherMember;
}
- (void) init;
- (id) initWithItems:(NSArray*)array
               enabled:(bool)enabled;

+ (id) myClassWithItems:(NSArray*)array;

@end
.h file
#import <Foundation/Foundation.h>

@interface MyClass : NSObject
{
      NSDictionary *member;
      bool otherMember;
}
- (void) init;
- (id) initWithItems:(NSArray*)array
               enabled:(bool)enabled;

+ (id) myClassWithItems:(NSArray*)array;

@end
Syntax Examples

// Create MyClass instance
MyClass *myClass = [[MyClass alloc] init];
Properties
@interface MyClass
{
    int harold;
}

@property (nonatomic,retain) int age;

@end

// In MyClass.m...

@interface MyClass
@synthesize age;
@end
Properties


[myClass setAge:20];
myClass.age = 20; // is calling setAge
Categories

@interface NSObject (Foo)
- (void) extraFooMethod;
@end
Categories
@interface NSObject (Foo)
- (void) extraFooMethod;
@end


NSArray *array = [NSArray array];
[array extraFooMethod];
iOS Development
iOS Frameworks
iOS Frameworks

     Cocoa Touch
iOS Frameworks

                   UIKit, MapKit, Printing,
     Cocoa Touch   Gesture Recognizers
iOS Frameworks

                   UIKit, MapKit, Printing,
     Cocoa Touch   Gesture Recognizers



       Media
iOS Frameworks

                   UIKit, MapKit, Printing,
     Cocoa Touch   Gesture Recognizers



                   Core Audio, Open GL ES,
       Media       Quartz, Core Animation
iOS Frameworks

                    UIKit, MapKit, Printing,
     Cocoa Touch    Gesture Recognizers



                    Core Audio, Open GL ES,
       Media        Quartz, Core Animation




    Core Services
iOS Frameworks

                    UIKit, MapKit, Printing,
     Cocoa Touch    Gesture Recognizers



                    Core Audio, Open GL ES,
       Media        Quartz, Core Animation


                    Core Data, Core
    Core Services   Foundation, Address Book
                    Framework
iOS Frameworks

                    UIKit, MapKit, Printing,
     Cocoa Touch    Gesture Recognizers



                    Core Audio, Open GL ES,
       Media        Quartz, Core Animation


                    Core Data, Core
    Core Services   Foundation, Address Book
                    Framework



      Core OS
iOS Frameworks

                    UIKit, MapKit, Printing,
     Cocoa Touch    Gesture Recognizers



                    Core Audio, Open GL ES,
       Media        Quartz, Core Animation


                    Core Data, Core
    Core Services   Foundation, Address Book
                    Framework



      Core OS       Posix Threads, SQLite
iOS Frameworks

                              UIKit, MapKit, Printing,
Objective C   Cocoa Touch     Gesture Recognizers



                              Core Audio, Open GL ES,
                 Media        Quartz, Core Animation


                              Core Data, Core
              Core Services   Foundation, Address Book
                              Framework




   C            Core OS       Posix Threads, SQLite
UIKit
UIKit
MVC Pattern
MVC Pattern




Model
MVC Pattern
            View




Model
MVC Pattern
            View




Model              Controller
MVC Pattern
            View




Model              Controller
MVC Pattern
            View




Model              Controller
Views
Views
• UIView class
Views
• UIView class
• View Object is a rectangle on the screen
Views
• UIView class
• View Object is a rectangle on the screen
• Handles touch events
Views
• UIView class
• View Object is a rectangle on the screen
• Handles touch events
• Can be container for other views
Views
• UIView class
• View Object is a rectangle on the screen
• Handles touch events
• Can be container for other views
• Can be created programatically or with
  Interface Builder
Views
• UIView class
• View Object is a rectangle on the screen
• Handles touch events
• Can be container for other views
• Can be created programatically or with
  Interface Builder
• Can be animated using Core Animations
Views
ViewControllers
ViewControllers
• iOS Controllers are ViewControllers
ViewControllers
• iOS Controllers are ViewControllers
• Descendant of UIViewController
ViewControllers
• iOS Controllers are ViewControllers
• Descendant of UIViewController
• Provides all the logic to bridge data from
  the model and the view
ViewControllers
• iOS Controllers are ViewControllers
• Descendant of UIViewController
• Provides all the logic to bridge data from
  the model and the view
• Loads Views
ViewControllers
• iOS Controllers are ViewControllers
• Descendant of UIViewController
• Provides all the logic to bridge data from
  the model and the view
• Loads Views
• Implements the code to handle actions
  triggered by touch events on views
ViewController
.XIB Files
.XIB Files

• Interface Builder XML GUI spec files
.XIB Files

• Interface Builder XML GUI spec files
• Connects from IB to the Code
.XIB Files

• Interface Builder XML GUI spec files
• Connects from IB to the Code
• Only on iOS. At build time are converted
  to NIB files
Demo
Resources
Beggining iPhone 3 Development
   Dave Mark | Jeff LaMarche
 http://iphonedevelopment.blogspot.com/
Resources
Facebook Three20 Obj-C
      Framework

https://github.com/facebook/three20
Q&A

More Related Content

What's hot

みゆっき☆Think#7 「本気で学ぶJavascript」
みゆっき☆Think#7 「本気で学ぶJavascript」みゆっき☆Think#7 「本気で学ぶJavascript」
みゆっき☆Think#7 「本気で学ぶJavascript」
techtalkdwango
 
C# Starter L02-Classes and Objects
C# Starter L02-Classes and ObjectsC# Starter L02-Classes and Objects
C# Starter L02-Classes and Objects
Mohammad Shaker
 
CodeMash - Building Rich Apps with Groovy SwingBuilder
CodeMash - Building Rich Apps with Groovy SwingBuilderCodeMash - Building Rich Apps with Groovy SwingBuilder
CodeMash - Building Rich Apps with Groovy SwingBuilder
Andres Almiray
 

What's hot (19)

Jquery
JqueryJquery
Jquery
 
Es.next
Es.nextEs.next
Es.next
 
J query1
J query1J query1
J query1
 
Jazoon 2010 - Building DSLs with Eclipse
Jazoon 2010 - Building DSLs with EclipseJazoon 2010 - Building DSLs with Eclipse
Jazoon 2010 - Building DSLs with Eclipse
 
J query
J queryJ query
J query
 
Scala on Android
Scala on AndroidScala on Android
Scala on Android
 
みゆっき☆Think#7 「本気で学ぶJavascript」
みゆっき☆Think#7 「本気で学ぶJavascript」みゆっき☆Think#7 「本気で学ぶJavascript」
みゆっき☆Think#7 「本気で学ぶJavascript」
 
greenDAO
greenDAOgreenDAO
greenDAO
 
Xtext Eclipse Con
Xtext Eclipse ConXtext Eclipse Con
Xtext Eclipse Con
 
C# Starter L02-Classes and Objects
C# Starter L02-Classes and ObjectsC# Starter L02-Classes and Objects
C# Starter L02-Classes and Objects
 
Green dao
Green daoGreen dao
Green dao
 
Awesomeness of JavaScript…almost
Awesomeness of JavaScript…almostAwesomeness of JavaScript…almost
Awesomeness of JavaScript…almost
 
Reversing JavaScript
Reversing JavaScriptReversing JavaScript
Reversing JavaScript
 
All about scala
All about scalaAll about scala
All about scala
 
GreenDao Introduction
GreenDao IntroductionGreenDao Introduction
GreenDao Introduction
 
COLLADA & WebGL
COLLADA & WebGLCOLLADA & WebGL
COLLADA & WebGL
 
From C++ to Objective-C
From C++ to Objective-CFrom C++ to Objective-C
From C++ to Objective-C
 
jQuery
jQueryjQuery
jQuery
 
CodeMash - Building Rich Apps with Groovy SwingBuilder
CodeMash - Building Rich Apps with Groovy SwingBuilderCodeMash - Building Rich Apps with Groovy SwingBuilder
CodeMash - Building Rich Apps with Groovy SwingBuilder
 

Viewers also liked

iGaming360 Brochure
iGaming360 BrochureiGaming360 Brochure
iGaming360 Brochure
Bmacdo
 
Polynésie française
Polynésie françaisePolynésie française
Polynésie française
FabienRiviere
 
Introduzione Alla Web Analytics
Introduzione Alla Web AnalyticsIntroduzione Alla Web Analytics
Introduzione Alla Web Analytics
Marco
 
Bruce B. Barker Portfolio
Bruce B. Barker PortfolioBruce B. Barker Portfolio
Bruce B. Barker Portfolio
BruceBBarker
 
Current Vacancies
Current VacanciesCurrent Vacancies
Current Vacancies
guidoegidi
 
Gigse 2010 Brochure
Gigse 2010 BrochureGigse 2010 Brochure
Gigse 2010 Brochure
Bmacdo
 
Event Marketing 101
Event Marketing 101Event Marketing 101
Event Marketing 101
BruceBBarker
 

Viewers also liked (17)

Babysho
BabyshoBabysho
Babysho
 
Socialmedialiverpool 120209011224-phpapp02
Socialmedialiverpool 120209011224-phpapp02Socialmedialiverpool 120209011224-phpapp02
Socialmedialiverpool 120209011224-phpapp02
 
Introduzione Alla Web Analytics
Introduzione Alla Web AnalyticsIntroduzione Alla Web Analytics
Introduzione Alla Web Analytics
 
Ems 131 chapter_1
Ems 131 chapter_1Ems 131 chapter_1
Ems 131 chapter_1
 
Cactus Blooms - Motivation for Life
Cactus  Blooms - Motivation for LifeCactus  Blooms - Motivation for Life
Cactus Blooms - Motivation for Life
 
iGaming360 Brochure
iGaming360 BrochureiGaming360 Brochure
iGaming360 Brochure
 
Cosort
CosortCosort
Cosort
 
Polynésie française
Polynésie françaisePolynésie française
Polynésie française
 
Introduzione Alla Web Analytics
Introduzione Alla Web AnalyticsIntroduzione Alla Web Analytics
Introduzione Alla Web Analytics
 
Wikipedia Campaign Management Assignment Session No 4 By Kashif Waqar Khan
Wikipedia   Campaign Management Assignment   Session No 4   By Kashif Waqar KhanWikipedia   Campaign Management Assignment   Session No 4   By Kashif Waqar Khan
Wikipedia Campaign Management Assignment Session No 4 By Kashif Waqar Khan
 
Bruce B. Barker Portfolio
Bruce B. Barker PortfolioBruce B. Barker Portfolio
Bruce B. Barker Portfolio
 
Current Vacancies
Current VacanciesCurrent Vacancies
Current Vacancies
 
Orange Telecom - Kashif Waqar Khan - IE MDMK2011
Orange Telecom - Kashif Waqar Khan - IE MDMK2011Orange Telecom - Kashif Waqar Khan - IE MDMK2011
Orange Telecom - Kashif Waqar Khan - IE MDMK2011
 
Revista biotec 11
Revista biotec 11Revista biotec 11
Revista biotec 11
 
Gigse 2010 Brochure
Gigse 2010 BrochureGigse 2010 Brochure
Gigse 2010 Brochure
 
StudioLEiN
StudioLEiNStudioLEiN
StudioLEiN
 
Event Marketing 101
Event Marketing 101Event Marketing 101
Event Marketing 101
 

Similar to iPhone Development Intro

FI MUNI 2012 - iOS Basics
FI MUNI 2012 - iOS BasicsFI MUNI 2012 - iOS Basics
FI MUNI 2012 - iOS Basics
Petr Dvorak
 
The Art Of Readable Code
The Art Of Readable CodeThe Art Of Readable Code
The Art Of Readable Code
Baidu, Inc.
 
iPhone Workshop Mobile Monday Ahmedabad
iPhone Workshop Mobile Monday AhmedabadiPhone Workshop Mobile Monday Ahmedabad
iPhone Workshop Mobile Monday Ahmedabad
momoahmedabad
 

Similar to iPhone Development Intro (20)

iPhone development from a Java perspective (Jazoon '09)
iPhone development from a Java perspective (Jazoon '09)iPhone development from a Java perspective (Jazoon '09)
iPhone development from a Java perspective (Jazoon '09)
 
Getting started with titanium
Getting started with titaniumGetting started with titanium
Getting started with titanium
 
Mobile Developers Talks: Delve Mobile
Mobile Developers Talks: Delve MobileMobile Developers Talks: Delve Mobile
Mobile Developers Talks: Delve Mobile
 
Getting started with Appcelerator Titanium
Getting started with Appcelerator TitaniumGetting started with Appcelerator Titanium
Getting started with Appcelerator Titanium
 
iOS overview
iOS overviewiOS overview
iOS overview
 
Jeff English: Demystifying Module Development - How to Extend Titanium
Jeff English: Demystifying Module Development - How to Extend TitaniumJeff English: Demystifying Module Development - How to Extend Titanium
Jeff English: Demystifying Module Development - How to Extend Titanium
 
Irving iOS Jumpstart Meetup - Objective-C Session 2
Irving iOS Jumpstart Meetup - Objective-C Session 2Irving iOS Jumpstart Meetup - Objective-C Session 2
Irving iOS Jumpstart Meetup - Objective-C Session 2
 
Programming iOS in C#
Programming iOS in C#Programming iOS in C#
Programming iOS in C#
 
FI MUNI 2012 - iOS Basics
FI MUNI 2012 - iOS BasicsFI MUNI 2012 - iOS Basics
FI MUNI 2012 - iOS Basics
 
MFF UK - Introduction to iOS
MFF UK - Introduction to iOSMFF UK - Introduction to iOS
MFF UK - Introduction to iOS
 
Painless Persistence in a Disconnected World
Painless Persistence in a Disconnected WorldPainless Persistence in a Disconnected World
Painless Persistence in a Disconnected World
 
.NET Foundation, Future of .NET and C#
.NET Foundation, Future of .NET and C#.NET Foundation, Future of .NET and C#
.NET Foundation, Future of .NET and C#
 
.Net 3.5
.Net 3.5.Net 3.5
.Net 3.5
 
Node azure
Node azureNode azure
Node azure
 
iOS 101 - Xcode, Objective-C, iOS APIs
iOS 101 - Xcode, Objective-C, iOS APIsiOS 101 - Xcode, Objective-C, iOS APIs
iOS 101 - Xcode, Objective-C, iOS APIs
 
The Art Of Readable Code
The Art Of Readable CodeThe Art Of Readable Code
The Art Of Readable Code
 
Native Phone Development 101
Native Phone Development 101Native Phone Development 101
Native Phone Development 101
 
soft-shake.ch - Hands on Node.js
soft-shake.ch - Hands on Node.jssoft-shake.ch - Hands on Node.js
soft-shake.ch - Hands on Node.js
 
iPhone Workshop Mobile Monday Ahmedabad
iPhone Workshop Mobile Monday AhmedabadiPhone Workshop Mobile Monday Ahmedabad
iPhone Workshop Mobile Monday Ahmedabad
 
Android development with Scala and SBT
Android development with Scala and SBTAndroid development with Scala and SBT
Android development with Scala and SBT
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+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@
 

Recently uploaded (20)

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
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
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...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
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)
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
+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...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
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...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
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
 

iPhone Development Intro