BBVA API Market
Today there are developers with knowledge of programming languages that were not a first choice over a decade ago. Two interesting examples of this situation are Python and Ruby, which are two syntaxes that have attracted a lot of attention from the programming community in recent years. While these languages are beginning to become more popular, there are other general purpose languages that largely continue to be the basis for many development projects. One is Java. Other languages have emerged around these syntaxes that aim to help programmers in adding new features to products (apps). An example for Java is Groovy.
If we do a quick search on Google Trends, which is a service that measures the level of real-time searches for certain keywords, the upward trend in Python and Ruby is obvious as well as the downward trend for Java.
The TIOBE ranking is one of the most consulted when assessing the impact of different programming languages within the developer community. In addition, this index has been evaluating these factors for quite some time and the track record provides a great deal of reference value and context. Java, C and C++ have been the most widely-used programming languages for a long time. In the case of Java, the complementary value of a syntax like Groovy aid them to maintain their dominance.
Apache Groovy is an object-oriented dynamic programming language for Java virtual machine (JVM). What is it usually used for? Groovy is a Java enhancer because it provides greater flexibility and even introduces special features to applications (those that have already been developed can be improved or they can be made from scratch). Groovy is a Java-like syntax, but with the ease of more moldable languages like Python and Ruby. Groovy has several interesting features:
● Support for static and dynamic typing: statically typed languages are those in which type checking is done at the compiling stage and not during execution. Java is a general purpose statically typed language. Dynamic typing syntaxes such as Groovy are those in which the check is performed during execution. Python is another example. Groovy allows developers to introduce this typing within Java.
● Concise, brief, direct syntax: this allows developers that use Groovy to develop projects faster and easier.
● Relatively short learning curve: this is a relatively simple language like Python or Ruby. It is easy for developers to learn.
● Support for unit testing: Groovy is a testing-oriented development language. In fact, it is a syntax that provides support for running tests in integrated development environments (IDEs), Ant or Maven, which are all application programming tools in Java.
– The operator regex =~.
– The operator match ==~.
– The pattern operator ~String.
● Native syntax for lists and associative arrays: in programming, arrays are usually assigned to variables. These variables are often associated to data. Developers sometimes associate that information through various elements of the array through a common thread called index. That way of structuring information with programming is called associative array.
● Native support for markup languages like XML and HTML.
● Support for domain specific languages: a domain specific language is a programming language or a specification dedicated to solving specific problems, through a specific technique. A general purpose syntax such as Java, C or C++ is the opposite. Somehow it provides general structure to solve global situations.
Any developer who wants to start tinkering with Groovy needs to download the development environment in this syntax. This programming language is now in release 2.4 and has been available to the programming community since mid-June 2016. The first thing to do is to download the distribution, which is accompanied by all the documentation on Groovy. All the code and reference material is ready to be downloaded in the Bintray repository. Here is the distribution with the installer for Windows, Microsoft’s operating system.
If you do not have a Windows computer, it is possible to use SDKMAN, the Administrator of the Software Development Kit for Mac OS X or Linux operating systems. Installation is done through curl, the library of functions to connect servers and facilitate working with them. To install the SDK, here are some simple instructions to do this seamlessly. Once downloaded, the entire project construction process (from compilation or testing) to managing the actual dependencies can be done with Gradle, which is based on the Groovy programming language itself.
In a connected world, APIs are the glue that keeps all the parts that form our day-to-day lives in place. The same way the power of glue depends on the material it is used on and the knowledge of its properties, APIs are only as useful as their documentation allows for.
There are different solutions to monitor the performance of an API, in terms of traffic, quality and speed of the answers it provides. Detecting faults in the code or quantifying the generated revenues are also some of the options offered by these useful tools.
App users must be aware that a button... is in fact a clickable button. Therefore, app buttons must be designed in such a way that users should feel invited to interact with the interface and actually click on it.