JavaScript Frameworks

Slides:



Advertisements
Similar presentations
Javascript Introduction Norman White Material is from w3schools.com Go there to run examples interactively.
Advertisements

Developing HTML5 Application using MVVM pattern Pekka Ylenius.
Wireless: WDDPublic Follow along with the code: (or download the Join Me app.
ElmahR = ELMAH + SignalR Roberto Real time error handling web dashboard.
SharePoint Saturday Sponsors Gold Bronze Custom REST services and jQuery AJAX Building your own custom REST services and consuming them with jQuery AJAX.
USING ANGULARJS WITH SITEFINITY
Eye Candy for Your iPhone Tricks to make your WordPress site look more like a native iPhone app Brian Shim Slides at brianshim.com.
Development of mobile applications using PhoneGap and HTML 5
ICS 665 Jesse Abdul. jQuery UI Overview  jQuery UI javascript library Includes all UI component functionality  jQuery UI CSS framework Includes standard.
About me I attend the Edina chapter of TechMasters Been a programmer since age 13, sparked by playing video games Currently employed at GMAC as an independent.
Definition from Wikipedia.  The Prototype JavaScript Framework  implemented as a single file of JavaScript code  named prototype.js (
Kathy E. Responsive Design and Twitter Bootstrap.
Project Rickshaw SEARCH - FIND - GO. Project Rickshaw TEAM MEMBERS KEVIN AUGUSTINO – MATT FOX – DAVID MOORE SPONSORS KARASU TECHNOLOGIES - ERIK PAUL -
SUNY Polytechnic Institute CS 490 – Web Design, AJAX, jQueryAngularJS AngularJS is a client-side JavaScript Framework for adding interactivity to HTML.
JavaScript & jQuery the missing manual Chapter 11
| imodules.com Making Your Site Mobile-Ready Presented by Chris Smith and Mark Werner.
A really fairly simple guide to: mobile browser-based application development (part 4, JQuery & DOM) Chris Greenhalgh G54UBI / Chris Greenhalgh.
By: Toms Linnes Mrunal Patel.  Universal  With qooxdoo you build rich, interactive applications, native-like apps for mobile devices light weight single.
AngularJS & Git Workshop Made by: Nikola Novakovic.
USER MANUAL USER MANUAL 21 June TABLE OF CONTENTS System Description4 How It Works?5 PLUGIN Maxxbooking Plugin6-7 Hotel Info & Description8-9 Availability.
Making iServices Subscriber More Mobile Friendly `
Wijmo Troy Taylor. What is Wijmo? -Wijmo is a kit of over 40 UI widgets, optimized for client-side web development. -HTML5 -jQuery -CSS3 -SVG.
Hattan Shobokshi mvcdotnet.wordpress.com Web Development in the Past (Microsoft Stack)
Introduction to Angular James Kahng. Terms Framework Template/environment constructed in the language where you fill in details with code Library Set.
Extending the Operations Dashboard
TOPIC II Dynamic HTML Prepared by: Nimcan Cabd Cali.
Canopy walk through Single-Page Apps (SPAs) Benjamin Howarth Freelancer, Code Gecko Umbraco UK Festival, Fri 30 th Oct 2015 CODE GECKO.
WorldWide Telescope WWT HTML5 SDK WEB CONTROL WEB CLIENT DEVELOPMENT OVERVIEW RON GILCHRIST (WEB ON GITHUB NOV 7, 2015.
Kendo Ui Basics.
Adxstudio Portals Training
ANGULARJS A Gentle Introduction John Madison.NET User Group.
Document Object Model Nasrullah. DOM When a page is loaded,browser creates a Document Object Model of the Page.
Chapter 6 Murach's JavaScript and jQuery, C6© 2012, Mike Murach & Associates, Inc.Slide 1.
An Introduction to JQuery Mobile By Trevor Seeney.
(1) HTML5, CSS, Twitter Bootstrap. (2) HTML5 Will be the new standard New features Drag and Drop and Support for local storage,,,, New input types Removed.
Chapter 1 Ionic Framework (overview) Front-end framework for developing hybrid mobile apps with HTML5 Yeunyong Kantanet School of Information and Communication.
LECTURE #4: JQUERY AND FORM VALIDATION Josh Kaine Josh Kaine 4/1/2016.
Getting Started with Angular 2 and TypeScript Nebraska.Code() 2016 Spencer Schneidenbach Ryvit.
Fundamentals of Web DevelopmentRandy Connolly and Ricardo Hoar Textbook to be published by Pearson Ed in early Bootstrap.
Agenda 1)Modern web standards overview 2)JavaScript library overview 3)Building a Single Page Application SPA.
Preliminary Software design and Development a Welcome to our Coding Day session one.
1 Using jQuery JavaScript & jQuery the missing manual (Second Edition)
APP DESIGN AND DEVELOPMENT WITH THE IONIC FRAMEWORK Chuck Leone
Best Web Technologies for
AngularJS and SharePoint
10 Mobile Application Framework Must Know to Launch New App.
What is jQuery?.
CSCI 1720 W3.CSS – Part 1 East Tennessee State University Department of Computing CSCI 1720 Intermediate Web Design.
Front-End Framework for Responsive Web Sites
Kendo UI Builder Bob Brennan
AngularJS A Gentle Introduction John
Building Web Applications with Microsoft ASP
IS1500: Introduction to Web Development
The Cliff Notes Version
Top 10 AngularJS Interview Questions Before you decide to step up and face your AngularJS Interview questions, learn about its various features to face.
Training Institute Pune AngularJS Course. What is AngularJS ? AngularJS is a structural framework that is used in Single Page HTML for declaring dynamic.
UI Developer Overview  SV Trainings UI Developer Training is online course developed by industry experts to understand the concepts of HTML5, CSS3, Bootstrap,
Introduction to AngularJS
JQuery with ASP.NET.
OneDrive Training Plan Template
Secure Web Programming
How AngularJS Development Services different from other Framework - Kunsh Technologies.
Office 365 Development.
Software Development at ORTEC
Web Page Layout Imran Rashid CTO at ManiWeber Technologies.
Introduce to Angular 6 Present by: Võ Văn Hào
Web Client Side Technologies Raneem Qaddoura
Bootstrap Direct quote from source: bootstrap/
creating websites and web applications responsive.
05 | An Introduction to AngularJS
Presentation transcript:

JavaScript Frameworks Desktop to Mobile (and an overview of AngularJS)

Goals of a JavaScript Framework Abstract repetitive code Manage the DOM (“HTML”) Hide the idiosyncrasies of browsers … and key for consulting…. Promote coding guidelines and consistency. JavaScript frameworks are going to make things easy. This is key when you have multiple developers coding various sections of an application at the same time.

Frameworks These are just are the Frameworks that we currently have developers with knowledge. Each can be used to build on application optimized for Keyboard and Mouse or with touch screens on mobile devices. Frameworks we have developers actively using or with knowledge. Frameworks that we may want to look into. Frameworks we want to stay away from.

How do we Pick a Framework? Look at the Application Features When will users need this application? At their desk, or on the go with a mobile device? Will there be a lot of data input? Data Grids? Currency Input? Drop Down? Multi Select? What is the Budget/Timeframe? Some frameworks that offer more come with a license cost that needs to be accounted for. Consultant knowledge of the framework Does the project or timeframe give enough time to learn a new framework? This is where working with the client is key at the start of the application so the correct Framework is chosen. In this stage it is a great idea to ask a lot of questions about the input and interactive needs the user will perform when working with the application. […] Some frameworks like Sencha have a license cost involved the second you start developing an application with a commercial end goal.

Comparison Table jQuery AngularJS ExtJS 4 License MIT Commercial Pattern N/A MVW (MVVM’ish) MVC Interface jQuery UI/* Bootstrap/jQuery/* ExtJS Unit Testing Jasmine Routing Plugin Difficulty Easy Moderate* Moderate Ideal For Websites Single Page Apps Data Focused SPA MVW = Model-View-Whatever. * Assumes a full understanding of JavaScript

Example Project IT Hardware Repair – User Stories As a Admin I need to be able to add hardware. As a Admin I need to be able to delete hardware. As a User I need to submit a repair to IT. Single Page Application (aka SPA) AngularJS as the Framework This application could be done with any framework, but I’m going to step through why AngularJS will make the coding as simple as possible. So, what makes AngularJS so nice.

AngularJS Framework Developed and Maintained by Google with help from the community Contains a light version of jQuery called jqLite. Very well documented with best practices Countless plugins that can be added very quickly and shared. (function ($) { // most common jQuery abilities will work here })(angular.element); You’ve probably heard a developer talk about jQuery at one point around the office. It is widely used. With AngularJS it contains a lightweight version that allows AngularJS to stand alone, or if jQuery is included it will use the included jQuery library.

Model View Whatever (MVW) Data Models View Template .HTML files. $scope.item = { foo: ‘bar’ } // Controller <input name="foo" ng-model="item.foo" /> <div ng-include="/app/views/partials/form.html"></div> In this basic example a data is stored in the controller the binded to the input in the view. This is just a simple example, later in the demo I’ll show how to use a service to access data. Views work the way you expect, allowing you to organize the sections of content that will make up the application. <form role="form"> <input name="foo" ng-model="item.foo" /> </form> /app/views/partials/form.html

Model View Whatever (MVW) Continued On first glance it looks like a ViewModel, so MVVM. $scope is pretty much a ViewModel handled by the controller. Quack = Hmm… whatever… could be anything the more you use AngularJS, but lets just pretend it is VM, or ViewModel. The scope as we saw on the previous slide can contain primitive or object and can even contain functions. Primitives allow something called 2 way binding, as shown here. $scope.doSomething = function () { /* Something */ };

MVW – What is Data Binding? One-Way Data Binding Two-Way Data Binding In traditional template system the template is parsed and the model replaces the values creating a static view. While in a AngularJS view the template is actually parsed into a tightly coupled JavaScript that allows two way communication between the view and model. Source: https://docs.angularjs.org/guide/databinding

Demo Bootstrap – A CSS framework created by twitter Base Controllers Service Views angular LoginController InventoryService login.html angular-route AdminController RepairService admin.html app UserController user.html The demo is comprised of our base infrastructure. This includes vendor JavaScript files. Controllers – This application contains 3, but we’ll primarily focus on the Admin and User controller. Service – The services, while this application contains 2 services only one will be focused on. Views – Each controller in this example contains a corresponding view. Now to look at the Hardware IT Repair demo application, that I’ve called “Just Inventory Maintenance” that will allow a user to submit a hardware repair request into the JIM application. I’m just going to call it JIM for short. (our sysadmin is Jim by the way, for those reading this and not getting the amazing inside joke).

Resources AngularJS Framework: https://angularjs.org/ jqLite Documentation: https://docs.angularjs.org/api/ng/function/angular.element Bootstrap: http://getbootstrap.com/ Bootstrap Examples: http://bootsnipp.com/ Slides / Source Code: http://templarian.com/2014/04/30/javascript_tech_talk/

Questions? Framework related questions? CSS? HTML? Bootstrap? Thanks for attending the first Tech Talk Enjoy a beer and discuss front end development!