Description:
This course gives students a hands-on introduction to the key web programming concepts, technologies, and software tools used to create web applications. Students will learn how to use major front- and back-end frameworks to design multi-device user experiences.
Prerequisites: Students who have not successfully completed the course 17:610:550 may request to waive the course prerequisite if they can demonstrate that they have the knowledge/expertise to:
- Create and upload HTML web pages that are standards compliant and contain relative and absolute links, tables, images, and embedded video or data widgets.
- Design external cascading style sheets that control the layout and visual appearance of a set of web pages.
- Use basic programming concepts (variables, arrays, loops, and functions).
- Understand the basics of JavaScript to create or customize simple functions.
Learning Objectives:
Upon successful completion of this course, students will be able to:
- Code using key web programming concepts, structures, and processes
- Explain Full Stack development and its related front- and back-end concepts and tools.
- Develop code using JavaScript and ECMAScript 6 that makes advanced use of functions, loops, event control, array processing, and DOM manipulation.
- Create templates, modules, and components using front-end frameworks.
- Use code editors and workflow tools to effectively develop and debug code.
- Employ version control systems, such as Git, to manage source code changes and use and share code on repository hosting services, such as GitHub.
- Use key code libraries and front- and back-end frameworks
- Create responsive page layouts using front-end frameworks, such as Bootstrap.js and its grid system and components
- Use Model View Controller (MVC) design patterns, two-way data binding, and create templates, modules, and services
- Implement single page application using front-end frameworks such as React.js or Angular.js
- Design single page application using a back-end framework such as Node.js to exchange with a database
- Connect to databases and data sources
- Implement NoSQL database such as Mongo DB that works within a back-end framework such as Node.js
- Use online documentation, forums, and code created by others
- Debug code by using online documentation and forums
- Interact with other developers online to troubleshoot code and interact with local developers by joining a MeetUp