Swift – An innovative new Programming language

Swift is an innovative, new programming language for Cocoa and Cocoa Touch, and it has made writing the codes not only interactive but also a fun filled activity. Swift comes with concise yet expressive syntax that makes the apps run lightning-fast. Swift code works side-by-side with Objective C to create iOS and Mac OS X applications.

While the popularity and acceptance of dynamic and user-friendly programming languages, like Python and Ruby, has grown immensely, Swift is estimated to be another step in that direction. Swift is designed primarily for safety and improving the memory corruption bugs caused by multi-threaded coding. Those already using it has a pleasant experience with the user friendliness of this programming language.

Similarities with Objective C

  • Similar numeric types (Int, UInt, Float, Double)
  • Most C operations are carried over to Swift including some new operators as well
  • Curly braces for group statements
  • Variables are assigned with an equal sign and compared using two consecutive equal signs
  • New identity operator provided to check the data element reference
  • Square brackets used with arrays
  • Control statements ‘for’, ‘while’, ‘if’, ‘switch’ are similar and they do have extended functionality as well

Modern Programming Language
Swift was born with the latest research developments combined with decades of experience by Apple platform. Named parameters from Objective-C are expressed in a clean syntax that makes APIs in Swift even easier to read and maintain. Inferred types make code cleaner and less prone to mistakes, while modules eliminate headers and provide namespaces. Memory is managed automatically, and you don’t even need to type semi-colons.

Features that make the code expressive

  • Generics
  • Structs that support methods, extensions, protocols.
  • Closures unified with function pointers
  • Fast and concise iteration over a range or collection
  • Functional programming patterns
  • Tuples and multiple return values

Interactive Playgrounds
Writing Swift code got incredibly simple and fun with the help of interactive playground. All you need to do is type a line of code and the result would appear immediately. If the code runs over time, through a loop, one can watch its progress in the timeline assistant. The timeline displays variables in a graph and draws each step when composing a view to play an animated SpriteKit scene. Once the code is perfected, it has to be moved into the project. With playground you can:

  • Experiment with new APIs to hone your Swift coding skills
  • Design a new algorithm, watching its results every step of the way
  • Create new tests, verifying they work before promoting into your test suite

RELP (Read-Eval-Loop)
The debugging console in Xcode includes an interactive version of the Swift language built right in. Use Swift syntax to evaluate and interact with your running app, or write new code to see how it works in a script-like environment.

Safety
With Swift, the entire classes of unsafe codes is just eliminated. Variables are always initialized before use, arrays and integers are checked for overflow, and memory is managed automatically and Syntax is tuned to make it easy to define your intent. The safe patterns are especially designed for Cocoa and Cocoa Touch APIs.

Fast and Powerful
Swift, the name itself says it’s fast. Using the high-performance LLVM compiler, Swift code is transformed into optimized native code, tuned to get the best out of modern Mac, iPhone, and iPad hardware. The syntax and standard library have also been tuned to make the most obvious way to write your code also perform the best.

Swift has the best features from C and Objective C language that includes low level primitives such as types, flow control, and operators. It also provides object-oriented features such as classes, protocols, and generics, giving Cocoa and Cocoa Touch developers the kind of performance and power they require.

Gateway Technolabs steals the top spot at Nokia X Go-Port Event Organized by Nokia

We did it again. Our Enterprise Mobility team on Saturday 19th April, 2014 won the Top-spot at the Nokia X GO-Port Event organized by Nokia. At the event, organized by Nokia in association with Digit at Hotel President, Ahmedabad for the promotion of NokiaX.

Gateway Technolabs’ brilliant team of Sabir Arora and Ajit Prajapati, stole the show by porting the highest number of quality Android Apps to Nokia X platform (9 apps as against 7 to the nearest competitor) and that too, in record time, much ahead of the other teams.

As for our expertise on the NokiaX, our professionals were able to make people aware about the Key APIs involved in the Training on Technology, Porting and Compatibility. The program also held exciting offers from DVLUP and Nokia by which participants get a chance to avail huge benefits just by associating with them through their programs.

“We really won huge, in quality terms as well”, says Sabir Arora. “We outperformed the other competing teams who are considered the best in mobile applications development, some even winning the top spots since the past 7 years. Surprisingly, this was Gateway’s first foray into the competition with the runners-up team with just 7 applications ported against our 9. 

We understood the Key APIs much in advance, about porting the applications to Nokia-X Platform and the review process that Nokia follows for uploading the app and that helped us not only meet Nokia’s specific demands, but also helped us develop the apps in record minimum time.” 

In terms of the future, Gateway Technolabs has again showcased its leadership in terms of its preparedness to scale towards ever-changing industry standards and much before the market gets ready to evolve towards newer challenges and changes in technology.

The NokiaX is a mid-tier smartphone developed by Nokia running a modified version of Android and referred as the Nokia X software platform. Nokia officials and judges were truly amazed at the quality and speed of the deployment and pointed towards a greater involvement from Gateway Technolabs in the near future.

The NokiaX platform and devices are special. Unlike Android, Nokia now offers the much needed quality applications to the Android store with a review process similar to Apple’s iOS based apps and SDK. This would be a huge benefit for the industry and users, who are currently screaming for some sort of standardization and security review that only Apple offers.

Gateway Technolabs offers enterprise mobility solutions, services and technology. Our Enterprise Mobility and Mobile Applications Development services include applications and software design and development, Independent testing, verification and validation, Integration, porting, and migration services, and lifecycle maintenance and support services and solutions. Gateway’s core expertise involves; enterprise mobility solutions and management, mobile workforce management, workforce software, and utilities, BYOD for iPhone, Android, Windows, Blackberry, HTML5, Java, and latest NokiaX apps development.

Latest Trend in Validation & Verification – TFS Browser Based Test Management

Visual Studio Update 2 added a light weight browser based test management to the already set of rich test features in the Visual Studio family.  The goal of these test features are to enable development teams an easy way of viewing and editing test cases, give manual testers a way of testing (both Windows and non-Windows) environments without needing to install anything and enable end users to execute tests on their own computers.

The purpose of this feature is to provide light weight test case management via a browser and this is something that a lot of our customers have been asking us about.

To start with, if you are using Team Foundation Service on premise then you will need to install Update 2 CTP 2 in order to enable the test feature.

So here we can see if we have logged onto Team Web Access you will see the new link “Test” hub:

Continue reading

An Investigation over Unit Testing

Unit testing sounds great to me, but I’m not sure I should spend any time really learning it unless I can convince others that is has significant value. I have to convince the other testers’ and, more importantly, the bean-counters in management, that all the extra time spent learning the testing framework, writing tests, keeping them updated, etc. will pay for itself, and then some.

Where is the hard evidence that will convince the laymen that unit testing is worth the effort?

Continue reading