This repository contains documentation, materials and code examples on JavaScript for Enterprise Development course offered by Lobov Konstantin and Vlasov Andrey for Innopolis University students.
This course gives everything you need to begin a career in front-end web development. In this fast-paced, project-based course, you will be introduced to all the skills necessary for web application front-end design and development. During the course, you will learn modern principles of web development and take practice with actual JavaScript and HTML standards (e.g. ECMAScript 2015, HTML5, CSS3). The course will also provide an opportunity to complete a course project with a full-fledged web application as a result.
The course will provide an opportunity for participants to:
- Learn fundamental principles of web development
- Understand and apply current technologies and actual standards, technical and functional aspects of each lesson topic
- Understand and apply business and product development concepts
- Complete personal full-pledged project
- Prepare for further web-developer career challenges and perspectives
- Introduction to Web Development
- Web standards
- JS: Base syntax, Browser API, Inheritance
- JS: Modern standards, ES6
- Build tools, Package manager and Version Control
- React: Introduction and Project structure
- React: Component Lifecycle
- React: Application state management and Redux
- React: Advanced techniques
- React: Forms and Data binding
- JS: Linting and Code style
- Continuous Integration and Deployment
- JS: Currying, High-order functions, Closures
- Node.JS: Introduction, Web frameworks
- Node.JS: Project structure, Modules publishing
- Node.JS: Express.js web framework
- Introduction to SPA
- Web application bottlenecks and optimization
- SPA and Backend integration
- Web Workers and Service Workers
- WebRTC
-
Introduction: Presentation
-
Week-1: Presentation / PDF / Workshop
-
Week-2: Presentation / PDF / Workshop
-
Week-3: Presentation / PDF Workshop
-
Week-4: Presentation / PDF / Workshop
-
Week-5: Presentation / PDF / Workshop / Project example
-
Week-6:
-
Week-7: Workshop / Project example
-
Week-8: Project example
-
Week-9: Workshop / Project example
Each student have to make a choise regarding the course project. A project is a full-fledged web application that includes all the technologies and practices obtained in the current course.
Course project desctription, requirements and examples are available on a dedicated page.
We encourage vigorous discussion and cooperation in this class. You should feel free to discuss any aspects of the class with any classmates and review your classmates progress and achievements. However, we insist that any coded material that is not specifically designated as a Team Deliverable be done by you alone. This includes individual reports associated with assignments, and course project assignments. We also insist that if you include verbatim text from any source, you clearly indicate it using standard conventions of quotation or indentation and a note to indicate the source. Moreover, we would like you to pay attention and respect all licensing policies of third-party software that you will use in your assignments and course project.
We also have a special page containing presentation of course projects completed by this course students.