MASTER THESIS Javascript Frameworks a Qualitative

Total Page:16

File Type:pdf, Size:1020Kb

MASTER THESIS Javascript Frameworks a Qualitative MASTER THESIS JavaScript Frameworks A qualitative evaluation and comparison of the dominant factors in Angular and React Abdul Kadir Yorulmaz MSc. in Computer Science & Informatics Supervised by Anders Lassen Department of Computer Science & Informatics June 2, 2020 Abstract The rising number of JavaScript libraries and frameworks that have been developed during the years, gives the experienced and inexperienced practitioners complexity when wanting to commit to a frame- work. Today, a more concrete and analysed evaluation process is lacking for developers in order to make sure a framework fit their needs for the given project’s purpose and size. This thesis explores an evaluation process that can help practitioners determine which framework or library fit their needs for their project, but also choosing the framework that fits best with their experience and preferences when building applications. This study is build on an experiment, where two Todo-list applications were developed via Angular and React. Based on the development process of each application, the framework and library were evaluated via relevant factors that give insights to what to expect from the framework and library in terms of how fast one can learn it, the quality of the documentation, the helpfulness of their communities and the frequency of updates. Through the evaluations, the dominant factors were found for Angular and React, which gave the base for doing the comparative analysis in order to find the differences and similarities between them. By conducting the comparative analysis of the dominant factors within Angular and React, this study gives the indication that Angular gives clear directions when developing and therefore can be well-suited to both experienced developers but also beginners. React has a strong community and a flexibility in adopting external libraries and can therefore be both beneficial for beginners if they preference a less-strict library yet it requires practice for its understandability. The proposed evaluation process offers practitioners a way of distinguishing between frameworks. The evalu- ation also gives an insight of which framework fits with a developer’s experience and preferences in terms of information sources e.g. documentation, tutorials and communities, where they can find examples and detailed suggestions towards developing their projects. Keywords: JavaScript Frameworks · Angular · React · Todo-list applications · Evaluation process of dominant factors · Comparative analysis · Qualitative experiment Contents 1 Introduction 3 1.1 Background . .3 1.2 Related work . .4 1.3 Problem definition . .6 1.4 Research question . .7 1.4.1 Hypothesis . .7 1.5 Scope and limitations . .7 1.6 Target group . .9 2 The concept of JavaScript in this study 10 2.1 JavaScript . 10 2.1.1 DOM-element . 11 2.1.2 Scripting . 11 2.1.3 CSS . 11 2.1.4 XMLHttpRequest, Ajax and fetch . 12 2.1.5 JavaScript library . 12 2.1.6 JavaScript Framework . 12 2.2 Angular . 12 2.2.1 Angular CLI . 13 2.2.2 Components . 13 2.2.3 Services . 14 2.2.4 Directives . 15 2.2.5 Pipes . 16 2.2.6 Modules . 16 2.2.7 Typescript . 18 2.3 React.js . 18 2.3.1 ReactDOM . 18 2.3.2 React ES6 class component using JSX . 19 2.3.3 Props vs State . 19 2.3.4 React ES6 class and function components . 20 2.3.5 Life-cycle methods . 20 2.3.6 External libraries . 21 3 Theory 23 3.1 Kolb’s learning cycle theory . 23 3.1.1 The four stage learning cycle . 23 3.2 The necessary elements and functionalities to undertake . 24 1 3.3 Comparative evaluations . 25 4 Method 28 4.1 Constructivism . 28 4.2 Comparative design . 29 4.2.1 Applying the comparative design on the two applications . 29 4.3 Qualitative method . 29 4.4 Applying Kolbs four stage learning cycle in this research . 30 4.5 Todo-list requirements and Mockup . 30 4.5.1 Requirement list . 31 4.6 Node.js with Express.js framework . 32 4.7 ER-diagram . 33 4.8 Table for framework evaluation . 34 5 Analysis 35 5.1 Web-application via Angular . 35 5.1.1 Pre-expectations to Angular . 35 5.1.2 Developing Todo-list with Angular . 36 5.2 Web application via React . 40 5.2.1 Pre-expectations to React . 40 5.2.2 Developing todolist with React . 41 5.3 Comparative analysis of Angular and React’s development processes . 45 6 Discussion 50 7 Conclusion 52 Appendices 58 A Github projects 59 A.1 Database instance . 59 A.2 NodeJs project . 60 A.3 Angular project . 60 A.4 React project . 60 B Evaluation tables 61 B.1 Table for evaluation of framework - Angular . 61 B.2 Table for evaluation of framework - React . 68 B.3 Table of rating Angular and React . 74 2 Chapter 1 Introduction In recent years it is evident that JavaScript is the fundamental programming language in websites, which has led to an increase in its popularity and an interest in its learnability when it comes to making use of its frameworks and libraries. This interest is also shown in several research papers, where analyses of JavaScript frameworks’ level of adoption and comparison of frameworks and libraries are conducted. According to earlier research about JavaScript frameworks conducted by Pano et al.[26], a survey from 2018 showed that 88.2 percent of one billion websites relies on JavaScript programming language. in 2020 this number increased to 94.6 percent[30]. As JavaScript is becoming the lead programming language of web applications, an interest in outlin- ing the frameworks’ most dominant factors are necessary. This outline helps to prepare developers’ expectations when applying a framework or library within JavaScript, but also to make sure that the chosen framework is suitable and fulfills the project goals. Such comparison and analysis of frameworks and libraries are beneficial for several actors such as beginners e.g. students, but also more experienced developers that want to efficiently implement a web application via the relevant framework or teachers and team leaders in businesses that want to enhance knowledge and adopt to optimised web technologies and solutions in their work. The main aim of this thesis is to explore how to evaluate frameworks and compare them. Therefore, an experiment of building two Todo-list applications will give the base for the evaluation and comparative analysis of the chosen frameworks. 1.1 Background Why is the subject necessary and interesting? JavaScript is famous to developers due to its offerings of many frameworks and libraries created by the developers themselves. Usage of frameworks and libraries makes the process of developing in client-side web-applications easier with clean and structured coding. Therefore, it is important to investigate the different frameworks’ contents in order to utilise them in the right setting and purpose. When being aware of the differences of the frameworks, we avoid wasting time in adopting to a framework or library which might not meet the criteria for the given project. Another advantage of outlining the factors influencing a framework is the fact that a developer has an insight of the required knowledge and the framework’s complexity before choosing it. As a developer, my interest stems from a personal experience where I discovered that there is a lack 3 of an overview, which outlines a framework’s requirements and content. After working with several frameworks within JavaScript, I gained an interest in understanding why some frameworks are more preferred than others. In this case I want to investigate what Angular and React contain in terms of complexity and the required experience when adopting them in web application. Are these choices inves- tigated and thoroughly tested before a decision fall on one specific framework? Or are decisions based on personal interest and simply the knowledge that one already obtains? Therefore, this Master thesis will have its point of departure around the question on which factors are dominant in a specific framework and library within JavaScript. When analysing each framework’s assets and requirements, such analysis can prepare the relevant actors of what to expect when applying specific frameworks. It is also relevant to share insights of how to best analyse and compare different frameworks before settling on one. 1.2 Related work An area within research of JavaScript frameworks identifies the need to discover factors that a framework can hold, but also in the end influence the choice of which framework to choose. Related research about JavaScript frameworks and libraries have been focused on specific factors e.g. performance within speed in the browser and developers wishes to a framework to satisfy their needs. An insightful research that goes beyond these concerns and rather focuses on frameworks’ content that lead to adoption is the work from Pano et al. [26] that gives an insightful view on why JavaScript frameworks are important to know, but also what factors influence a developer’s adoption of a JavaScript framework. The authors state the following as their main question for the research: "Which factors and actors lead to the adoption of a JavaScript Framework?". In order to investigate this research question, the authors built the case study within qualitative method by conducting interviews with 18 actors that are part of a company and also are decision-makers in that company. These actors are therefore identified as developers having a general knowledge and are users of JavaScript. The classification of factors and actors are as follows: 1. Factors • Performance expectancy( Performance, Size) • Effort expectancy( Automation, Learnability, Complexity, Understandability) • Social influence(Competitor analysis, Collegial advice, Community size, Community respon- siveness) • Faciliting conditions(Suitability, Updates, Modularity, Isolation, Extensibility) • Price 2.
Recommended publications
  • THE FUTURE of SCREENS from James Stanton a Little Bit About Me
    THE FUTURE OF SCREENS From james stanton A little bit about me. Hi I am James (Mckenzie) Stanton Thinker / Designer / Engineer / Director / Executive / Artist / Human / Practitioner / Gardner / Builder / and much more... Born in Essex, United Kingdom and survived a few hair raising moments and learnt digital from the ground up. Ok enough of the pleasantries I have been working in the design field since 1999 from the Falmouth School of Art and onwards to the RCA, and many companies. Ok. less about me and more about what I have seen… Today we are going to cover - SCREENS CONCEPTS - DIGITAL TRANSFORMATION - WHY ASSETS LIBRARIES - CODE LIBRARIES - COST EFFECTIVE SOLUTION FOR IMPLEMENTATION I know, I know, I know. That's all good and well, but what does this all mean to a company like mine? We are about to see a massive change in consumer behavior so let's get ready. DIGITAL TRANSFORMATION AS A USP Getting this correct will change your company forever. DIGITAL TRANSFORMATION USP-01 Digital transformation (DT) – the use of technology to radically improve performance or reach of enterprises – is becoming a hot topic for companies across the globe. VERY DIGITAL CHANGING NOT VERY DIGITAL DIGITAL TRANSFORMATION USP-02 Companies face common pressures from customers, employees and competitors to begin or speed up their digital transformation. However they are transforming at different paces with different results. VERY DIGITAL CHANGING NOT VERY DIGITAL DIGITAL TRANSFORMATION USP-03 Successful digital transformation comes not from implementing new technologies but from transforming your organisation to take advantage of the possibilities that new technologies provide.
    [Show full text]
  • The Jungle Through Javascript Frameworks
    The jungle through Javascript frameworks. Jonatan Karlsson Henrik Ölund Web Programming Web Programming 2013, BTH, Blekinge institute of 2013, BTH, Blekinge institute of technology technology Advanced topic in Web development, PA1426 Advanced topic in Web development, PA1426 HT15 HT15 Karlskrona, Sweden Karlskrona, Sweden [email protected] [email protected] PA1426 Revision C, Advanced topic in Web development 2015-11-05 Abstract In this article we have planned to dive into Javascripts world where new framework comes out “every day”. We will take the reader into a world where nothing are for granted and everything is a non-standard. In the current situation, there is a [3] tremendous amount of Javascript frameworks ​ and that makes it difficult for a ​ layman to choose the right framework, for the right task and this is something we will try figure out and explain to the reader. Keywords: Javascript, Framework, MV*, Client-side, React, Mithril, Backbone.js, ​ Ember.js 1 PA1426 Revision C, Advanced topic in Web development 2015-11-05 Abstract 1. Introduction 1.1 Background 1.2 Intention 1.3 Method First part Does the framework follow the MV*-pattern? Is the framework popular on google? Have the framework risen in popularity since 2013? Does the framework have any corporation that backs them? Second part 2. Result 2.1 Which frameworks did we select? 2.2 Not included 2.3 React What philosophies have pushed this framework forward? What kind of problem does this framework solve? Which famous products has been created with this framework?
    [Show full text]
  • Glen R. Goodwin [email protected] Laurel, Maryland
    Glen R. Goodwin [email protected] Laurel, Maryland https://arei.net Experience August 2019 to Director of Software Engineering / Lead Engineer, Whitebox Technology, Present Baltimore, Maryland • Lead day to day operations of entire Engineering Directorate including growing team from 5 engineers to 18 engineers. • Designed and implemented entire Engineering department’s communication and process and company culture of Software excellence. • Mentored entire team and individual developers in communication, architecture, engineering best practices, and software quality. • Served as Lead Engineer for Systems Team, responsible for implementing innovative systems to deliver faster, more efficently, and at scale • Served as Lead Experience Engineer fostering and implementing consistent cross product common solutions to better enhance the company brand and the end user expereience. • Designed and delivered technical solutions across the entire company on everything from visualizations to automated conveyance systems. July 2018 to Founder, The Awesome Engineering Company, Laurel, Maryland August 2019 • Started The Awesome Engineering Company to productize personally developed open source solutions. • Developed open source products for NodeJS and modern browsers. October 2013 to Distinguished Software Engineer & Chief Architect for CyberSecurity, SAS July 2018 Institute inc, Ellicott City, Maryland • Chief Architect for the SAS Cybersecurity product line overseeing technical (Converted from VSTI vision from inception to release. employee to parent SAS company in October 2013) • Served as Engineering Lead for User Interface, Services (API), Persistence (ElasticSearch), and Enrichment teams structured around technical layers. • Acted as Lead Researcher for new implementations and technology experiments advising senior management on feasibility and direction • Designed and implemented backend and frontend technologies for the entire product from conception to delivery in multiple languages/frameworks.
    [Show full text]
  • From GWT to Angular: an Experiment Report on Migrating a Legacy Web
    From GWT to Angular: An Experiment Report on Migrating a Legacy Web Application Benoit Verhaeghe, Anas Shatnawi, Abderrahmane Seriai, Anne Etien, Nicolas Anquetil, Mustapha Derras, Stephane Ducasse To cite this version: Benoit Verhaeghe, Anas Shatnawi, Abderrahmane Seriai, Anne Etien, Nicolas Anquetil, et al.. From GWT to Angular: An Experiment Report on Migrating a Legacy Web Application. IEEE Software, Institute of Electrical and Electronics Engineers, In press, 10.1109/MS.2021.3101249. hal-03313462 HAL Id: hal-03313462 https://hal.archives-ouvertes.fr/hal-03313462 Submitted on 4 Aug 2021 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Department: Head Editor: Name, xxxx@email From GWT to Angular: An Experiment Report on Migrating a Legacy Web Application B. Verhaeghe Berger-Levrault, France Université de Lille, CNRS, Inria, Centrale Lille, UMR 9189 – CRIStAL, France A. Shatnawi Berger-Levrault, France A. Seriai Berger-Levrault, France A. Etien Université de Lille, CNRS, Inria, Centrale Lille, UMR 9189 – CRIStAL, France N. Anquetil Université de Lille, CNRS, Inria, Centrale Lille, UMR 9189 – CRIStAL, France M. Derras Berger-Levrault, France S. Ducasse Université de Lille, CNRS, Inria, Centrale Lille, UMR 9189 – CRIStAL, France Abstract—Berger-Levrault is an international company that developed applications in GWT for more than 10 years.
    [Show full text]
  • Analysing the Use of Outdated Javascript Libraries on the Web
    Updated in September 2017: Require valid versions for library detection throughout the paper. The vulnerability analysis already did so and remains identical. Modifications in Tables I, III and IV; Figures 4 and 7; Sections III-B, IV-B, IV-C, IV-F and IV-H. Additionally, highlight Ember’s security practices in Section V. Thou Shalt Not Depend on Me: Analysing the Use of Outdated JavaScript Libraries on the Web Tobias Lauinger, Abdelberi Chaabane, Sajjad Arshad, William Robertson, Christo Wilson and Engin Kirda Northeastern University {toby, 3abdou, arshad, wkr, cbw, ek}@ccs.neu.edu Abstract—Web developers routinely rely on third-party Java- scripts or HTML into vulnerable websites via a crafted tag. As Script libraries such as jQuery to enhance the functionality of a result, it is of the utmost importance for websites to manage their sites. However, if not properly maintained, such dependen- library dependencies and, in particular, to update vulnerable cies can create attack vectors allowing a site to be compromised. libraries in a timely fashion. In this paper, we conduct the first comprehensive study of To date, security research has addressed a wide range of client-side JavaScript library usage and the resulting security client-side security issues in websites, including validation [30] implications across the Web. Using data from over 133 k websites, we show that 37 % of them include at least one library with a and XSS ([17], [36]), cross-site request forgery [4], and session known vulnerability; the time lag behind the newest release of fixation [34]. However, the use of vulnerable JavaScript libraries a library is measured in the order of years.
    [Show full text]
  • Choosing the Right Javascript Framework for Your Next Web
    Choosing the Right JavaScript Framework for Your Next Web Application by Brandon Satrom © 2017 Progress. All Rights Reserved. All Rights © 2017 Progress. 2018 WHITEPAPER Table of Contents The Current State of Web Frameworks / 3 Tooling Considerations / 22 Evaluation Criteria / 5 UI & Component Libraries / 22 Ecosystem Considerations / 7 IDE & Tooling Support / 23 History & Longevity / 7 Companion & CLI Tools / 24 Popularity / 9 Enterprise Considerations / 26 Corporate Support / 11 Licensing / 26 Community & Ecosystem / 12 Support & Upgrade Paths / 27 Framework Considerations / 13 Security / 29 Getting Started Experience / 13 Talent Pool & Resources / 30 Skill Requirements / 15 Making a Choice / 33 Completeness of Offering / 17 Size & Performance / 18 Beyond the Browser Options / 21 © 2018 Progress. All Rights Reserved. All Rights © 2018 Progress. Progress / Kendo UI 2 The state of web application development has changed drastically in the past ten years. These changes have been spurred on by greater bandwidth for many, more powerful and feature-rich browsers. The result is a thriving web ecosystem with sites, apps and experiences that would have been hard to imagine a decade ago. And yet, for many developers, this ecosystem often feels like a bazaar, stuffed with libraries and frameworks that do anything and everything one could imagine. For every need there are a dozen options to choose from, and with new stalls (libraries) opening every day, it’s no wonder many of us pine for the days when starting a new project was as simple as dropping jQuery in a script tag. The Current State of Web Frameworks There’s no doubt that the web has grown in complexity, and our development tooling options have grown along with it.
    [Show full text]
  • Javascript Frameworks for Modern Web Development the Essential Frameworks, Libraries, and Tools to Learn Right Now Second Edition
    JavaScript Frameworks for Modern Web Development The Essential Frameworks, Libraries, and Tools to Learn Right Now Second Edition Sufyan bin Uzayr Nicholas Cloud Tim Ambler JavaScript Frameworks for Modern Web Development Sufyan bin Uzayr Nicholas Cloud Al Manama, United Arab Emirates Florissant, MO, USA Tim Ambler Nashville, TN, USA ISBN-13 (pbk): 978-1-4842-4994-9 ISBN-13 (electronic): 978-1-4842-4995-6 https://doi.org/10.1007/978-1-4842-4995-6 Copyright © 2019 by Sufyan bin Uzayr, Nicholas Cloud, Tim Ambler This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, logo, or image we use the names, logos, and images only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark. The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights. While the advice and information in this book are believed to be true and accurate at the date of publication, neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or omissions that may be made.
    [Show full text]
  • Comparative Analysis of Angularjs and Reactjs
    International Journal of Latest Trends in Engineering and Technology Vol.(7)Issue(4), pp.225-227 DOI: http://dx.doi.org/10.21172/1.74.030 e-ISSN:2278-621X COMPARATIVE ANALYSIS OF ANGULARJS AND REACTJS Anurag Kumar1 and Ravi Kumar Singh2 Abstract- We live in a different era of web, we need better ways to quickly develop and deploy interactive web applications and that is where JavaScript frameworks come to the picture. JavaScript frameworks are the backbone of single page web applications development and provide superpowers to plain HTML and JavaScript. AngularJS and React.js are two most used javascript frameworks in current web development. Both frameworks are used to build interactive single page application. This research paper helps in understanding AngularJS and ReactJS. Keywords – Javascript, AngularJS, ReactJS, Two-way binding, Virtual DOM I. INTRODUCTION JavaScript is a client side scripting language which is used for providing dynamic attributes and features to the HTML webpages .JavaScript was developed for supporting the browser with feature of asynchronous communication, controlling the browser and for user interaction with the web page components. An HTML page is just a static page. JavaScript can make the website more interactive and user- friendliness, JavaScript helps easy navigation of the website and to provides interactivity. Based on JavaScript there are many frameworks are developed and also added many new features for server side scripting. JavaScript has emerged so much in web industry and if you look at the current websites there are no web technologies that are not using JavaScript. JavaScript is a dynamic scripting language, it instruct the browser to make changes to page elements after loading a page.
    [Show full text]
  • Angular Vs React.Js Vs Vue.Js
    EVERYTHING YOU NEED TO KNOW TO MAKE AN EDUCATED DECISION ABOUT YOUR TECHNOLOGY STACK ANGULAR VS REACT.JS VS VUE.JS + Our evaluation of UI Frameworks, Tools & Technologies 2019 3 What’s inside? 1 Preface 3 2 Angular, ReactJS & Vue JS - Comparison 4 3 Angular, ReactJS & Vue JS - Pros & Cons 6 4 Angular, ReactJS & Vue JS - Conclusion 11 5 UI Technoverse 13 a.Frameworks 15 b.Technologies 19 c.Tools 22 2 Are you a front-end superstar, excited to build feature-rich beautiful UI? Join Us 3 STATE OF FRONTEND TECHSTACKS 2019 PREFACE Preface he only constant in the web frontend development landscape is that it is in constant flux year after year. So, it becomes paramount to reevaluate the tools, frameworks, Tlibraries and practices after every few quarters. As of this writing most of the web frontend development happens in either Angular, ReactJS or VueJS. Compared to our previous evaluation in 2018 which only had Angular and ReactJS as major players, now, we also have VueJS with significant traction. As always a direct comparison between Angular, ReactJS and VueJS alone will not be sufficient. So, it will not be an individual comparison but a comparison of their respective ecosystems on the whole. 3 Are you a front-end superstar, excited to build feature-rich beautiful UI? Join Us Angular, React.JS & Vue.JS - Comparison In this section, we compare all three frameworks using a plethora of parameters to highlight how they fare against 2each other. STATE OF FRONTEND TECHSTACKS 2019 COMPARISON Angular ReactJS VueJS Type JavaScript Framework JavaScript Library JavaScript Library Web development and Web development and Web development and Hybrid mobile app Native mobile app Hybrid mobile app Used for development (Ionic) development (React development Native) (Onsen UI) Maintained by Google & Community Facebook & Community Community TypeScript Javascript (Also Javascript (Also Coded in supports Typescript) supports Typescript) Steep learning curve Easier Easiest among the three Ease of Learning since it is an end to end framework.
    [Show full text]
  • Svelte.Js for Modern Front-End Development
    © 2020 JETIR June 2020, Volume 7, Issue 6 www.jetir.org (ISSN-2349-5162) Svelte.js for modern front-end development Vishal1, Dr. Ashwini K. B2 Sixth Semester1, Associate Professor2 Master of Computer Applications RV College of Engineering®, Bangalore, India Abstract These days web applications are used in all sorts of scenarios ranging from Government, Education, Health and Finance etc (1). There are many technical jargons required to create a simple web application, but many frameworks have emerged over the past years to help developers quickly come up with ideas, designs and create complex web interfaces. Although there are many front-end frameworks it is still hard to figure out the coding standards, how the overall build happens and most importantly the performance. Due to this Svelte is an interesting competitor for the front-end market. One of the recently emerging front-end framework is Svelte.js. Svelte is a new approach in building user interfaces. Whereas traditional frameworks like React do the bulk of their work in the browser, Svelte shifts that work into a compile time that happens when you build your app. Which helps developers to create simple code and yet complex web interfaces from scratch, giving more concentration on the design perspective rather than the coding point of view. Keywords Front-end framework, Web application, Svelte.js, Web development, JavaScript. I. INTRODUCTION The past few years of the technological enhancements have grown drastically, improving a big chunk of modern development stages. Web applications have begun from being simple pages that told stories to creating AI integrated intelligent applications that drive our daily life.
    [Show full text]
  • Benchmarking React Library: a Developer Perspective
    Benchmarking React Library: A Developer Perspective Chandana NS 10539269 Department of Information systems with computing Dublin Business School This dissertation is submitted for the degree of Master of Science January 2021 Declaration I hereby declare that except where specific reference is made to the work of others, the contents of this dissertation are original and have not been submitted in whole or in part for consideration for any other degree or qualification in this, or any other university. This dissertation is my own work and contains nothing which is the outcome of work done in collaboration with others, except as specified in the text and Acknowledgements. Chandana NS 10539269 January 2021 Acknowledgements They say research is to see what everybody has seen and to think what nobody has thought. The process not only helps in understanding the subject but also the way we know ourselves. In this remarkable journey, coming from bustling metropolitan city Bengaluru to warm and welcoming city, Dublin has unquestionably shaped my passion for life. Just a few months after entering the town, entering the pandemic period rendered extrovert inside me with an emotional roller coaster ride. Despite the fact, covid has made me realize not to stop improving and never stop 3Gs(Goal, Grow, Glow). I would like to thank my thesis supervisor Salaheddin Alakkari for consistent support and understanding of the work that steered me in the right direction. When my thesis results were precisely the opposite of expected outcomes, his guidance and encouragement supported me to deep dive into the topic, finishing in the anticipated work.
    [Show full text]
  • Choosing the Best Javascript Framework
    Choosing the Best JavaScript Framework Andy Gup, Esri US Raul Jimenez, Esri ES Frameworks, frameworks, … Do I even need a framework?? Has.jsRaphael The Boiler BootstrapLess+ DojoWirefy Foundation 3 SenchaTitan Susy Skeleton Ingrid jQuery Less Phonegap X X 1991 2012 ECMA 5.1 ECMA 2015 June 2011 June 2015 JavaScript Frameworks & Libraries: Timeline MooTools Kendo Polymer 05/2014 script.aculo.us 09/2006 AngularJS UI 06/2005 2009 04/2014 Kartograph Ionic 08/2013 Phonegap jQuery 2013 2009 08/2006 Backbone Ember.js 10/2013 JavaScriptMVC Knockout 12/2011 YUI 05/2008 02/2006 7/2010 CMV 02/2013 Web Bootstrap AppBuilder Titanium Prototype 04/2011 07/2014 12/2008 2005 ExtJS Ractive 12/2007 08/2013 React native jQuery React.js 03/2015 Dojo Mobile 2013 08/2005 10/2010 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 Event-driven One-Page Discontinued Hybrid Geospatial Trends: Interest over time 2005 - 2007 2007 - 2012 2004 - 2012 Your Considerations • New project or expanding existing project? • Your project size (small, medium, large)? • Do you have existing build system? • Do you have existing frameworks? • Your teams skill sets? • Your requirements? Learning curve Evaluating a framework • Framework 3rd party sponsorship • Major version changes • Documentation • Stackoverflow questions Evaluating a framework Angular.js Mono Evaluating a framework Latest commit … Oct 6, 2011!!! Evaluating a framework Number of: • Closed issues • Open issues • Open pull requests • Contributors Evaluating a framework • Trendiness (cool factor) vs Stable/Secure
    [Show full text]