0% found this document useful (0 votes)
8 views4 pages

Technologies

The document outlines various technologies and frameworks used in software development, categorized into back-end, front-end, mobile development, testing, databases, programming paradigms, architecture, tools, and DevOps. It details specific languages, frameworks, tools, and methodologies relevant to each category, including PHP, Ruby, Java, C#, Python, JavaScript, and more. Additionally, it covers concepts such as object-oriented programming, functional programming, continuous integration, and deployment, along with monitoring and configuration management tools.

Uploaded by

Mohammed Kamran
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views4 pages

Technologies

The document outlines various technologies and frameworks used in software development, categorized into back-end, front-end, mobile development, testing, databases, programming paradigms, architecture, tools, and DevOps. It details specific languages, frameworks, tools, and methodologies relevant to each category, including PHP, Ruby, Java, C#, Python, JavaScript, and more. Additionally, it covers concepts such as object-oriented programming, functional programming, continuous integration, and deployment, along with monitoring and configuration management tools.

Uploaded by

Mohammed Kamran
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Technologies – Arun Kumar Bethi

Back-end technologies
PHP 5.*
Symfony (2), Zend Framework (2), CakePHP, Yii,
PHP frameworks
Laravel, CodeIgniter
Joomla, Drupal, Wordpress, Magento (for e-
CMS (content management system)
commerce)
LAMP Linux + Apache + MySQL + PHP
Twig (templating), PHPUnit (testing), Doctrine
PHP keywords
(ORM), PHPStorm (IDE), Pear, Smarty
Ruby
Ruby frameworks Rails/Ruby on Rails, Sinatra, Padrino, JRuby
Ruby testing tools RSpec, Capybara, Watir, Cucumber
Ruby deployment Passenger, Capistrano
Java
Java SE frameworks Swing, Play, JavaFX, JSF, Netty, Spring MVC, Wicket
Java EE frameworks JSP, Servlets, EJB, JMX, JAF
ORM Hibernate, EJB, JPA
Java build tools Ant, Maven, Gradle
Java deployment Tomcat, JBoss, GlassFish, WebLogic
jUnit, TestNG, Cactus, EasyMock, Mockito,
Java testing tools
Cucumber
C# (.NET) Microsoft
C# frameworks .NET 1.0 - .NET 4.5.*
ASP.NET (web framework connected with HTML, ASP.NET Web API (2), ASP.NET MVC, ASP.NET Web
CSS, JS) Forms (old school)
WPF - graphical subsystem for rendering user
WPF, WCF interfaces, WCF - tool to build Service-Oriented
applications
ORM nHibernate, Entity Framework, Linq2SQL, ADO.NET
C# testing tools nUnit, SpecFlow, MStest
Python
Django, Flask, Pyramid, Pylons, SQLAlchemy,
Python frameworks
web2py, Kivy
С++
STL, Boost, QT (for user interfaces), vxWidgets, Loki,
C++ frameworks
POCO, OpenCV (for imaging)
Scala
Scala frameworks Akka, Cats, Lift, Play, Scalaz, Slick, Shapeless, Spray
Front-end technologies
JavaScript
jQuery, extJS, Angular, React, Ember.js, Backbone,
JavaScript frameworks
Knockout.js, ...
Node.js, Sails, Express, Grunt/Gulp (build tools for
JavaScript Back-End frameworks
Node.js)
Node.js-based build tools Grunt, Gulp, Brocolli, Webpack
JavaScript testing tools Jasmine, Karma, Mocha
AJAX Dynamic requests to server without reloading a
Technologies – Arun Kumar Bethi

webpage
HTML HTML4, HTML5, Zurb, Bootstap, Canvas, WebGL
CSS2, CCS3, Bootstrap, Compass, LESS, SASS, YAML,
CSS
Zurb
Approach for optimal viewing and interaction across
Responsive web design a wide range of devices (from monitor to
mobile/tablets)
MOBILE development

iOS Objective C, Swift


CoreData (DB in iOS), Cocoa, Cocoa Touch, UIKit,
iOS frameworks CoreLocation, CoreFoundation, CoreImage,
CoreGraphics
Cocoa Pods (dependency manager), Flurry (for
iOS tools analytics), TestFlight (for installation and testing iOS
apps), HockeyApp (platform for apps)
Android
Android SDK, Android NDK, Android IDE, Gradle
Android keywords (build tool), AndEngine, Robotium (testing) + a lot of
Java keywords
jQuery Mobile, PhoneGap, Sencha Touch, Dojo
Cross-platform Mobile (mostly JavaScript)
Mobile, Titanium, Xamarin (C#)
Testing (Quality Assurance)
Selenium (browser automation), WebDriver, SoapUI
Functional, Regression testing tools
(for API testing), Watir, Watin, QTP, Cucumber
JMeter, NeoLoad, LoadRunner, LoadUI, Siege,
Load, Stress and Performance testing tools
Gatling,
Load, stress, performance, regressional, functional,
Types of testing
security, cross-browser, black-box, etc
Databases
Programming languare for managing data held in a
SQL
relational database management system (RDBMS)
MySQL, Oracle, Access, MS SQL Server (mostly for
Relational DB
Microsoft stack), PostgreSQL, SQLite
Cassandra, MongoDB, Berkeley DB, Redis, Riak,
NoSQL
CouchDB, DynamoDB
Programming technique that connects databases
Object-related mapping (ORM)
with object-oriented principles)
Stored procedures, triggers, replication,
Magic keywords for DBA performance optimization, clustering, back-up,
deadlocks, tuning, configuration
Programming paradigms
Programming paradigm based on the concept of
"objects" (which are data structures that contain
OOP (object-oriented programming) data, in the form of fields) often known as attributes;
and code (in the form of procedures) often known as
methods
C++, C#, Java, JavaScript, Objective C, Perl (v5),
Languages with OO features
PHP5, Python, Ruby, Scala,
Technologies – Arun Kumar Bethi

