What Does MVP Stand For? It’s Not What You Think.
October 7, 2024
Article
Instructors: Greg Heileman
Instructor ratings
We asked all learners to give feedback on our instructors based on the quality of their teaching style.
49,523 already enrolled
Included with
(183 reviews)
(183 reviews)
Add to your LinkedIn profile
2 assignments
Add this credential to your LinkedIn profile, resume, or CV
Share it on social media and in your performance review
This is the first course in a Coursera Specialization track involving Web Application Architectures. This course will give you the basic background, terminology and fundamental concepts that you need to understand in order to build modern full stack web applications. A full stack web developer is familiar with each "layer" of the software technologies involved in a web application, including data modeling and database technologies, the web server environment and middleware components, network protocols, the user interface and basic visual design and user interaction concepts.
In this course we will learn by doing. We will start by learning the major components of web application architectures, along with the fundamental design patterns and philosophies that are used to organize them. You will build and continually refine a fully functional full-stack web application as we progress through the modules in this course. Along the way you will be exposed to agile software development practices, numerous tools that software engineers are expected to know how to use, and a modern web application development framework. This course is also available in Spanish. To join the Spanish version, visit this page: https://www.coursera.org/learn/apliweb.
This module sets the context for what we will study in this specialization by first providing a historical perspective on computing and web applications. Next we provide an overview of how the Internet works, and then we discuss how web applications have evolved over the past few decades. After that we’ll discuss some of the elements of modern software practice, including the typical tools that software engineers now use and the agile development practices they follow. The notion of software design patterns will introduced, and the n-tier architecture design pattern, fundamental to modern web application design, is then presented. Will also discuss a few current topics related to web application development. Finally, we will show you how to set up the software development environment you will use throughout the remainder of the courses in this.
22 videos3 readings1 assignment2 discussion prompts
In this module you will learn about web application frameworks. We will start by talking about the evolution of software and programming languages, and then talk about software application frameworks. The fundamental trade-off we will consider is programmer productivity versus program efficiency. Next you will learn about web application frameworks, as well as the model-view-controller design pattern that is the backbone for many of these frameworks. We will also consider how these frameworks support the agile programming principles associated with modern software practice. This will include a discussion of distributed version control systems and you will learn how to use the popular Git system. We will also demonstrate how to use Git with a Ruby on Rails application. We will use Git to submit all of the programming applications in this specialization.
20 videos1 reading1 programming assignment
A successful web application provides information t o users that is (1) useful, and also (2) easy to access and understand. This information is often collected from users, as well as from other information sources, and must be stored in a manner that allows it to be manipulated by the web application. The typical app roach is to store this data in a relational database. In this module you will learn some basic concepts associated with modeling the data in a web application, including h ow to specify the relationships between various data entities. We will also investigate ho w to hook a web application up to a back- end data store, along with good design techniques t hat will make it easier to use the data in your web applications by maintaining consistency th roughout the entire web stack.
20 videos1 reading1 programming assignment
Middleware is an abstraction layer that hides details about hardware devices and other lower-level software services from an application. Middleware services implement common low-level functions, such as communication with the operating system, application servers, database servers, etc., so that application developers do not need to concern themselves with these details, and can instead focus on the application functionality they are trying to provide. In a web application, these services generally make use of the HTTP protocol, and in a web application framework, the MVC design pattern can be thought of as being implemented over the middleware.
14 videos1 reading1 assignment
In our final module we will discuss the User Interface. We will touch on CSS and JavaScript, and how these are used to add style to layout and design of HTML documents. We will also learn about Ajax and how it improves user requests.
14 videos1 reading1 programming assignment
We asked all learners to give feedback on our instructors based on the quality of their teaching style.
As New Mexico’s flagship institution, UNM is a place where cutting-edge research and creative endeavors flourish. We empower our students to lead in tackling complex societal challenges, offering an exceptional education inspired by vision, scholarship, and creativity. UNM’s distinctive campus environment blend of culture and cuisine, styles and stories, people, pursuits and panoramas.
Board Infinity
Specialization
Specialization
Johns Hopkins University
Specialization
California Institute of the Arts
Course
183 reviews
63.93%
21.31%
4.91%
1.63%
8.19%
Showing 3 of 183
Reviewed on Sep 10, 2016
Awesome guidance and lecture delivery by the World class professor .
Reviewed on May 4, 2017
Good introductions to all tiers in web application.
Reviewed on Apr 7, 2020
very useful course but their is only one problem that i face ruby on rails is not installing properly .
Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription
Earn a degree from world-class universities - 100% online
Upskill your employees to excel in the digital economy
Access to lectures and assignments depends on your type of enrollment. If you take a course in audit mode, you will be able to see most course materials for free. To access graded assignments and to earn a Certificate, you will need to purchase the Certificate experience, during or after your audit. If you don't see the audit option:
The course may not offer an audit option. You can try a Free Trial instead, or apply for Financial Aid.
The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.
If you subscribed, you get a 7-day free trial during which you can cancel at no penalty. After that, we don’t give refunds, but you can cancel your subscription at any time. See our full refund policy.
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.
These cookies are necessary for the website to function and cannot be switched off in our systems. They are usually only set in response to actions made by you which amount to a request for services, such as setting your privacy preferences, logging in or filling in forms. You can set your browser to block or alert you about these cookies, but some parts of the site will not then work.
These cookies may be set through our site by our advertising partners. They may be used by those companies to build a profile of your interests and show you relevant adverts on other sites. They are based on uniquely identifying your browser and internet device. If you do not allow these cookies, you will experience less targeted advertising.
These cookies allow us to count visits and traffic sources so we can measure and improve the performance of our site. They help us to know which pages are the most and least popular and see how visitors move around the site. If you do not allow these cookies we will not know when you have visited our site, and will not be able to monitor its performance.
These cookies enable the website to provide enhanced functionality and personalization. They may be set by us or by third party providers whose services we have added to our pages. If you do not allow these cookies then some or all of these services may not function properly.