Curriculum - curs JavaScript, HTML, CSS
Școala Informală de IT
- Web Introduction:
- Basics of Project Management for Software Products
– Product vs Project
– Product Development Process
– What is Agile
– What is Scrum
– Roles in IT
- Internet
- Client-Server architectures
- TCP/IP Protocol (IP address, URL)
- DNS Protocol
- HTTP Protocol (request-response model, headers, methods, status codes) ● HTTP Caching
- HTTP Cookies
- HTTPS Protocol (SSL)
- Cookies
- Browsers (DOM, page building, rendering and layout)
- Developer Tools
- HTML
- HTML Standards
- HTML Basics
- HTML Elements
- HTML Attributes
- HTML Tables
- HTML iFrames
- HTML Form Elements
- HTML5 Elements and Semantics
- Media
- APIs (geolocation, local storage, app cache)
- CSS
- CSS Syntax (rules and selectors)
- CSS Base Rules
- CSS Positioning and Layout (box model)
- CSS Pseudo-class and Pseudo-elements
- CSS3 Basics
- CSS3 Flexbox
- CSS3 Grid
- CSS3 Gradients and Backgrounds
- CSS3 Transforms, Transitions and Animations
- Responsive Web Design (media queries)
- CSS Frameworks
– Bootstrap
– Tailwind CSS
- CSS Modern Features:
– CSS Variables
– CSS Nesting
– CSS Container Queries
- JavaScript
- JavaScript Introduction
- Javascript Syntax
- Expressions and Operators (arithmetic, logic, bitwise)
- Variables and Types (numbers, booleans, strings, arrays, objects) ● Flow Control (sequence, decisions, iterations, break, continue) ● Functions
- Scope
- Exceptions
- Events
- DOM (methods, document, elements, html, css, events, nodes, navigation) ● JSON (syntax, types, objects, arrays, parse, stringify, JSONP) ● Client Storage (local and session storage)
- Coding Standards (clean code, naming conventions)
- Javascript Advanced
- JavaScript Value vs Reference (Primitives vs Objects)
- Functions – Advanced Topics (function scope, closure, hoisting, callback functions)
- The JavaScript event loop & asynchronous code in JavaScript ● Objects – Advanced Topics (properties, methods, prototypes) ● OOP Concepts: abstraction, inheritance, encapsulation and polymorphism ● ECMAScript 6 (scoping, let, arrow functions, classes, promises) ● Javascript BOM (window, screen, location, history, navigation, timing, cookies)
- AJAX (XMLHttpRequest, fetch, request, response)
- Managing projects with Git & Github
- Version Control: Track changes & manage multiple versions of a project with Git. ● Project Organization: Use repositories to store, organize, and manage project files and history.
- Collaboration: Work simultaneously on different parts of a project without conflict. ● Change Management: Control, review, and roll back changes when needed. ● Cloud-Based Sharing: Store, manage, and share code easily with GitHub, allowing access from anywhere.
- Repository Management: Efficiently manage and collaborate on repositories via GitHub.
- Cloning and Syncing: Clone repositories, pull the latest changes, and push updates to keep projects in sync.
- Introduction to Node JS and npm for front-end development
- What is NodeJS?
- npm and package.json
- Template packages (Vite)
- Installing and uninstalling dependencies
- Semver versioning
- Introduction to TypeScript
- What is TypeScript and its relationship to JavaScript?
- Primitive types
- Object types, interfaces, array types
- Union types
- Typing functions
- Type inference, the “any” type
- Introduction to Frontend Frameworks
- What are frontend frameworks
- Why frontend frameworks are important in web development
- Examples of popular frontend frameworks
- Introduction to React
- Structure and architecture of a React application
- Creating and setting up a project using a React
- Developing components and implementing interactivity in the web application ● Develop a full CRUD-type application using a framework
- Interview Preparation
- How to present oneself during an IT interview ● CV formatting tips