The main purpose of Objective-C programming language is to add object
orientation to the C programming language and classes are the central
feature of Objective-C that support object-oriented programming and are
often called user-defined types.
Labels
.
Search Your Article
Total Pageviews
Saturday, February 4, 2017
Objective-C Inheritance
One of the most important concepts in object-oriented programming is
that of inheritance. Inheritance allows us to define a class in terms of
another class which makes it easier to create and maintain an
application. This also provides an opportunity to reuse the code
functionality and fast implementation time.
Objective-C Polymorphism
The word polymorphism means having many forms. Typically,
polymorphism occurs when there is a hierarchy of classes and they are
related by inheritance.
Objective-C polymorphism means that a call to a member function will cause a different function to be executed depending on the type of object that invokes the function.
Objective-C polymorphism means that a call to a member function will cause a different function to be executed depending on the type of object that invokes the function.
Objective-C Data Encapsulation
All Objective-C programs are composed of the following two fundamental elements:
- Program statements (code): This is the part of a program that performs actions and they are called methods.
- Program data: The data is the information of the program which is affected by the program functions.
Objective-C Categories
Sometimes, you may find that you wish to extend an existing class by
adding behavior that is useful only in certain situations. In order add
such extension to existing classes, Objective-C provides categories and extensions.
Objective-C Posing
Before starting about Posing in Objective-C, I would like to bring to
your notice that Posing was declared deprecated in Mac OS X 10.5 and
it's not available for use thereafter. So for those who are not
concerned about these deprecated methods can skip this chapter.
Objective-C Extensions
A class extension bears some similarity to a category, but it can
only be added to a class for which you have the source code at compile
time (the class is compiled at the same time as the class extension).
The methods declared by a class extension are implemented in the implementation block for the original class, so you can't,
The methods declared by a class extension are implemented in the implementation block for the original class, so you can't,
Objective-C Protocols
Objective-C allows you to define protocols, which declare the methods
expected to be used for a particular situation. Protocols are
implemented in the classes conforming to the protocol.
A simple example would be a network URL handling class, it will have a protocol with methods like processCompleted delegate method that intimates the calling class once the network URL fetching operation is over.
A simple example would be a network URL handling class, it will have a protocol with methods like processCompleted delegate method that intimates the calling class once the network URL fetching operation is over.
Objective-C Dynamic Binding
Dynamic binding is determining the method to invoke at runtime
instead of at compile time. Dynamic binding is also referred to as late
binding.
In Objective-C, all methods are resolved dynamically at runtime. The exact code executed is determined by both the method name (the selector) and the receiving object.
In Objective-C, all methods are resolved dynamically at runtime. The exact code executed is determined by both the method name (the selector) and the receiving object.
Objective-C Composite Objects
We can create subclass within a class cluster that defines a class
that embeds within it an object. These class objects are composite
objects.
So you might be wondering what's a class cluster. So we will first see what's a class cluster.
So you might be wondering what's a class cluster. So we will first see what's a class cluster.
Obj-C Foundation Framework
If you refer Apple documentation, you can see the details of Foundation framework as given below.
The Foundation framework defines a base layer of Objective-C classes. In addition to providing a set of useful primitive object classes, it introduces several paradigms that define functionality not covered by the Objective-C language. The Foundation framework is designed with these goals in mind:
The Foundation framework defines a base layer of Objective-C classes. In addition to providing a set of useful primitive object classes, it introduces several paradigms that define functionality not covered by the Objective-C language. The Foundation framework is designed with these goals in mind:
Objective-C Fast Enumeration
Fast enumeration is an Objective-C's feature that helps in
enumerating through a collection. So in order to know about fast
enumeration, we need know about collection first which will be explained
in the following section.
Obj-C Memory Management
Memory management is one of the most important process in any
programming language. It is the process by which the memory of objects
are allocated when they are required and deallocated when they are no
longer required.
Objective-C Quick Guide
Objective-C Overview
Objective-C is general-purpose language that is developed on top of C Programming language by adding features of Small Talk programming language making it an object-oriented language. It is primarily used in developing iOS and Mac OS X operating systems as well as its applications.Objective-C - Useful Resources
The following resources contain additional information on Objective
C. Please use them to get more in-depth knowledge on this topic.
Discuss Objective-C
Objective-C is a general-purpose, object-oriented programming
language that adds Smalltalk-style messaging to the C programming
language. This is the main programming language used by Apple for the OS
X and iOS operating systems and their respective APIs, Cocoa and Cocoa
Touch.
Node.js - Introduction
What is Node.js?
Node.js is a server-side platform built on Google Chrome's JavaScript Engine (V8 Engine). Node.js was developed by Ryan Dahl in 2009 and its latest version is v0.10.36. The definition of Node.js as supplied by its official documentation is as follows −Node.js - Environment Setup
Try it Option Online
You really do not need to set up your own environment to start learning Node.js. Reason is very simple, we already have set up Node.js environment online, so that you can execute all the available examples online at the same time when you are doing your theory work.
Node.js - First Application
Before creating an actual "Hello, World!" application using Node.js,
let us see the components of a Node.js application. A Node.js
application consists of the following three important components −
Node.js - REPL Terminal
REPL stands for Read Eval Print Loop and it represents a computer
environment like a Windows console or Unix/Linux shell where a command
is entered and the system responds with an output in an interactive
mode. Node.js or Node comes bundled with a REPL environment. It performs the following tasks −
Node.js - NPM
Node Package Manager (NPM) provides two main functionalities −
- Online repositories for node.js packages/modules which are searchable on search.nodejs.org
- Command line utility to install Node.js packages, do version management and dependency management of Node.js packages.
Node.js - Callbacks Concept
What is Callback?
Callback is an asynchronous equivalent for a function. A callback function is called at the completion of a given task. Node makes heavy use of callbacks. All the APIs of Node are written in such a way that they support callbacks.Node.js - Event Loop
Node.js is a single-threaded application, but it can support concurrency via the concept of event and callbacks. Every API of Node.js is asynchronous and being single-threaded, they use async function calls
to maintain concurrency.
Node.js - Event Emitter
Many objects in a Node emit events, for example, a net.Server emits
an event each time a peer connects to it, an fs.readStream emits an
event when the file is opened. All objects which emit events are the
instances of events.EventEmitter.
Node.js - Buffers
Pure JavaScript is Unicode friendly, but it is not so for binary
data. While dealing with TCP streams or the file system, it's necessary
to handle octet streams. Node provides Buffer class which provides
instances to store raw data similar to an array of integers but
corresponds to a raw memory allocation outside the V8 heap.
Node.js - Streams
What are Streams?
Streams are objects that let you read data from a source or write data to a destination in continuous fashion. In Node.js, there are four types of streams −Node.js - File System
Node implements File I/O using simple wrappers around standard POSIX
functions. The Node File System (fs) module can be imported using the
following syntax −
var fs = require("fs")
Node.js - Global Objects
Node.js global objects are global in nature and they are available in
all modules. We do not need to include these objects in our
application, rather we can use them directly. These objects are modules,
functions, strings and object itself as explained below.
Node.js - Utility Modules
There are several utility modules available in Node.js module
library. These modules are very common and are frequently used while
developing any Node based application.
Node.js - Web Module
What is a Web Server?
A Web Server is a software application which handles HTTP requests sent by the HTTP client, like web browsers, and returns web pages in response to the clients. Web servers usually deliver html documents along with images, style sheets, and scripts.Node.js - Express Framework
Express Overview
Express is a minimal and flexible Node.js web application framework that provides a robust set of features to develop web and mobile applications. It facilitates the rapid development of Node based Web applications. Following are some of the core features of Express framework −Node.js - RESTful API
What is REST architecture?
REST stands for REpresentational State Transfer. REST is web standards based architecture and uses HTTP Protocol. It revolves around resource where every component is a resource and a resource is accessed by a common interface using HTTP standard methods. REST was first introduced by Roy Fielding in 2000.Node.js - Scaling Application
Node.js runs in a single-thread mode, but it uses an event-driven
paradigm to handle concurrency. It also facilitates creation of child
processes to leverage parallel processing on multi-core CPU based
systems.
Child processes always have three streams child.stdin, child.stdout, and child.stderr which may be shared with the stdio streams of the parent process.
Child processes always have three streams child.stdin, child.stdout, and child.stderr which may be shared with the stdio streams of the parent process.
Node.js - Packaging
JXcore, which is an open source project, introduces a unique
feature for packaging and encryption of source files and other assets
into JX packages.
Consider you have a large project consisting of many files. JXcore can pack them all into a single file to simplify the distribution. This chapter provides a quick overview of the whole process starting from installing JXcore.
Consider you have a large project consisting of many files. JXcore can pack them all into a single file to simplify the distribution. This chapter provides a quick overview of the whole process starting from installing JXcore.
Node.js - Quick Guide
Node.js - Introduction
What is Node.js?
Node.js is a server-side platform built on Google Chrome's JavaScript Engine (V8 Engine). Node.js was developed by Ryan Dahl in 2009 and its latest version is v0.10.36. The definition of Node.js as supplied by its official documentation is as follows −Node.js - Useful Resources
The following resources contain additional information on Node.js. Please use them to get more in-depth knowledge on this.
Discuss Node.js
Node.js is a very powerful JavaScript-based framework/platform built
on Google Chrome's JavaScript V8 Engine. It is used to develop I/O
intensive web applications like video streaming sites, single-page
applications, and other web applications. Node.js is open source,
completely free, and used by thousands of developers around the world.
MATLAB - Overview
MATLAB (matrix laboratory) is a fourth-generation high-level
programming language and interactive environment for numerical
computation, visualization and programming.
MATLAB - Environment Setup
Try it Option Online
You really do not need to set up your own environment to start learning MATLAB Octave. Reason is very simple, we already have set up MATLAB Octave environment online, so that you can execute all the available examples online at the same time when you are doing your theory work.
MATLAB - Basic Syntax
MATLAB environment behaves like a super-complex calculator. You can enter commands at the >> command prompt.
MATLAB is an interpreted environment. In other words, you give a command and MATLAB executes it right away.
MATLAB is an interpreted environment. In other words, you give a command and MATLAB executes it right away.
MATLAB - Variables
In MATLAB environment, every variable is an array or matrix.
You can assign variables in a simple way. For example,
You can assign variables in a simple way. For example,
x = 3 % defining x and initializing it with a valueMATLAB will execute the above statement and return the following result −
x = 3
MATLAB - Commands
MATLAB is an interactive program for numerical computation and data
visualization. You can enter a command by typing it at the MATLAB prompt
'>>' on the Command Window.
In this section, we will provide lists of commonly used general MATLAB commands.
In this section, we will provide lists of commonly used general MATLAB commands.
MATLAB - M-Files
So far, we have used MATLAB environment as a calculator. However,
MATLAB is also a powerful programming language, as well as an
interactive computational environment.
In previous chapters, you have learned how to enter commands from the MATLAB command prompt.
In previous chapters, you have learned how to enter commands from the MATLAB command prompt.
MATLAB - Data Types
MATLAB does not require any type declaration or dimension statements.
Whenever MATLAB encounters a new variable name, it creates the variable
and allocates appropriate memory space.
MATLAB - Operators
An operator is a symbol that tells the compiler to perform specific
mathematical or logical manipulations. MATLAB is designed to operate
primarily on whole matrices and arrays. Therefore, operators in MATLAB
work both on scalar and non-scalar data. MATLAB allows the following
types of elementary operations −
MATLAB - Decision Making
Decision making structures require that the programmer should specify
one or more conditions to be evaluated or tested by the program, along
with a statement or statements to be executed if the condition is
determined to be true, and optionally, other statements to be executed
if the condition is determined to be false.
MATLAB - Matrix
A matrix is a two-dimensional array of numbers.
In MATLAB, you create a matrix by entering elements in each row as comma or space delimited numbers and using semicolons to mark the end of each row.
For example, let us create a 4-by-5 matrix a −
In MATLAB, you create a matrix by entering elements in each row as comma or space delimited numbers and using semicolons to mark the end of each row.
For example, let us create a 4-by-5 matrix a −
MATLAB - Loop Types
There may be a situation when you need to execute a block of code
several number of times. In general, statements are executed
sequentially. The first statement in a function is executed first,
followed by the second, and so on.
MATLAB - Vectors
A vector is a one-dimensional array of numbers. MATLAB allows creating two types of vectors −
- Row vectors
- Column vectors
MATLAB - Arrays
All variables of all data types in MATLAB are multidimensional
arrays. A vector is a one-dimensional array and a matrix is a
two-dimensional array.
We have already discussed vectors and matrices. In this chapter, we will discuss multidimensional arrays. However, before that, let us discuss some special types of arrays.
We have already discussed vectors and matrices. In this chapter, we will discuss multidimensional arrays. However, before that, let us discuss some special types of arrays.
MATLAB - Colon Notation
The colon(:) is one of the most useful operator in MATLAB. It is used to create vectors, subscript arrays, and specify for iterations.
If you want to create a row vector, containing integers from 1 to 10, you write −
If you want to create a row vector, containing integers from 1 to 10, you write −
MATLAB - Numbers
MATLAB supports various numeric classes that include signed and
unsigned integers and single-precision and double-precision
floating-point numbers. By default, MATLAB stores all numeric values as
double-precision floating point numbers.
MATLAB - Strings
Creating a character string is quite simple in MATLAB. In fact, we
have used it many times. For example, you type the following in the
command prompt −
MATLAB - Functions
A function is a group of statements that together perform a task. In
MATLAB, functions are defined in separate files. The name of the file
and of the function should be the same.
MATLAB - Data Import
Importing data in MATLAB means loading data from an external file. The importdata function allows loading various data files of different formats. It has the following five forms −
MATLAB - Data Output
Data export (or output) in MATLAB means to write into files. MATLAB
allows you to use your data in another application that reads ASCII
files. For this, MATLAB provides several data export options.
You can create the following type of files:
You can create the following type of files:
MATLAB - Plotting
To plot the graph of a function, you need to take the following steps −
- Define x, by specifying the range of values for the variable x, for which the function is to be plotted
- Define the function, y = f(x)
- Call the plot command, as plot(x, y)
MATLAB - Graphics
This chapter will continue exploring the plotting and graphics capabilities of MATLAB. We will discuss −
- Drawing bar charts
- Drawing contours
- Three dimensional plots
MATLAB - Algebra
So far, we have seen that all the examples work in MATLAB as well as
its GNU, alternatively called Octave. But for solving basic algebraic
equations, both MATLAB and Octave are little different, so we will try
to cover MATLAB and Octave in separate sections.
MATLAB - Calculus
MATLAB provides various ways for solving problems of differential and
integral calculus, solving differential equations of any degree and
calculation of limits. Best of all, you can easily plot the graphs of
complex functions and check maxima, minima and other stationery points
on a graph by solving the original function, as well as its derivative.
MATLAB - Differential
MATLAB provides the diff command for computing symbolic
derivatives. In its simplest form, you pass the function you want to
differentiate to diff command as an argument.
For example, let us compute the derivative of the function f(t) = 3t2 + 2t-2
For example, let us compute the derivative of the function f(t) = 3t2 + 2t-2
MATLAB - Integration
Integration deals with two essentially different types of problems.
- In the first type, derivative of a function is given and we want
to find the function. Therefore, we basically reverse the process of
differentiation. This reverse process is known as anti-differentiation,
or finding the primitive function, or finding an indefinite integral.
MATLAB - Polynomials
MATLAB represents polynomials as row vectors containing coefficients
ordered by descending powers. For example, the equation P(x) = x4 + 7x3 - 5x + 9 could be represented as −
p = [1 7 0 -5 9];
p = [1 7 0 -5 9];
MATLAB - Transforms
MATLAB provides command for working with transforms, such as the Laplace and Fourier transforms. Transforms are used in science and engineering as a tool for simplifying analysis and look at data from another angle.
MATLAB - GNU Octave Tutorial
GNU Octave is a high-level programming language like MATLAB and it is mostly compatible with MATLAB. It is also used for numerical computations.
Octave has the following common features with MATLAB −
Octave has the following common features with MATLAB −
MATLAB - Simulink
Simulink is a simulation and model-based design environment for dynamic and embedded systems, integrated with MATLAB. Simulink, also developed by MathWorks, is a data flow graphical programming language tool for modelling, simulating and analyzing multi-domain dynamic systems.
MATLAB - Quick Guide
MATLAB - Overview
MATLAB (matrix laboratory) is a fourth-generation high-level programming language and interactive environment for numerical computation, visualization and programming.MATLAB is developed by MathWorks.
MATLAB - USeful Resources
The following resources contain additional information on MATLAB. Please use them to get more in-depth knowledge on this topic.
Discuss MATLAB
MATLAB is a programming language developed by MathWorks. It started
out as a matrix programming language where linear algebra programming
was simple. It can be run both under interactive sessions and as a batch
job.
Subscribe to:
Posts (Atom)