Style of building the structure and elements of


computer programs, that treats computation as the
Functional programming
evaluation of mathematical functions and avoids
changing-state and mutable data.
Functional languages Scala, Erlang, OCaml, Haskell, F#, Clojure, Elixir
Programming language that supports scripts,
programs written for a special run-time environment
that can interpret (rather than compile) and
Scripting language
automate the execution of tasks that could
alternatively be executed one-by-one by a human
operator
Scripting languages Perl, Shell, Bash, AWK, Python, Ruby, JavaScript, Lua
Architecture
Object-oriented design patterns typically show
OOD (object-oriented design) relationships and interactions between classes or
objects
Formalized best practices that the developer can use
Design Patterns to solve common problems when designing an
application
Software architectural pattern for implementing user
interfaces. An easy way to understand MVC: the
MVC (model view controller) model is the data, the view is the window on the
screen, and the controller is the glue between the
two
Observer, Iterator, Strategy, Factory, Singleton,
Design Patterns examples
Composite, Facade, Proxy, etc
Architectural pattern in which application
components provide services to other components
SOA (Service-Oriented Architecture)
via a communications protocol, typically over a
network
Way to visualize the design of a software (in
UML (Unified Modeling Language)
diagrams)
REST - software architecture style with guidelines
Webservices and best practices for creating scalable web services,
SOAP, JSON-RPC, XML-RPC
Markup (formatting and processing of text) XML, XSLT, xPath, XMPP (for messaging)
Connector (bridge) for websites/mobile apps with
API your software - Facebook API, Google API, Twitter
API, etc
Tools
Memcached (for caching), Nginx (web server for
High-load tools high-load), Varnish, Squid (reverse proxies), haproxy
(load balancer), CDN
Hadoop, Hive, Pig, Apache HBase, Cassandra,
Big Data tools
MapReduce (method), Spark
Merging all developer working copies with a shared
Continious Integration (CI)
mainline several times a day.
Jenkins, Teamcity, TFS (mainly C#), CruiseControl
CI tools
(C#), Bamboo, Hudson, Travis
Continious Deployment (CD) Updating а server with automated schedule. These
Technologies – Arun Kumar Bethi

updates include code revision, auto/unit test


running
Tracking bugs, reports. Issue tracking - software for
Bug/Issue Tracking system
project management, tasks in team, etc
Jira, Mantis, Confluence, RedMine, YouTrack, Trello,
Bug/Issue Tracking tools
BaseCamp
Version Control System (VCS) Team of developers may change the same files
VCS tools Git, Mercurial, SVN, CVS, Perforce
VCS services Github, Bitbucket, Gitlab
Visual Studio (C#), Eclipse, NetBeans, Aptana, xCode
IDE (editors for code)
(iOS), WebStorm, IntelliJ IDEA
DevOps
OS Linux, Unix, BSD, Windows, MacOS
Linux Distributions Ubuntu, RedHat, CentOS, Suse, Debian
Software development method that emphasizes
communication, collaboration, integration,
automation. The method acknowledges the
DevOps (Development + Operations) interdependence of software development, quality
assurance (QA), and IT operations, and aims to help
an organization rapidly produce software products
and services and to improve operations performance
Refers to the act of creating a virtual (rather than
actual) version of something, including virtual
Virtualization
computer hardware platforms, operating systems,
storage devices, and computer network resources.
Virtualization tools VMware, KVM, Xen, VirtualBox , Vagrant
Systems engineering process for establishing and
maintaining consistency of a product's performance,
Configuration Management functional and physical attributes with its
requirements, design and operational information
throughout its life.
Puppet / MCollective, Chef, Ansible, CFEngine,
CM tools
SaltStack, RANCID, Ubuntu Juju
New Relic, Nagios, Icinga, Graphite, Ganglia, Cacti,
Monitoring tools
PagerDuty, Sensu
TCP/IP (transfering data in computers and internet),
Network protocols
HTTP (internet protocol), HTTP/2, WebSockets
Apache, Tomcat (mainly for Java), IIS (mainly for C#),
Web servers
jBoss (Java)

You might also like