Slide 1

Slide 1 text

Web Frameworks, APIs and Final Thoughts Class Twelve: February 20, 2013

Slide 2

Slide 2 text

Web Application Frameworks Designed to support the development of dynamic websites, web applications, web services and web resources. Aims to alleviate the overhead associated with common activities performed in web development. Gathering libraries for database access, caching, and session management (plus much more), and they often promote code reuse.

Slide 3

Slide 3 text

Web Application Frameworks Ruby on Rails (Ruby) Django (Python) CakePHP (PHP) ASP.NET MVC (ASP.NET, e.g. C#)

Slide 4

Slide 4 text

Framework Feature Examples Caching The caching of web documents in order to reduce bandwidth usage, server load, and perceived "lag". Security Authentication and authorization, enabling the web server to identify the users of the application, and restrict access to functions based on some defined criteria. Database Access Many web application frameworks create a unified API to a database backend, enabling web applications to work with a variety of databases with no code changes, and allowing programmers to work with higher-level concepts. Form Validation

Slide 5

Slide 5 text

Frameworks and MVC A software architecture pattern which separates the representation of information from the user's interaction with it. The model consists of application data, business rules, logic, and functions. A view can be any output representation of data, such as a chart or a diagram. The controller mediates input, converting it to commands for the model or view.

Slide 6

Slide 6 text

Frameworks and MVC Sound familiar?

Slide 7

Slide 7 text

Application Programming Interface “Windows to the code.” Expose some of a program's internal functions to the outside world in a limited fashion. Defines exactly how a program will interact with the rest of the software world.

Slide 8

Slide 8 text

Application Programming Interface In practice, most often an API is a library that includes specifications for routines, data structures, object classes, and variables. Sound familiar? Dronestagram
 
 Twitter API
 
 Pinterest API? Not Yet. (7/31/2013)
 Pinterest for Developers (11/14/2013)

Slide 9

Slide 9 text

Final Thoughts The Computer
 HTML
 CSS
 Git / Source Control
 Cathedral and the Bazaar
 The Magic Cauldron
 Homesteading the Noosphere
 Javascript
 jQuery
 Databases
 APIs
 N-Tier Architecture
 Software Licenses
 Development Methodologies
 LAMP
 Language Overview
 Procedural Programming
 Object Oriented Programming
 Responsive Design
 UI/UX
 Web Application Frameworks
 Wordpress

Slide 10

Slide 10 text

Final Thoughts: Next Steps What do you want? What technologies interest you? What person resources do you have? What web resources do you have? Practice, practice, practice.