Swift: Protocols

In Objective-C, you are allowed to define protocols which declare the methods expected to be used for a particular situation. In Swift, protocols are basically a named contract that your types should conform to. If your type says it conforms to Equatable, then it better fulfil all of the required methods to make it equatable. […]

Swift: Operator Declaration

The Swift standard library defines a number of operators, many of which are available to most programming languages. The most familiar operators that will come to mind are the MDAS operators’ *, /, +, – respectively. Operators such as these are very simple to use and remember that it was thought ever since we were […]

Swift: Range Operators

Swift includes two range operators, closed range and half-closed range, which are shortcuts for expressing a range of values. Range operators are most commonly used with the for loop. In Objective-C, we have 2 different for loops, the traditional loop and iteration-based loop. Traditional For Loop The traditional for loop found in C requires 3 […]

iOS: Data Protection

iOS is based on the same core technologies as OS X, and benefits from years of hardening and security development. According to Apple’s iOS Security GUUIDe, iOS security can be viewed in four layers: System architecture: The secure platform and hardware foundations of iPhone, iPad, and iPod touch. Encryption and Data Protection: The architecture and […]

iOS: UIPasteboard, UIMenuController & UIMenuItem

There are times that you need to copy and paste items on your device, few words won’t be a problem but several paragraphs will. UIPasteboard is a built-in class that allows you to copy items to the pasteboard in iOS and paste it somewhere else. A user then selects an item (e.g., words, images, etc..) […]

iOS: NSLayoutConstraint

With the release of Xcode 5 and iOS 7 the need to learn, understand, and use auto layout increased. Auto layout were introduced in iOS 6.0; with auto layout, it is easier to design the interface for multiple screen sizes and also for multiple languages (e.g., Arabic, Japanese, Chinese, etc..). It’s not hard to design […]

iOS: NSDate & NSDateFormatter

One of the commonly used classes in building iOS apps are the NSDate (which allows us to deal with dates) and, of course, NSDateFormatter (which allows us to format the date and time to be printed). It is very likely that somewhere in your app, you may need to work with a lot of dates […]

Let’s try Ruby in 30 minutes

A Brief History Ruby is a dynamic, reflective, object-oriented, general-purpose programming language. It was designed and developed in the mid-1990s by Yukihiro “Matz” Matsumoto in Japan. Ruby syntax is inspired by Perl with Smalltalk-like features and was also influenced by Eiffel and Lisp. It supports multiple programming paradigms, including functional, object oriented, and imperative. It […]

Clang Language Extensions: instancetype

Objective-C is a rapidly evolving language faster than many other. ARC, object literals, subscripting, blocks: in the span of just three years, this is just an example of how fast it grows. One of the latest addition to ObjC is instancetype. Clang adds a keyword instancetype that, as far as I can see, replaces id […]

Shell: Generate Git

A comprehensive script for Xcode projects that lets you generate .gitignore and .gitattributes in the directory of your choosing. Download You can grab the script here: https://gist.github.com/anjerodesu/5063843 Running the script Copy the script to your project folder. Open Terminal and run: cd path/to/your/project/ (if you’re not yet on your project’s directory) sh generate-git.sh Like this:Like […]

%d bloggers like this: