- Design, develop and deploy a modern web application. This course is not about how to build a pretty web page, it's about how to build and deploy the full stack of protocols and technologies associated with a complete web app. That said, it is not possible for you to become an expert in this area in a few weeks. My goal, rather, is to put you on the right path by providing a solid foundation and framework for understanding web applications, allowing you to dig deeper and learn more on your own. The next bullet points describe how we're going to do this.
- Understand the major architectural components in web apps, and how they fit together. Modern web apps are complex. A typical application has a database along with numerous scripts on one end of the web stack, a web server in the middle that delivers information over the Internet, and a user's browser on the other end of the web stack. Even getting started in trying to understand these components can be overwhelming. Consider just the programming languages involved in a typical web stack: from the database (SQL), to the web server (scripting language), to the browser (JavaScript, HTML, CSS), we're dealing with five different programming languages, not to mention the protocols they're operating over – and you need to know a little about them too! We'll introduce a number of software design patterns throughout the course that are aimed at helping you to manage this complexity.
- Use Ruby on Rails. We're going to learn about web apps through the Ruby on Rails framework. Rails is a framework for creating web applications that is built on top of the Ruby programming language. I believe this is one of the best frameworks for learning about web applications, and it's also proving highly successful as a platform for commercial offerings. That said, there are many other frameworks available, and the concepts you will learn using Rails are transferable to these other frameworks.
- Better understand modern software engineering practice. We’ll be using the latest tools and practices in software development, source code control, testing, and application deployment. This will include exposure to agile development practices, the numerous tools that software engineers are expected to know how to use, and the cloud-based resources that are becoming increasingly important in web applications.
Web Application Architectures
University of New Mexico via Coursera
-
620
-
- Write review
This course may be unavailable.
Overview
This course explores the development of web application architectures from an engineering perspective. We will consider the fundamental design patterns and philosophies associated with modern web application architectures, along with their major components. By the end of this course, I expect you to be able to:
Syllabus
Week One – Module 1: Introduction and Background
Lecture 1: Historical Perspective
Lecture 2: What is a Web Application?
Lecture 3: Web 1.0, 2.0, 3.0 Application Architectures
Lecture 4: Design Patterns
Lecture 5: Setting up Your Development Environment
Week Two – Module 2: Ruby on Rails
Lecture 1: Rails Overview
Lecture 2: Your First Rails App
Lecture 3: The Blog App – Iteration 1
Lecture 4: Rails Philosophy
Lecture 5: Version Control
Lecture 6: Git and Rails
Week Three – Module 3: Database Interactions
Lecture 1: Relational Databases
Lecture 2: Databases in Rails
Lecture 3: The Active Record Design Pattern
Lecture 4: The Blog App – Iteration 2 (Associations)
Lecture 5: The Blog App – Iteration 3 (Validations)
Week Four – Module 4: The Ruby Programming Language
Lecture 1: Ruby Background
Lecture 2: Classes and Inheritance
Lecture 3: Objects and Variables
Lecture 4: Strings, Regular Expressions and Symbols
Lecture 5: Expressions and Control Structures
Lecture 6: Collections, Blocks and Iterators
Week Five – Module 5: Middleware
Lecture 1: What is Middleware?
Lecture 2: The Hypertext Transfer Protocol (HTTP) – Introduction Lecture 3: HTTP – Request Lecture 4: HTTP – Response
Lecture 5: The Model-View-Controller (MVC) Design Pattern
Lecture 6: Rails Controllers – Request Handling
Lecture 7: Rails Controllers – Response
Lecture 8: MVC Implementation in Rails
Lecture 9: The Blog App – Iteration 4
Week Six – Module 6: Presentation/User Interface
Lecture 1: Introduction and Background
Lecture 2: HTML – Basic Syntax Lecture 3: HTML – Document Structure Lecture 4: HTML – Forms Lecture 5: Dynamic Content Lecture 6: Cascading Style Sheets (CSS) Lecture 7: JavaScript and jQuery Lecture 8: Ajax Lecture 9: The Blog App – Iteration 5
Lecture 1: Historical Perspective
Lecture 2: What is a Web Application?
Lecture 3: Web 1.0, 2.0, 3.0 Application Architectures
Lecture 4: Design Patterns
Lecture 5: Setting up Your Development Environment
Week Two – Module 2: Ruby on Rails
Lecture 1: Rails Overview
Lecture 2: Your First Rails App
Lecture 3: The Blog App – Iteration 1
Lecture 4: Rails Philosophy
Lecture 5: Version Control
Lecture 6: Git and Rails
Week Three – Module 3: Database Interactions
Lecture 1: Relational Databases
Lecture 2: Databases in Rails
Lecture 3: The Active Record Design Pattern
Lecture 4: The Blog App – Iteration 2 (Associations)
Lecture 5: The Blog App – Iteration 3 (Validations)
Week Four – Module 4: The Ruby Programming Language
Lecture 1: Ruby Background
Lecture 2: Classes and Inheritance
Lecture 3: Objects and Variables
Lecture 4: Strings, Regular Expressions and Symbols
Lecture 5: Expressions and Control Structures
Lecture 6: Collections, Blocks and Iterators
Week Five – Module 5: Middleware
Lecture 1: What is Middleware?
Lecture 2: The Hypertext Transfer Protocol (HTTP) – Introduction Lecture 3: HTTP – Request Lecture 4: HTTP – Response
Lecture 5: The Model-View-Controller (MVC) Design Pattern
Lecture 6: Rails Controllers – Request Handling
Lecture 7: Rails Controllers – Response
Lecture 8: MVC Implementation in Rails
Lecture 9: The Blog App – Iteration 4
Week Six – Module 6: Presentation/User Interface
Lecture 1: Introduction and Background
Lecture 2: HTML – Basic Syntax Lecture 3: HTML – Document Structure Lecture 4: HTML – Forms Lecture 5: Dynamic Content Lecture 6: Cascading Style Sheets (CSS) Lecture 7: JavaScript and jQuery Lecture 8: Ajax Lecture 9: The Blog App – Iteration 5
Taught by
Greg Heileman
Tags
Reviews
3.5 rating, based on 15 Class Central reviews
Showing Class Central Sort
-
This course is an introduction to the following: - Ruby and Rails Framework (a.k.a. Ruby on Rails) - Basic Architecture of Apps (MVC, Middleware, Database) - Hypertext Transfer Protocol (HTTP) - Git Version Control & Bitbucket Web-based Git reposit…
-
Highly theoretical course. Lessons learnt are not reinforced by programing assignments. The assignments in the course ask you to copy the exact code of the instructor, which obviously does not help much to learn Ruby on Rails.
-
Was rather easy and more of an overview than teaching very much in depth about web development or Rails. The assignments involved copying the instructor's code and didn't help reinforce concepts very well.
-
Very Good Informative class...introduces the fundamental of web architecture
-
This course is like the intro chapter for ruby on rails.
-
This course is an introduction to Ruby and it sounds more like a sales pitch than a course. For assignments you have to retype the code that instructor showed in slides. How's that learning?
The course shows a bit of a big picture where different components fit the architecture. It shows only one without stating the pros and cons of that architecture. Good to learn a theoretical concepts, but not good for learning how to do things. -
-
-
-
-