Download Ebook Programming tools developers

Document related concepts

C Sharp syntax wikipedia , lookup

Indentation style wikipedia , lookup

Java (programming language) wikipedia , lookup

Abstraction (computer science) wikipedia , lookup

Reactive programming wikipedia , lookup

PHP wikipedia , lookup

Comment (computer programming) wikipedia , lookup

Programming language wikipedia , lookup

Falcon (programming language) wikipedia , lookup

Java performance wikipedia , lookup

Team Foundation Server wikipedia , lookup

Interpreter (computing) wikipedia , lookup

Object-relational impedance mismatch wikipedia , lookup

Library (computing) wikipedia , lookup

Structured programming wikipedia , lookup

C++ wikipedia , lookup

Object-oriented programming wikipedia , lookup

Python (programming language) wikipedia , lookup

Java ConcurrentMap wikipedia , lookup

Go (programming language) wikipedia , lookup

JavaScript wikipedia , lookup

C Sharp (programming language) wikipedia , lookup

Transcript
Programming
Tools
01 Python
02 Html5
03 Java
04 Javascript
05 PHP
06 Perl
Python
One of the latest focuses in the market, being deployed to a
great extent among the community of American developers, is
the Python programming language, which allows projects to be
carried out swiftly and in a versatile way.
01. PYTHON / BEEWARE
BeeWare
BeeWare is more than just a tool; in fact it is a
toolbox to help develop and debug software in
Python. The big difference between BeeWare and
an IDE (integrated development environment) is
that each tool in that box can be used
independently from each other. Each can be used
to carry out small tasks and all can be
simultaneously used separately to implement large
projects in Python.
01. PYTHON / BEEWARE
The tools in that box of services are:
CRICKET
BUGJAR
DUVET
This is a graphical tool for
running unit tests. The tool does
not offer many details of the
execution while the suite is
underway and it is not possible
to start looking for faults until
execution is complete. This
results in Cricket not being a
great tool for identifying patterns
of faults in these unit tests or for
rerunning failed tests. Cricket
supports Django, a framework of
open source code that is written
in Python and used to develop
web applications faster.
This is a tool for debugging
code errors. The old debuggers
were good for their integrated
development environments and
being able to debug errors
visually during execution. The
Python debugging model
contains appealing debugging
methods. It also has a graphical
interface that lets you navigate
the code to correct errors.
This is a graphical interface that
helps developers visualize the
results of coverage of tests
returned by coverage.py, a tool
that works to measure coverage
of program code in Python.
Such actions serve to measure
the effectiveness of tests,
separately showing which parts
of the code are worked by
testing and which are not.
01. PYTHON / BEEWARE
BeeWare also has a number of libraries for projects in Python:
TOGA
iOS TEMPLATE
ANDROID TEMPLATE
A package of native tools for
each system, made in Python
that can be used for desktops
and mobiles.
A template that allows us to
develop applications in Python
but implement them in iOS.
A template to implement
Python code in Android.
RUBICON
This is a collection of tools to
establish relationships between
the Python programming
environment and others.
CASSOWARY
Pure implementation in Python of the
algorithm of solutions of limitations of
Cassowary (algorithm that has been
used within Mac OS and iOS since 2011.
01. PYTHON / BOA CONSTRUCTOR
BOA Constructor
Python developers have this integrated development environment (IDE) with a built-in
graphical user interface (GUI) for wxPython. This tool includes an object inspector,
inheritance hierarchies, a particularly good debugger and integrated help. Obviously, it is
written in Python.
01. PYTHON / BOA CONSTRUCTOR
The user interface consists of a set of separate tools used to create and debug applications
developed with Python:
PALETA
EDITOR
This tool allows developers to access objects
such as buttons, text boxes, frames and create
packages and modules for our applications.
This is the first step to generating a new
development for Python.
this is the part of BOA Constructor where
developers can access the source code of the
application they are creating. You can correct
errors and run the application to identify them in
the editor.
INSPECTOR
There is an interesting tutorial on the web which
can serve as a guideline for beginners.
Objects can be accessed through
this tool
EXPLORER
This allows you to browse and
review data items.
01. PYTHON / INTEGRATED DEVELOPMENT
Integrated development
environments for Python:
An integrated development environment is a software application that allows software
developers to design in a simple way. This has all the necessary tools integrated into a single
environment: an editor for source code, automated build tools and a debugger. There are
several on the market.
01. PYTHON / INTEGRATED DEVELOPMENT
PYDEV FOR ECLIPSE
PyDev is a Python package for Eclipse, an extremely versatile IDE, which is able to support not only the
Python language, but many others. It has particularly interesting features if you want to program applications:
•
Integration with Django, a framework for web
development of open source written in Python.
Django allows developers to create complex
web projects through rapid development using
the Don’t Repeat Yourself computing principle,
which seeks to remove duplication in
development processes.
•
Code completion.
•
Syntax highlighting.
•
Code analysis.
•
Debugger and remote debugger.
•
Interactive browser.
•
Refactoring.
•
Unit Testing Integration.
•
Source code coverage
01. PYTHON / INTEGRATED DEVELOPMENT
PYCHARM
T is an IDE created by JetBrains. It has an incredible reputation within the Python developer community.
Some even describe it as the best IDE for Python. This is an integrated development environment with
hundreds of functions, which can turn the tool into a tedious environment, but it is certainly a great choice
for programming.
Some of its key features are:
•
Integration with frameworks such as Django,
Flask, Pyramid or Web2Py.
•
Auto-completion.
•
Syntax highlighter.
•
Analysis tool.
•
Refactoring.
•
Advanced Python and JavaScript debugger.
•
Compatibility with programming tools and
languages for developers in Python such as
SQLAlchemy (ORM), Google App Engine or
Cython.
•
Version control system such as Git, CVS and
Mercurial.Sistema de control de versiones como
Git, CVS y Mercurial.
For example, in this video one of the developers of
JetBrains designs a clone of the Pinterest social
network with tools from the PyCharm integrated
development environment.
01. PYTHON / INTEGRATED DEVELOPMENT
WXGLADE
This is a wxWidgets user graphical interface written in Python, but that can generate source code for other
programming languages such as C++, Lisp or Perl. wxGlade is not an integrated development environment
with all the tools to develop in Python, it is just a designer that lets you view the widgets created.
Html5
Any developer designing the front-end of a project must be very familiar
with the design trilogy: HTML, CSS and JavaScript. This is a brief list of what
we think are some of the best HTML tools for programmers, helping you to
find the resources you need for your projects.
02. HTML5 / HTML EDITORS
HTML editors and
front-end languages
Any developer designing the front-end of a project must be very familiar with the design
trilogy: HTML, CSS and JavaScript. This is a brief list of what we think are some of the best
HTML tools for programmers, helping you to find the resources you need for your projects.
02. HTML5 / HTML EDITORS
SUBLIME TEXT
This code editor is not free - with a license costing 70 dollars - but you can download a free trial version.
This is a very popular solution among developers, providing a carefully developed user experience. Sublime
is used by many developers, who rate it as the best code editor out there.
Some of its key features include:
•
Available for Windows, Mac OS X and Linux.
•
Supports many programming languages: HTML,
C, C++, Groovy, Java, JavaScript, Lisp, Perl,
PHP, Python, Ruby, SQL, etc.
•
Shortcuts for searches.
•
Distraction free mode for writing code.
•
Auto-complete function.
•
Highly customizable editor.
•
Supports macros.
•
Extend functionality using plugins.
02. HTML5 / HTML EDITORS
ATOM
A free, open-source editor that is highly customizable. Launched by GitHub, the collaborative project
development platform. This tool is creating quite a buzz in the developer community. The strength of this
editor is that many programmers are helping to improve it through GitHub.
Interesting features of Atom:
•
Available for Windows, Mac OS X and Linux.
•
Fully customizable: its creators boast that developers
can change the editor in any way they like, including
its core.
•
Node.js integration: allowing any user to use
hundreds of Node.js packages and libraries.
•
File browsing system.
•
Search and replace in work files.
•
Multiple panels, cursors and selectors.
•
Simple and clean user interface.
•
Customizable modular design: the editor allows users
to design their own modules, incorporating new
functionality.
02. HTML5 / HTML EDITORS
NOTEPAD++
Perhaps one of the best known code editors on the market. This tool is governed by a GPL
license (General Public License). It could be described as Notepad on steroids. It offers
developers and programmers a number of interesting features:
•
Code coloring to facilitate programming, not just
for HTML, but for all the languages Notepad++
supports: Python, Ruby, PHP and JavaScript.
•
Code auto-complete. You don't need to type all
the HTML tags. Customizable keyboard
commands.
•
Ability to work on several documents at the
same time.
•
Multi-view. Visualize the code in a number of
ways.
•
Regular expressions to automate actions.
•
Automatic document status detection. This is a
useful feature when a team is working on the
same document.
•
Record and copy macros.
•
Zoom in.
•
Support for several languages.
02. HTML5 / HTML EDITORS
EDITRA
A multi-platform text editor. Its developers highlight its easy-to-use interface and features that aid code
development. Editra is totally free under a LGPL license. It supports over 60 programming languages,
including Python, PHP, Perl, Java, Lisp, SQL, Visual Basic and Pascal.
•
Allows you to work with tabs and on several
documents at once.
•
Includes a search engine.
•
Features an editor and syntax highlighter.
•
Auto complete function.
•
Keyword help.
•
Enhance functionality with plugins.
02. HTML5 / HTML EDITORS
TEXTWRANGLER
A text editor developed by Bare Bones Software. It boasts a simple and intelligent interface with
functionality for high performance code programming. Some of its features include:
•
Support for various programming languages,
including HTML, C, C++, Fortran, Java, Object
Pascal, Objective-C, Perl, Python, Ruby, etc.
•
Can be used as an external editor integrated
with Xcode, Apple's integrated development
environment.
•
Syntax colors to facilitate code programming.
•
•
Search and replace across multiple files.
Integrated support for FTP access using
Interarchy.
•
Language configuration for the working
document.
•
Keys configurable by the developer.
•
List of floating windows.
02. HTML5 / FRAMEWORKS FOR HTML5
Frameworks for HTML5
02. HTML5 / FRAMEWORKS FOR HTML5
BOOTSTRAP
Is the Twitter framework for responsive and adaptive website design and development in HTML, CSS and
JavaScript. Bootstrap is a widely-used framework among today's front-end developers.
•
This framework is backed by Twitter, so it is
unlikely to become obsolete.
•
Although it only has limited support for HTML5
and CSS3, are compatible with current browsers.
•
It is open source and shared on GitHub. This
makes it special as it is used and continuously
improved by many developers.
•
It makes working with JavaScript much easier:
the developer doesn't need to get programming:
many components are available allowing
implementation of special resources with no
need for coding. And that is a major advantage!
•
All of these components are based on jQuery.
Enables us to add new functionality to the user
interface: from a carousel effect in the site
header to the creation of groups of buttons and
alerts. And its enormous popularity means that
more and more third-party plugins are becoming
available to automate much of this functionality.
•
Bootstrap uses the LESS dynamic stylesheet.
•
It also offers comprehensive documentation: if
you have a project or a doubt, or need to solve a
difficult situation, documentation and tutorials are
available to help.
02. HTML5 / FRAMEWORKS FOR HTML5
HTML5 BOILERPLATE:
This is the other major HTML5 framework. Its key features include:
•
Support for old browsers. HTML5 Boilerplate
offers a feature detection library known as
Modernizr. This can determine whether the
user's browser supports HTML5 and CSS3. If it
doesn't, an additional function is loaded enabling
old browsers to load all site elements.
•
Improved load times. With the increasing
consumption of information on mobile devices,
website load times are becoming an essential
competitive tool. In HTML5 Boilerplate, all
scripts elements are at the end of the page,
meaning that display of the site's key elements is
not delayed by slow loading. This affects almost
all elements, including the usual Google
Analytics tracking code.
•
Server-side optimization: HTML5 Boilerplate's
.htaccess folder enables a more efficient cache
and allows us to send our websites compressed
as GZIP, together with images and JavaScript
elements, optimizing site performance and
reducing load times.
02. HTML5 / FRAMEWORKS FOR HTML5
JUNIOR
Is a framework for creating native mobile
applications in HTML5. This framework uses CSS3
transitions to optimize site performance on mobile
devices, enabling the developer to design
carousels with flickable.js. The user interface
design is really simple, listing the pre-defined
components included in the framework.
Java
Java is a general-purpose object-oriented language
widely used within the developer community. This is
a list of the basic tools for developing projects using
this programming language.
03. JAVA / IDE
Integrated Development
Environment (IDE)
Java's creator was James Gosling, a software engineer with a long career at Sun
Microsystems (1984-2010), the company he developed this programming language for,
Google (2010-2011) and nowadays at Liquid Robotics.
03. JAVA / IDE
NETBEANS
For creating desktop, mobile or web Java applications. It also enables applications to be developed in
HTML5 (HTML, JavaScript and CSS) and has tools for PHP, C and C++ programmers. NetBeans is an open
source IDE developed in Java. Any application developer can download it free of charge.
•
NetBeans is more than a text editor: It enables
simple code refactoring, provides templates and
code generators, and offers programming tips.
In addition to Java, it supports C, C++, XML,
HTML, Javadoc, JavaScript and JSP.
•
Organized project management: NetBeans
enables you to organize all your applications in a
folder service. This makes collaborative work
with other developers much easier. Version
control is essential in that management, and this
is why NetBeans includes tools such as
Mercurial, Subversion and Git.
•
Fast user interface development: NetBeans has
its own graphical user interface (GUI) for Java,
HTML5, PHP or C/C++. This interface has easyto-use drag and drop tools for designing apps.
•
Error debugger: Has tools for optimizing the
applications in terms of speed and memory
usage. This enables the development of
applications that fulfill an essential condition:
scalability.
03. JAVA / IDE
ECLIPSE
The best known integrated development
environment for Java. It also enables
projects to be developed in other
languages such as C, C++ and PHP. Like
any other IDE, it enables the development
of desktop software and applications, and
also for mobile devices such as tablets and
smartphones. It has a graphical user
interface and tools for carrying out many
functions.
03. JAVA / IDE
INTELLIJ IDEA
An IDE developed in Java by Jet Brains under two types of licenses: open source and commercial. It is one
of the most widely used development environments within the Java community and some consider it the
best IDE on the market if you develop projects using this programming language.
The tools it offers include:
•
Advanced code refactoring system.
•
A system for completing code while
programming.
•
Code error analysis in real time.
•
Version control system.
•
UML (Unified Modeling Language) designer.
•
It enables development with Java frameworks
such as Spring MVC, GWT, Vaadin, Play, Grails,
Web Services, JavaServer Faces, Apache Struts
and Flex.
•
It includes assistance for programming in code in
HTML5, CSS3, JavaScript, Node.js, ActionScript
and several other languages.
03. JAVA / GVNIX
Rapid application
development: gvNIX
gvNIX is an open source tool for rapid application development (RAD). With this tool, any
developer can create web applications in Java quickly and without much trouble. The tool
offers integration with frameworks such as jQuery, Bootstrap 3, Leaflet or Datatables.
03. JAVA / GVNIX
Some features of the tool:
•
Multiplatform tool: gvNIX works under several
operating systems (Windows, Mac OSX and
Linux). It can also be integrated with any IDE,
such as Eclipse and STS. All that is needed to
install it is the Java SDK (version 6 or later) and
Apache Maven 3.
•
Command interpreter: gvNIX is designed as an
interactive command interpreter. It offers
command autocomplete and context-sensitive
help.
•
JEE standard projects: The projects created
with this tool are compliant with the JEE
standard, the platform for developing and
running application software in the Java
programming language.
•
Without dependencies on the execution
environment: The applications developed with
gvNIX only depend on the frameworks used by
the developer, without this causing a
dependency on the execution environment.
Another rapid application development (RAD) tool
is Spring Roo.
03. JAVA03.
/ APACHE
JAVA / MAVEN
Framework:
Apache Maven
Apache Maven is a tool for managing and
designing projects in Java. This framework was
created in 2002 by Jason Van Zyl, from
Sonatype. Maven uses a Project Object Model
(POM), an XML file that is the basic work unit in
Maven. This file contains information on the
project and details of the configuration used by
the framework: from the list and configuration of
the plugins used, to the dependencies.
03. JAVA / APACHE TOMCAT
Web server in Java:
Apache Tomcat
Is a web container that supports servlets and JSPs, initiated by James Duncan Davidson, a
software engineer at Sun Microsystems. Today it is used as a standalone server in projects
that require high performance in terms of both speed and data volume. Because it was
developed in Java, it works with any operating system with a Java virtual machine.
03. JAVA / APACHE TOMCAT
The key features of the latest
version are:
•
Basic access authentication.
•
Credential negotiation.
•
HTTPS.
•
Shared hosting.
•
Common Gateway Interface (CGI).
•
Java servlets.
•
SSI (Server Side Includes).
Javascript
JavaScript is an essential language for developing web
projects and applications. Its use has extended to the entire
development stack. This is a list of JavaScript frameworks
and libraries for developers.
04. JAVASCRIPT
JavaScript is one of the international
benchmarks in project programming. It is
used for web page and application
development, server and database
management… A professional who masters
JavaScript can become a full-stack
developer, i.e. one capable of taking charge
of the entire web development stack. A ‘jack
of all trades’ profile within the sector.
As proof of its power, in the latest TIOBE
report on the most widely used
programming languages for developers,
JavaScript ranks once again among the 10
top choices for professionals, behind
general-purpose languages like Java, C,
C++, Objective-C and PHP; easy-to-learn
languages such as Python; and .NET app
programming languages like Visual Basic.
04. JAVASCRIPT / FRAMEWORKS
EXPRESS:JS
A server-side framework that enables
programmers to create web applications with
Node.js. It is a highly flexible and agile
development framework with a community of
programmers who improve the product and help
use it, with a great deal of additional
documentation on platforms like GitHub. It is also a
solid, stable and easy to use framework. It is
inspired in Sinatra, the development framework for
Ruby
Some of its main features include:
•
It enables APIs to be created in an accessible
way.
•
It offers a URL router
•
It uses Jade as a base framework, but
JavaScript libraries such as jQuery and
Backbone.js can be incorporated to add new
functionality to the development framework.
04. JAVASCRIPT / FRAMEWORKS
ANGULAR:JS
Angular.js is an open-source and completely free
JavaScript framework that enables the
development of client-side web applications and
uses a Model-View-View Model development
pattern. Google is behind its launch and
maintenance, thus becoming a stable and solid
option, with constant documentation, for the
developer community. Angular.js is used for
developing single-page web applications (SPAs).
Its key features are:
•
Bidirectional data-binding system. The Model
and the View are always updated in sync
with any change in the data.
•
It has a Dependency Injection pattern.
•
Any application developed in AngularJS is
compatible with several browsers.
JavaScript adapts to each one.
04. JAVASCRIPT / FRAMEWORKS
EMBER:JS
Ember.js is a JavaScript framework that enables
any developer to create client-side, single-page
web applications. It is open-source and uses a
Model-View-Controller (MVC) pattern. Some of the
key features of this development framework are:
Its key features are:
•
Automatic modification between the
JavaScript objects and the DOM: this
relationship between data that expedites the
development of applications is due to the
integration of the Handlebars.js library.
•
Classes and procedures for easy rendering
of apps.
•
It has a system of templates for
programming the application's HTML. This
system is called HTMLbars and would be the
variation of the Handlebars library's DOM
04. JAVASCRIPT / FRAMEWORKS
KNOCKOUT.JS
Knockout.js is a development framework based on
a Model-View-View Model (MVVM) pattern. It is
open-source, under an MIT license. Any developer
wishing to start using it for developing a user
interface has tutorials and documentation on the
framework's own website.
Some of its key features are:
•
It facilitates the development of declarative
bindings.
•
Dependency monitoring: it enables updating
of the changes in the View and the ModelView for all independent objects and
elements
•
System of templates.
•
Automatic user interface updating based on
the changes made by the developer in the
Model-View.
04. JAVASCRIPT / LIBRERIES
JQUERY
This is the most widely used JavaScript library
among developers. It enables simple interaction
with the HTML and the DOM, as well as doing all
kinds of animations, entering AJAX features in the
project… JQuery enables developers to provide
added value with a few lines of code. It is an opensource library under MIT and GNU v.2. license.
Some of its key features include:
•
It enables modification of the DOM tree.
•
Support for CSS3.
•
Complete manipulation of CSS style sheets.
•
Event creation.
•
Development of complex animations.
•
It supports extensions.
•
Compatible with all browsers.
04. JAVASCRIPT / LIBRARIES
BACKBONE.JS
Backbone.js is a JavaScript library that enables
client-side programming. It is used for single-page
application development, where the use of
JavaScript and AJAX is essential for providing user
functionality to the apps. It uses a Model-ViewController pattern.
Its main features are:
•
It facilitates data-intensive work. Event
creation.
•
Link to the server-side technology: PHP,
Node.js…
•
Use of API for adding features.
•
Simplified use of views.
04. JAVASCRIPT / LIBRARIES
KENDO UI
Kendo UI is a library, or rather a package of
libraries, that provides all the elements needed by
developers to create client-side web applications,
with a dynamic user interface based on JQuery. In
the end, Kendo UI is usually used for developing
an intuitive, simple and innovative user interface
through different types of widgets that are
assembled like a Meccano. These predefined
elements include dynamic menus, extras, file
upload systems…
Features:
•
It works with most browsers and operating
systems.
•
It enables data visualization.
•
Data-binding.
04. JAVASCRIPT / LIBRARIES
MODERNIZR
Modernizr is a JavaScript library that enables a
project's incompatibility with each type of browser
to be detected. The idea is to create
developments tailored to the features of each
browser.
The user can use certain features or make
adjustments based on what each user uses.
These tests are conducted via a test system. Its
API also enables loading of customized tests by
project.
PHP
The programming language PHP is one of the most popular
options with developers for creating dynamic web projects
and applications. Scripts are executed on the server, it's
secure, and it has a short learning curve.
05. PHP
PHP is one of the most widely used programming languages for developing web projects,
mainly because of its enormous penetration in both web servers and operating systems. It's
a robust solution and completely free of charge. Some of the greatest players on the
Internet, like Wikipedia and Yahoo, use PHP for their sites, as do leading content editors like
Wordpress and Drupal. And PHP is also used, for example, by the well-known Apache
servers.
There are several reasons why PHP is so popular:
•
It's a language for developing dynamic web
applications from the data stored in a database.
•
The learning curve is very short because PHP
developers have simplified its structure.
•
•
It works seamlessly with open-source relational
databases like MySQL, another solution widely
used by developers.
•
It supports object oriented programming.
PHP scripts are executed on the server, so no
one can access them from a browser. That
means greater security.
Its enormous popularity has led to a vast array of useful tools for PHP developers, ranging
from frameworks to libraries.
05. PHP / FRAMEWORKS
Frameworks
The use of a good framework can help developers save time and achieve better results:
quality scripts, scalable projects, fast and robust web applications... Using a framework
means that developers can store scripts in folders, access libraries and functions that will
enrich the final project, and increase security.
PHP professionals can choose from a long list of development frameworks.
05. PHP / FRAMEWORKS
LARAVEL
A large community with extensive documentation
is usually one of the things that developers look for
when choosing a tool because it means they have
several options if they make a mistake or reach a
dead end. That's why Laravel is such a popular
framework with PHP developers.
These are the main features:
•
It supports RESTful.
•
It requires the installation of Composer, the tool
for administering dependencies in PHP. This is
useful because once the libraries for the project
being developed have been declared, no further
action is required from the developer.
•
It follows the MVC (Model-View-Controller)
pattern, which has two important advantages:
greater security, and complete separation of the
application logic from the user interface.
•
It supports caching.
Released in 2011 as an open source framework
for developing PHP web projects, it was created by
Taylor Otwell. The latest version is 5.1. Like most
frameworks, Laravel has the usual basics: routes,
models, templates, views and controllers. It also
has its own template engine, called Blade.
05. PHP / FRAMEWORKS
CODEIGNITER
Like Laravel, CodeIgniter has a great community
behind it feeding it with ample documentation.
It's a simple but high performance development
framework with some interesting features:
•
It works with most environments and servers.
•
It follows the MVC pattern.
•
Separation between the framework core and
the project script.
•
Flexible development framework: developers
can follow its coding rules or use their own.
This means that there is no need to learn the
framework structure because it can be
changed. It supports the use of external
templates.
05. PHP / FRAMEWORKS
SYMFONY
Symfony is a framework for developing web
applications using the Model-View-Controller pattern.
It was created by the company SensioLabs in 2005
and is distributed under the MIT open source license.
Its main features are as follows:
•
The database management system can be
changed at any time during
development, which is a major advantage.
Completely developed in PHP, it can run on UNIX and
Windows platforms and is compatible with most of
the common database management systems:
MySQL, Microsoft SQL Server, etc.
•
It uses object oriented programming.
•
It follows Model-View-Controller patterns.
•
It's a development framework that greatly
facilitates interoperability.
•
It has its own user-friendly template
engine (Twig).
•
It has a cache system based on HTTP
which enhances the performance of
applications developed with Symfony.
05. PHP / LIBRARIES
PHP libraries
05. PHP / LIBRARIES
PHP-CPP
HOA
MINK
A C++ library for developing
native extensions. It can be
used by PHP developers and
also by developers who
program in C++, a language
with a syntax very similar. There
is ample documentation
for its projects and the source
code is full of explanations.
A modular, scalable and
structured PHP library. There
is a training manual
(containing several chapters
with technical information) to
get you started as well as
documentation to use it.
Mink is a very popular library
with PHP developers because it
lets them test how their web
applications interact with the
browser to check that they
work properly. Mink supports
the following frameworks:
PHPUnit, Behat and Symfony2.
Developers who know how to
program in PHP will find the
PHP-CPP library very easy to
use with variables, functions,
objects and exceptions. And
they can also use all the added
advantages provided by C++,
such as arguments and
asynchronous programming.
Hoa provides users with the
ability to create their own
libraries, which means that
the script can be reutilized
and shared. The idea is that
any programmer can take a
library developed by another
user and adapt it to the needs
of his or her own application
with its features and tools.
05. PHP / TOOLS
OTHER PHP TOOLS
Pattern Lab is a framework for developing
the front end of web projects and
applications. It allows developers and
designers to make decisions about
templates and shows different alternatives
during the development process. Designs
can also be tested in browsers.
The tool facilitates front end design testing
in small elements like buttons and labels for
forms or complete templates with all their
design components (logo, navigation, etc.).
Guzzle is a special framework comprising all
the necessary tools for creating a client for
REST services like Twitter or GitHub, a
service for defining API inputs and outputs,
high performance batch processing for
sending large numbers of requests, etc.
It also eliminates redundancy in the creation
of web service clients, and has caching
mechanisms for the parallel execution of
responses and queries.
Perl
Perl is a general-purpose easy-to-use programming language
that allows developers to write code rapidly. It also has
numerous libraries and modules that considerably extend its
functionality for developing web projects.
06. PERL
Systems administration, online programming, development of web or CGI
(Common Gateway Interface) projects, and much more. Perl is a general-purpose language
currently enjoying a resurgence and increasingly being used in project development. This
language is attractive today as it is a pseudo-compiled syntax that is distributed free and can
be run on any platform with an interpreter for Perl.
The basic features of this programming language are:
•
It is easy to use and allows rapid programming.
•
It has a steep learning curve.
•
It has libraries and modules, which increases its
functionality.
•
It supports structured, object-oriented and
functional programming.
•
It has a text processing system.
•
It can be used in several environments:
Windows, Mac OS X and Linux.
06. PERL / IDE
KOMODO IDE
This Integrated Development Environment by
ActiveState not only allows programming in Perl,
but also in other programming languages such as
Python, PHP, Go, HTML and Node.js. The idea
behind Komodo IDE is to make it easy for
programmers to develop interfaces in Perl thanks
to features such as its version control, graphical
debugger, unit testing system, online help and
much more.
The latest advances in Komodo IDE make this a
much more convenient and functional tool:
•
Has a panel that significantly reduces
interruptions and time wasting in
programming work.
•
Has an intelligent collaboration system that
alerts each member of the team as to which
of their development co-workers are editing
code within the IDE at the same time.
•
Rapid and automatic correction of syntax.
•
The new package installer enables users to
incorporate new functionalities to the IDE
based on the features of each project.
•
It introduces the focus mode, which enables
elements within the IDE to be hidden.
•
Enhanced user interface. Integrated package
manager. Creation of customized settings for
everyday work. New notification system. A
variety of color combinations and themes.
Revision of its API: new SDK for developers.
06. PERL / IDE
EPIC
(Perl Editor and IDE for Eclipse)
EPIC is an open-code Integrated Development
Environment with its own editor and debugger,
based on the Eclipse platform and compatible with
several systems: Windows, Linux and Mac OS X. It
is a fairly routine IDE for developing projects, with
CGI command sequences and whose integration
with Eclipse's Graphical User Interface offers an
interesting added value.
Its main features are:
•
Configurable coloring of syntax elements.
•
Automatic detection of syntax errors during
programming and when saving files.
•
Autocompletion of variables.
•
Execution control system.
•
HTML export function.
06. PERL / TEXT EDITORS
EMACS
Emacs is an extensible, customizable selfdocumented real-time text editor for the Linux
environment. It was written in 1975 by Richard
Stallman and Guy Steele, two key names in free
software. There are currently two versions of this
text editor: GNU Emacs, developed by Stallman
in 1984 and maintained since then by the
Emacs GNU project; and XEmacs, another
version of the editor based on the work of the
first, launched in 1991.
Some of its key features are:
•
Simple text editing system: commands for
handling words and paragraphs, highlighting
of syntax to make the code easier to read,
and the option of running keyboard macros
through customized commands.
•
The text editor can be modified to suit
developers' needs by incorporating
fragments of the Emacs Lisp code (code
libraries, packages or plugins) with new
functionalities:
•
Calc: the editor incorporates a
calculator.
•
Emacs/W3: a web browser.
•
ERC: an IRC client.
•
MULE: enables the editing of text
written in several languages.
06. PERL / TEXT EDITORS
ULTRAEDIT
UltraEdit is an advanced text editor for Perl, PHP,
Java and JavaScript. This editor allows code
programmers to handle files of over 4 GB. This is a
pay tool, but it has a free trial period.
•
Incorporated search engine.
•
Add comments in a line or a block in the
selected text.
•
Editable macros.
Some of its key features include:
•
Configurable highlighting of syntax.
•
Integration of scripting language to automate
tasks.
•
Complete FTP support.
•
Design of customizable editor themes.
•
Multipanel FTP browser.
•
Backup copy and automatic storage system.
•
Smart templates.
•
Code folding function to allow to hide the
parts of the code they have no need to see.
•
Complete list of functions.
•
CSS style editor.
06. PERL / TEXT EDITORS
TEXTMATE
TextMate is a text editor with Graphical User
Interface (GUI) for the Mac OS X operating system.
It was developed by Allan Odgaard. It has a large
community that launches public contributions to
customize the editor according to the needs of
each project. This editor is constantly being
improved.
Some of its key features:
•
Text search-and-replace function in a project.
•
Search and replace text with regular
expressions.
•
Dynamic format for working with several files.
•
Blocks of folding code.
•
Clipboard history.
•
Recording of macros without the need for
programming.
•
Browsing between files by using tabs.
•
Customizable editor through a range of
themes.
06. PERL / FRAMEWORKS
MOJOLICIOUS
CATALYST
Mojolicious is a real-time web framework for
developers in Perl. It was created by Sebastian
Riedel. This development framework uses the
standard Model-View-Controller (MVC) pattern and
supports CGI, FastCGI and PSGI. The framework
also supports RESTful routes, plugins, signed
cookies, unit testing, static file servers, templates,
JSON format and more. The website for this
framework also has very useful documentation for
beginners.
Catalyst is an open-code web framework that
uses a Model-View-Controller pattern. It is
multiplatform and has ample documentation
thanks to a large community of developers who
ensure constant and ongoing enhancements
for this software development brand. It is
inspired by Ruby on Rails.
share
THIS MIGHT INTEREST YOU
Innovation Edge: APIs:
The business benefits of APIs
Ebook: Wearables, mobile revolution
Infographic: how to develop
an app for WatchKit
Ebook: Data visualization
tools for users
Apple's new services and APIs for
applications developers in iOS 9
BBVA no BBVA is not resposible for the opinions expressed here in
Sign up
To keep up to
date with the
latest trends
www.bbvaopen4u.com
Interact with us on: