Containerization refers to the process of packaging an application and its dependencies into a standardized unit called a container. Containers allow applications to run reliably from one computing environment to another by abstracting away differences between environments. Common container platforms include Docker and Kubernetes, which provide tools for building, shipping and running distributed applications. Containers allow more efficient utilization of computing resources and easier management of applications compared to traditional virtual machines.
Low Code Lowdown: APEX vs Visual Builder: Which is For You? Karen Cannell
See two of Oracle's Low Code development platforms side by side - How are these platforms similar, and different? How are they positioned? which is best for you, your requirements, your development team, your business?
vulnerable and outdated components.pptxwaleejhaider1
The document discusses vulnerable and outdated software components. It notes that component-based vulnerabilities can occur when a software component is unsupported, out of date, or vulnerable to known exploits. It provides tips for preventing such vulnerabilities, including continuously monitoring components for vulnerabilities, only obtaining components from official sources, and having a patch management process to upgrade components in a timely manner. The document cautions that vulnerable components can enable serious impacts since components typically have the same privileges as the application itself.
List of usernames and passwords for Huawei routersHuanetwork
This document provides instructions for finding usernames and passwords for Huawei routers by looking up the router model number in a list. It describes a three step process: 1) Find the router model number, 2) Look up the username, 3) Look up the password. It also explains how to log into a Huawei router once the username and password are obtained. Contact information is provided for a company that distributes Huawei networking products.
This document provides an overview of Burp Suite and how to use its features to perform vulnerability assessments. It discusses Burp Suite's key components like the proxy, scanner, intruder, repeater, collaborator, and extender. It also covers techniques like bypassing filters, server-side request forgery, XML external entities, and common vulnerabilities to target like open redirects, insufficient entropy, and insecure deserialization.
This document discusses how to integrate Atlassian JIRA with MuleSoft applications using the Mule JIRA connector. It provides an overview of JIRA and MuleSoft, prerequisites for integration, steps for installing JIRA locally and configuring the API, how to install and configure the Mule JIRA connector, and an example flow for creating a new project and issue in JIRA. The benefits of integration include seamless background integration, event notifications, automatic issue ticket creation, and bi-directional data exchange without manual intervention.
This document discusses exception handling in Java. It defines an exception as an event that disrupts normal program flow, such as an error. Exceptions are represented by objects that describe the error condition. The document explains Java's exception hierarchy with Throwable at the root and Exception and Error as subclasses. It covers exception handling keywords like try, catch, throw, throws and finally. It provides examples of exception handling code and describes how to define custom exception classes by subclassing Exception.
This document provides an outline for a presentation on pentesting web applications with Burp Suite. It discusses using Burp Suite to scope a target, map content through spidering and directory bruteforcing, replace automated scanning with manual fuzzing using attack paylists, and test authentication through bruteforcing logins. Specific techniques covered include using the Burp spider, intruder, and engagement tools to discover content and hidden directories, importing wordlists to bruteforce hidden paths, and configuring intruder payloads and grep rules to analyze results from fuzzing and authentication testing.
Low Code Lowdown: APEX vs Visual Builder: Which is For You? Karen Cannell
See two of Oracle's Low Code development platforms side by side - How are these platforms similar, and different? How are they positioned? which is best for you, your requirements, your development team, your business?
vulnerable and outdated components.pptxwaleejhaider1
The document discusses vulnerable and outdated software components. It notes that component-based vulnerabilities can occur when a software component is unsupported, out of date, or vulnerable to known exploits. It provides tips for preventing such vulnerabilities, including continuously monitoring components for vulnerabilities, only obtaining components from official sources, and having a patch management process to upgrade components in a timely manner. The document cautions that vulnerable components can enable serious impacts since components typically have the same privileges as the application itself.
List of usernames and passwords for Huawei routersHuanetwork
This document provides instructions for finding usernames and passwords for Huawei routers by looking up the router model number in a list. It describes a three step process: 1) Find the router model number, 2) Look up the username, 3) Look up the password. It also explains how to log into a Huawei router once the username and password are obtained. Contact information is provided for a company that distributes Huawei networking products.
This document provides an overview of Burp Suite and how to use its features to perform vulnerability assessments. It discusses Burp Suite's key components like the proxy, scanner, intruder, repeater, collaborator, and extender. It also covers techniques like bypassing filters, server-side request forgery, XML external entities, and common vulnerabilities to target like open redirects, insufficient entropy, and insecure deserialization.
This document discusses how to integrate Atlassian JIRA with MuleSoft applications using the Mule JIRA connector. It provides an overview of JIRA and MuleSoft, prerequisites for integration, steps for installing JIRA locally and configuring the API, how to install and configure the Mule JIRA connector, and an example flow for creating a new project and issue in JIRA. The benefits of integration include seamless background integration, event notifications, automatic issue ticket creation, and bi-directional data exchange without manual intervention.
This document discusses exception handling in Java. It defines an exception as an event that disrupts normal program flow, such as an error. Exceptions are represented by objects that describe the error condition. The document explains Java's exception hierarchy with Throwable at the root and Exception and Error as subclasses. It covers exception handling keywords like try, catch, throw, throws and finally. It provides examples of exception handling code and describes how to define custom exception classes by subclassing Exception.
This document provides an outline for a presentation on pentesting web applications with Burp Suite. It discusses using Burp Suite to scope a target, map content through spidering and directory bruteforcing, replace automated scanning with manual fuzzing using attack paylists, and test authentication through bruteforcing logins. Specific techniques covered include using the Burp spider, intruder, and engagement tools to discover content and hidden directories, importing wordlists to bruteforce hidden paths, and configuring intruder payloads and grep rules to analyze results from fuzzing and authentication testing.
The document provides an overview and instructions for installing and using the Damn Vulnerable Web Application (DVWA). DVWA is a PHP/MySQL web application designed to be vulnerable for testing security skills. It contains vulnerabilities like SQL injection, XSS, file inclusion, and more. The document outlines how to install DVWA using XAMPP, describes the different security levels and vulnerabilities, and provides instructions for accessing the vulnerabilities and practicing attacks. It emphasizes that DVWA should only be used on localhost for legal and safe security testing.
This document provides an overview of secure coding practices for developers. It discusses secure design principles like defense in depth and least privilege. It also covers secure coding practices such as input validation, escaping, and HTML sanitization. The document provides examples of good and bad code related to reflecting user input, access control, and request authenticity. It also defines key security terms and outlines strategies for handling user input and encoding output.
The document provides instructions for programming frequencies on the AN/PRC-148 MBITR radio in 7 steps: turning the radio on, accessing the program mode, navigating to the radio configuration screen, selecting the current frequency, using arrow keys to move the cursor and change numbers to input a new frequency, saving the new frequency, and returning to the default display screen.
Cross-site scripting (XSS) is one of the most common web application attacks, where malicious scripts are injected into otherwise benign websites. There are three main types of XSS attacks - stored, reflected, and DOM-based. To prevent XSS, developers should sanitize user input by removing hazardous characters, properly escape untrusted output before displaying it, and enforce a specific character encoding.
This document provides an overview of the Laravel PHP framework. It discusses Laravel's history and evolution from version 1 to the current version 5.3. Key Laravel concepts are explained such as routing, controllers, models, views, Artisan commands, and architectural changes in version 5 like the directory structure and environment detection. Additional Laravel tools and resources are also mentioned like Laravel Elixir, Homestead, and Laracasts.
This document provides an introduction to bug bounty programs. It defines what a bug bounty program is, provides a brief history of major programs, and discusses reasons they are beneficial for both security researchers and companies. Key points covered include popular programs like Google and Facebook, tools used in bug hunting like Burp Suite, and lessons for researchers such as writing quality reports and following each program's rules.
File inclusion vulnerabilities allow attackers to include local and remote files on a server. If inclusion logic is not implemented properly, it can lead to source code disclosure, data exposure, and remote code execution. Common file inclusion attacks traverse directories, bypass extensions, inject payloads into log files or PHP sessions that are later executed on the server. Proper input validation and restricting included files can help mitigate these risks.
Multi-Tenancy is a critical component of any Software as a Service (SaaS) application, which enables one application instance to serve multiple organizations, or tenants. This presentation by Scott Crespo covers the basics of multi-tenant architectures, and how to implement multi-tenancy using Python, Django, and the open-source project known as Django Tenant Schemas.
NetSuite Tip: Creating Custom Fields In NetSuiteProtelo, Inc.
A huge advantage of NetSuite is the ability to perform tasks quickly without extensive technical knowledge. Most ERP systems require difficult coding and take hours to customize. The ability to add custom fields, forms and reorganize which way the forms are displayed allows businesses to change and adapt to their personalized environment.
This tips guide explains what custom fields are, what types are available, how to set them up, assign them and edit them for your specific needs.
This document appears to be a practice test for a physics exam. It contains 10 multiple choice questions testing concepts related to thermodynamics, nuclear physics, and heat transfer. The questions cover topics such as:
- Thermal equilibrium and temperature
- Internal energy and its relationship to work and heat transfer
- Speed distributions of gas molecules at different temperatures
- Nuclear fission and the products of uranium-235 absorbing a neutron
- Binding energy curves and nuclear stability
- Heating of water using a constant-power heating coil
The test is out of 10 total marks and provides multiple choice options A-E for each question. Blank pages are included for working out calculations. In summary, this appears to
Host header injection is a high severity web security vulnerability that allows attackers to spoof the domain name of a website by manipulating the HTTP "Host" header. This can enable password reset poisoning, web cache poisoning, cross-site scripting, and access to internal hosts. Mitigation techniques include validating the Host header matches the target domain, creating a dummy virtual host to catch invalid headers, whitelisting trusted domains, and disabling support for X-Forwarded-Host headers.
This presents the Grid Manager and Network Instrumentation service on top of KITE, which allow to test any communication system with total programmatically control over the network. Test the behaviour of your (or your competitor's) communication system or more specifically the bandwidth estimation, congestion control, adaptation, .......
The document appears to be a lab report submitted by a student for their Network Programming lab course. It includes 13 experiments performed on topics like writing echo programs using TCP and UDP, creating a client-server chat program, file transfer programs, and remote command execution. For each experiment, the student has provided the code for the client and server sides to demonstrate how to complete the task. The report is submitted to their professor and includes their name, course codes, semester and year details.
The "Top 54 JavaScript Interview Questions" PDF covers a comprehensive set of JavaScript topics, including data types, object creation, functions, cookies, variable scopes, the 'this' keyword, closures, arrow functions, debugging, and more. It provides detailed insights into JavaScript concepts through questions and answers. You can access the full document for an in-depth understanding of these essential JavaScript interview topics.
1. What do you understand about JavaScript?
2. What’s the difference between JavaScript and Java?
3. What are the different types of data available in JavaScript?
4. What are the features of JavaScript?
5. What benefits does JavaScript offer compared to other web technologies?
6. How can an object be created in JavaScript?
7. How can an array be created in JavaScript?
8. What are some of the pre-existing methods available in JavaScript?
9. What are the scopes of a variable in JavaScript?
10. What is the ‘this’ keyword in JavaScript?
11. What are the conventions of naming a variable in JavaScript?
12. What is Callback in JavaScript?
13. How do you debug a JavaScript code?
14. What distinguishes a Function declaration and Function expression?
15. How can you include JavaScript code in an HTML file?
16. What do you understand about cookies?
17. How would you create a cookie?
18. How would you read a cookie?
19. How would you delete a cookie?
20. What’s the difference between let and var?
21. What are Closures in JavaScript?
22. What are the arrow functions in JavaScript?
23. What are the various methods to access an HTML element in JavaScript code?
24. What are the methods for defining a variable in JavaScript?
25. What are Imports and Exports in JavaScript?
26. What is the differences between Document and Window in JavaScript?
27. What are some of the JavaScript frameworks and their purposes?
28. What is the difference between Undefined and Undeclared in JavaScript?
29. What is the differences between Undefined and Null in JavaScript?
30. What is the difference between Session storage and Local storage?
31. What are the different data types that exist in JavaScript?
32. What is the ‘this’ keyword in JavaScript?
33. What is the difference between Call and Apply? (explain in detail with examples)
34. What are the scopes of a variable in JavaScript?
35. What are the arrow functions in JavaScript?
36. Explain Hoisting in JavaScript. (with examples)
37. Difference between “==” and “===” operators (with examples)
38. Difference between var and let keyword
39. Implicit Type Coercion in JavaScript (in detail with examples)
40. Is JavaScript a statically typed or a dynamically typed language?
41. NaN property in JavaScript
42. Passed by value and passed by reference
43. Immediately Invoked Function in JavaScript
44. Characteristics of JavaScript strict mode
45. Higher Order Functions (with examples)
#JavaScriptInterviewQuestions #JavaScriptCoding #WebDevelopment #JavaScriptBasics
Backend Development Bootcamp - Node [Online & Offline] In BanglaStack Learner
"Backend Development Bootcamp - Node"[ Online + Offline], Throughout this long camp we will try to teach you various techniques of backend development, that knowledge you can later implement in any language or framework of your choice. The only prerequisite of this course is the basic knowledge of JS.
Stack School:
https://courses.stackschool.co/courses/backend-development-bootcamp-node
ব্যাকেন্ড ডেভেলপমেন্ট হচ্ছে যে কোনো ওয়েব বেসড অ্যাপ্লিকেশন এর মেরুদণ্ড। একজন ভালো প্রফেশনাল ব্যাকেন্ড ডেভেলপার হওয়া অনেকটা সময় এবং অভিজ্ঞতার ব্যাপার। এই বুটক্যাম্পে আমরা ব্যাকেন্ড ডেভেলপমেন্টের কমন কনসেপ্টস এবং বেস্ট প্রাকটিস নিয়েই আলোচনা করবো।
60+ Weeks, 120+ Classes - A Long Journey to Become A Professional Backend Developer
ব্যাকেন্ড ডেভেলপমেন্টের জগতে প্রচুর সম্ভাবনা রয়েছে। এই সম্ভাবনা যে শুধু ক্যারিয়ার কে ঘিরে তা কিন্তু না। ব্যাকেন্ডের জগতে বিভিন্ন ল্যাংগুয়েজ, ফ্রেমওয়ার্কের ছড়াছড়ি। তাই একজন বিগিনারের জন্য সঠিক রাস্তাটা খুঁজে বের করা অনেক কষ্টসাধ্য হয়ে যায়। আমরা নিজেরাও ব্যাকেন্ডের ওপরে চারটা ভিন্ন টেকনোলজির ওপরে বুটক্যাম্প প্রোভাইড করবো। কিন্তু বেস তৈরি করার জন্য এই বুটক্যাম্পটা হবে সব থেকে সহজ। কারণ এখানে শুধু জাভাস্ক্রিপ্ট জানলেই আপনি ব্যাকেন্ড ডেভেলপমেন্টের পুরো বিষয়টা বুঝতে পারবেন। আর এই সুদীর্ঘ ক্যাম্প জুড়ে আমরা আপনাকে ব্যাকেন্ড ডেভেলপমেন্টের বিভিন্ন টেকনিক শেখানোর চেষ্টা করবো, যা শিখলে পরবর্তীতে আপনি আপনার পছন্দ অনুযায়ী যে কোনো ল্যাংগুয়েজ বা ফ্রেমওয়ার্কেই কাজ করতে পারবেন।
JavaScript is a scripting language that runs in web browsers. It allows for dynamic interactions and effects on web pages. JavaScript code can run on the client-side to process user input and update pages in real-time without reloading. It is commonly used with HTML and CSS to create interactive web applications. Some key points covered are that JavaScript is weakly typed, prototype-based, and runs directly in web browsers to enhance the user experience.
Getting started with JavaScript can be somewhat challenging. Especially given how fast the scenery changes. In this presentation I provide a general view of the state of the art. Besides this I go through various JavaScript related tricks that I've found useful in practice.
survivejs.com is a companion site of the presentation and goes on further detail in various topics.
The original presentation was given at AgileJkl, a local agile conference held in Central Finland.
49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdfcNguyn506241
This document provides an overview of a course on computer-based technologies and software development. The course will cover various technologies used to build software applications from start to finish. Topics will include databases, version control with Git, data validation, and deploying applications to the cloud. Students will learn concepts through theory, tutorials, and hands-on practice building a sample application. Assessment will include class participation, a midterm, and a final project.
26 top angular 8 interview questions to know in 2020 [www.full stack.cafe]Alex Ershov
The document discusses 26 top Angular 8 interview questions, including questions about the difference between Promises and Observables, the purpose of ngOnInit versus the constructor, and what AOT (Ahead-of-Time compilation) is. It also covers questions about new features in Angular 8 like Bazel, Ivy, and changes to the lazy loading and location modules. Key topics covered include components, routing, RxJS, templates, and lifecycle hooks.
Here are some answers to common Angular interview questions. That's Angular 2+, not AngularJS.
They’re quick, not really extended and are not in any particular order. Let’s get it on!
This document provides information about getting solved assignments from professionals and includes contact details. It then provides sample solutions to 6 questions covering topics like Object Oriented Programming, classes, interfaces, exceptions, multithreading, layout managers, events, streams, sockets and more. Solutions include code examples and explanations. The document serves as a reference for students seeking help on assignments.
The document provides an overview and instructions for installing and using the Damn Vulnerable Web Application (DVWA). DVWA is a PHP/MySQL web application designed to be vulnerable for testing security skills. It contains vulnerabilities like SQL injection, XSS, file inclusion, and more. The document outlines how to install DVWA using XAMPP, describes the different security levels and vulnerabilities, and provides instructions for accessing the vulnerabilities and practicing attacks. It emphasizes that DVWA should only be used on localhost for legal and safe security testing.
This document provides an overview of secure coding practices for developers. It discusses secure design principles like defense in depth and least privilege. It also covers secure coding practices such as input validation, escaping, and HTML sanitization. The document provides examples of good and bad code related to reflecting user input, access control, and request authenticity. It also defines key security terms and outlines strategies for handling user input and encoding output.
The document provides instructions for programming frequencies on the AN/PRC-148 MBITR radio in 7 steps: turning the radio on, accessing the program mode, navigating to the radio configuration screen, selecting the current frequency, using arrow keys to move the cursor and change numbers to input a new frequency, saving the new frequency, and returning to the default display screen.
Cross-site scripting (XSS) is one of the most common web application attacks, where malicious scripts are injected into otherwise benign websites. There are three main types of XSS attacks - stored, reflected, and DOM-based. To prevent XSS, developers should sanitize user input by removing hazardous characters, properly escape untrusted output before displaying it, and enforce a specific character encoding.
This document provides an overview of the Laravel PHP framework. It discusses Laravel's history and evolution from version 1 to the current version 5.3. Key Laravel concepts are explained such as routing, controllers, models, views, Artisan commands, and architectural changes in version 5 like the directory structure and environment detection. Additional Laravel tools and resources are also mentioned like Laravel Elixir, Homestead, and Laracasts.
This document provides an introduction to bug bounty programs. It defines what a bug bounty program is, provides a brief history of major programs, and discusses reasons they are beneficial for both security researchers and companies. Key points covered include popular programs like Google and Facebook, tools used in bug hunting like Burp Suite, and lessons for researchers such as writing quality reports and following each program's rules.
File inclusion vulnerabilities allow attackers to include local and remote files on a server. If inclusion logic is not implemented properly, it can lead to source code disclosure, data exposure, and remote code execution. Common file inclusion attacks traverse directories, bypass extensions, inject payloads into log files or PHP sessions that are later executed on the server. Proper input validation and restricting included files can help mitigate these risks.
Multi-Tenancy is a critical component of any Software as a Service (SaaS) application, which enables one application instance to serve multiple organizations, or tenants. This presentation by Scott Crespo covers the basics of multi-tenant architectures, and how to implement multi-tenancy using Python, Django, and the open-source project known as Django Tenant Schemas.
NetSuite Tip: Creating Custom Fields In NetSuiteProtelo, Inc.
A huge advantage of NetSuite is the ability to perform tasks quickly without extensive technical knowledge. Most ERP systems require difficult coding and take hours to customize. The ability to add custom fields, forms and reorganize which way the forms are displayed allows businesses to change and adapt to their personalized environment.
This tips guide explains what custom fields are, what types are available, how to set them up, assign them and edit them for your specific needs.
This document appears to be a practice test for a physics exam. It contains 10 multiple choice questions testing concepts related to thermodynamics, nuclear physics, and heat transfer. The questions cover topics such as:
- Thermal equilibrium and temperature
- Internal energy and its relationship to work and heat transfer
- Speed distributions of gas molecules at different temperatures
- Nuclear fission and the products of uranium-235 absorbing a neutron
- Binding energy curves and nuclear stability
- Heating of water using a constant-power heating coil
The test is out of 10 total marks and provides multiple choice options A-E for each question. Blank pages are included for working out calculations. In summary, this appears to
Host header injection is a high severity web security vulnerability that allows attackers to spoof the domain name of a website by manipulating the HTTP "Host" header. This can enable password reset poisoning, web cache poisoning, cross-site scripting, and access to internal hosts. Mitigation techniques include validating the Host header matches the target domain, creating a dummy virtual host to catch invalid headers, whitelisting trusted domains, and disabling support for X-Forwarded-Host headers.
This presents the Grid Manager and Network Instrumentation service on top of KITE, which allow to test any communication system with total programmatically control over the network. Test the behaviour of your (or your competitor's) communication system or more specifically the bandwidth estimation, congestion control, adaptation, .......
The document appears to be a lab report submitted by a student for their Network Programming lab course. It includes 13 experiments performed on topics like writing echo programs using TCP and UDP, creating a client-server chat program, file transfer programs, and remote command execution. For each experiment, the student has provided the code for the client and server sides to demonstrate how to complete the task. The report is submitted to their professor and includes their name, course codes, semester and year details.
The "Top 54 JavaScript Interview Questions" PDF covers a comprehensive set of JavaScript topics, including data types, object creation, functions, cookies, variable scopes, the 'this' keyword, closures, arrow functions, debugging, and more. It provides detailed insights into JavaScript concepts through questions and answers. You can access the full document for an in-depth understanding of these essential JavaScript interview topics.
1. What do you understand about JavaScript?
2. What’s the difference between JavaScript and Java?
3. What are the different types of data available in JavaScript?
4. What are the features of JavaScript?
5. What benefits does JavaScript offer compared to other web technologies?
6. How can an object be created in JavaScript?
7. How can an array be created in JavaScript?
8. What are some of the pre-existing methods available in JavaScript?
9. What are the scopes of a variable in JavaScript?
10. What is the ‘this’ keyword in JavaScript?
11. What are the conventions of naming a variable in JavaScript?
12. What is Callback in JavaScript?
13. How do you debug a JavaScript code?
14. What distinguishes a Function declaration and Function expression?
15. How can you include JavaScript code in an HTML file?
16. What do you understand about cookies?
17. How would you create a cookie?
18. How would you read a cookie?
19. How would you delete a cookie?
20. What’s the difference between let and var?
21. What are Closures in JavaScript?
22. What are the arrow functions in JavaScript?
23. What are the various methods to access an HTML element in JavaScript code?
24. What are the methods for defining a variable in JavaScript?
25. What are Imports and Exports in JavaScript?
26. What is the differences between Document and Window in JavaScript?
27. What are some of the JavaScript frameworks and their purposes?
28. What is the difference between Undefined and Undeclared in JavaScript?
29. What is the differences between Undefined and Null in JavaScript?
30. What is the difference between Session storage and Local storage?
31. What are the different data types that exist in JavaScript?
32. What is the ‘this’ keyword in JavaScript?
33. What is the difference between Call and Apply? (explain in detail with examples)
34. What are the scopes of a variable in JavaScript?
35. What are the arrow functions in JavaScript?
36. Explain Hoisting in JavaScript. (with examples)
37. Difference between “==” and “===” operators (with examples)
38. Difference between var and let keyword
39. Implicit Type Coercion in JavaScript (in detail with examples)
40. Is JavaScript a statically typed or a dynamically typed language?
41. NaN property in JavaScript
42. Passed by value and passed by reference
43. Immediately Invoked Function in JavaScript
44. Characteristics of JavaScript strict mode
45. Higher Order Functions (with examples)
#JavaScriptInterviewQuestions #JavaScriptCoding #WebDevelopment #JavaScriptBasics
Backend Development Bootcamp - Node [Online & Offline] In BanglaStack Learner
"Backend Development Bootcamp - Node"[ Online + Offline], Throughout this long camp we will try to teach you various techniques of backend development, that knowledge you can later implement in any language or framework of your choice. The only prerequisite of this course is the basic knowledge of JS.
Stack School:
https://courses.stackschool.co/courses/backend-development-bootcamp-node
ব্যাকেন্ড ডেভেলপমেন্ট হচ্ছে যে কোনো ওয়েব বেসড অ্যাপ্লিকেশন এর মেরুদণ্ড। একজন ভালো প্রফেশনাল ব্যাকেন্ড ডেভেলপার হওয়া অনেকটা সময় এবং অভিজ্ঞতার ব্যাপার। এই বুটক্যাম্পে আমরা ব্যাকেন্ড ডেভেলপমেন্টের কমন কনসেপ্টস এবং বেস্ট প্রাকটিস নিয়েই আলোচনা করবো।
60+ Weeks, 120+ Classes - A Long Journey to Become A Professional Backend Developer
ব্যাকেন্ড ডেভেলপমেন্টের জগতে প্রচুর সম্ভাবনা রয়েছে। এই সম্ভাবনা যে শুধু ক্যারিয়ার কে ঘিরে তা কিন্তু না। ব্যাকেন্ডের জগতে বিভিন্ন ল্যাংগুয়েজ, ফ্রেমওয়ার্কের ছড়াছড়ি। তাই একজন বিগিনারের জন্য সঠিক রাস্তাটা খুঁজে বের করা অনেক কষ্টসাধ্য হয়ে যায়। আমরা নিজেরাও ব্যাকেন্ডের ওপরে চারটা ভিন্ন টেকনোলজির ওপরে বুটক্যাম্প প্রোভাইড করবো। কিন্তু বেস তৈরি করার জন্য এই বুটক্যাম্পটা হবে সব থেকে সহজ। কারণ এখানে শুধু জাভাস্ক্রিপ্ট জানলেই আপনি ব্যাকেন্ড ডেভেলপমেন্টের পুরো বিষয়টা বুঝতে পারবেন। আর এই সুদীর্ঘ ক্যাম্প জুড়ে আমরা আপনাকে ব্যাকেন্ড ডেভেলপমেন্টের বিভিন্ন টেকনিক শেখানোর চেষ্টা করবো, যা শিখলে পরবর্তীতে আপনি আপনার পছন্দ অনুযায়ী যে কোনো ল্যাংগুয়েজ বা ফ্রেমওয়ার্কেই কাজ করতে পারবেন।
JavaScript is a scripting language that runs in web browsers. It allows for dynamic interactions and effects on web pages. JavaScript code can run on the client-side to process user input and update pages in real-time without reloading. It is commonly used with HTML and CSS to create interactive web applications. Some key points covered are that JavaScript is weakly typed, prototype-based, and runs directly in web browsers to enhance the user experience.
Getting started with JavaScript can be somewhat challenging. Especially given how fast the scenery changes. In this presentation I provide a general view of the state of the art. Besides this I go through various JavaScript related tricks that I've found useful in practice.
survivejs.com is a companion site of the presentation and goes on further detail in various topics.
The original presentation was given at AgileJkl, a local agile conference held in Central Finland.
49.INS2065.Computer Based Technologies.TA.NguyenDucAnh.pdfcNguyn506241
This document provides an overview of a course on computer-based technologies and software development. The course will cover various technologies used to build software applications from start to finish. Topics will include databases, version control with Git, data validation, and deploying applications to the cloud. Students will learn concepts through theory, tutorials, and hands-on practice building a sample application. Assessment will include class participation, a midterm, and a final project.
26 top angular 8 interview questions to know in 2020 [www.full stack.cafe]Alex Ershov
The document discusses 26 top Angular 8 interview questions, including questions about the difference between Promises and Observables, the purpose of ngOnInit versus the constructor, and what AOT (Ahead-of-Time compilation) is. It also covers questions about new features in Angular 8 like Bazel, Ivy, and changes to the lazy loading and location modules. Key topics covered include components, routing, RxJS, templates, and lifecycle hooks.
Here are some answers to common Angular interview questions. That's Angular 2+, not AngularJS.
They’re quick, not really extended and are not in any particular order. Let’s get it on!
This document provides information about getting solved assignments from professionals and includes contact details. It then provides sample solutions to 6 questions covering topics like Object Oriented Programming, classes, interfaces, exceptions, multithreading, layout managers, events, streams, sockets and more. Solutions include code examples and explanations. The document serves as a reference for students seeking help on assignments.
This document discusses an automatic code generation tool called UJECTOR that can generate executable Java code from UML diagrams, including class diagrams, sequence diagrams, and activity diagrams. It notes the benefits of automatic code generation in reducing errors compared to manual coding. The paper also discusses some related work, including Enterprise Architect, Eclipse UML Generators, Rhapsody, and dCode - other tools that can generate code from UML models. Overall, the document examines challenges in ensuring consistency, accuracy, maintainability and efficiency when automatically generating code from UML models.
Writing NodeJS applications is an easy task for JavaScript developers. However, getting what is happening under the hood in NodeJS may be intimidating, but understanding it is vital for web developers.
Indeed, when you try to learn NodeJS, most tutorials are about the NodeJS ecosystem like Express, Socket.IO, PassportJS. It is really rare to see some tutorials about the NodeJS runtime itself.
By this meetup, I want to spot the light on some advanced NodeJS topics so as to help developers answering questions an experienced NodeJS developer is expected to answer. Understanding these topics is essential to make you a much more desirable developer. I want to explore several topics including the famous event-loop along with NodeJS Module Patterns and how dependencies actually work in NodeJS.
I hope that this meetup would help you to be more comfortable understanding advanced code written in NodeJS.
The document contains an interview for an Accenture Dotnet position. It includes 22 questions related to various .NET technologies and concepts like OOPs concepts, abstract classes vs interfaces, static classes, encapsulation, page lifecycle, view state, garbage collection, CTS, stored procedures vs functions and more. The candidate provides answers to most questions demonstrating their knowledge of .NET and related technologies.
Node.js is an asynchronous event-driven JavaScript runtime that uses non-blocking I/O to build scalable network applications. It allows for the creation of web servers and networking tools using a event-driven, non-blocking I/O model rather than the traditional threaded model. Node.js is popular because it uses JavaScript and allows code reuse on both the server-side and client-side, offers high performance and scalability for real-time applications, and has a large passionate community supporting its use.
The document discusses various topics related to QuickTest Professional (QTP) including:
1. The V-model is a software development model where verification and validation activities are done parallel to requirements gathering and design.
2. Descriptive programming in QTP allows testers to perform actions on objects not in the object repository by providing a description to identify the object.
3. Parameterization in QTP replaces fixed values in tests with parameters, greatly increasing flexibility. Data driving uses parameterization to run a test with different data sets.
4. Regular expressions can be used to handle dynamic objects in QTP whose properties may change between test runs.
The document discusses the V-model software development process. It explains that in the V-model, verification activities such as testing occur parallel to validation activities from initial requirements elicitation through final acceptance testing. Both the left and right sides of the "V" represent progressive testing stages from unit to system level.
This document discusses the existing and proposed systems for a purchasing and correctional system. The existing system lacks secure user registration and profile management. It also does not provide intranet email between users or online data processing. The proposed system aims to automate processes, maintain user details securely, and provide a user-friendly interface. It utilizes various classes and database integration to make project management easier and more flexible overall.
Dot net interview questions and asnwerskavinilavuG
The document provides an overview of common .NET and C# interview questions and answers. It begins with basic questions about C# and .NET concepts like data types, comments, and differences between Array and ArrayList. It then covers more advanced topics like namespaces, static keyword, try/catch/finally blocks, out/ref parameters, and exceptions. The document also includes questions about ASP.NET concepts like MVC, routing, controllers, views, and Razor syntax as well as questions about web development topics like cookies, caching, and authentication vs authorization.
Constructors cannot be made final as they are needed to create object instances and initialize class data. Constructors are similar to methods but cannot be directly invoked via method calls. The APK file format is an Android application package used for distribution and installation of Android apps. It is a zip file containing compiled code, resources, manifest, and other assets. Java is a popular object-oriented programming language that is portable and platform independent due to its compile-once-run-anywhere nature.
This document provides an overview of Objective-C and teaches the basics of the language through examples. It covers Objective-C classes and objects, variables and data types, flow control and loops, methods, and more. The document is split into three parts, with each part building upon the previous concepts and adding new material to learn Objective-C programming.
A Brief Note On Asp.Net And Cloud Computing EssayLanate Drummond
1. The document discusses the importance of colleagues and managers during an internship at Sodexo.
2. It thanks the guide, client contact, and other colleagues for their guidance, support, cooperation, and help during the internship.
3. A project on audit trails was completed during the internship with direction and experience sharing from Dr. Manoj Kumar.
Similar to 50 common web developer interview questions [2020 updated] [www.full stack.cafe] (20)
5 Common Mistakes to Avoid During the Job Application Process.pdfAlliance Jobs
The journey toward landing your dream job can be both exhilarating and nerve-wracking. As you navigate through the intricate web of job applications, interviews, and follow-ups, it’s crucial to steer clear of common pitfalls that could hinder your chances. Let’s delve into some of the most frequent mistakes applicants make during the job application process and explore how you can sidestep them. Plus, we’ll highlight how Alliance Job Search can enhance your local job hunt.
A Guide to a Winning Interview June 2024Bruce Bennett
This webinar is an in-depth review of the interview process. Preparation is a key element to acing an interview. Learn the best approaches from the initial phone screen to the face-to-face meeting with the hiring manager. You will hear great answers to several standard questions, including the dreaded “Tell Me About Yourself”.
Jill Pizzola's Tenure as Senior Talent Acquisition Partner at THOMSON REUTERS...dsnow9802
Jill Pizzola's tenure as Senior Talent Acquisition Partner at THOMSON REUTERS in Marlton, New Jersey, from 2018 to 2023, was marked by innovation and excellence.
Leadership Ambassador club Adventist modulekakomaeric00
Aims to equip people who aspire to become leaders with good qualities,and with Christian values and morals as per Biblical teachings.The you who aspire to be leaders should first read and understand what the ambassador module for leadership says about leadership and marry that to what the bible says.Christians sh
Joyce M Sullivan, Founder & CEO of SocMediaFin, Inc. shares her "Five Questions - The Story of You", "Reflections - What Matters to You?" and "The Three Circle Exercise" to guide those evaluating what their next move may be in their careers.
Job Finding Apps Everything You Need to Know in 2024SnapJob
SnapJob is revolutionizing the way people connect with work opportunities and find talented professionals for their projects. Find your dream job with ease using the best job finding apps. Discover top-rated apps that connect you with employers, provide personalized job recommendations, and streamline the application process. Explore features, ratings, and reviews to find the app that suits your needs and helps you land your next opportunity.
How to Prepare for Fortinet FCP_FAC_AD-6.5 Certification?NWEXAM
Begin Your Preparation Here: https://bit.ly/3VfYStG — Access comprehensive details on the FCP_FAC_AD-6.5 exam guide and excel in the Fortinet Certified Professional - Network Security certification. Gather all essential information including tutorials, practice tests, books, study materials, exam questions, and the syllabus. Solidify your knowledge of Fortinet FCP_FAC_AD-6.5 certification. Discover everything about the FCP_FAC_AD-6.5 exam, including the number of questions, passing percentage, and the time allotted to complete the test.
Learnings from Successful Jobs SearchersBruce Bennett
Are you interested to know what actions help in a job search? This webinar is the summary of several individuals who discussed their job search journey for others to follow. You will learn there are common actions that helped them succeed in their quest for gainful employment.
IT Career Hacks Navigate the Tech Jungle with a RoadmapBase Camp
Feeling overwhelmed by IT options? This presentation unlocks your personalized roadmap! Learn key skills, explore career paths & build your IT dream job strategy. Visit now & navigate the tech world with confidence! Visit https://www.basecamp.com.sg for more details.
IT Career Hacks Navigate the Tech Jungle with a Roadmap
50 common web developer interview questions [2020 updated] [www.full stack.cafe]
1. FullStack.Cafe - Never Fail Tech Interview
(https://www.fullstack.cafe)
50 Common Web Developer Interview Questions [2020 Updated]
Originally published on 50 Common Web Developer Interview Questions [2020 Updated] | FullStack.Cafe
(https://www.fullstack.cafeblogweb-developer-interview-questions)
Q1 : What is Coercion in JavaScript?
Q2 : Explain equality in JavaScript
Q3 : What is Scope in JavaScript?
Q4 : What is Design Patterns and why anyone should use them?
Q5 : What is the purpose of the alt attribute on images?
Q6 : What is meant by Continuous Integration?
Q7 : What is npm?
Q8 : What is webpack?
Q9 : What is blockchain?
Q10 : Explain Null and Undefined in JavaScript
Q11 : What is DOM (Document Object Model) and how is it linked to CSS?
Q12 : What is Sprint Planning?
Q13 : Implement enqueue and dequeue using only two stacks
Q14 : What is the difference between span and div?
Q15 : What are different HTTP Methods supported in Restful Web Services?
Q16 : What does Containerization mean?
Q17 : What is CORS and how to enable one?
Q18 : What is Cross Site Scripting (XSS)?
Q19 : How can I prevent XSS?
Q20 : What is test driven development?
Q21 : What does "use strict" do?
Q22 : What is the difference between procedural and object-oriented programming?
Q23 : What is Reactive Programming?
Q24 : How to compare two objects in JavaScript?
2. Q25 : What is IIFEs (Immediately Invoked Function Expressions)?
Q26 : Could you explain the difference between ES5 and ES6
Q27 : What is CSS selectors? Name some.
Q28 : How is responsive design different from adaptive design?
Q29 : Given two strings, return true if they are anagrams of one another
For example: Mary is an anagram of Army
Q30 : Explain almost standard, full standard and quirks mode
Q31 : What is HTML5 Web Storage? Explain localStorage and sessionStorage.
Q32 : How would you choose between SOAP and REST web services?
Q33 : What are the best practices for caching?
Q34 : What is Adapter Pattern?
Q35 : State the features of an interface.
Q36 : What are the DRY and DIE principles?
Q37 : What are the advantages and disadvantages of using "use strict"?
Q38 : Explain the difference between Object.freeze() vs const
Q39 : What are the features of Microservices?
Q40 : What is Hoisting in JavaScript?
Q41 : How does the “this” keyword work? Provide some code examples.
Q42 : Write a recursive function that performs a binary search
Q43 : What is “closure” in javascript? Provide an example?
Q44 : What is progressive rendering?
Q45 : What should be the purpose of OPTIONS method of RESTful web services?
Q46 : What is the difference between cohesion and coupling?
Q47 : What is GOD class and why should we avoid it?
Q48 : Explain difference between: function Person(){}, var person = Person(), and var person = new
Person()?
Q49 : Describe tree shaking mechanism in webpack
Q50 : What does it mean to “program to an interface”?
3. ## Answers
Q1: What is Coercion in JavaScript?
Topic: JavaScript
In JavaScript conversion between different two build-in types called coercion. Coercion comes in two forms
in JavaScript: explicit and implicit.
Here's an example of explicit coercion:
var a = "42";
var b = Number( a );
a; // "42"
b; // 42 -- the number!
And here's an example of implicit coercion:
var a = "42";
var b = a * 1; // "42" implicitly coerced to 42 here
a; // "42"
b; // 42 -- the number!
Q2: Explain equality in JavaScript ★
Topic: JavaScript
JavaScript has both strict and type–converting comparisons:
Strict comparison (e.g., ===) checks for value equality without allowing coercion
Abstract comparison (e.g. ==) checks for value equality with coercion allowed
var a = "42";
var b = 42;
a == b; // true
a === b; // false
Some simple equalityrules:
If either value (aka side) in a comparison could be the true or false value, avoid == and use ===.
If either value in a comparison could be of these specific values (0, "", or [] -- empty array), avoid ==
and use ===.
In all other cases, you're safe to use ==. Not only is it safe, but in many cases it simplifies your code
in a way that improves readability.
Q3: What is Scope in JavaScript? ★
Topic: JavaScript
4. In JavaScript, each function gets its own scope. Scope is basically a collection of variables as well as the
rules for how those variables are accessed by name. Only code inside that function can access that
function's scoped variables.
A variable name has to be unique within the same scope. A scope can be nested inside another scope. If
one scope is nested inside another, code inside the innermost scope can access variables from either scope.
Q4: What is Design Patterns and why anyone should use them? ★
Topic: Design Patterns
Design patterns are a well-described solution to the most commonly encountered problems which occur
during software development.
Design pattern represents the best practices evolved over a period of time by experienced software
developers. They promote reusability which leads to a more robust and maintainable code.
Q5: What is the purpose of the alt attribute on images? ★
Topic: HTML5
The alt attribute provides alternative information for an image if a user cannot view it. The alt attribute should
be used to describe any images except those which only serve a decorative purposes, in which case it
should be left empty.
Q6: What is meant by Continuous Integration? ★
Topic: DevOps
Continuous Integration (CI) is a development practice that requires developers to integrate code into a
shared repository several times a day. Each check-in is then verified by an automated build, allowing teams
to detect problems early.
Q7: What is npm? ★
Topic: Node.js
npm stands for Node Package Manager. npm provides following two main functionalities:
Online repositories for node.js packages/modules which are searchable on search.nodejs.org
(http://search.nodejs.org)
Command line utility to install packages, do version management and dependency management of
Node.js packages.
Q8: What is webpack? ★
Topic: Webpack
Webpack is a build tool that puts all of your assets, including Javascript, images, fonts, and CSS, in a
dependency graph. Webpack lets you use require() in your source code to point to local files, like images,
and decide how they're processed in your final Javascript bundle, like replacing the path with a URL pointing
to a CDN.
Q9: What is blockchain? ★
5. Topic: Blockchain
Blockchain is a secure distributed ledger (data structure or database) that maintains a continuously growing
list of ordered records, called “blocks”, that are linked using cryptography. Each block contains a
cryptographic hash of the previous block, a timestamp, and transaction data.
By design, a blockchain is resistant to modification of the data. It is "an open, distributed ledger that can
record transactions between two parties efficiently and in a verifiable and permanent way".
Once recorded, the data in any given block cannot be altered retroactively without alteration of all
subsequent blocks, which requires consensus of the network majority.
Q10: Explain Null and Undefined in JavaScript ★★
Topic: JavaScript
JavaScript (and by extension TypeScript) has two bottom types: null and undefined. They are intended to
mean different things:
Something hasn't been initialized : undefined.
Something is currently unavailable: null.
Q11: What is DOM (Document Object Model) and how is it linked to CSS? ★★
Topic: CSS
The Document Object Model (DOM) is a cross-platform and language-independent application programming
interface that treats an HTML, XHTML, or XML document as a tree structure wherein each node is an object
representing a part of the document.
With the Document Object Model, programmers can create and build documents, navigate their structure,
and add, modify, or delete elements and content. The DOM specifies interfaces which may be used to
manage XML or HTML documents.
When a browser displays a document, it must combine the document's content with its style information. The
browser converts HTML and CSS into the DOM (Document Object Model). The DOM represents the
document in the computer's memory. It combines the document's content with its style.
Q12: What is Sprint Planning? ★★
Topic: Agile & Scrum
The work to be performed in the Sprint is planned at the Sprint Planning. This plan is created by the
collaborative work of the entire Scrum Team.
Sprint Planning answers the following:
What can be delivered in the Increment resulting from the upcoming Sprint?
How will the work needed to deliver the Increment be achieved?
The Sprint Goal is an objective set for the Sprint that can be met through the implementation of Product
Backlog.
Q13: Implement enqueue and dequeue using only two stacks ★★
Topic: JavaScript
6. Enqueue means to add an element, dequeue to remove an element.
var inputStack = []; // First stack
var outputStack = []; // Second stack
// For enqueue, just push the item into the first stack
function enqueue(stackInput, item) {
return stackInput.push(item);
}
function dequeue(stackInput, stackOutput) {
// Reverse the stack such that the first element of the output stack is the
// last element of the input stack. After that, pop the top of the output to
// get the first element that was ever pushed into the input stack
if (stackOutput.length <= 0) {
while(stackInput.length > 0) {
var elementToOutput = stackInput.pop();
stackOutput.push(elementToOutput);
}
}
return stackOutput.pop();
}
Q14: What is the difference between span and div? ★★
Topic: HTML5
div is a block element
span is inline element
For bonus points, you could point out that it’s illegal to place a block element inside an inline element, and
that while div can have a p tag, and a p tag can have a span, it is not possible for span to have a div or p tag
inside.
Q15: What are different HTTP Methods supported in Restful Web Services? ★★
Topic: SOA & REST API
Restful web services supported HTTP methods are:
GET,
POST,
PUT,
DELETE and
HEAD.
Q16: What does Containerization mean? ★★
Topic: DevOps
Containerisation is a type of virtualization strategy that emerged as an alternative to traditional hypervisor-
based virtualization.
7. In containerization, the operating system is shared by the different containers rather than cloned for each
virtual machine. For example Docker provides a container virtualization platform that serves as a good
alternative to hypervisor-based arrangements.
Q17: What is CORS and how to enable one? ★★
Topic: Web Security
A request for a resource (like an image or a font) outside of the origin is known as a cross-origin request.
CORS (cross-origin resource sharing) manages cross-origin requests. CORS allows servers to specify who
(i.e., which origins) can access the assets on the server, among many other things.
Access-Control-Allow-Origin is an HTTP header that defines which foreign origins are allowed to access the
content of pages on your domain via scripts using methods such as XMLHttpRequest.
For example, if your server provides both a website and an API intended for XMLHttpRequest access on a
remote websites, only the API resources should return the Access-Control-Allow-Origin header. Failure to do
so will allow foreign origins to read the contents of any page on your origin.
# Allow any site to read the contents of this JavaScript library, so that subresource integrity works
Access-Control-Allow-Origin: *
Q18: What is Cross Site Scripting (XSS)? ★★
Topic: Web Security
By using Cross Site Scripting (XSS) technique, users executed malicious scripts (also called payloads)
unintentionally by clicking on untrusted links and hence, these scripts pass cookies information to attackers.
Q19: How can I prevent XSS? ★★
Topic: Web Security
XSS can be prevented by sanitizing user input to the application. Always allowed those elements as input
which is absolutely essential for that field.
Q20: What is test driven development? ★★
Topic: Agile & Scrum
Test driven development (TDD) is also known as test-driven design. In this method, developer first writes an
automated test case which describes new function or improvement and then creates small codes to pass
that test, and later re-factors the new code to meet the acceptable standards.
Q21: What does "use strict" do? ★★
Topic: JavaScript
The use strict literal is entered at the top of a JavaScript program or at the top of a function and it helps you
write safer JavaScript code by throwing an error if a global variable is created by mistake. For example, the
following program will throw an error:
8. function doSomething(val) {
"use strict";
x = val + 10;
}`
It will throw an error because x was not defined and it is being set to some value in the global scope, which
isn't allowed with use strict The small change below fixes the error being thrown:
function doSomething(val) {
"use strict";
var x = val + 10;
}
Q22: What is the difference between procedural and object-oriented programming? ★★
Topic: OOP
Procedural programming is based upon the modular approach in which the larger programs are broken into
procedures. Each procedure is a set of instructions that are executed one after another. On the other hand,
OOP is based upon objects. An object consists of various elements, such as methods and variables.
Access modifiers are not used in procedural programming, which implies that the entire data can be
accessed freely anywhere in the program. In OOP, you can specify the scope of a particular data by using
access modifiers - public, private, internal, protected, and protected internal.
Q23: What is Reactive Programming? ★★
Topic: Reactive Programming
Reactive programming is programming with asynchronous data streams. Event buses or your typical click
events are really an asynchronous event stream, on which you can observe and do some side effects.
Reactive is that idea on steroids. You are able to create data streams of anything, not just from click and
hover events. Streams are cheap and ubiquitous, anything can be a stream: variables, user inputs,
properties, caches, data structures, etc. For example, imagine your Twitter feed would be a data stream in
the same fashion that click events are. You can listen to that stream and react accordingly.
Q24: How to compare two objects in JavaScript? ★★★
Topic: JavaScript
Two non-primitive values, like objects (including function and array) held by reference, so both == and ===
comparisons will simply check whether the references match, not anything about the underlying values.
For example, arrays are by default coerced to strings by simply joining all the values with commas (,) in
between. So two arrays with the same contents would not be == equal:
var a = [1,2,3];
var b = [1,2,3];
var c = "1,2,3";
a == c; // true
b == c; // true
a == b; // false
9. For deep object comparison use external libs like deep-equal or implement your own recursive equality
algorithm.
Q25: What is IIFEs (Immediately Invoked Function Expressions)? ★★★
Topic: JavaScript
It’s an Immediately-Invoked Function Expression, or IIFE for short. It executes immediately after it’s created:
(function IIFE(){
console.log( "Hello!" );
})();
// "Hello!"
This pattern is often used when trying to avoid polluting the global namespace, because all the variables
used inside the IIFE (like in any other normal function) are not visible outside its scope.
Q26: Could you explain the difference between ES5 and ES6 ★★★
Topic: JavaScript
ECMAScript 5 (ES5): The 5th edition of ECMAScript, standardized in 2009. This standard has been
implemented fairly completely in all modern browsers
ECMAScript 6 (ES6)/ ECMAScript 2015 (ES2015): The 6th edition of ECMAScript, standardized in
2015. This standard has been partially implemented in most modern browsers.
Here are some key differences between ES5 and ES6:
Arrow functions & string interpolation:
Consider:
const greetings = (name) => {
return `hello ${name}`;
}
and even:
const greetings = name => `hello ${name}`;
Const.
Const works like a constant in other languages in many ways but there are some caveats. Const
stands for ‘constant reference’ to a value. So with const, you can actually mutate the properties of
an object being referenced by the variable. You just can’t change the reference itself.
const NAMES = [];
NAMES.push("Jim");
console.log(NAMES.length === 1); // true
NAMES = ["Steve", "John"]; // error
Block-scoped variables.
The new ES6 keyword let allows developers to scope variables at the block level.
10. Let doesn’t hoist in the same way var does.
Default parameter values
Default parameters allow us to initialize functions with default values. A default is used when an
argument is either omitted or undefined — meaning null is a valid value.
// Basic syntax
function multiply (a, b = 2) {
return a * b;
}
multiply(5); // 10
** Class Definition and Inheritance**
ES6 introduces language support for classes (class keyword), constructors (constructor keyword),
and the extend keyword for inheritance.
for-of operator
The for...of statement creates a loop iterating over iterable objects.
Spread Operator
For objects merging
const obj1 = { a: 1, b: 2 }
const obj2 = { a: 2, c: 3, d: 4}
const obj3 = {...obj1, ...obj2}
Promises
Promises provide a mechanism to handle the results and errors from asynchronous operations. You
can accomplish the same thing with callbacks, but promises provide improved readability via
method chaining and succinct error handling.
const isGreater = (a, b) => {
return new Promise ((resolve, reject) => {
if(a > b) {
resolve(true)
} else {
reject(false)
}
})
}
isGreater(1, 2)
.then(result => {
console.log('greater')
})
.catch(result => {
console.log('smaller')
})
Modules exporting & importing
Consider module exporting:
11. const myModule = { x: 1, y: () => { console.log('This is ES5') }}
export default myModule;
and importing:
import myModule from './myModule';
Q27: What is CSS selectors? Name some. ★★★
Topic: CSS
A CSS selector is the part of a CSS rule set that actually selects the content you want to style.
Consider some types of CSS selectors:
Universal selector: *
Element type selector: ul, td
ID Selector: #id
Class selector: .box
Descendant combinator: #id .box. The .box element doesn’t have to be an immediate child of #id.
Child combinator: #id > .box. Unlike the descendant combinator, there can’t be another element
wrapping .box
General Sibling Combinator: ~
Adjacent Sibling Combinator: +. The difference from general sibling combinaltor is that the targeted
element must be an immediate sibling, not just a general sibling.
Attribute Selector: input[type="text"]
Pseudo-class: a:hover. A pseudo-class uses a colon character to identify a pseudo-state that an
element might be in.
Pseudo-element: .container::before. This selector inserts an imaginary element into the page, inside
the targeted element, before its contents.
Q28: How is responsive design different from adaptive design? ★★★
Topic: CSS
Both responsive and adaptive design attempt to optimize the user experience across different devices,
adjusting for different viewport sizes, resolutions, usage contexts, control mechanisms, and so on.
Responsive design works on the principle of flexibility — a single fluid website that can look good on any
device. Responsive websites use media queries, flexible grids, and responsive images to create a user
experience that flexes and changes based on a multitude of factors. Like a single ball growing or shrinking to
fit through several different hoops.
Adaptive design is more like the modern definition of progressive enhancement. Instead of one flexible
design, adaptive design detects the device and other features, and then provides the appropriate feature and
layout based on a predefined set of viewport sizes and other characteristics. The site detects the type of
device used, and delivers the pre-set layout for that device. Instead of a single ball going through several
different-sized hoops, you’d have several different balls to use depending on the hoop size.
Q29: Given two strings, return true if they are anagrams of one another ★★★
Topic: JavaScript
12. Details:
For example: Mary is an anagram of Army
Answer:
var firstWord = "Mary";
var secondWord = "Army";
isAnagram(firstWord, secondWord); // true
function isAnagram(first, second) {
// For case insensitivity, change both words to lowercase.
var a = first.toLowerCase();
var b = second.toLowerCase();
// Sort the strings, and join the resulting array to a string. Compare the results
a = a.split("").sort().join("");
b = b.split("").sort().join("");
return a === b;
}
Q30: Explain almost standard, full standard and quirks mode ★★★
Topic: HTML5
There are now three modes used by the layout engines in web browsers: quirks mode, almost standards
mode, and full standards mode.
In quirks mode, layout emulates nonstandard behavior in Navigator 4 and Internet Explorer 5. This
is essential in order to support websites that were built before the widespread adoption of web
standards.
In full standards mode, the behavior is (hopefully) the behavior described by the HTML and CSS
specifications.
In almost standards mode, there are only a very small number of quirks implemented.
For HTML documents, browsers use a DOCTYPE in the beginning of the document to decide whether to
handle it in quirks mode or standards mode.
Q31: What is HTML5 Web Storage? Explain localStorage and sessionStorage. ★★★
Topic: HTML5
With HTML5, web pages can store data locally within the user’s browser.
The data is stored in name/value pairs, and a web page can only access data stored by itself.
Differences between localStorage and sessionStorage regarding lifetime:
Data stored through localStorage is permanent: it does not expire and remains stored on the user’s
computer until a web app deletes it or the user asks the browser to delete it.
sessionStorage has the same lifetime as the top-level window or browser tab in which the data got
stored. When the tab is permanently closed, any data stored through sessionStorage is deleted.
Differences between localStorage and sessionStorage regarding storage scope:
13. Both forms of storage are scoped to the document origin so that documents with different origins will never
share the stored objects.
sessionStorage is also scoped on a per-window basis. Two browser tabs with documents from the
same origin have separate sessionStorage data.
Unlike in localStorage, the same scripts from the same origin can't access each other's
sessionStorage when opened in different tabs.
Q32: How would you choose between SOAP and REST web services? ★★★
Topic: SOA & REST API
Web Services work on client-server model and when it comes to choose between SOAP and REST, it all
depends on project requirements. Let’s look at some of the conditions affecting our choice:
Do you know your web service clients beforehand? If Yes, then you can define a contract before
implementation and SOAP seems better choice. But if you don’t then REST seems better choice
because you can provide sample request/response and test cases easily for client applications to
use later on.
How much time you have? For quick implementation REST is the best choice. You can create web
service easily, test it through browser/curl and get ready for your clients.
What kind of data format are supported? If only XML then you can go with SOAP but if you think
about supporting JSON also in future then go with REST.
Q33: What are the best practices for caching? ★★★
Topic: SOA & REST API
Always keep static contents like images, css, JavaScript cacheable, with expiration date of 2 to 3 days.
Never keep expiry date too high.
Dynamic contents should be cached for few hours only.
Q34: What is Adapter Pattern? ★★★
Topic: Design Patterns
Adapter pattern works as a bridge between two incompatible interfaces. This pattern involves a single class
which is responsible to join functionalities of independent or incompatible interfaces (adaptees).
14. A real life example could be a case of card reader which acts as an adapter between memory card and a
laptop. You plugin the memory card into card reader and card reader into the laptop so that memory card
can be read via laptop.
Q35: State the features of an interface. ★★★
Topic: OOP
An interface is a template that contains only the signature of methods. The signature of a method consists of
the numbers of parameters, the type of parameter (value, reference, or output), and the order of parameters.
An interface has no implementation on its own because it contains only the definition of methods without any
method body. An interface is defined using the interface keyword. Moreover, you cannot instantiate an
interface. The various features of an interface are as follows:
An interface is used to implement multiple inheritance in code. This feature of an interface is quite
different from that of abstract classes because a class cannot derive the features of more than one
class but can easily implement multiple interfaces.
It defines a specific set of methods and their arguments.
Variables in interface must be declared as public, static, and final while methods must be public and
abstract.
A class implementing an interface must implement all of its methods.
An interface can derive from more than one interface.
Q36: What are the DRY and DIE principles? ★★★
Topic: Software Architecture
In software engineering, Don't Repeat Yourself (DRY) or Duplication is Evil (DIE) is a principle of software
development.
Q37: What are the advantages and disadvantages of using "use strict"? ★★★
15. Topic: JavaScript
'use strict' is a statement used to enable strict mode to entire scripts or individual functions. Strict mode is a
way to opt into a restricted variant of JavaScript.
Advantages:
Makes it impossible to accidentally create global variables.
Makes assignments which would otherwise silently fail to throw an exception.
Makes attempts to delete undeletable properties throw (where before the attempt would simply
have no effect).
Requires that function parameter names be unique.
this is undefined in the global context.
It catches some common coding bloopers, throwing exceptions.
It disables features that are confusing or poorly thought out.
Disadvantages:
Many missing features that some developers might be used to.
No more access to function.caller and function.arguments.
Concatenation of scripts written in different strict modes might cause issues.
Overall, I think the benefits outweigh the disadvantages, and I never had to rely on the features that strict
mode blocks. I would recommend using strict mode.
Q38: Explain the difference between Object.freeze() vs const ★★★
Topic: JavaScript
const and Object.freeze are two completely different things.
const applies to bindings ("variables"). It creates an immutable binding, i.e. you cannot assign a
new value to the binding.
const person = {
name: "Leonardo"
};
let animal = {
species: "snake"
};
person = animal; // ERROR "person" is read-only
Object.freeze works on values, and more specifically, object values. It makes an object immutable,
i.e. you cannot change its properties.
let person = {
name: "Leonardo"
};
let animal = {
species: "snake"
};
Object.freeze(person);
person.name = "Lima"; //TypeError: Cannot assign to read only property 'name' of object
console.log(person);
16. Q39: What are the features of Microservices? ★★★
Topic: Microservices
Decoupling – Services within a system are largely decoupled. So the application as a whole can be
easily built, altered, and scaled
Componentization – Microservices are treated as independent components that can be easily
replaced and upgraded
Business Capabilities – Microservices are very simple and focus on a single capability
Autonomy – Developers and teams can work independently of each other, thus increasing speed
Continous Delivery – Allows frequent releases of software, through systematic automation of
software creation, testing, and approval
Responsibility – Microservices do not focus on applications as projects. Instead, they treat
applications as products for which they are responsible
Decentralized Governance – The focus is on using the right tool for the right job. That means there
is no standardized pattern or any technology pattern. Developers have the freedom to choose the
best useful tools to solve their problems
Agility – Microservices support agile development. Any new feature can be quickly developed and
discarded again
Q40: What is Hoisting in JavaScript? ★★★★
Topic: JavaScript
Read Full Answer on FullStack.Cafe (https://www.fullstack.cafeblogweb-developer-interview-questions)
Q41: How does the “this” keyword work? Provide some code examples. ★★★★
Topic: JavaScript
Read Full Answer on FullStack.Cafe (https://www.fullstack.cafeblogweb-developer-interview-questions)
Q42: Write a recursive function that performs a binary search ★★★★
Topic: JavaScript
Read Full Answer on FullStack.Cafe (https://www.fullstack.cafeblogweb-developer-interview-questions)
Q43: What is “closure” in javascript? Provide an example? ★★★★
Topic: JavaScript
Read Full Answer on FullStack.Cafe (https://www.fullstack.cafeblogweb-developer-interview-questions)
Q44: What is progressive rendering? ★★★★
Topic: HTML5
Read Full Answer on FullStack.Cafe (https://www.fullstack.cafeblogweb-developer-interview-questions)
Q45: What should be the purpose of OPTIONS method of RESTful web services?
★★★★
Topic: SOA & REST API
17. Read Full Answer on FullStack.Cafe (https://www.fullstack.cafeblogweb-developer-interview-questions)
Q46: What is the difference between cohesion and coupling? ★★★★
Topic: OOP
Read Full Answer on FullStack.Cafe (https://www.fullstack.cafeblogweb-developer-interview-questions)
Q47: What is GOD class and why should we avoid it? ★★★★
Topic: Software Architecture
Read Full Answer on FullStack.Cafe (https://www.fullstack.cafeblogweb-developer-interview-questions)
Q48: Explain difference between: function Person(){}, var person = Person(), and var
person = new Person()? ★★★★
Topic: JavaScript
Read Full Answer on FullStack.Cafe (https://www.fullstack.cafeblogweb-developer-interview-questions)
Q49: Describe tree shaking mechanism in webpack ★★★★★
Topic: Webpack
Read Full Answer on FullStack.Cafe (https://www.fullstack.cafeblogweb-developer-interview-questions)
Q50: What does it mean to “program to an interface”? ★★★★★
Topic: OOP
Read Full Answer on FullStack.Cafe (https://www.fullstack.cafeblogweb-developer-interview-questions)