With iOS development, we make applications which can be installed and used on iPhones, iPad etc. This course will cover important aspects to it and before diving into the course, we have decided to share with you some of the basic questions around iOS development. These questions will give you basic understanding about iOS development.
Q1. Which tool to use for development in iOS?
Q2. What are the languages involved in iOS development?
Ans. Objective C and Swift
Q3. What are the minimum hardware requirements for iOS development?
Ans. Operating System Type: Mac
RAM: 4 GB
Q4. What is the most popular language used in Xcode for iOS development?
Ans. Swift is the most popular language since it is a protocol oriented programming language.
Q5. What is the difference between Objective C and Swift language?
i) It is an object oriented programming language.
ii) It supports Dynamic typing.
iii) It supports multiple inheritance.
i) It is a protocol oriented programming language.
ii) It supports Static typing.
iii) It does not support multiple inheritance.
Q6. Introducing some basic concepts of object oriented programming language:
• Access control
• Method overloading
• Method overriding
Object: Objects are self-contained modules of functionality that can be easily used, and re-used as the building blocks of an App.
Class: Class is the collection of objects that describe the behavior and properties of any particular type of object.
Properties: Properties of a class are common attributes of that class that can be shared across each object.
Method: Methods or Functions are the behavior of the objects of a class.
Access Controls: It restricts your code blocks from being accessed from different source files. There are Five types of access controls.
Open and Public: You can access the code within the source file and access the file which is imported from another source file. The difference between these two is that Open classes and members can be overridden within and outside the module. Whereas Public classes and members can be overridden within the module only. It can't be overridden outside of the module.
Internal: Internal can be accessed within the source file but not in another source file.
Private: Private can be accessed within the module but not outside the module. Private is not accessible in extensions.
File-private: Fileprivate can be accessed within the same file but not outside the source file but it is different from private since it is accessible in extensions also.
Encapsulation: Encapsulation is a way of binding/wrapping the code and data together into a single unit.
Abstraction: In abstraction, the important data and methods are exposed while hiding their definition.
Inheritance: Inheritance is a process by which a child class inherits the properties of its parent class.
Polymorphism: Polymorphism in which objects behave differently in the module and file.
Method overloading: Method overloading is in which a class has two or more methods with the same name but with different parameters.
Method overriding: Method Overriding is in which two methods have the same method name and parameters. One of the methods is in the parent class and the other is in the child class.