JavaScript
*$225
*$225
Level: Core
Program starts: 02.10.2017
30 hours / 1.5 months

* The payment is made in native currency at the exchange rate of NBU on the date of agreement.

BACKGROUND NEEDED

The program does not require any prior knowledge of the JavaScript language. At the same time, the candidate must have abasic knowledge of procedural and object-oriented programming (comprehension of variable/constant, operators/operations, array, etc.), basics of algorithms, as well as basics of HTML and CSS.

The certificate of completion of any BIONIC School or BIONIC University program guarantees 10% discount for this program.

SKILLS AND KNOWLEDGE ACQUIRED

After finishing the program, students will gain knowledge of the JavaScript language (ECMAScript, DOM, BOM), as well as programming skills based on mentioned methods. This will enable graduates to begin the use of JS in working and pet projects, as well as prepare them for courses which require knowledge of the native JavaScript (for example NodeJS, AngularJS etc).

PROGRAM  MAJOR TOPICS

Introduction

JavaScript Overview. Core technologies of WWW. What is JavaScript, how it works. Difference with Java. ECMAScript and it editions. Document object model (DOM)/ Browser object model (BOM)

Development Environment. JavaScript development environments. Integration development environments. IDE WebStorm. Internal script, alert function. JavaScript display possibilities: document.write, innerHTML, console.log. External scripts. Default execution order. The defer attribute. Light editors.

JavaScript Basics

Strings. String literals. String length. Concatenation. Functions. Substrings. The if statement. Finding substrings

Numbers. Number literals. Arithmetic. The for loop. How to find a sum of numbers. Reminders. Conversions. Relational operators. Rounding. The Math object

Conditional statement. The if statement, several conditions. Booleans and logical operation. Else and else if clauses.

Loops. Loops while, do...while. Loop breaks by break and continue statements. 

Functions. Why function? Function syntax. Function parameters, how arguments are passed. Function return. Functions as data. Function expressions. Anonymous and self-invoking functions.Function as an object. Function as an argument.

Data Structures

Arrays. What is it array? Creating an array. Array elements. Access to elements. The lenght property. Adding array elements. Looping array elements. 

Objects. Introduction. Object creation. Object`s properties: declaration and acces. Property existence. Looping properties. Methods of objects. Keyword this. Arrays of objects. 

Object Construction. Object definition. Using an object constructor. The this keyword. Objects are mutable. Accessing object methods. Using built-in methods. Adding new methods. Constructor disadvantage. 

Object Properties. JavaScript properties, for..in loop, the order of properties looping. Adding new properties. Deleting properties. Property attributes of properties. Getters and setters.

Document Object Model (DOM)

Introduction. Browser`s object. Document object model. Browser object model. DOM tree. Autocorrection. Tabels in DOM. What you can do with DOM.

Navigation. DOM nodes navigation. Child elements. Collections. Siblings and parent. Elements navigation. Special references for tables. DOM searching (identifier, tag, class and css-selector as target). XPath.

Nodes. DOM-nodes hierarchy, node`s type and name. Element`s content and HTML-code. Content of a text node. Hidden attribute. How to add and remove node. How to create and add element. Nodes cloning. Node`s moving and removing. How to insert text.

Attributes. Object`s attributes and properties. Property changing and attribute`s synchonization. Checked and value attributes. Customer DOM-properties.

Events

Overview. Event types. Event hadlers and their assignment (HTML tag, DOM-object property, addEventListener). Event processing functins. Event object. 

Propagation. Event propagation, target element, propagation cancellation. Event immersion. Event delegation.

Browser. Browser’s action cancellation. Browser events and their types. Events connection.

Final Tests

PRACTICAL PART OF THE PROGRAM

During the program students perform practical tasks. Successful completion of the program includes development and defense of an individual project, which would demonstrate a level of knowledge and skills acquired by student, as well as the ability to apply them in projects. Usually we invite Tech experts and HR managers from leading IT companies to the final project presentation. It gives an opportunity to receive feedback on a project from experts and expand range of contacts.

INTERNSHIP BU DEVSTUDIO

JavaScript program is just the first step in studying JS technology. You can start your training with any program that corresponds to your level of knowledge. All graduates of JS Pre-Production or AngularJS programs will be invited to participate in the Internship.

The BU DevStudio Internship is the program for BIONIC School graduates where you can get experience of teamwork on a real business project. During 5 months interns develop software solutions for the customer and present the finished product (MVP) at the end. Thus, interns not only deepen the knowledge of technology, but also receive the first project in the portfolio, which distinguishes them in the labor market. About half of the Internship participants find work before they complete the program.

FEEDBACK

If you face any difficulties during the registration process (you didn’t receive an e-mail with the profile activation link, you have some troubles with application form, you can’t log in to your account), please follow this link. After you fill in the form our administrator will contact you as soon as possible.

Trainers
Narovlianskyi Ievgenii
Senior Software Engineer
Narovlianskyi Ievgenii
Senior Software Engineer
5+ years of different cyber systems development
Students Enrolled
15
Classes per week
2
Client Happiness, %
79

I think that Bionic is the strongest IT training center now, with a lot of relevant topics, trainers are all practitioners, enough practical tasks, a lot of like-minded and interesting peers. I would highly recommend to all undergraduates and juniors/middles, or people who want to expand their knowledge

Denys Balastryk
Graduate of 3 Tech programs

Studying at Bionic for me was very useful and interesting. The knowledge helped to quickly master new technologies of development. Thank you for giving me the opportunity to participate in your programs.

Vasyl Skliarov
Graduate of 7 Tech+Soft Programs

Yes, Bionic definitely helped me achieve what I wanted, namely to become a programmer. It's quite difficult to reach the level that corresponds to the modern requirements of employers on our own, and BIONIC helped me learn a programming language, technologies, and most importantly try everything on practical projects. Your university has influenced my life more than 5 years in good Ukrainian university. Thank you!

Margaryta Kozub
Graduate of 3 Tech+Soft programs