Coding Toolkits

Coding Toolkit
Image by Bockampi, found on Pixabay. Licensed under Creative Commons PD Dedication.

A collection of development tools for coding efficiently. For both online and offline programming.

Pros: Fast Implementation. No need to start coding from scratch.

Cons: Additional Learning. In addition to learning the coding languages, you have to learn how to use the toolkit.

Terminology

Many words related to ‘Toolkits’ are interchangeable, and often confusing. The way the terms are defined below, will no doubt vary from how others describe them.

Framework: The structure of the toolkit. It not only integrates the common practices for the code languages involved, but offers even more formatting use. Including a framework helps to coordinate the other parts of the toolkit. In addition, it prevents invalid code.

Snippets: Already prepared code bits and/or data. Also called libraries.

Template: This is an example of the toolkit in action. It will include all the other tools in a way that presents the possibilities. Most toolkit contributors offer online demo templates. Users can include this in the decision process, rather they want to use the framework or not, since they can visualize the end product.

Web Application Frameworks

Even if the language is not listed, web applications will involve HTML.

Bootstrap: ‘Bootstrap is an open source toolkit for developing with HTML, CSS, and JS. Quickly prototype your ideas or build your entire app with our Sass variables and mixins, responsive grid system, extensive prebuilt components, and powerful plugins built on jQuery.’ – Homepage.

HTML5 Up: HTML5 + CSS3. Responsive. Plenty of Demos on the linked site. Under Creative Commons License.

jQuery: Write Less, Do More. JavaScript, CSS3. Cross Browser. APIs. Makes AJAX easy to implement. Plugins.

jQuery User Interface: Even more jQuery options, with focus on user interfaces.

jQuery – mobile: jQuery for phones, tablets, and other touch-optimized devices.

Plugins are (usually optional) modules that interact with applications to add a specific function, or to support a specific file format or device.

Mavo: Once you include the Mavo code into your site, you can use HTML and still get interactive web applications. This is open source! Check out the site, and Demos. I feel my description does not do it justice.

Struts: ‘Apache Struts is a free, open-source, MVC framework for creating elegant, modern Java web applications. It favors convention over configuration, is extensible using a plugin architecture, and ships with plugins to support REST, AJAX and JSON. ‘ – Strut’s Homepage. By The Apache Software Foundation and under Apache License.

Vue.js: The Progressive JavaScript Framework. ‘Vue (pronounced /vjuː/, like view) is a progressive framework for building user interfaces. Unlike other monolithic frameworks, Vue is designed from the ground up to be incrementally adoptable. The core library is focused on the view layer only, and is easy to pick up and integrate with other libraries or existing projects. ‘ – Introduction.

Web Application Frameworks: High Learning Curves

Angular: Orignally AngularJS. ‘..a TypeScript-based open-source front-end web application platform led by the Angular Team at Google and by a community of individuals and corporations to address all of the parts of the developer’s workflow while building complex web applications.‘ – Wikipedia.

TypeScript is a free and open-source programming language developed and maintained by Microsoft. It is a strict syntactical superset of JavaScript, and adds optional static typing to the language.

Google Web Toolkit: GWT. Open Source. This is actually used by many Google products: AdWords, AdSense, Blogger, etc. High learning curve. Showcase of Features. Java(Deployed as Javascript); AJAX. Plugin for Integration of Eclipse. ‘Speed Tracer’ Chrome Extension to diagnose issues. Widgets.

Play Framework: Java and Scala. APIs. ‘Play is based on a lightweight, stateless, web-friendly architecture. Built on Akka, Play provides predictable and minimal resource consumption (CPU, memory, threads) for highly-scalable applications.’ – Play Homepage. Under Apache License Version 2.

React: JS Library for building user interfaces. Maintained by Facebook and Instagram.

Ruby on Rails: Open source. Applications that uses Ruby on Railes: Soundcloud; Twitch; Hulu; and more. ‘Ruby on Rails, or Rails, is a server-side web application framework written in Ruby under the MIT License. Rails is a model–view–controller(MVC) framework, providing default structures for a database, a web service, and web pages.‘ – Wikipedia.

Combo Frameworks – Web and Non-Web

Velocity: Reference objects defined in Java code. ‘When Velocity is used for web development, Web designers can work in parallel with Java programmers to develop web sites according to the Model-View-Controller (MVC) model, meaning that web page designers can focus solely on creating a site that looks good, and programmers can focus solely on writing top-notch code. ‘ – What is Velocity. By The Apache Software Foundation and under Apache License.

Non-Web

wxWidgets: ‘…a C++ library that lets developers create applications for Windows, Mac OS X, Linux and other platforms with a single code base. It has popular language bindings for Python, Perl, Ruby and many other languages…’ – Homepage.


Definitions from Wiktionary – The Free Dictionary. Licensed under Creative Commons Attribution-ShareAlike.