<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>programming Archives - SoftUni Global</title>
	<atom:link href="https://softuni.org/tag/programming/feed/" rel="self" type="application/rss+xml" />
	<link>https://softuni.org/tag/programming/</link>
	<description>Learn Programming and Start a Developer Job</description>
	<lastBuildDate>Fri, 15 Sep 2023 11:06:06 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://softuni.org/wp-content/uploads/2022/04/cropped-SoftUni-Global-Logo-Square-notext-32x32.png</url>
	<title>programming Archives - SoftUni Global</title>
	<link>https://softuni.org/tag/programming/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Making A Sliding Puzzle in Java: Step-by-step Guide [Project Tutorials]</title>
		<link>https://softuni.org/project-tutorials/making-a-sliding-puzzle-in-java/</link>
					<comments>https://softuni.org/project-tutorials/making-a-sliding-puzzle-in-java/#comments</comments>
		
		<dc:creator><![CDATA[Nikol Ruseva]]></dc:creator>
		<pubDate>Mon, 17 Oct 2022 13:05:04 +0000</pubDate>
				<category><![CDATA[Step-by-Step Project Tutorials]]></category>
		<category><![CDATA[game development]]></category>
		<category><![CDATA[Java programming]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[puzzle]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[step-by-step]]></category>
		<guid isPermaLink="false">https://softuni.org/?p=23354</guid>

					<description><![CDATA[<p>In this edition of the Project Tutorial series, we will create a simple sliding puzzle game in Java.</p>
<p>The post <a href="https://softuni.org/project-tutorials/making-a-sliding-puzzle-in-java/">Making A Sliding Puzzle in Java: Step-by-step Guide [Project Tutorials]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="23354" class="elementor elementor-23354" data-elementor-post-type="post">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-5d5405e elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5d5405e" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0d32134" data-id="0d32134" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-9216798 elementor-widget elementor-widget-text-editor" data-id="9216798" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">Sliding puzzles are mechanical devices made of blocks of wood or plastic set into a frame as well as simple but addictive computer games that improve your problem-solving skills. The pieces are usually simple shapes or imprinted with colors, patterns, sections of a bigger picture, numbers, or letters.  </span><span style="font-weight: 400;">Sliding puzzles, also known as sliders or sliding-block puzzles, are different from rearrangement puzzles in that the pieces cannot be lifted or removed from the frame. To win, you have to arrange them in a specific pattern by sliding them into certain routes on the board. Each move opens a new path and rearranges the pieces, so you have to plan carefully in order to achieve the end configuration.</span></p><p><span style="font-weight: 400;">Following this tutorial, you will make <strong>your own 3&#215;3 sliding puzzle</strong> using Java.</span><span style="font-weight: 400;"><br /></span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-ac60dbc elementor-widget elementor-widget-image" data-id="ac60dbc" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img decoding="async" src="https://softuni.org/wp-content/uploads/2022/10/Puzzle.gif" title="Sliding-Puzzle-Gameplay" alt="Sliding-Puzzle-Gameplay" loading="lazy" />															</div>
				</div>
				<div class="elementor-element elementor-element-34fb39a elementor-widget elementor-widget-text-editor" data-id="34fb39a" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;"><strong>Note: To create the game, you can use more advanced implementations like arrays and matrices. The method used in this tutorial is simple and targets absolute beginners.</strong><br />Let’s begin.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-2041cf4 elementor-widget elementor-widget-heading" data-id="2041cf4" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Before You Start</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-1b467b7 elementor-widget elementor-widget-text-editor" data-id="1b467b7" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">For the user interface, you use <strong>Swing</strong>. </span>Swing<span style="font-weight: 400;"> is a <strong>GUI (Graphical User Interface)</strong> widget toolkit for Java.</span><span style="font-weight: 400;"> It is built on top of the AWT (Abstract Windowing Toolkit) API. Unlike AWT, Java Swing provides platform-independent and lightweight components.</span></p><p><span style="font-weight: 400;">The javax.swing package provides classes for the Java Swing API such as <strong>JButton, JTextField, JLabel, JMenu</strong>, etc. You will use the Main method to start the program, but the programming logic will be written in a separate class.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-3c4f9e1 elementor-widget elementor-widget-heading" data-id="3c4f9e1" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">
Preparing Variables
</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-c74cf06 elementor-widget elementor-widget-text-editor" data-id="c74cf06" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">Create a new project and give it a descriptive and meaningful name. </span></p><p><span style="font-weight: 400;">Your <strong>Main</strong> <strong>method</strong> should look like this:</span><span style="font-weight: 400;"><br /></span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-6a49652 elementor-widget elementor-widget-code-highlight" data-id="6a49652" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-csharp line-numbers">
				<code readonly="true" class="language-csharp">
					<xmp>public class Main {
   public static void main(String[] args){
       new Puzzle();
   }
}</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-411639f elementor-widget elementor-widget-text-editor" data-id="411639f" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">Right-click on your project folder and create a new Java class &#8211; </span><b>Puzzle</b><span style="font-weight: 400;">. To use the functionalities (methods) of Swing, the class should </span><b>extend JFrame. </b><span style="font-weight: 400;">To make certain actions happen when you click on the puzzle pieces, you also need an event listener. Make the class </span><b>implement ActionListener.</b><b><br /></b></p>								</div>
				</div>
				<div class="elementor-element elementor-element-f4a4827 elementor-widget elementor-widget-code-highlight" data-id="f4a4827" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-csharp line-numbers">
				<code readonly="true" class="language-csharp">
					<xmp>import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Puzzle extends JFrame implements ActionListener{
}</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-b3697b2 elementor-widget elementor-widget-text-editor" data-id="b3697b2" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">Your puzzle will be <strong>3&#215;3</strong> so you need to declare </span><b>9 buttons </b><span style="font-weight: 400;">for each of the puzzle pieces, as well as a </span><b>shuffle </b><span style="font-weight: 400;">button to rearrange them. You can also implement a </span><b>counter </b><span style="font-weight: 400;">for the number of clicks the user has performed. To make the counter, you need an </span><b>integer </b><span style="font-weight: 400;">and a </span><b>label </b><span style="font-weight: 400;">to visualize the number.</span><span style="font-weight: 400;"><br /></span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-4b97940 elementor-widget elementor-widget-code-highlight" data-id="4b97940" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-csharp line-numbers">
				<code readonly="true" class="language-csharp">
					<xmp>JButton b1,b2,b3,b4,b5,b6,b7,b8,b9,shuffle;
int counter = 0;
JLabel counterLabel;</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-000838a elementor-widget elementor-widget-heading" data-id="000838a" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Creating Constructor
</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-138d7ce elementor-widget elementor-widget-text-editor" data-id="138d7ce" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">When you start the game, the first thing you will see is a new <strong>game</strong> <strong>window</strong>. Let’s set it up. Because the Puzzle class inherits (extends) from JFrame, it can call JFrame methods like <strong>setSize()</strong> and <strong>add(element)</strong>.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-ecc7ef9 elementor-widget elementor-widget-code-highlight" data-id="ecc7ef9" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-csharp line-numbers">
				<code readonly="true" class="language-csharp">
					<xmp>Puzzle(){
   setSize(400,400);
   setLayout(null);
   setVisible(true);
   setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-550d174 elementor-widget elementor-widget-text-editor" data-id="550d174" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">It is <strong>400&#215;400 pixels</strong> in size (which you can customize to your preference) and will close when you click the<strong> X button</strong> on the top right.</span></p><p><span style="font-weight: 400;">Next, you need to initialize all the elements.</span><span style="font-weight: 400;"><br /></span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-7dbb766 elementor-widget elementor-widget-code-highlight" data-id="7dbb766" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-csharp line-numbers">
				<code readonly="true" class="language-csharp">
					<xmp>b1 = new JButton("1");
b2 = new JButton(" ");
b3 = new JButton("3");
b4 = new JButton("4");
b5 = new JButton("5");
b6 = new JButton("6");
b7 = new JButton("7");
b8 = new JButton("8");
b9 = new JButton("2");
shuffle = new JButton("Shuffle!");
counterLabel = new JLabel("Clicks: 0");</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-cde3b5f elementor-widget elementor-widget-text-editor" data-id="cde3b5f" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">Then <strong>add</strong> these elements <strong>to the window</strong> and set proper <strong>bounds</strong>.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-ee2595f elementor-widget elementor-widget-code-highlight" data-id="ee2595f" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-csharp line-numbers">
				<code readonly="true" class="language-csharp">
					<xmp>add(b1);add(b2);add(b3);add(b4);add(b5);add(b6);add(b7);add(b8);add(b9); add(shuffle);
Container contentPane = this.getContentPane();
contentPane.add(counterLabel);

b1.setBounds(90,60,50,40);
b2.setBounds(160,60,50,40);
b3.setBounds(230,60,50,40);
b4.setBounds(90,115,50,40);
b5.setBounds(160,115,50,40);
b6.setBounds(230,115,50,40);
b7.setBounds(90,170,50,40);
b8.setBounds(160,170,50,40);
b9.setBounds(230,170,50,40);
shuffle.setBounds(135,245,100,40);
counterLabel.setBounds(145,15,180,40);</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-473d62c elementor-widget elementor-widget-text-editor" data-id="473d62c" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">Now run the program. It should look like this:</span><span style="font-weight: 400;"><br /></span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-2fe425a elementor-widget elementor-widget-image" data-id="2fe425a" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img fetchpriority="high" decoding="async" width="476" height="484" src="https://softuni.org/wp-content/uploads/2022/10/Sliding-Puzzle.png" class="attachment-large size-large wp-image-23359" alt="Sliding-Puzzle" srcset="https://softuni.org/wp-content/uploads/2022/10/Sliding-Puzzle.png 476w, https://softuni.org/wp-content/uploads/2022/10/Sliding-Puzzle-295x300.png 295w" sizes="(max-width: 476px) 100vw, 476px" />															</div>
				</div>
				<div class="elementor-element elementor-element-2a20d4a elementor-widget elementor-widget-text-editor" data-id="2a20d4a" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">The next step is <strong>optional</strong>, but it will improve the <strong>visual appeal</strong> of your game. It involves changing the background color of the puzzle pieces, the font, and the font size. You can select your own or use the ones from this example.</span><span style="font-weight: 400;"><br /></span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-886c880 elementor-widget elementor-widget-code-highlight" data-id="886c880" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-csharp line-numbers">
				<code readonly="true" class="language-csharp">
					<xmp>shuffle.setBackground(Color.LIGHT_GRAY);

b1.setBackground(Color.decode("#5adbb5"));
b2.setBackground(Color.decode("#5adbb5"));
b3.setBackground(Color.decode("#5adbb5"));
b4.setBackground(Color.decode("#5adbb5"));
b5.setBackground(Color.decode("#5adbb5"));
b6.setBackground(Color.decode("#5adbb5"));
b7.setBackground(Color.decode("#5adbb5"));
b8.setBackground(Color.decode("#5adbb5"));
b9.setBackground(Color.decode("#5adbb5"));

b1.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 18));
b2.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 18));
b3.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 18));
b4.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 18));
b5.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 18));
b6.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 18));
b7.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 18));
b8.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 18));
b9.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 18));
shuffle.setFont(new Font(Font.DIALOG, Font.PLAIN, 18));
counterLabel.setFont(new Font(Font.DIALOG, Font.PLAIN, 18));
</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-bcddbdc elementor-widget elementor-widget-spacer" data-id="bcddbdc" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-6ab465e elementor-widget elementor-widget-text-editor" data-id="6ab465e" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">In the end, you get:</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-389ed4c elementor-widget elementor-widget-image" data-id="389ed4c" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img decoding="async" width="474" height="485" src="https://softuni.org/wp-content/uploads/2022/10/Sliding-Puzzle-Customized.png" class="attachment-large size-large wp-image-23360" alt="" srcset="https://softuni.org/wp-content/uploads/2022/10/Sliding-Puzzle-Customized.png 474w, https://softuni.org/wp-content/uploads/2022/10/Sliding-Puzzle-Customized-293x300.png 293w" sizes="(max-width: 474px) 100vw, 474px" />															</div>
				</div>
				<div class="elementor-element elementor-element-e6e05a0 elementor-widget elementor-widget-text-editor" data-id="e6e05a0" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">Finally, attach an action listener to every button:</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-1265ac8 elementor-widget elementor-widget-code-highlight" data-id="1265ac8" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
b4.addActionListener(this);
b5.addActionListener(this);
b6.addActionListener(this);
b7.addActionListener(this);
b8.addActionListener(this);
b9.addActionListener(this);
shuffle.addActionListener(this);
}</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-0330f2b elementor-widget elementor-widget-text-editor" data-id="0330f2b" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">And the Puzzle <strong>constructor</strong> is done.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-097e0c9 elementor-widget elementor-widget-heading" data-id="097e0c9" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Adding Action</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-6ac099f elementor-widget elementor-widget-text-editor" data-id="6ac099f" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">The Action Listener is a simple event handler with only one method &#8211; <strong>actionPerformed </strong></span><span style="font-weight: 400;"><strong>(ActionEvent e)</strong>. It is used to define what should happen when a user performs a certain operation. It <strong>registers</strong> <strong>the</strong> <strong>event</strong> of clicking a button, for example. The ActionListener is one for all buttons, so you have to make a separate if statement for each one of them in the actionPerformed method. Let’s start with the </span><b>Shuffle </b><span style="font-weight: 400;">button.</span><span style="font-weight: 400;"><br /></span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-ce1e1d9 elementor-widget elementor-widget-code-highlight" data-id="ce1e1d9" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>public void actionPerformed(ActionEvent e){
   if(e.getSource() == shuffle){
       String s = b4.getText();
       b4.setText(b9.getText());
       b9.setText(s);
       s = b1.getText();
       b1.setText(b5.getText());
       b5.setText(s);
       s = b2.getText();
       b2.setText(b7.getText());
       b7.setText(s);
       counter = -1;
       counterLabel.setText("Clicks: 0");
   }</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-91f92b4 elementor-widget elementor-widget-text-editor" data-id="91f92b4" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;"><strong>The logic</strong> of moving puzzle pieces is simple: instead of physically moving the pieces around the board, you simply <strong>change</strong> <strong>their</strong> <strong>text</strong>.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-e3f817b elementor-widget elementor-widget-code-highlight" data-id="e3f817b" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>if(e.getSource() == b1){
   String s = b1.getText();
   if(b2.getText().equals(" ")){ b2.setText(s); b1.setText(" ");}
   else if(b4.getText().equals(" ")){ b4.setText(s); b1.setText(" ");}
}</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-b36e965 elementor-widget elementor-widget-text-editor" data-id="b36e965" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">Let’s break the process into a <strong>few steps</strong>:</span><span style="font-weight: 400;"><br /></span></p><ol><li><span style="font-weight: 400;"> Extract the text from the current button;</span></li><li><span style="font-weight: 400;"> Determine which of the adjacent buttons has no text;</span></li><li><span style="font-weight: 400;"> Substitute the empty text with the extracted one;</span></li><li><span style="font-weight: 400;"> Set the text of the current button to an empty string.</span></li></ol><p><span style="font-weight: 400;">Follow this logic for the other pieces as well.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-48b1c62 elementor-widget elementor-widget-code-highlight" data-id="48b1c62" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>if(e.getSource() == b2){
   String s=b2.getText();
   if(b1.getText().equals(" ")){ b1.setText(s); b2.setText(" ");}
   else if(b3.getText().equals(" ")){ b3.setText(s); b2.setText(" ");}
   else if(b5.getText().equals(" ")){ b5.setText(s); b2.setText(" ");}
}
if(e.getSource() == b3){
   String s=b3.getText();
   if(b2.getText().equals(" ")){ b2.setText(s); b3.setText(" ");}
   else if(b6.getText().equals(" ")){ b6.setText(s); b3.setText(" ");}
}
if(e.getSource() == b4){
   String s=b4.getText();
   if(b1.getText().equals(" ")){ b1.setText(s); b4.setText(" ");}
   else if(b7.getText().equals(" ")){ b7.setText(s); b4.setText(" ");}
   else if(b5.getText().equals(" ")){ b5.setText(s); b4.setText(" ");}
}
if(e.getSource() == b5){
   String s=b5.getText();
   if(b2.getText().equals(" ")){ b2.setText(s); b5.setText(" ");}
   else if(b4.getText().equals(" ")){ b4.setText(s); b5.setText(" ");}
   else if(b6.getText().equals(" ")){ b6.setText(s); b5.setText(" ");}
   else if(b8.getText().equals(" ")){ b8.setText(s); b5.setText(" ");}
}
if(e.getSource() == b6){

   String s=b6.getText();
   if(b9.getText().equals(" ")){ b9.setText(s); b6.setText(" ");}
   else if(b3.getText().equals(" ")){ b3.setText(s); b6.setText(" ");}
   else if(b5.getText().equals(" ")){ b5.setText(s); b6.setText(" ");}

}
if(e.getSource() == b7){
   String s=b7.getText();
   if(b4.getText().equals(" ")){ b4.setText(s); b7.setText(" ");}
   else if(b8.getText().equals(" ")){ b8.setText(s); b7.setText(" ");}

}
if(e.getSource() == b8){
   String s=b8.getText();
   if(b7.getText().equals(" ")){ b7.setText(s); b8.setText(" ");}
   else if(b9.getText().equals(" ")){ b9.setText(s); b8.setText(" ");}
   else if(b5.getText().equals(" ")){ b5.setText(s); b8.setText(" ");}
}
</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-5ebe135 elementor-widget elementor-widget-text-editor" data-id="5ebe135" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">The last button marks the end of the puzzle, so it should also include a statement that checks whether it has been solved. For that to happen, the pieces must be put in the following order: </span><span style="font-weight: 400;"><br /></span><strong>1 2 3<br />4 5 6<br />7 8 empty</strong></p><p><span style="font-weight: 400;">Therefore, the simplest way to verify this order is to check the text on each button.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-e158015 elementor-widget elementor-widget-code-highlight" data-id="e158015" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>if(e.getSource() == b9){
   String s=b9.getText();
   if(b6.getText().equals(" ")){ b6.setText(s); b9.setText(" ");}
   else if(b8.getText().equals(" ")){ b8.setText(s); b9.setText(" ");}

   if(b1.getText().equals("1")&&b2.getText().equals("2")&&b3.getText()
           .equals("3")&&b4.getText().equals("4")&&b5.getText().equals("5")
           &&b6.getText().equals("6")&&b7.getText().equals("7")&&b8.getText()
           .equals("8")&&b9.getText().equals(" ")){
       JOptionPane.showMessageDialog(Puzzle.this,"YOU WON!\n" + "You clicked: " + counter + " times.");
   }
}</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-c26a37f elementor-widget elementor-widget-text-editor" data-id="c26a37f" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">You can add a <strong>dialog box</strong> with a custom message that will <strong>pop up when the puzzle is solved</strong>. To do that, use the JOptionPane.showMessageDialog() method.</span></p><p><span style="font-weight: 400;">Finally, <strong>increase</strong> the <strong>counter integer</strong> and <strong>update the label&#8217;s text</strong> to the new value at the end of the if statements.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-1c61d54 elementor-widget elementor-widget-code-highlight" data-id="1c61d54" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>counter++;
counterLabel.setText("Clicks: " + counter);</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-2d2541e elementor-widget elementor-widget-text-editor" data-id="2d2541e" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong>Your sliding puzzle is ready!</strong></p>								</div>
				</div>
				<div class="elementor-element elementor-element-c3b578a elementor-widget elementor-widget-heading" data-id="c3b578a" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Conclusion</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-6f56a8e elementor-widget elementor-widget-text-editor" data-id="6f56a8e" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">By following this tutorial, you have programmed your own sliding puzzle in Java using simple if statements and some basic functionality of the Swing library. Explore the library’s other features and think of ways to <strong>expand your project</strong> by adding, for example, a scoreboard, an option to switch between different puzzle sizes, randomization of the shuffle, etc. And don’t forget to <strong>upload</strong> it to your <a href="https://softuni.org/dev-concepts/what-is-git-and-how-to-work-with-github/">GitHub</a> profile.</span><span style="font-weight: 400;"><br /></span><span style="font-weight: 400;"><br /></span><span style="font-weight: 400;">To check out <strong>the final code</strong> and compare it to yours, </span><b>click the link below</b><span style="font-weight: 400;">.</span></p><p><span style="font-weight: 400;">If you need any help or advice, <strong>leave a comment.</strong></span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-0c72984 elementor-widget elementor-widget-spacer" data-id="0c72984" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-edfdd22 elementor-widget elementor-widget-text-editor" data-id="edfdd22" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h2>Lesson Topics</h2><div><div><div>In this tutorial we cover the following steps:</div></div><ul><li><strong>Preparing Variables</strong></li><li><strong>Creating Constructor</strong></li><li><strong>Adding Logic to Action Listener</strong></li></ul></div>								</div>
				</div>
				<div class="elementor-element elementor-element-93d53ef elementor-widget elementor-widget-spacer" data-id="93d53ef" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-dc263e9 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="dc263e9" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-2f88ff6" data-id="2f88ff6" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-96efd1f elementor-align-center elementor-widget elementor-widget-button" data-id="96efd1f" data-element_type="widget" data-widget_type="button.default">
				<div class="elementor-widget-container">
									<div class="elementor-button-wrapper">
					<a class="elementor-button elementor-button-link elementor-size-lg" href="https://github.com/SoftUni/SoftUni-Project-Tutorials-Puzzle-Game-Java" target="_blank">
						<span class="elementor-button-content-wrapper">
						<span class="elementor-button-icon">
				<svg aria-hidden="true" class="e-font-icon-svg e-fas-laptop-code" viewBox="0 0 640 512" xmlns="http://www.w3.org/2000/svg"><path d="M255.03 261.65c6.25 6.25 16.38 6.25 22.63 0l11.31-11.31c6.25-6.25 6.25-16.38 0-22.63L253.25 192l35.71-35.72c6.25-6.25 6.25-16.38 0-22.63l-11.31-11.31c-6.25-6.25-16.38-6.25-22.63 0l-58.34 58.34c-6.25 6.25-6.25 16.38 0 22.63l58.35 58.34zm96.01-11.3l11.31 11.31c6.25 6.25 16.38 6.25 22.63 0l58.34-58.34c6.25-6.25 6.25-16.38 0-22.63l-58.34-58.34c-6.25-6.25-16.38-6.25-22.63 0l-11.31 11.31c-6.25 6.25-6.25 16.38 0 22.63L386.75 192l-35.71 35.72c-6.25 6.25-6.25 16.38 0 22.63zM624 416H381.54c-.74 19.81-14.71 32-32.74 32H288c-18.69 0-33.02-17.47-32.77-32H16c-8.8 0-16 7.2-16 16v16c0 35.2 28.8 64 64 64h512c35.2 0 64-28.8 64-64v-16c0-8.8-7.2-16-16-16zM576 48c0-26.4-21.6-48-48-48H112C85.6 0 64 21.6 64 48v336h512V48zm-64 272H128V64h384v256z"></path></svg>			</span>
									<span class="elementor-button-text">Download Project</span>
					</span>
					</a>
				</div>
								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-3cd15ec elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="3cd15ec" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-56bfdb0" data-id="56bfdb0" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
							</div>
		</div>
					</div>
		</section>
				</div>
		<p>The post <a href="https://softuni.org/project-tutorials/making-a-sliding-puzzle-in-java/">Making A Sliding Puzzle in Java: Step-by-step Guide [Project Tutorials]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://softuni.org/project-tutorials/making-a-sliding-puzzle-in-java/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Acing The Web Developer Interview &#8211; A Guide [Dev Talks]</title>
		<link>https://softuni.org/dev-talks/web-developer-interview-guide/</link>
					<comments>https://softuni.org/dev-talks/web-developer-interview-guide/#comments</comments>
		
		<dc:creator><![CDATA[Nikol Ruseva]]></dc:creator>
		<pubDate>Fri, 30 Sep 2022 14:26:57 +0000</pubDate>
				<category><![CDATA[Dev Talks]]></category>
		<category><![CDATA[coding challenges]]></category>
		<category><![CDATA[interview]]></category>
		<category><![CDATA[interview process]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[tech job]]></category>
		<guid isPermaLink="false">https://softuni.org/?p=23287</guid>

					<description><![CDATA[<p>This article will walk you through the steps of the interview process, giving you some samples of the questions you can expect and advice on how to answer them.</p>
<p>The post <a href="https://softuni.org/dev-talks/web-developer-interview-guide/">Acing The Web Developer Interview &#8211; A Guide [Dev Talks]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="23287" class="elementor elementor-23287" data-elementor-post-type="post">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-5d5405e elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5d5405e" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0d32134" data-id="0d32134" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-9216798 elementor-widget elementor-widget-text-editor" data-id="9216798" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">There are a lot of <strong><a href="https://softuni.org/dev-talks/starting-your-first-job-in-the-software-industry/">steps</a> </strong>you need to take before going to an interview. Even when you complete them all,</span> <span style="font-weight: 400;">applying for your first programming job can be an intimidating process, especially when you do not have any professional experience to back up your technical knowledge. A good way to showcase your practical competence is to set up a <strong><a href="https://softuni.org/dev-concepts/what-is-git-and-how-to-work-with-github/">GitHub</a> </strong>profile with all the projects you have completed so far.  </span><span style="font-weight: 400;">In addition to assessing your coding skills, an interview serves as an opportunity for the recruiter to get to know you better and determine whether or not you would fit well into the company culture. </span></p><p><span style="font-weight: 400;">Although every organization has a different interviewing policy, the process usually includes the following steps: </span></p><ul><li><span style="font-weight: 400;">Initial Conversation with a hiring manager;</span></li><li style="font-weight: 400;" aria-level="1"><span style="font-weight: 400;">Technical Interview with a software developer;</span></li><li style="font-weight: 400;" aria-level="1"><span style="font-weight: 400;">Coding Challenges.</span></li></ul><p><span style="font-weight: 400;">There are three general groups of questions corresponding to each stage of the interview process &#8211; <strong>personal, technical, and practical</strong>. To give you a better idea of what to expect, we made a list of the most common ones and included hints on how to best answer them. </span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-2041cf4 elementor-widget elementor-widget-heading" data-id="2041cf4" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Personal Questions</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-c74cf06 elementor-widget elementor-widget-text-editor" data-id="c74cf06" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">In most cases, you will first speak with a hiring manager, who </span><span style="font-weight: 400;">will ask you open-ended questions common to most job interviews, irrespective of the industry:</span></p><ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;"><strong>Tell me about yourself.</strong><br /></span><i style="font-weight: inherit;"><span style="font-weight: 400;">Hint: </span></i><span style="font-weight: 400;">You do not have to go into too many personal details. After all, you are there on a business matter. Share what sparked your interest in programming and what you expect to gain</span><span style="font-weight: 400;"> from </span><span style="font-weight: 400;">the role you are applying for. Explain why you are a good fit for this position, and which of your skills and abilities would benefit the company and make you stand out as a candidate. </span></li></ul><ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><strong>Where do you see yourself in five (or ten) years time?</strong><i style="font-weight: inherit;"><span style="font-weight: 400;"><br />Hint:</span></i><span style="font-weight: 400;"> The purpose of this question is to find out if you plan in the long term and whether your goals align with the position you are applying for. </span></li></ul><ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><strong>How did you hear about our company?</strong><span style="font-weight: 400;"><br /></span><i><span style="font-weight: 400;">Hint:</span></i> <span style="font-weight: 400;">Be prepared with specific information about the company. </span><span style="font-weight: 400;">Look for information in forums, blogs, on the company&#8217;s Web site, etc. Research their goals and mission and the position you are applying for and mention how they align with your future plans.</span></li></ul><ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><strong>What are your greatest strengths and weaknesses?</strong><span style="font-weight: 400;"><br /></span><i><span style="font-weight: 400;">Hint:</span></i> <span style="font-weight: 400;">Mention actual personal qualities that are relevant to the current position. Give context, details, and an example from your own experience or a potential situation in which you would use these strengths to get through a challenge. </span><span style="font-weight: 400;"><br /></span><span style="font-weight: 400;">When talking about your weaknesses you want to give a well-thought answer that does not sound too rehearsed. The best way is to give an example of a small shortcoming you are working on overcoming. Share what you have learnt from the process and how you will use the experience in your future work.</span></li></ul><ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><strong>What are your hobbies and interests?</strong><span style="font-weight: 400;"><br /></span><i><span style="font-weight: 400;">Hint:</span></i><span style="font-weight: 400;"> To dig deeper into your character, the hiring manager might ask you about your interests outside of work. Mention hobbies that you are really into, but make sure to clarify that they will not affect your dedication to the job. Sharing your interests outside of work is a genuine way to show your personality and connect with the interviewer. </span></li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-000838a elementor-widget elementor-widget-heading" data-id="000838a" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Technical Questions</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-550d174 elementor-widget elementor-widget-text-editor" data-id="550d174" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">The interview will continue with a test of your technical knowledge in the form of some <strong>behavioral</strong> and <strong>theoretical</strong> <strong>questions</strong>. At this stage, you are likely to have a software engineer who will ask you progressively harder theoretical questions. Although the technical part of an interview is highly dependent on the job requirements, there are some general questions at the start, like:</span></p><p><img decoding="async" class="size-medium wp-image-23295 alignright" src="https://softuni.org/wp-content/uploads/2022/09/Coding-Person-300x300.png" alt="" width="300" height="300" data-wp-editing="1" srcset="https://softuni.org/wp-content/uploads/2022/09/Coding-Person-300x300.png 300w, https://softuni.org/wp-content/uploads/2022/09/Coding-Person-1024x1024.png 1024w, https://softuni.org/wp-content/uploads/2022/09/Coding-Person-150x150.png 150w, https://softuni.org/wp-content/uploads/2022/09/Coding-Person-768x768.png 768w, https://softuni.org/wp-content/uploads/2022/09/Coding-Person-600x600.png 600w, https://softuni.org/wp-content/uploads/2022/09/Coding-Person-100x100.png 100w, https://softuni.org/wp-content/uploads/2022/09/elementor/thumbs/Coding-Person-pviyi7nm2iq7hqrdk2sfrv5isfxwdrf22t0poc8s3o.png 250w, https://softuni.org/wp-content/uploads/2022/09/Coding-Person.png 1080w" sizes="(max-width: 300px) 100vw, 300px" /></p><ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;"><strong>Why did you choose this programming language, and what interests you about it?</strong><br /></span><i style="font-weight: inherit;"><span style="font-weight: 400;"><strong>Hint</strong>:</span></i><span style="font-weight: 400;"> Express your understanding of the technology you chose. Describe its features, advantages, and disadvantages, as well as the applications you can develop with it. To show that you have at least a basic understanding of other languages, you can also draw comparisons with some of them.</span></li></ul><ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;"><strong>Describe the steps you take to develop a program, from getting the assignment or an initial idea to its final execution.</strong><br /></span><i style="font-weight: inherit;"><span style="font-weight: 400;"><strong>Hint</strong>:</span></i><span style="font-weight: 400;"> Explain the actual sequence of steps you take when developing a program. Interviewers are particularly interested in your project planning process, what coding techniques you use, and whether you follow the best practices that guarantee high-quality and readable code.</span></li></ul><ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><strong>How do you debug your code and approach problems?<br /></strong><i style="font-weight: inherit;"><span style="font-weight: 400;"><strong>Hint</strong>: </span></i><span style="font-weight: 400;">Since troubleshooting and debugging are crucial components of a software engineer&#8217;s work, it is important to describe how you handle issues. This will demonstrate your level of logical and algorithmic thinking and problem-solving skills.</span></li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-dceee3d elementor-widget elementor-widget-text-editor" data-id="dceee3d" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">The more in-depth questions are usually theoretical, so it is entirely up to you to be prepared beforehand. </span><span style="font-weight: 400;">This is a sample list of technical questions for four of the most popular <strong>programming</strong> <strong>languages</strong> for <strong>web development</strong>, as well as a separate section about <strong>Object Oriented Programming (OOP)</strong>.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-5b722a9 elementor-widget elementor-widget-text-editor" data-id="5b722a9" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong>Java</strong></p><ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What are the main features of Java?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">Why is Java platform-independent?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What is the difference between the JDK, JRE, and JVM?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">How do Heap and Stack memory differ?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">Explain the access modifiers used in Java.</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What is the role of the garbage collector?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What is Final word in Java used for?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What is the difference between Stack and Queue?</span></li></ul><p><strong>C#</strong></p><ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What are the main features of C#?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">How is C# compiled?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What is the difference between managed and unmanaged code?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">Explain the different types of classes.</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">Explain the access modifiers used in C#.</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What are boxing and unboxing in C#?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What are the main differences between Array and ArrayList in C#?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What is the difference between throw exception and throw clause? </span></li></ul><p><strong>Python</strong></p><ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What are the main features of Python?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What is the difference between list and tuples?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What are the built-in data types?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What is a namespace?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What is PEP?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">How is Python interpreted?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What are local and global variables?</span><span style="font-weight: 400;"><br /></span></li></ul><p><strong>JavaScript</strong></p><ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What are the main features of JavaScript?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What are the data types in JS?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What is the difference between ViewState and SessionState?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What are JavaScript Cookies?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What is the difference between pop() and shift() method?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What are the disadvantages of using innerHTML?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What are the different types of errors in JavaScript?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What is the Strict Mode in JavaScript, and how can it be enabled?</span></li></ul><p><strong>OOP</strong></p><ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What are the principles of OOP?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What are the features of OOP?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What is the Singleton Class and how to implement it?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What is inheritance?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What is the difference between a class and an object?</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">Explain superclass and subclass.</span></li><li style="font-weight: 400;" aria-level="1" aria-checked="false"><span style="font-weight: 400;">What is the difference between method overloading and method overriding?</span></li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-30b8a38 elementor-widget elementor-widget-text-editor" data-id="30b8a38" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">These questions can be asked specifically about your projects, in case you have any uploaded on your <strong>GitHub</strong> <strong>profile</strong>. The interviewer might be interested in discussing the <strong>technologies</strong> and <strong>practices</strong> that you used to develop them.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-91b4156 elementor-widget elementor-widget-heading" data-id="91b4156" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Coding Challenges</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-06be0a6 elementor-widget elementor-widget-text-editor" data-id="06be0a6" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">In addition to the theoretical questions, you might be given a problem to solve. It can be a <strong>take-home assignment</strong> or a coding challenge to <strong>do live during the interview</strong>. Make sure you are familiar with the syntax of the programming language required for the position you are applying for, because a coding challenge may require you to <strong>debug</strong> <strong>a</strong> <strong>block</strong> <strong>of code</strong> or determine what its result would be. It is possible that the code is intentionally made confusing in order to gauge how you would respond when faced with a challenge or in a stressful situation. In this case, the most important things are to stay calm, fight off any anxiety, and try to find a <strong>logical</strong> and <strong>well-structured</strong> <strong>solution</strong> to the problem. </span><span style="font-weight: 400;"><strong>Demonstrating</strong> genuine <strong>enthusiasm</strong> for coding, algorithmic thinking, and a desire to learn is sometimes <strong>more important</strong> <strong>than</strong> coming up with the <strong>right answer</strong>.<br /></span></p><p><span style="font-weight: 400;">Listed b</span><span style="font-weight: 400;">elow are some basic <strong>junior coding challenges</strong> and <strong>hints</strong> on how to resolve them:</span></p><ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><strong>Factorial<br /></strong><span style="font-weight: 400;">The factorial of a positive integer is the sum of the multiplication of all the integers smaller than that positive integer. For example:</span><span style="font-weight: 400;"><br /></span><span style="font-weight: 400;">4! = 4*3*2*1 = 24</span><span style="font-weight: 400;"><br /></span>5! = 5*4*3*2*1 = 120<br /><i style="font-weight: inherit;"><span style="font-weight: 400;"><strong>Task</strong>:</span></i> <span style="font-weight: 400;">Write a program that takes a positive integer as an input and calculates the factorial of that number.<br /></span><i style="font-weight: inherit;"><span style="font-weight: 400;"><strong>Hint</strong>:</span></i><span style="font-weight: 400;"> To solve this problem, use either a </span><b style="font-style: inherit;">loop </b><span style="font-weight: 400;">or </span><b style="font-style: inherit;">recursion</b><span style="font-weight: 400;">.</span></li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-b43f368 elementor-widget elementor-widget-image" data-id="b43f368" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="576" src="https://softuni.org/wp-content/uploads/2022/09/Factorial-Formula-1024x576.png" class="attachment-large size-large wp-image-23296" alt="Factorial-Formula" srcset="https://softuni.org/wp-content/uploads/2022/09/Factorial-Formula-1024x576.png 1024w, https://softuni.org/wp-content/uploads/2022/09/Factorial-Formula-e1664544249914-300x169.png 300w, https://softuni.org/wp-content/uploads/2022/09/Factorial-Formula-e1664544249914-768x432.png 768w, https://softuni.org/wp-content/uploads/2022/09/Factorial-Formula-1536x864.png 1536w, https://softuni.org/wp-content/uploads/2022/09/Factorial-Formula-e1664544249914-600x338.png 600w, https://softuni.org/wp-content/uploads/2022/09/Factorial-Formula-e1664544249914.png 960w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
				<div class="elementor-element elementor-element-080879e elementor-widget elementor-widget-text-editor" data-id="080879e" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><strong>Palindrome</strong><span style="font-weight: 400;"><br /></span><span style="font-weight: 400;">A palindrome is a sequence of characters which reads the same backward as forward. For example, “radar”, “rotator”, and even longer phrases like “pull up if I pull up”. <br /></span><i style="font-weight: inherit;"><span style="font-weight: 400;"><strong>Task</strong>:</span></i><span style="font-weight: 400;"> Write a program that takes a string as an input and returns if it is a palindrome. <br /></span><i style="font-weight: inherit;"><span style="font-weight: 400;"><strong>Hint</strong>:</span></i><span style="font-weight: 400;"> You can: </span></li></ul><ol><li style="list-style-type: none;"><ol><li style="list-style-type: none;"><ol><li style="font-weight: 400;" aria-level="1"><span style="font-weight: 400;">Check if the input is a </span><b>string</b><span style="font-weight: 400;">;</span></li><li style="font-weight: 400;" aria-level="1"><span style="font-weight: 400;">Turn it to </span><b>lower or uppercase</b><span style="font-weight: 400;">;</span></li><li style="font-weight: 400;" aria-level="1"><span style="font-weight: 400;">Reverse it (using </span><b>a method or a loop</b><span style="font-weight: 400;">);</span></li><li style="font-weight: 400;" aria-level="1"><span style="font-weight: 400;">Check if the </span><b>reversed string is equal to the input string;</b></li><li style="font-weight: 400;" aria-level="1"><span style="font-weight: 400;">Return the result.</span></li></ol></li></ol></li></ol><ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><strong>FizzBuzz<br /></strong><i style="font-weight: inherit;"><span style="font-weight: 400;"><strong>Task</strong>:</span></i><span style="font-weight: 400;"> Write a program that counts the numbers from 1 to 100 on a new line.<br /></span>If the number is divisible by 3, print “Fizz”.<br />If the number is divisible by 5, print “Buzz”.<br />If the number is divisible by both 3 and 5, print “FizzBuzz”.<br />Otherwise, print the number.<br /><i style="font-weight: inherit;"><span style="font-weight: 400;"><strong>Hint</strong>:</span></i><span style="font-weight: 400;"> Make a </span><b style="font-style: inherit;">loop</b><span style="font-weight: 400;"> that iterates over the numbers, and for every number, check the given conditions using the </span><b style="font-style: inherit;">remainder operator.</b><span style="font-weight: 400;"><span style="font-weight: 400;"> Be careful with the order of conditions because it can be crucial to the end result.<br /><br /></span></span></li><li aria-level="1" aria-checked="false"><strong>Fibonacci<br /></strong>The Fibonacci sequence is a series of integers (the Fibonacci numbers) like the following one:<br />0, 1, 1, <b style="font-style: inherit;">2</b><span style="font-weight: 400;">, 3, 5, 8, 13, 21, 34<br /></span>Every number after the first two (0 and 1) is the sum of the two preceding ones:<br />2 is the sum of the preceding two numbers &#8211; 1+1<br />0, 1, 1, 2, <b style="font-style: inherit;">3</b><span style="font-weight: 400;">, 5, 8, 13, 21, 34<br /></span>3 is the sum of the preceding two numbers &#8211; 1+2<br />And so on.<br /><i style="font-weight: inherit;"><span style="font-weight: 400;"><strong>Task</strong>: </span></i><span style="font-weight: 400;">Write a program that takes a positive integer N as an input and returns the N-th element of the Fibonacci sequence.<br /></span><i style="font-weight: inherit;"><span style="font-weight: 400;"><strong>Hint</strong>:</span></i><span style="font-weight: 400;"> The easiest way to solve this is to use </span><b style="font-style: inherit;">recursion, </b><span style="font-weight: 400;">like in this example of Java code:</span></li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-94ad81e elementor-widget elementor-widget-code-highlight" data-id="94ad81e" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-java line-numbers">
				<code readonly="true" class="language-java">
					<xmp>public int fib(int n){

if (n<2) return n;

return fib(n-1) + fib(n-2);
}</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-dbc96aa elementor-widget elementor-widget-text-editor" data-id="dbc96aa" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<ul><li style="font-weight: 400;" aria-level="1" aria-checked="false"><strong>Anagram<br /></strong>Anagrams are words with the same number of letters, but they may be arranged differently. For example, race and care, listen and silent.<br /><i style="font-weight: inherit;"><span style="font-weight: 400;"><strong>Task</strong>:</span></i><span style="font-weight: 400;"> Write a program that receives two strings as an input and returns true if they are anagrams.<br /></span><i style="font-weight: inherit;"><span style="font-weight: 400;"><strong>Hint</strong>:</span></i><span style="font-weight: 400;"><strong> Sorting</strong> the two words and then comparing them is the quickest way, but it is not the best solution because usually sorting algorithms are time- and memory-consuming.<br /></span>Another approach is to generate <strong>HashMaps</strong> of both words and then <strong>compare them</strong>. Use the HashMaps to check if they contain the same elements and if these elements occurred the same number of times in both maps.</li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-097e0c9 elementor-widget elementor-widget-heading" data-id="097e0c9" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Conclusion</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-e6e05a0 elementor-widget elementor-widget-text-editor" data-id="e6e05a0" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span style="font-weight: 400;">Most people are anxious when going to an interview, especially if it is their first time. <br /><strong>Preparing in advance</strong> will always work in your favor giving you a <strong>leg up</strong> over the other candidates and the chance to make a good impression. Having an idea of the general process will help you come up with the best answers to the most common personal, technical, and practical questions when interviewing for a software engineer position.</span></p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-3cd15ec elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="3cd15ec" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-56bfdb0" data-id="56bfdb0" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
							</div>
		</div>
					</div>
		</section>
				</div>
		<p>The post <a href="https://softuni.org/dev-talks/web-developer-interview-guide/">Acing The Web Developer Interview &#8211; A Guide [Dev Talks]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://softuni.org/dev-talks/web-developer-interview-guide/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>How To Make A Pong Game in C#: Step-by-step Guide [Project Tutorials]</title>
		<link>https://softuni.org/project-tutorials/how-to-make-a-pong-game-in-csharp-guide/</link>
					<comments>https://softuni.org/project-tutorials/how-to-make-a-pong-game-in-csharp-guide/#comments</comments>
		
		<dc:creator><![CDATA[Nikol Ruseva]]></dc:creator>
		<pubDate>Thu, 01 Sep 2022 14:15:30 +0000</pubDate>
				<category><![CDATA[Step-by-Step Project Tutorials]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[game development]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[step-by-step]]></category>
		<category><![CDATA[Visual Studio]]></category>
		<guid isPermaLink="false">https://softuni.org/?p=23082</guid>

					<description><![CDATA[<p>In this edition of the Project Tutorial series, we will create a simple Pong game with C#.</p>
<p>The post <a href="https://softuni.org/project-tutorials/how-to-make-a-pong-game-in-csharp-guide/">How To Make A Pong Game in C#: Step-by-step Guide [Project Tutorials]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="23082" class="elementor elementor-23082" data-elementor-post-type="post">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-5d5405e elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5d5405e" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0d32134" data-id="0d32134" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-9216798 elementor-widget elementor-widget-text-editor" data-id="9216798" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Pong is a two-dimensional sports game that is similar to table tennis. It is one of the earliest video games, first released in 1972. Since then, it has been recreated multiple times in different programming languages. Today, you will learn how to make <strong>your own version</strong> of the game using <strong>simple</strong> <strong>programming concepts in C#</strong>.</p><p>Let’s begin.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-2041cf4 elementor-widget elementor-widget-heading" data-id="2041cf4" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Creating the Field</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-c74cf06 elementor-widget elementor-widget-text-editor" data-id="c74cf06" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>First, you need to prepare the field with an upper and a lower border and two rackets. Declare two constants of type int that define the dimensions of the field &#8211; <b>fieldWidth </b>and <b>fieldLength. </b>To visualize the upper and the lower border, use the string method <b>Repeat </b>on the <b>fieldTile </b>character variable.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-6a49652 elementor-widget elementor-widget-code-highlight" data-id="6a49652" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-csharp line-numbers">
				<code readonly="true" class="language-csharp">
					<xmp>const int fieldLength = 50, fieldWidth = 15;
const char fieldTile = '#';
string line = string.Concat(Enumerable.Repeat(fieldTile, fieldLength));</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-411639f elementor-widget elementor-widget-text-editor" data-id="411639f" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Then create the game loop and <b>print </b>the borders on the console. The first line starts from coordinates <b>0,0</b> and the second one &#8211; <b>0, fieldWidth</b>(15).</p>								</div>
				</div>
				<div class="elementor-element elementor-element-f4a4827 elementor-widget elementor-widget-code-highlight" data-id="f4a4827" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-csharp line-numbers">
				<code readonly="true" class="language-csharp">
					<xmp>while(true) 
{ 
    Console.SetCursorPosition(0,0);
    Console.WriteLine(line);

    Console.SetCursorPosition(0,fieldWidth);
    Console.WriteLine(line);
}
</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-b3697b2 elementor-widget elementor-widget-text-editor" data-id="b3697b2" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Next, make a variable for the rackets’ size &#8211; <b>racketLength, </b>for the character used to visualize them &#8211; <b>racketTile, </b>and for their positions &#8211; <b>leftRacketHeight </b>and <b>rightRacketHeight</b>.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-4b97940 elementor-widget elementor-widget-code-highlight" data-id="4b97940" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-csharp line-numbers">
				<code readonly="true" class="language-csharp">
					<xmp>const int racketLength = fieldWidth / 4;
const char racketTile = '|';
            
int leftRacketHeight = 0;
int rightRacketHeight = 0;</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-138d7ce elementor-widget elementor-widget-text-editor" data-id="138d7ce" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>To make the rackets appear on the field,add a <b>for loop </b>in the game loop.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-ecc7ef9 elementor-widget elementor-widget-code-highlight" data-id="ecc7ef9" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-csharp line-numbers">
				<code readonly="true" class="language-csharp">
					<xmp>for(int i = 0; i < racketLength; i++)
{
    Console.SetCursorPosition(0, i + 1 + leftRacketHeight);
    Console.WriteLine(racketTile);
    Console.SetCursorPosition(fieldLength - 1, i + 1 + rightRacketHeight);
    Console.WriteLine(racketTile);
}</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-0853386 elementor-widget elementor-widget-spacer" data-id="0853386" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-000838a elementor-widget elementor-widget-heading" data-id="000838a" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Player Movement</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-550d174 elementor-widget elementor-widget-text-editor" data-id="550d174" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Make a loop that will continue until a key is pressed. After the loop, check <b>which key has been pressed</b> using a switch and <b>update the rackets’ positions</b> based on that. C<b>lear the previous positions</b> with another for loop.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-7dbb766 elementor-widget elementor-widget-code-highlight" data-id="7dbb766" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-csharp line-numbers">
				<code readonly="true" class="language-csharp">
					<xmp>while(!Console.KeyAvailable)
{
    
}
           
//Check which key has been pressed
switch(Console.ReadKey().Key)
{
    case ConsoleKey.UpArrow:
    if(rightRacketHeight > 0)
    {
        rightRacketHeight--;
    }
    break;

    case ConsoleKey.DownArrow:
    if(rightRacketHeight < fieldWidth - racketLength - 1)
    {
        rightRacketHeight++;
    }
    break;

    case ConsoleKey.W:
    if(leftRacketHeight > 0)
    {
        leftRacketHeight--;
    }
    break;
    
    case ConsoleKey.S:
    if(leftRacketHeight < fieldWidth - racketLength - 1)
    {
        leftRacketHeight++;
    }
    break;
}

//Clear the rackets’ previous positions
for(int i = 1; i < fieldWidth; i++)             
{
Console.SetCursorPosition(0,i);
Console.WriteLine(" ");
Console.SetCursorPosition(fieldLength - 1,i);
Console.WriteLine(" ");
}</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-3e05056 elementor-widget elementor-widget-spacer" data-id="3e05056" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-91b4156 elementor-widget elementor-widget-heading" data-id="91b4156" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Adding a Ball</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-06be0a6 elementor-widget elementor-widget-text-editor" data-id="06be0a6" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>What you need to know about the ball is its <b>coordinates</b>, the <b>character representation </b>on the field, and its <b>direction</b>.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-ee2595f elementor-widget elementor-widget-code-highlight" data-id="ee2595f" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-csharp line-numbers">
				<code readonly="true" class="language-csharp">
					<xmp>int ballX = fieldLength / 2;
    int ballY = fieldWidth / 2;
    const char ballTile = 'O';

    bool isBallGoingDown = true;
    bool isBallGoingRight = true;</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-473d62c elementor-widget elementor-widget-text-editor" data-id="473d62c" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Let’s go back to the empty while loop that waits for a key to be pressed. It has to <strong>update the ball’s position.</strong></p>								</div>
				</div>
				<div class="elementor-element elementor-element-886c880 elementor-widget elementor-widget-code-highlight" data-id="886c880" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-csharp line-numbers">
				<code readonly="true" class="language-csharp">
					<xmp>while(!Console.KeyAvailable)
{
    Console.SetCursorPosition(ballX, ballY);
    Console.WriteLine(ballTile);
    Thread.Sleep(100); //Adds a timer so that the players have time to react
    
    Console.SetCursorPosition(ballX, ballY);
    Console.WriteLine(" "); //Clears the previous position of the ball
    
    //Update position of the ball
    if(isBallGoingDown)
    {
    ballY++;
    } else
    {
    ballY--;
    }
    if(isBallGoingRight)
    {
    ballX++;
    } else
    {
    ballX--;
    }
}</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-2a20d4a elementor-widget elementor-widget-text-editor" data-id="2a20d4a" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>However, this code does not limit the movement of the ball to the borders of the field. You need to add more conditions to the same while loop and declare variables to store the players’ points.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-be03d22 elementor-widget elementor-widget-code-highlight" data-id="be03d22" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>int leftPlayerPoints = 0;
int rightPlayerPoints = 0;
</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-798a6f4 elementor-widget elementor-widget-code-highlight" data-id="798a6f4" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>if(ballY == 1 || ballY == fieldWidth - 1)
{
isBallGoingDown = !isBallGoingDown; //Change direction
}

if(ballX == 1)
{
    //Left racket hits the ball and it bounces
   if(ballY >= leftRacketHeight + 1 && ballY <= leftRacketHeight + racketLength) 
   {
       isBallGoingRight = !isBallGoingRight;
   }
   else //Ball goes out of the field; Right player scores
   {
      rightPlayerPoints++;
      ballY = fieldWidth / 2;
      ballX = fieldLength / 2;
      Console.SetCursorPosition(scoreboardX, scoreboardY);
      Console.WriteLine($"{leftPlayerPoints} | {rightPlayerPoints}");
      if(rightPlayerPoints == 10)
      {
          goto outer;
      }
   }
}

if(ballX == fieldLength - 2)
{
    //Right racket hits the ball and it bounces
   if(ballY >= rightRacketHeight + 1 && ballY <= rightRacketHeight + racketLength) 
   {
       isBallGoingRight = !isBallGoingRight;
   }
   else //Ball goes out of the field; Left player scores
   {
      leftPlayerPoints++;
      ballY = fieldWidth / 2;
      ballX = fieldLength / 2;
      Console.SetCursorPosition(scoreboardX, scoreboardY);
      Console.WriteLine($"{leftPlayerPoints} | {rightPlayerPoints}");
      if(leftPlayerPoints == 10)
      {
          goto outer;
      }
       
   }
}</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-bcddbdc elementor-widget elementor-widget-spacer" data-id="bcddbdc" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-097e0c9 elementor-widget elementor-widget-heading" data-id="097e0c9" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Scoreboard Visualization</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-e6e05a0 elementor-widget elementor-widget-text-editor" data-id="e6e05a0" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>To add a scoreboard, you need variables that store its position.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-1265ac8 elementor-widget elementor-widget-code-highlight" data-id="1265ac8" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>int scoreboardX = fieldLength / 2 -2;
int scoreboardY = fieldWidth + 1;
</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-6ac099f elementor-widget elementor-widget-text-editor" data-id="6ac099f" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The scoreboard is printed on the console every time a player increases their score. Let’s say the game ends when one of the players reaches <strong>10 points</strong>. You need to break out of the game loop with the <b>goto</b> command.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-ce1e1d9 elementor-widget elementor-widget-code-highlight" data-id="ce1e1d9" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>//Left Player
leftPlayerPoints++;
ballY = fieldWidth / 2;
ballX = fieldLength / 2;
Console.SetCursorPosition(scoreboardX, scoreboardY);
Console.WriteLine("${leftPlayerPoints} | {rightPlayerPoints}")

if(leftPlayerPoints == 10)
{
      goto outer;
}

//Right Player
rightPlayerPoints++;
ballY = fieldWidth / 2;
ballX = fieldLength / 2;
Console.SetCursorPosition(scoreboardX, scoreboardY);
Console.WriteLine("${leftPlayerPoints} | {rightPlayerPoints}")
if(rightPlayerPoints == 10)
{
      goto outer;
}
</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-91f92b4 elementor-widget elementor-widget-text-editor" data-id="91f92b4" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Outside of the game loop put a <strong>marker</strong>, clear the console and reset the cursor. Check who the winner is and print the appropriate message.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-e3f817b elementor-widget elementor-widget-code-highlight" data-id="e3f817b" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>outer:;
        Console.Clear();
        Console.SetCursorPosition(0,0);
        
        if(rightPlayerPoints == 10)
        {
        Console.WriteLine("Right player won!");
        } 
        else 
        {
        Console.WriteLine("Left player won!");
        }</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-b36e965 elementor-widget elementor-widget-text-editor" data-id="b36e965" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>If you’ve followed all the steps your project should be finished and working now. You can always <strong>adjust the values</strong> of the variables. For example, you can make the field bigger or smaller or increase the speed of the ball to make the game more challenging.</p><p>To check out the final code and compare it to yours <strong>click the link below</strong>.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-0c72984 elementor-widget elementor-widget-spacer" data-id="0c72984" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-88292b4 elementor-widget elementor-widget-video" data-id="88292b4" data-element_type="widget" data-settings="{&quot;youtube_url&quot;:&quot;https:\/\/youtu.be\/K0hh_4Lp6_A&quot;,&quot;video_type&quot;:&quot;youtube&quot;,&quot;controls&quot;:&quot;yes&quot;}" data-widget_type="video.default">
				<div class="elementor-widget-container">
							<div class="elementor-wrapper elementor-open-inline">
			<div class="elementor-video"></div>		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-3738a62 elementor-widget elementor-widget-spacer" data-id="3738a62" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-edfdd22 elementor-widget elementor-widget-text-editor" data-id="edfdd22" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h2>Lesson Topics</h2><div><div><div>In this tutorial we cover the following steps:</div></div><ul><li><strong>Creating a Field</strong></li><li><strong>Implementing Player Movement</strong></li><li><strong>Adding a Ball</strong></li><li><strong>Scoreboard Visualization</strong></li></ul></div>								</div>
				</div>
				<div class="elementor-element elementor-element-93d53ef elementor-widget elementor-widget-spacer" data-id="93d53ef" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-dc263e9 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="dc263e9" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-2f88ff6" data-id="2f88ff6" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-96efd1f elementor-align-center elementor-widget elementor-widget-button" data-id="96efd1f" data-element_type="widget" data-widget_type="button.default">
				<div class="elementor-widget-container">
									<div class="elementor-button-wrapper">
					<a class="elementor-button elementor-button-link elementor-size-lg" href="https://github.com/SoftUni/SoftUni-Project-Tutorials---Pong-Game-C-Sharp/" target="_blank">
						<span class="elementor-button-content-wrapper">
						<span class="elementor-button-icon">
				<svg aria-hidden="true" class="e-font-icon-svg e-fas-laptop-code" viewBox="0 0 640 512" xmlns="http://www.w3.org/2000/svg"><path d="M255.03 261.65c6.25 6.25 16.38 6.25 22.63 0l11.31-11.31c6.25-6.25 6.25-16.38 0-22.63L253.25 192l35.71-35.72c6.25-6.25 6.25-16.38 0-22.63l-11.31-11.31c-6.25-6.25-16.38-6.25-22.63 0l-58.34 58.34c-6.25 6.25-6.25 16.38 0 22.63l58.35 58.34zm96.01-11.3l11.31 11.31c6.25 6.25 16.38 6.25 22.63 0l58.34-58.34c6.25-6.25 6.25-16.38 0-22.63l-58.34-58.34c-6.25-6.25-16.38-6.25-22.63 0l-11.31 11.31c-6.25 6.25-6.25 16.38 0 22.63L386.75 192l-35.71 35.72c-6.25 6.25-6.25 16.38 0 22.63zM624 416H381.54c-.74 19.81-14.71 32-32.74 32H288c-18.69 0-33.02-17.47-32.77-32H16c-8.8 0-16 7.2-16 16v16c0 35.2 28.8 64 64 64h512c35.2 0 64-28.8 64-64v-16c0-8.8-7.2-16-16-16zM576 48c0-26.4-21.6-48-48-48H112C85.6 0 64 21.6 64 48v336h512V48zm-64 272H128V64h384v256z"></path></svg>			</span>
									<span class="elementor-button-text">Download Project</span>
					</span>
					</a>
				</div>
								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-3cd15ec elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="3cd15ec" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-56bfdb0" data-id="56bfdb0" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
							</div>
		</div>
					</div>
		</section>
				</div>
		<p>The post <a href="https://softuni.org/project-tutorials/how-to-make-a-pong-game-in-csharp-guide/">How To Make A Pong Game in C#: Step-by-step Guide [Project Tutorials]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://softuni.org/project-tutorials/how-to-make-a-pong-game-in-csharp-guide/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>All The New JavaScript Features Coming Up with ECMAScript 2022</title>
		<link>https://softuni.org/dev-talks/all-the-new-javascript-features-coming-up-with-ecmascript-2022/</link>
					<comments>https://softuni.org/dev-talks/all-the-new-javascript-features-coming-up-with-ecmascript-2022/#respond</comments>
		
		<dc:creator><![CDATA[Nikol Ruseva]]></dc:creator>
		<pubDate>Thu, 25 Aug 2022 08:48:25 +0000</pubDate>
				<category><![CDATA[Dev Talks]]></category>
		<category><![CDATA[ecmascript]]></category>
		<category><![CDATA[ecmascript2022]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[js2022]]></category>
		<category><![CDATA[jsfeatures]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[software development]]></category>
		<category><![CDATA[software engineering]]></category>
		<guid isPermaLink="false">https://softuni.org/?p=22801</guid>

					<description><![CDATA[<p>In this article, you will learn about the new JavaScript features of 2022 and how to use them to ease your work as a software developer.</p>
<p>The post <a href="https://softuni.org/dev-talks/all-the-new-javascript-features-coming-up-with-ecmascript-2022/">All The New JavaScript Features Coming Up with ECMAScript 2022</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="22801" class="elementor elementor-22801" data-elementor-post-type="post">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-5d002d1 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5d002d1" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-8a58875" data-id="8a58875" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-ef0ae54 elementor-widget elementor-widget-text-editor" data-id="ef0ae54" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The thirteenth edition of ECMAScript Language specification was officially approved on June 22, 2022. With its release, new features were added to the JavaScript language:</p>								</div>
				</div>
				<div class="elementor-element elementor-element-33f28ac elementor-widget elementor-widget-text-editor" data-id="33f28ac" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<ul><li>Method .at();</li><li>Object.hasOwn();</li><li>RegExp: match indices(‘d’ flag);</li><li>Error: .cause;</li><li>New members of Classes;</li><li>Private Slot Checks;</li><li>Top-level Await.</li></ul><p>Now let’s find out more about each new feature.</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-6323310 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="6323310" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-f007326" data-id="f007326" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-ad329c3 elementor-widget elementor-widget-heading" data-id="ad329c3" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Method .at()</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-a1dc8e1 elementor-widget elementor-widget-text-editor" data-id="a1dc8e1" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The method .at() is supported by indexable values like <strong>Array</strong>, <strong>String</strong>, or <strong>TypedArray</strong>. It takes a <strong>positive or negative</strong> integer value and returns the element at the given index. </p><p>In this example, there is an array with three elements, which means that its length is 3. The first element is at index 0 and the last is at index array length -1 (in this example at index 2).</p><p>To check what the element at a certain index is, use the bracket operator (<strong>animals[0]</strong>). For indexes out of the range, the program returns <strong>“Undefined“</strong>.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-dd680b8 elementor-widget elementor-widget-code-highlight" data-id="dd680b8" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>let animals = ["Cat", "Dog", "Cow"];

console.log(animals[0]);
console.log(animals[animals.length - 1]) 
console.log(animals[animals.length])

//Cat
//Cow
//undefined
</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-08e0f24 elementor-widget elementor-widget-text-editor" data-id="08e0f24" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The new feature works exactly like the bracket operator but it allows <strong>negative</strong> <strong>indexing</strong> of elements. The last element is accessed easily by replacing <strong>animals[animals.length &#8211; 1]</strong> with <strong>animals.at(-1)</strong></p>								</div>
				</div>
				<div class="elementor-element elementor-element-7de01d9 elementor-widget elementor-widget-code-highlight" data-id="7de01d9" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>let animals = ["Cat", "Dog", "Cow"];

console.log(animals.at(0));
console.log(animals.at(-1));

//Cat
//Cow
</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-df93b30 elementor-widget elementor-widget-code-highlight" data-id="df93b30" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>//Example with a String
let string = "Hello, World!";

console.log(string.at(-1));

//!
</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-fc46f4b elementor-widget elementor-widget-spacer" data-id="fc46f4b" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-9ab65d9 elementor-widget elementor-widget-heading" data-id="9ab65d9" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Object: .hasOwn()</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-f4ef827 elementor-widget elementor-widget-text-editor" data-id="f4ef827" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Object.hasOwn() returns <strong>true</strong> if the specified object has the indicated property as its own property. If the property is inherited or does not exist, the method returns <strong>false</strong>.</p><p>Object.hasOwn() is intended as a <strong>replacement</strong> of Object.hasOwnProperty()</p>								</div>
				</div>
				<div class="elementor-element elementor-element-fce8012 elementor-widget elementor-widget-text-editor" data-id="fce8012" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong>Before:</strong></p>								</div>
				</div>
				<div class="elementor-element elementor-element-106ce0b elementor-widget elementor-widget-code-highlight" data-id="106ce0b" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>let user = {
name: 'John Doe',
role: 'Admin'
};

console.log(user.hasOwnProperty('role'));
console.log(user.hasOwnProperty('age'));

//true
//false

</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-1c4266a elementor-widget elementor-widget-text-editor" data-id="1c4266a" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong>After:</strong></p>								</div>
				</div>
				<div class="elementor-element elementor-element-176f2ab elementor-widget elementor-widget-code-highlight" data-id="176f2ab" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>let user = {
name: 'John Doe',
role: 'Admin'
};

console.log(Object.hasOwn(user, 'role'));
console.log(Object.hasOwn(user, 'age'));

//true
//false
</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-3af7b62 elementor-widget elementor-widget-spacer" data-id="3af7b62" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-d09faa1 elementor-widget elementor-widget-heading" data-id="d09faa1" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">RegExp: match indices(‘d’ flag)
</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-2c54e67 elementor-widget elementor-widget-text-editor" data-id="2c54e67" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>ECMA Script 2022 introduced a new <strong>/d flag</strong> for Regular Expressions. It provides some <strong>additional</strong> <strong>information</strong> about the start and indices position end of each match in the input string.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-281192f elementor-widget elementor-widget-text-editor" data-id="281192f" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Without the new feature the following information has been provided:</p>								</div>
				</div>
				<div class="elementor-element elementor-element-a4bc05d elementor-widget elementor-widget-code-highlight" data-id="a4bc05d" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>let string = 'hello1helloAll';
let regEx = /hello(\w)/g;
let result = [...string.matchAll(regEx)];
console.log(result[0]);
//[ 'hello1', '1', index: 0, input: 'hello1helloAll', groups: undefined ]

let string = 'hello1helloAll';
let regEx = /hello(\w)/g;
let result = [...string.matchAll(regEx)];
let regEx2 = /hello(\w)/dg;
let result2 = [...string.matchAll(regEx2)];
console.log(result2[0]);

</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-2182bd2 elementor-widget elementor-widget-text-editor" data-id="2182bd2" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>With the /d flag there is an array with the indices of the different elements that match the regex:</p>								</div>
				</div>
				<div class="elementor-element elementor-element-c698c39 elementor-widget elementor-widget-code-highlight" data-id="c698c39" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>[
  'hello1',
  '1',
  index: 0,
  input: 'hello1helloAll',
  groups: undefined,
  indices: [ [ 0, 6 ], [ 5, 6 ], groups: undefined ]
]

</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-8252814 elementor-widget elementor-widget-spacer" data-id="8252814" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-d07cf8b elementor-widget elementor-widget-heading" data-id="d07cf8b" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Error: .cause</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-68bcdf6 elementor-widget elementor-widget-text-editor" data-id="68bcdf6" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>With the Error .cause, you can add <strong>more</strong> <strong>essential</strong> <strong>information</strong> <strong>to the errors</strong> you receive. You should specify the error options as a second parameter, and with the “cause“ key you can pass the error that you want to chain.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-b2ba546 elementor-widget elementor-widget-text-editor" data-id="b2ba546" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong>Before:</strong></p>								</div>
				</div>
				<div class="elementor-element elementor-element-9e71db4 elementor-widget elementor-widget-code-highlight" data-id="9e71db4" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>const weatherNow = async (city) => {
    try {
      const response = await fetch(`https://api.openweathermap.org/data/2.5/weather?q=${city}&appid=67a20d293903cbcf9aab38633b30fbf9`);
      const info = await response.json();
      const description = info.weather[0].description;
      return description;
    } catch (error) {
throw new Error('Something went wrong')
    }
  }
 
try {
    await weatherNow('');           //Empty string
} catch(error) {
    console.log(error);
}

//Error: Something went wrong
    //at weatherNow (<anonymous>:8:7)
    //at async <anonymous>:13:5
</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-b3726fb elementor-widget elementor-widget-text-editor" data-id="b3726fb" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong>After:</strong></p>								</div>
				</div>
				<div class="elementor-element elementor-element-19a810c elementor-widget elementor-widget-code-highlight" data-id="19a810c" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>const weatherNow = async (city) => {
    try {
      const response = await fetch(`https://api.openweathermap.org/data/2.5/weather?q=${city}&appid=67a20d293903cbcf9aab38633b30fbf9`);
      const info = await response.json();
      const description = info.weather[0].description;
      return description;
    } catch (error) {
throw new Error('Something went wrong', { cause: error })
    }
  }
 
try {
    await weatherNow('');        //Empty String
} catch(error) {
    console.log(error.cause);
}

//TypeError: Cannot read properties of undefined (reading '0')
    //at weatherNow (<anonymous>:5:39)
    //at async <anonymous>:13:5

</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-4fef07b elementor-widget elementor-widget-spacer" data-id="4fef07b" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-e27eba3 elementor-widget elementor-widget-heading" data-id="e27eba3" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">New Members of Classes </h2>				</div>
				</div>
				<div class="elementor-element elementor-element-4fa378f elementor-widget elementor-widget-text-editor" data-id="4fa378f" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Static class fields and methods are not used on instances of a class. Instead, they can be called on the <strong>class</strong> <strong>itself</strong> and are declared using the <strong>static</strong> <strong>keyword</strong>. Static methods are often utility functions and helpers, whereas static properties are useful for <strong>caches</strong>, <strong>fixed-configuration</strong>, or any other data we do not need to be replicated across instances.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-60562d3 elementor-widget elementor-widget-text-editor" data-id="60562d3" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong>Before:</strong></p>								</div>
				</div>
				<div class="elementor-element elementor-element-e6cd331 elementor-widget elementor-widget-code-highlight" data-id="e6cd331" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>class User {
    firstName = 'Jon';
};
  
console.log(User.firstName); 
  
//undefined
</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-46722af elementor-widget elementor-widget-text-editor" data-id="46722af" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong>After:</strong></p>								</div>
				</div>
				<div class="elementor-element elementor-element-16da158 elementor-widget elementor-widget-code-highlight" data-id="16da158" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>class User {
    static firstName = 'Jon';
};

console.log(User.firstName); 
  
//Jon
</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-ce1c637 elementor-widget elementor-widget-spacer" data-id="ce1c637" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-c5073ab elementor-widget elementor-widget-heading" data-id="c5073ab" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Private Slot Checks</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-da6cbf6 elementor-widget elementor-widget-text-editor" data-id="da6cbf6" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>EcmaScript 2022 added new features such as <strong>private instance fields</strong>, <strong>methods</strong>, and <strong>accessors</strong>. To initialize a private method or a field before you had to add an underscore at the beginning of its name, but this did not guarantee that the method/field will be private. Now, you just need to add a <strong>#</strong> at the beginning of the method name to have it declared as <strong>private</strong>.</p><p>It looks like this:</p>								</div>
				</div>
				<div class="elementor-element elementor-element-baf627c elementor-widget elementor-widget-code-highlight" data-id="baf627c" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>class User {
    firstName = 'John';
    lastName = 'Doe';
    #role = 'Admin';
}
 
const adminUser = new User();
console.log(adminUser.role); 
  
//undefined</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-4ce8580 elementor-widget elementor-widget-code-highlight" data-id="4ce8580" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>class User {
    firstName = 'John';
    lastName = 'Doe';
    role = 'Admin';
    #sayHi() {
        return this.firstName + ' ' + this.lastName + ' with role ' + this.role + ' says Hi!';
    }
}
 
  const adminUser = new User();
  console.log(adminUser.sayHi());      
  
//TypeError: adminUser.sayHi is not a function
</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-16571d8 elementor-widget elementor-widget-spacer" data-id="16571d8" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-cc381cf elementor-widget elementor-widget-heading" data-id="cc381cf" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Top-level Await 
</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-4f978e3 elementor-widget elementor-widget-text-editor" data-id="4f978e3" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Before ECMAScript 2022 await could only be used in the scope of asynchronous functions. Now the await keyword can be used <strong>outside of an async function</strong> within a JavaScript module. This means that a module waits for its child modules that use await to execute before it runs itself.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-b6b7e1a elementor-widget elementor-widget-code-highlight" data-id="b6b7e1a" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>const response = await fetch(`https://api.openweathermap.org/data/2.5/weather?q=london&appid=67a20d293903cbcf9aab38633b30fbf9`);
const info = await response.json();
const description = info.weather[0].description;
console.log(description);</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-7550496 elementor-widget elementor-widget-text-editor" data-id="7550496" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>We will receive an error:</p>								</div>
				</div>
				<div class="elementor-element elementor-element-6fc07b7 elementor-widget elementor-widget-code-highlight" data-id="6fc07b7" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>SyntaxError: await is only validin async functions and the top-level bodies of modules</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-4259b60 elementor-widget elementor-widget-text-editor" data-id="4259b60" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>With ECMAScript 2022  it works fine and you will see the following:</p>								</div>
				</div>
				<div class="elementor-element elementor-element-fe5b0da elementor-widget elementor-widget-code-highlight" data-id="fe5b0da" data-element_type="widget" data-widget_type="code-highlight.default">
				<div class="elementor-widget-container">
							<div class="prismjs-default copy-to-clipboard ">
			<pre data-line="" class="highlight-height language-javascript line-numbers">
				<code readonly="true" class="language-javascript">
					<xmp>//clear sky</xmp>
				</code>
			</pre>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-4c289cd elementor-widget elementor-widget-spacer" data-id="4c289cd" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-ebe98e9 elementor-widget elementor-widget-heading" data-id="ebe98e9" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Conclusion</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-8d43d09 elementor-widget elementor-widget-text-editor" data-id="8d43d09" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Nowadays when technology is rapidly evolving being <strong>up to date</strong> is an important part of working as a software developer.</p><p>The EcmaScript specification for 2022 contains some <strong>significant</strong> <strong>changes</strong> that aim to provide convenience and efficiency in programming by allowing you to write more <strong>expressive</strong> and <strong>concise</strong> <strong>code</strong>. After reading this post, you are now familiar with all of the new features and it is up to you to choose which of them to use into your JavaScript programming.</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-5ef077c elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5ef077c" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-c75d272" data-id="c75d272" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
							</div>
		</div>
					</div>
		</section>
				</div>
		<p>The post <a href="https://softuni.org/dev-talks/all-the-new-javascript-features-coming-up-with-ecmascript-2022/">All The New JavaScript Features Coming Up with ECMAScript 2022</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://softuni.org/dev-talks/all-the-new-javascript-features-coming-up-with-ecmascript-2022/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Cybersecurity Expert On Phishing, Cyber Hygiene, And Device Safety [Dev Talks #4]</title>
		<link>https://softuni.org/dev-talks/cybersecurity-expert-on-phishing-cyber-hygiene-and-device-safety/</link>
					<comments>https://softuni.org/dev-talks/cybersecurity-expert-on-phishing-cyber-hygiene-and-device-safety/#respond</comments>
		
		<dc:creator><![CDATA[Nikol Ruseva]]></dc:creator>
		<pubDate>Fri, 19 Aug 2022 13:05:33 +0000</pubDate>
				<category><![CDATA[Dev Talks]]></category>
		<category><![CDATA[cloud storage]]></category>
		<category><![CDATA[cyber protection]]></category>
		<category><![CDATA[data storage]]></category>
		<category><![CDATA[malicious malware]]></category>
		<category><![CDATA[phishing]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[smishing]]></category>
		<category><![CDATA[software engineering]]></category>
		<category><![CDATA[vishing]]></category>
		<guid isPermaLink="false">https://softuni.org/?p=22868</guid>

					<description><![CDATA[<p>Lyubomir Tulev, a cybercrime expert, shares valuable information about the types of malware and ways of dealing with them.</p>
<p>The post <a href="https://softuni.org/dev-talks/cybersecurity-expert-on-phishing-cyber-hygiene-and-device-safety/">Cybersecurity Expert On Phishing, Cyber Hygiene, And Device Safety [Dev Talks #4]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="22868" class="elementor elementor-22868" data-elementor-post-type="post">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-5d5405e elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5d5405e" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0d32134" data-id="0d32134" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-9216798 elementor-widget elementor-widget-text-editor" data-id="9216798" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Let us introduce you to <strong>Lyubomir</strong> <strong>Tulev</strong>. He is a <strong>cybercrime</strong> <strong>expert</strong> who has been working internationally for more than 10 years on <strong>cybercrime</strong> <strong>investigations</strong> in countries like New Zealand, Russia and many others across Europe. In 2015 he was recognized by the <strong>Federal Bureau of Investigation</strong> (FBI) as one of the<strong> top 10 international cybercrime experts</strong>. He is in the private sector now and his work involves <strong>penetration</strong> <strong>testing</strong>, <strong>social engineering, consultancy and cyber forensics</strong>. He is also a <strong>trainer</strong> for Information Security Management course <strong>at SoftUni</strong>. Lyubomir shared more about his professional motivation as well as practical tips that will help you protect yourself and your devices from cyber attacks.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-88292b4 elementor-widget elementor-widget-video" data-id="88292b4" data-element_type="widget" data-settings="{&quot;youtube_url&quot;:&quot;https:\/\/youtu.be\/p8nTezBboRw&quot;,&quot;video_type&quot;:&quot;youtube&quot;,&quot;controls&quot;:&quot;yes&quot;}" data-widget_type="video.default">
				<div class="elementor-widget-container">
							<div class="elementor-wrapper elementor-open-inline">
			<div class="elementor-video"></div>		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-51a0f67 elementor-widget elementor-widget-heading" data-id="51a0f67" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">Helping And Protecting People Has Always Been His Driving Force</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-c3c81fe elementor-widget elementor-widget-text-editor" data-id="c3c81fe" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>&#8220;The fact that I have been involved in the police structure for seven years means that I have been first inspired to <strong>help and protect people</strong>.&#8221;</p><p>After 7 years on the force, he decided move to the private sector in search of career growth. The inspiration behind this move was a friend. Lyubomir still helps people but his main focus is on <strong>companies</strong> in need of <strong>strengthening</strong> their <strong>cyber</strong> <strong>security</strong>.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-0664c79 elementor-widget elementor-widget-spacer" data-id="0664c79" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-f908f5c elementor-widget elementor-widget-heading" data-id="f908f5c" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">Basic Measures Against Cyber Attacks</h2>				</div>
				</div>
				<section class="elementor-section elementor-inner-section elementor-element elementor-element-bffd74b elementor-section-content-middle elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="bffd74b" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-27b56d0" data-id="27b56d0" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-0614167 elementor-widget elementor-widget-image" data-id="0614167" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="576" src="https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-1024x576.png" class="attachment-large size-large wp-image-23046" alt="Cyber-Security-Hacker" srcset="https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-1024x576.png 1024w, https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-300x169.png 300w, https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-768x432.png 768w, https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-1536x864.png 1536w, https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-600x338.png 600w, https://softuni.org/wp-content/uploads/2022/08/Cyber-Security.png 1920w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-11b18d2" data-id="11b18d2" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-fcfdc07 elementor-widget elementor-widget-text-editor" data-id="fcfdc07" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>&#8220;The Coronavirus pandemic has spread across the globe and the one positive thing about this is the opportunity to rediscover the methods of <strong>transformation</strong> <strong>of our digital lives</strong>. On the other side, it possesses many <strong>obstacles</strong> coming from the <strong>hackers</strong>.&#8221;, says Lyubomir.</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<div class="elementor-element elementor-element-62dcdc3 elementor-widget elementor-widget-text-editor" data-id="62dcdc3" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>He explains that now, when people are spending more time at their homes working remotely,<strong> hackers are more likely to attack</strong> their devices and business. In order to protect from potential cyber attacks, people have to take basic measures like:</p><ul><li>Securing the Wi-Fi connection and monitoring the connected devices;</li><li>Using VPN to access business infrastructure;</li><li>Securing the endpoint device &#8211; laptops, tablets, mobile phones;</li><li>Being aware of phishing emails and other possible cyber attacks.</li></ul><p>&#8220;In cyber security, there is a saying that the <strong>employees</strong> are actually <strong>the weakest possible link</strong> in the security chain within an organization. I don&#8217;t really think so. My idea is that we have to look at the emloyees as a <strong>firewall</strong>.&#8221;, says Lyubomir</p><p>According to him, <strong>raising</strong> <strong>awareness</strong> among employees about cyber security is important for business because if they are well educated on the topic, they can become a &#8216;<strong>human</strong> <strong>firewall</strong>&#8216; that protects the company from within.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-6bcdaf8 elementor-widget elementor-widget-spacer" data-id="6bcdaf8" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-44d02cd elementor-widget elementor-widget-heading" data-id="44d02cd" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">How To Recognize A Phishing Email</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-5483dc5 elementor-widget elementor-widget-text-editor" data-id="5483dc5" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>&#8220;Usually, the phishing emails are giving a <strong>sense</strong> <strong>of urgency</strong>. This is because hackers do not want you to have enough time to think about it carefully.&#8221;</p>								</div>
				</div>
				<section class="elementor-section elementor-inner-section elementor-element elementor-element-5d71f00 elementor-section-content-middle elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5d71f00" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-7dd6bfc" data-id="7dd6bfc" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-0b1fbfb elementor-widget elementor-widget-text-editor" data-id="0b1fbfb" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>He explains that there are <strong>three</strong> <strong>types</strong> of phishing emails depending on their content:</p><ul><li>With attachments;</li><li>With a phish link;</li><li>With a text that requires you to send valuable information.</li></ul>								</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-da8d605" data-id="da8d605" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-8f8c9d0 elementor-widget elementor-widget-image" data-id="8f8c9d0" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="576" src="https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-Email-1024x576.png" class="attachment-large size-large wp-image-23047" alt="Cyber-Security-Email" srcset="https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-Email-1024x576.png 1024w, https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-Email-300x169.png 300w, https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-Email-768x432.png 768w, https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-Email-1536x864.png 1536w, https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-Email-600x338.png 600w, https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-Email.png 1920w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<div class="elementor-element elementor-element-4a0f072 elementor-widget elementor-widget-text-editor" data-id="4a0f072" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>&#8220;Usually, the phishing emails are giving a <strong>sense</strong> <strong>of urgency</strong>. This is because hackers do not want you to have enough time to think about it carefully.&#8221;</p><p>He explains that there are <strong>three</strong> <strong>types</strong> of phishing emails depending on their content:</p><ul><li>With attachments;</li><li>With a phish link;</li><li>With a text that requires you to send valuable information.</li></ul><p>If you receive an email with an attachment, Tulev advises to <strong>download</strong> it, <strong>check</strong> it with some publicly available software for virus scanning, and then finally <strong>open</strong> it.</p><p>If there is a link that you are instructed to follow, <strong>do not</strong> click on it, instead <strong>hover the mouse over it.</strong> In the bottom left corner of the browser you will see the address this link will take you, and compare if the destination matches the one stated in the email.</p><p>The last possible scenario is receiving a malicious email with just <strong>text</strong>. In this case, open the <strong>email header</strong> and check &#8211; if you reply, does it go back to the same address it says it came from? If there is a third party listed there, this email is probably phishing.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-7b79eea elementor-widget elementor-widget-spacer" data-id="7b79eea" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-a506182 elementor-widget elementor-widget-heading" data-id="a506182" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">Common Types Of Cyber Attacks</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-e9b94d0 elementor-widget elementor-widget-text-editor" data-id="e9b94d0" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>&#8220;If we are talking about businesses, the most common cyber attack is the <strong>ransomware</strong>. It is vast majority of cases that we are dealing with.&#8221;, shares Lyubomir.</p><p>The ransomware <strong>encrypts</strong> all available <strong>files</strong> on the attacked device. The hacker then wants a certain amount of money to decrypt the files. However, there is no guarantee that they will do it after you pay the ransom. This is why having a <strong>backup</strong> <strong>stored</strong> <strong>remotely</strong> is so important.</p>								</div>
				</div>
				<section class="elementor-section elementor-inner-section elementor-element elementor-element-8ee4561 elementor-section-content-middle elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="8ee4561" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-8332563" data-id="8332563" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-1206fbc elementor-widget elementor-widget-image" data-id="1206fbc" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="576" src="https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-Password-1024x576.png" class="attachment-large size-large wp-image-23048" alt="Cyber-Security-Password" srcset="https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-Password-1024x576.png 1024w, https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-Password-300x169.png 300w, https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-Password-768x432.png 768w, https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-Password-1536x864.png 1536w, https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-Password-600x338.png 600w, https://softuni.org/wp-content/uploads/2022/08/Cyber-Security-Password.png 1920w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-e7bc009" data-id="e7bc009" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-225ae80 elementor-widget elementor-widget-text-editor" data-id="225ae80" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>He adds that, &#8220;Other cyber attacks that happen to businesses and people are usually related to their <strong>credentials</strong>. Be very careful with your <strong>passwords</strong>. They are an object of many types of attacks like credential harvesting, password spraying, and brute forcing.</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<div class="elementor-element elementor-element-309ffa6 elementor-widget elementor-widget-text-editor" data-id="309ffa6" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>We, as cyber security professionals, always have to think about three elements of the information: <strong>confidentiality, integrity, availability</strong>.&#8221;</p><p>Lyubomir further explains what this means:</p><ul><li>Confidentiality – to protect the data at any stage, make a remote backup, and set up access control;</li><li>Integrity – to not let a hacker modify the information and to protect the backend to avoid SQL injections;</li><li>Availability – to make sure the data is available when needed and use cloud storage.</li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-f8d2df5 elementor-widget elementor-widget-spacer" data-id="f8d2df5" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-2dff924 elementor-widget elementor-widget-heading" data-id="2dff924" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">To Be Aware Is To Be Protected</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-f47c783 elementor-widget elementor-widget-text-editor" data-id="f47c783" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Lyubomir stresses: &#8220;Be aware what the attackers may use in order to take advantage of you. <strong>Train</strong> your people and yourself on <strong>what attack vectors are</strong> and <strong>how to recognize them</strong> in order to protect yourselves better.&#8221;</p><p>He adds that there are more examples of social engineering attack vectors like USB flash drives, smishing (SMS), and vishing (voice-using frauds).</p>								</div>
				</div>
				<div class="elementor-element elementor-element-989cd18 elementor-widget elementor-widget-spacer" data-id="989cd18" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-129d9c5 elementor-widget elementor-widget-heading" data-id="129d9c5" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">How To Become A Cybersecurity Expert </h2>				</div>
				</div>
				<div class="elementor-element elementor-element-b318581 elementor-widget elementor-widget-text-editor" data-id="b318581" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Lyubomir has some advice for everyone interested in becoming a cybersecurity specialist: &#8220;When you put a lot of effort to improve yourself in one specific field of cyber security, you will become an expert <strong>only in this field</strong>, not in the cyber security generally. If you want to become an expert on cyber security you have to put a lot of effort in <strong>different fields</strong> like cyber forensics, penetration testing and consultancy.&#8221;.</p><p>&#8220;Businesses are now thinking more and more about digitalizing. This means that they will <strong>need</strong> the <strong>consultancy</strong> <strong>of cyber</strong> <strong>security</strong> <strong>experts</strong>. So, yes, I definitely foresee that the <strong>demand</strong> of cyber securty professionals <strong>will grow</strong> in the next couple of years.&#8221;, says Lyubomir.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-36a9325 elementor-widget elementor-widget-spacer" data-id="36a9325" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-3381a86 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="3381a86" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0cf09e3" data-id="0cf09e3" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
							</div>
		</div>
					</div>
		</section>
				</div>
		<p>The post <a href="https://softuni.org/dev-talks/cybersecurity-expert-on-phishing-cyber-hygiene-and-device-safety/">Cybersecurity Expert On Phishing, Cyber Hygiene, And Device Safety [Dev Talks #4]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://softuni.org/dev-talks/cybersecurity-expert-on-phishing-cyber-hygiene-and-device-safety/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>How to Build and Use Problem-solving Skills [Dev Concepts #41]</title>
		<link>https://softuni.org/dev-concepts/how-to-build-and-use-problem-solving-skills/</link>
					<comments>https://softuni.org/dev-concepts/how-to-build-and-use-problem-solving-skills/#respond</comments>
		
		<dc:creator><![CDATA[Nikol Ruseva]]></dc:creator>
		<pubDate>Fri, 22 Jul 2022 13:32:30 +0000</pubDate>
				<category><![CDATA[Dev Concepts]]></category>
		<category><![CDATA[algorithmicthinking]]></category>
		<category><![CDATA[devconcept]]></category>
		<category><![CDATA[developerskills]]></category>
		<category><![CDATA[logicalthinking]]></category>
		<category><![CDATA[problemsolving]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[software engineering]]></category>
		<guid isPermaLink="false">https://softuni.org/?p=22676</guid>

					<description><![CDATA[<p>In this lesson, you will learn about problem solving and algorithmic thinking and other fundamental skills of software developers, as well as some approaches to solving tech problems.</p>
<p>The post <a href="https://softuni.org/dev-concepts/how-to-build-and-use-problem-solving-skills/">How to Build and Use Problem-solving Skills [Dev Concepts #41]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="22676" class="elementor elementor-22676" data-elementor-post-type="post">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-5d002d1 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5d002d1" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-8a58875" data-id="8a58875" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-ef0ae54 elementor-widget elementor-widget-text-editor" data-id="ef0ae54" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>To become a <strong>skilful</strong> <strong>developer</strong> means not only being familiar with a programming language or software but also having a <strong>set of skills</strong> that are fundamental to the software development process. These skills can be classified into <strong>four groups</strong> :</p><ul><li aria-level="1">Coding skills;</li><li aria-level="1">Algorithmic thinking and problem solving skills;</li><li aria-level="1">Fundamental software development concepts;</li><li aria-level="1">Programming languages and software technologies.</li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-827ebe7 elementor-widget elementor-widget-spacer" data-id="827ebe7" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-190ae33 elementor-widget elementor-widget-video" data-id="190ae33" data-element_type="widget" data-settings="{&quot;youtube_url&quot;:&quot;https:\/\/youtu.be\/1eZ650SahXA&quot;,&quot;video_type&quot;:&quot;youtube&quot;,&quot;controls&quot;:&quot;yes&quot;}" data-widget_type="video.default">
				<div class="elementor-widget-container">
							<div class="elementor-wrapper elementor-open-inline">
			<div class="elementor-video"></div>		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-6323310 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="6323310" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-f007326" data-id="f007326" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-fc17054 elementor-widget elementor-widget-spacer" data-id="fc17054" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-ad329c3 elementor-widget elementor-widget-heading" data-id="ad329c3" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Technical Skills</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-40b4d68 elementor-widget elementor-widget-text-editor" data-id="40b4d68" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The skill of coding is knowledge of the<strong> basic concepts </strong>of programming. They are <strong>universal</strong> and once learned, can be applied in many programming languages. The programming language does <strong>not matter</strong> to the ability to code.</p><p>You need to know how to:</p><ul><li aria-level="1">Use development environments (the so-called IDEs) and developer tools;</li><li aria-level="1">Work with variables and data, calculations, conditional statements, loops and data structures;</li><li aria-level="1">Use functions, methods, classes and objects, programming APIs and libraries;</li><li aria-level="1">Troubleshoot and debug code.</li></ul><p> </p><p>Now that you are familiar with the foundations of programming, you need to put that knowledge together and plan every step of finding a solution to a problem. This will require your <strong>algorithmic thinking</strong> and <strong>problem-solving skills</strong>. </p>								</div>
				</div>
				<section class="elementor-section elementor-inner-section elementor-element elementor-element-5d655c6 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5d655c6" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-e1159e5" data-id="e1159e5" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-8e8324d elementor-widget elementor-widget-image" data-id="8e8324d" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="529" height="509" src="https://softuni.org/wp-content/uploads/2022/07/Problem-Solving-Lamp-e1658492884655.png" class="attachment-1536x1536 size-1536x1536 wp-image-22707" alt="Problem-Solving-Lamp" srcset="https://softuni.org/wp-content/uploads/2022/07/Problem-Solving-Lamp-e1658492884655.png 529w, https://softuni.org/wp-content/uploads/2022/07/Problem-Solving-Lamp-e1658492884655-300x289.png 300w" sizes="(max-width: 529px) 100vw, 529px" />															</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-79864b8" data-id="79864b8" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-926eee5 elementor-widget elementor-widget-text-editor" data-id="926eee5" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p> </p><p><strong>Algorithmic thinking</strong> is the ability to<strong> break a problem</strong> into a logical sequence of steps (called &#8220;algorithm&#8221;), to <strong>find a solution</strong> for every step (or break it further into sub-steps) and then <strong>assemble these steps</strong> into a working solution. </p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<div class="elementor-element elementor-element-2092623 elementor-widget elementor-widget-text-editor" data-id="2092623" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Algorithmic thinking is similar to logical, engineering, mathematical, abstract, and problem solving. All these concepts are related to the ability to <strong>solve problems</strong>: to think logically, analyse the problems, and find and implement solutions. Problem solving is a more <strong>general skill</strong>, while algorithmic thinking is a more <strong>technical</strong>.</p><p><strong>The fundamental computer science</strong> and <strong>software development concepts</strong> include many programming paradigms, essential software development knowledge and skills, and software engineering principles and concepts that developers typically acquire as they gain experience over time.</p><p>Some of these knowledge areas and concepts are:</p><ul><li aria-level="1">Object-oriented programming (OOP);</li><li aria-level="1">Functional programming (FP);</li><li aria-level="1">Asynchronous programming ;</li><li aria-level="1">Relational and non-relational databases;</li><li aria-level="1">The concepts behind the Web technologies.</li></ul><p>To implement your knowledge you need to be familiar with programming languages, software development technologies, software platforms, software libraries, development frameworks and developer tools.</p><p>On the graphic below you can see an example <strong>technology stack</strong> for a <strong>Java</strong> developer.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-6a03c48 elementor-widget elementor-widget-image" data-id="6a03c48" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="576" src="https://softuni.org/wp-content/uploads/2022/07/Example-Of-A-Java-Tech-Stack.png" class="attachment-large size-large wp-image-22688" alt="Example-Of-A-Java-Tech-Stack" srcset="https://softuni.org/wp-content/uploads/2022/07/Example-Of-A-Java-Tech-Stack.png 1024w, https://softuni.org/wp-content/uploads/2022/07/Example-Of-A-Java-Tech-Stack-300x169.png 300w, https://softuni.org/wp-content/uploads/2022/07/Example-Of-A-Java-Tech-Stack-768x432.png 768w, https://softuni.org/wp-content/uploads/2022/07/Example-Of-A-Java-Tech-Stack-600x338.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
				<div class="elementor-element elementor-element-dd1de41 elementor-widget elementor-widget-text-editor" data-id="dd1de41" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Technologies are <strong>ever-changing and evolving</strong>, but these four groups of skills described above represent essential and <strong>stable knowledge</strong> since they will not change significantly over time. In fact, technologies are highly dependent on these skills.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-fc46f4b elementor-widget elementor-widget-spacer" data-id="fc46f4b" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-9ab65d9 elementor-widget elementor-widget-heading" data-id="9ab65d9" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Soft Skills </h2>				</div>
				</div>
				<div class="elementor-element elementor-element-f4ef827 elementor-widget elementor-widget-text-editor" data-id="f4ef827" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Soft skills are as important as the ones described above. They include the ability to <strong>communicate</strong> with people and <strong>work in a team</strong> which is essential since you as a developer will work on projects with your colleagues. You need to <strong>manage your time</strong> effectively, to be <strong>empathetic</strong>, <strong>adaptable</strong> and <strong>creative</strong>. Having<strong> attention to detail</strong> will increase your productivity at work and reduce the chances of error.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-3af7b62 elementor-widget elementor-widget-spacer" data-id="3af7b62" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-d09faa1 elementor-widget elementor-widget-heading" data-id="d09faa1" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Tech Problem Solving</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-2c54e67 elementor-widget elementor-widget-text-editor" data-id="2c54e67" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>In the IT industry, a tech problem is often an assignment to <strong>design</strong> and <strong>implement</strong> a set of functionality which has certain input data and program state and produces output data and program state. </p><p>Every tech problem has a <strong>goal</strong>. In programming, the goals are to design and <strong>write a working code</strong>, build an app or software system, which <strong>corresponds </strong>to the assignment and<strong> implement</strong> its requirements and functionality. Developers may encounter certain <strong>technical difficulties</strong> or <strong>limitations</strong> in designing and implementing the required functionality, like lack of resources, experience or knowledge. The process of problem solving includes finding a way to <strong>overcome</strong> these difficulties. This can be, for example, learning a new programming language, software library or framework.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-adfd773 elementor-widget elementor-widget-spacer" data-id="adfd773" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-d07cf8b elementor-widget elementor-widget-heading" data-id="d07cf8b" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h3 class="elementor-heading-title elementor-size-xl">Stages of Problem Solving</h3>				</div>
				</div>
				<div class="elementor-element elementor-element-68bcdf6 elementor-widget elementor-widget-text-editor" data-id="68bcdf6" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>How to approach a tech problem?<br />You can see in the graphic below seven stages of resolving a problem.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-27ac812 elementor-widget elementor-widget-image" data-id="27ac812" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="576" src="https://softuni.org/wp-content/uploads/2022/07/Stages-Of-Problem-Solving.png" class="attachment-large size-large wp-image-22689" alt="Stages-Of-Problem-Solving" srcset="https://softuni.org/wp-content/uploads/2022/07/Stages-Of-Problem-Solving.png 1024w, https://softuni.org/wp-content/uploads/2022/07/Stages-Of-Problem-Solving-300x169.png 300w, https://softuni.org/wp-content/uploads/2022/07/Stages-Of-Problem-Solving-768x432.png 768w, https://softuni.org/wp-content/uploads/2022/07/Stages-Of-Problem-Solving-600x338.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
				<div class="elementor-element elementor-element-81a1dff elementor-widget elementor-widget-text-editor" data-id="81a1dff" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>First of all, you need to <b>define </b>the problem. This involves gathering the requirements of the assignment.</p><p>After that, you <b>analyse </b>them. Here you should think about constraints, objects, processes and potential obstacles related to the problem. Based on a deeper understanding of the problem, you can extract the important information from the requirements and discard the non-important information, and explore its properties, which will be useful for building a solution.</p><p>The next step is to <b>identify </b>several solutions. You try to generate and explore different ideas and technical approaches on how to build a well-working solution. Then you analyse these ideas, their correctness, their strengths and weaknesses, their practical applicability and the costs of their implementation.   </p><p>After you have gathered some ideas you need to <b>choose </b>one of them. This is a decision-making process and depends mainly on the requirements, your capabilities and available resources.</p><p>After that, you need to <b>plan </b>and describe your actions for executing the chosen solution. You plan your algorithm. Technically, this means to write the definition of several functions, methods or classes, which will implement the chosen idea.</p><p>Sometimes planning of the algorithm is done together with its implementation, and there is no clear separation between the stages of algorithm design and algorithm implementation.</p><p>Once you have a clearly defined algorithm, you <b>implement it</b>. This means writing code to execute the planned steps. In software development, the implementation process includes also testing and debugging.</p><p>The last stage of problem solving is to <b>review the results</b> or test the solution with different input data and conditions. For software problems and apps, you need to perform testing of the code, feature by feature: to check for usual and unusual input data and conditions, check for edge cases and special cases.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-4fef07b elementor-widget elementor-widget-spacer" data-id="4fef07b" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-e27eba3 elementor-widget elementor-widget-heading" data-id="e27eba3" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h3 class="elementor-heading-title elementor-size-xl">Tips for Solving Problems
</h3>				</div>
				</div>
				<div class="elementor-element elementor-element-4fa378f elementor-widget elementor-widget-text-editor" data-id="4fa378f" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>When it comes to solving a tech problem, the first and foremost important thing is <strong>understanding</strong> it. Take your time to <strong>read</strong> and <strong>analyse</strong> it thoroughly. Do <strong>not start</strong> to code immediately, because if you have not read the problem carefully, there is a chance of making hasty assumptions about the requirements.</p>								</div>
				</div>
				<section class="elementor-section elementor-inner-section elementor-element elementor-element-f0d2d23 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="f0d2d23" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-db93f6c" data-id="db93f6c" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-bbd4bd8 elementor-widget elementor-widget-text-editor" data-id="bbd4bd8" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Use a <strong>sheet of paper</strong> or other <strong>visualization</strong> <strong>tools</strong>. This will help you sketch your ideas fast and will improve your logical thinking. <strong>Squared</strong> <strong>paper</strong> is preferable. It works best for algorithmic problems. It helps build drawings, diagrams, tables and coordinate systems.</p>								</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-2a23215" data-id="2a23215" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-ab9cf28 elementor-widget elementor-widget-image" data-id="ab9cf28" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="460" height="409" src="https://softuni.org/wp-content/uploads/2022/07/Problem-Solving-Paper-Pen-e1658493510419.png" class="attachment-large size-large wp-image-22708" alt="Problem-Solving-Paper-Pen" srcset="https://softuni.org/wp-content/uploads/2022/07/Problem-Solving-Paper-Pen-e1658493510419.png 460w, https://softuni.org/wp-content/uploads/2022/07/Problem-Solving-Paper-Pen-e1658493510419-300x267.png 300w" sizes="(max-width: 460px) 100vw, 460px" />															</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<div class="elementor-element elementor-element-826c56b elementor-widget elementor-widget-text-editor" data-id="826c56b" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Write down the given input and the required output. <br />For example, if your task is to find all <strong>odd numbers</strong> of a given <strong>array</strong> ask yourself some questions:</p><ul><li>What do I have?  →  An array and odd numbers.</li><li>What is an array and how does it work? What is an odd number? What data type should I use to store it?  →  These questions will help you <strong>understand the problem</strong>.</li><li>What is the end goal? → To filter odd numbers in the array and return it.</li><li>How can I do it?  →  You may have multiple answers to this question and they are your <strong>potential solutions</strong>. Write them down, compare their advantages and disadvantages and then <strong>choose one </strong>of them.</li></ul><p>After you implement the code<strong> test and debug</strong> it if needed. Make sure that you have covered <strong>all cases</strong>. Then look back and try to <strong>optimize and simplify</strong> your code making it easier to understand.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-ce1c637 elementor-widget elementor-widget-spacer" data-id="ce1c637" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-e1a3dc3 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="e1a3dc3" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-b35bc44" data-id="b35bc44" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-85fd3f4 elementor-widget elementor-widget-heading" data-id="85fd3f4" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Lesson Topics</h2>				</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-07a5b2f elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="07a5b2f" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-650abcb" data-id="650abcb" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-1da5089 elementor-widget elementor-widget-text-editor" data-id="1da5089" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<div><div>In this tutorial, we cover the following topics:</div></div><ul><li><strong>Technical Skills;<br /></strong></li><li><strong>Soft Skills;<br /></strong></li><li><strong>Definition of a Tech Problem;<br /></strong></li><li><strong>Stages of Problem Solving;</strong></li><li><strong>Tips for Solving Problems.</strong></li></ul>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-5ef077c elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5ef077c" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-c75d272" data-id="c75d272" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
							</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-a010926 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="a010926" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-98764dc" data-id="98764dc" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-b1f98e2 elementor-widget elementor-widget-heading" data-id="b1f98e2" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Lesson Slides</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-fb03df8 elementor-widget elementor-widget-pdfjs_viewer" data-id="fb03df8" data-element_type="widget" data-widget_type="pdfjs_viewer.default">
				<div class="elementor-widget-container">
					<iframe src="https://softuni.org/wp-content/plugins/pdf-viewer-for-elementor/assets/pdfjs/web/viewer.html?file=https://softuni.org/wp-content/uploads/2022/07/Dev-Concepts-Episode-41-Problem-Solving.pdf&amp;embedded=true" style="display: block; margin-left: auto; margin-right: auto; width: 100%; height: 800px;" frameborder="1" marginheight="0px" marginwidth="0px" allowfullscreen></iframe>				</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				</div>
		<p>The post <a href="https://softuni.org/dev-concepts/how-to-build-and-use-problem-solving-skills/">How to Build and Use Problem-solving Skills [Dev Concepts #41]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://softuni.org/dev-concepts/how-to-build-and-use-problem-solving-skills/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>What is a Uniform Resource Locator (URL)? [Dev Concepts #40]</title>
		<link>https://softuni.org/dev-concepts/what-is-a-uniform-resource-locator-url/</link>
					<comments>https://softuni.org/dev-concepts/what-is-a-uniform-resource-locator-url/#respond</comments>
		
		<dc:creator><![CDATA[Nikol Ruseva]]></dc:creator>
		<pubDate>Wed, 13 Jul 2022 14:03:00 +0000</pubDate>
				<category><![CDATA[Dev Concepts]]></category>
		<category><![CDATA[devconcept]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[querystring]]></category>
		<category><![CDATA[software engineering]]></category>
		<category><![CDATA[uniformresourcelocator]]></category>
		<category><![CDATA[url]]></category>
		<category><![CDATA[urlencoding]]></category>
		<category><![CDATA[urlstructure]]></category>
		<guid isPermaLink="false">https://softuni.org/?p=22193</guid>

					<description><![CDATA[<p>After this lesson, you will understand what a Uniform Resource Locator (URL) is, how it is used, what the URL encoding rules are, and more.</p>
<p>The post <a href="https://softuni.org/dev-concepts/what-is-a-uniform-resource-locator-url/">What is a Uniform Resource Locator (URL)? [Dev Concepts #40]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="22193" class="elementor elementor-22193" data-elementor-post-type="post">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-5d002d1 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5d002d1" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-8a58875" data-id="8a58875" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-ef0ae54 elementor-widget elementor-widget-text-editor" data-id="ef0ae54" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><b>Uniform Resource Locator (URL)</b> identifiers are unique addresses on the Internet.  A URL is a specific type of <b>Uniform Resource Identifier (URI). </b>It is used to reference Web pages and identify and transfer documents on the Web by providing an abstract identification of the resource’s location. This is why it is also known as a web address.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-827ebe7 elementor-widget elementor-widget-spacer" data-id="827ebe7" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-190ae33 elementor-widget elementor-widget-video" data-id="190ae33" data-element_type="widget" data-settings="{&quot;youtube_url&quot;:&quot;https:\/\/www.youtube.com\/watch?v=2QZ3URGEIVE&quot;,&quot;video_type&quot;:&quot;youtube&quot;,&quot;controls&quot;:&quot;yes&quot;}" data-widget_type="video.default">
				<div class="elementor-widget-container">
							<div class="elementor-wrapper elementor-open-inline">
			<div class="elementor-video"></div>		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-fc17054 elementor-widget elementor-widget-spacer" data-id="fc17054" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-6323310 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="6323310" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-f007326" data-id="f007326" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-ad329c3 elementor-widget elementor-widget-heading" data-id="ad329c3" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Structure of a URL</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-094ca2e elementor-widget elementor-widget-text-editor" data-id="094ca2e" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>A <strong>URL</strong> is what you type in the <strong>browser address bar</strong> to request a specific <strong>resource</strong>. You can see the parts it consists of in the graphic below.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-be3b5c7 elementor-widget elementor-widget-image" data-id="be3b5c7" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="483" src="https://softuni.org/wp-content/uploads/2022/07/URL-Structure-e1657620006163.png" class="attachment-large size-large wp-image-22204" alt="URL Structure" srcset="https://softuni.org/wp-content/uploads/2022/07/URL-Structure-e1657620006163.png 1024w, https://softuni.org/wp-content/uploads/2022/07/URL-Structure-e1657620006163-300x142.png 300w, https://softuni.org/wp-content/uploads/2022/07/URL-Structure-e1657620006163-768x362.png 768w, https://softuni.org/wp-content/uploads/2022/07/URL-Structure-e1657620006163-600x283.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
				<div class="elementor-element elementor-element-40b4d68 elementor-widget elementor-widget-text-editor" data-id="40b4d68" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The first part of a URL specifies the <b>protocol</b> that the browser must follow to talk to the server. The protocol is used to access remote resources, such as files, documents, and streaming media. It can be http, https, ftp, sftp, or other. Usually, for webpages is used HTTP and HTTPS.</p><p>After the protocol is the <b>host</b>. The host is usually a domain name, but an IP address can also be used. It indicates the web server that you request resources from. </p><p>The third part of the URL is the <strong>port</strong> This is an integer in the range of [0…65535] that comes from the underlying TCP protocol, which operates with port numbers. The port is a <b>virtual point</b> through which network communication happens. It can be omitted if the server uses default ports of the HTTP protocol which are 80 for HTTP and 443 for HTTPS.</p><p>The <b>host</b> and the <b>port </b>define the <b>endpoint </b>for establishing the connection with the server.</p><p>The next part of the URL is the <b>path</b>. It specifies the <b>location </b>of the web page, file, or other resources to which the user wishes to gain access. If you want to request a <b>file </b>from the Web server, this will be <b>the full path to the file</b>, relative to the server root folder.</p><p>After the path follows the <b>query string</b>, which is optional. It is separated from the path by a question mark symbol. It holds <b>parameters </b>passed in the URL which are separated from each other by an ampersand symbol.</p><p>The <b>fragment</b> is the last optional part of the URL. It follows after the &#8220;<b>hash</b>&#8221; symbol. For example, the URL can end with &#8220;<b>#slides</b>&#8220;, which instructs the Web browser to scroll to the section &#8220;<b>slides</b>&#8221; in the loaded HTML document. The fragment is never sent to the server with the request.</p><p>A rarely used URL format can also include <b>authentication data</b>, sent through the &#8220;<b>Authorization</b>&#8221; HTTP header. For example <b>http://username:password@example.com/</b></p>								</div>
				</div>
				<div class="elementor-element elementor-element-9ab65d9 elementor-widget elementor-widget-heading" data-id="9ab65d9" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h3 class="elementor-heading-title elementor-size-xl">Query String</h3>				</div>
				</div>
				<div class="elementor-element elementor-element-f4ef827 elementor-widget elementor-widget-text-editor" data-id="f4ef827" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The <b>query string </b>is an <b>optional </b>part of the URL. It contains data that is <b>not part</b> of the path structure.</p><p>For example, let&#8217;s look at this URL:</p><p><b>http://example.com/path/to/page?name=tom&amp;color=purple</b></p><p>The query string is <b>?name=tom&amp;color=purple</b></p><p>The query string is commonly used in searches and dynamic pages. It consists of <b>name=value</b> pairs separated by an ampersand delimiter. Names and values that hold special characters are <b>URL-encoded</b>. </p><p>For example https://nakov.com/?s=Svetlin%20Nakov</p>								</div>
				</div>
				<div class="elementor-element elementor-element-d09faa1 elementor-widget elementor-widget-heading" data-id="d09faa1" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">URL Encoding</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-c79b22e elementor-widget elementor-widget-image" data-id="c79b22e" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="576" src="https://softuni.org/wp-content/uploads/2022/07/URL-Escape-Codes.png" class="attachment-large size-large wp-image-22203" alt="URL Escape Codes" srcset="https://softuni.org/wp-content/uploads/2022/07/URL-Escape-Codes.png 1024w, https://softuni.org/wp-content/uploads/2022/07/URL-Escape-Codes-300x169.png 300w, https://softuni.org/wp-content/uploads/2022/07/URL-Escape-Codes-768x432.png 768w, https://softuni.org/wp-content/uploads/2022/07/URL-Escape-Codes-600x338.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
				<div class="elementor-element elementor-element-2c54e67 elementor-widget elementor-widget-text-editor" data-id="2c54e67" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Sometimes the <b>query string parameters </b>need to hold <b>special characters</b> like the &#8220;<b>=</b>&#8221; symbol or the &#8220;<b>?</b>&#8221; symbol. To maintain this, the query string needs <b>character escaping</b>, which means that some special characters are replaced by sequences of other characters. This is called &#8220;<b>URL encoding</b>&#8220;. URLs are <b>encoded </b>according to <b>RFC 1738 </b>standard, which describes the URLs). <b>Normal URL characters </b>(such as digits and Latin letters) have no special meaning in the URLs and are <b>not encoded. Reserved URL characters</b> have a <b>special meaning</b> and are encoded in order to be part of the URL without breaking it. This is done with the so-called &#8220;<b>percent</b> <b>encoding</b>&#8220;, which uses the &#8220;<b>%</b>&#8221; symbol plus the <b>hex code</b> of the character in its UTF-8 representation. You can see some examples of URL escape codes in the graphic above.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-adfd773 elementor-widget elementor-widget-spacer" data-id="adfd773" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-e1a3dc3 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="e1a3dc3" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-b35bc44" data-id="b35bc44" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-85fd3f4 elementor-widget elementor-widget-heading" data-id="85fd3f4" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Lesson Topics</h2>				</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-07a5b2f elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="07a5b2f" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-650abcb" data-id="650abcb" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-1da5089 elementor-widget elementor-widget-text-editor" data-id="1da5089" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<div><div>In this tutorial, we cover the following topics:</div></div><ul><li><strong>What is URL;<br /></strong></li><li><strong>Structure of a URL;<br /></strong></li><li><strong>Query Strings;<br /></strong></li><li><strong>URL Encoding.</strong></li></ul>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-5ef077c elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5ef077c" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-c75d272" data-id="c75d272" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-f02175e elementor-widget elementor-widget-spacer" data-id="f02175e" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-a010926 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="a010926" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-98764dc" data-id="98764dc" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-b1f98e2 elementor-widget elementor-widget-heading" data-id="b1f98e2" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Lesson Slides</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-fb03df8 elementor-widget elementor-widget-pdfjs_viewer" data-id="fb03df8" data-element_type="widget" data-widget_type="pdfjs_viewer.default">
				<div class="elementor-widget-container">
					<iframe src="https://softuni.org/wp-content/plugins/pdf-viewer-for-elementor/assets/pdfjs/web/viewer.html?file=https://softuni.org/wp-content/uploads/2022/07/Dev-Concepts-Episode-40-URL-Explaineed.pdf&amp;embedded=true" style="display: block; margin-left: auto; margin-right: auto; width: 100%; height: 800px;" frameborder="1" marginheight="0px" marginwidth="0px" allowfullscreen></iframe>				</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				</div>
		<p>The post <a href="https://softuni.org/dev-concepts/what-is-a-uniform-resource-locator-url/">What is a Uniform Resource Locator (URL)? [Dev Concepts #40]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://softuni.org/dev-concepts/what-is-a-uniform-resource-locator-url/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Everything You Need To Know About HTTP Protocol [Dev Concepts #39]</title>
		<link>https://softuni.org/dev-concepts/everything-you-need-to-know-about-http-protocol/</link>
					<comments>https://softuni.org/dev-concepts/everything-you-need-to-know-about-http-protocol/#respond</comments>
		
		<dc:creator><![CDATA[Nikol Ruseva]]></dc:creator>
		<pubDate>Fri, 08 Jul 2022 10:37:30 +0000</pubDate>
				<category><![CDATA[Dev Concepts]]></category>
		<category><![CDATA[body]]></category>
		<category><![CDATA[devconcept]]></category>
		<category><![CDATA[devtools]]></category>
		<category><![CDATA[headers]]></category>
		<category><![CDATA[httpprotocol]]></category>
		<category><![CDATA[httprequest]]></category>
		<category><![CDATA[httpresponse]]></category>
		<category><![CDATA[httptools]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[requestmethods]]></category>
		<category><![CDATA[software engineering]]></category>
		<category><![CDATA[statuscodes]]></category>
		<guid isPermaLink="false">https://softuni.org/?p=21985</guid>

					<description><![CDATA[<p>In this lesson, you will understand the basic concepts of the HTTP protocol used for communication between browsers and applications over the Internet.</p>
<p>The post <a href="https://softuni.org/dev-concepts/everything-you-need-to-know-about-http-protocol/">Everything You Need To Know About HTTP Protocol [Dev Concepts #39]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="21985" class="elementor elementor-21985" data-elementor-post-type="post">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-5d5405e elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5d5405e" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0d32134" data-id="0d32134" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-9216798 elementor-widget elementor-widget-text-editor" data-id="9216798" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong>The Hypertext Transfer Protocol (HTTP)</strong> is the standard protocol used to <strong>transmit data</strong> across the web. It is originally created to transfer HTML, CSS, images and other Web resources within the global distributed information system called the &#8220;<b>World Wide Web</b>&#8221; (or just <b>Web</b>). Later, HTTP is extended to a <b>general-purpose client-server protocol for the Internet</b> and is widely used for transferring almost anything: text, images, documents, audio and video and more.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-88292b4 elementor-widget elementor-widget-video" data-id="88292b4" data-element_type="widget" data-settings="{&quot;youtube_url&quot;:&quot;https:\/\/www.youtube.com\/watch?v=TR_PjHKlXnE&quot;,&quot;video_type&quot;:&quot;youtube&quot;,&quot;controls&quot;:&quot;yes&quot;}" data-widget_type="video.default">
				<div class="elementor-widget-container">
							<div class="elementor-wrapper elementor-open-inline">
			<div class="elementor-video"></div>		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-dc9b80c elementor-widget elementor-widget-spacer" data-id="dc9b80c" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-f6eb159 elementor-widget elementor-widget-heading" data-id="f6eb159" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">What is a protocol?</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-c3c81fe elementor-widget elementor-widget-text-editor" data-id="c3c81fe" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>A communication protocol is a <strong>set of rules</strong>, which define how two or more parties are talking to each other. It is like a common language used for communication between machines. </p><p>HTTP is a <strong>text-based client-server</strong> protocol. <strong>Client-server</strong> defines the parties communicating with each other: the client &#8211; software that <strong>reads</strong> and <strong>visualizes</strong> the data from the server, and the server &#8211; software that <strong>stores</strong> the data and <strong>provides</strong> it upon request in the form of an HTML document. </p><p>The HTTP protocol uses the <strong>request-response</strong> <strong>model</strong>. It means that a site or a resource will not be open unless the client has asked for it. Therefore, the client has to send a <strong>request</strong> for a given data and the server will return a <strong>response</strong> containing the required data. </p><p>The HTTP protocol relies on <b>unique resource locators</b> (URLs), like &#8220;https, column, slash, slash, softuni dot org&#8221;. When a resource is downloaded from the Web server, it comes with <b>metadata</b> (such as content type and encoding), which helps in visualizing the resource correctly.</p><p>Moreover, the HTTP protocol is <strong>stateless</strong>. Each HTTP request is independent from the others. Stateful HTTP conversations can be implemented by extra effort, using <b>cookies</b>, custom <b>header fields</b>, <b>Web storage</b> or other techniques.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-dc2398e elementor-widget elementor-widget-spacer" data-id="dc2398e" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-8199816 elementor-widget elementor-widget-heading" data-id="8199816" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">HTTP Request Structure</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-2c52016 elementor-widget elementor-widget-text-editor" data-id="2c52016" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><!-- [if gte mso 9]><xml><br /> <o:OfficeDocumentSettings><br />  <o:RelyOnVML/><br />  <o:AllowPNG/><br /> </o:OfficeDocumentSettings><br /></xml><![endif]--><!-- [if gte mso 9]><xml><br /> <w:WordDocument><br />  <w:View>Normal</w:View><br />  <w:Zoom>0</w:Zoom><br />  <w:TrackMoves/><br />  <w:TrackFormatting/><br />  <w:HyphenationZone>21</w:HyphenationZone><br />  <w:PunctuationKerning/><br />  <w:ValidateAgainstSchemas/><br />  <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid><br />  <w:IgnoreMixedContent>false</w:IgnoreMixedContent><br />  <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText><br />  <w:DoNotPromoteQF/><br />  <w:LidThemeOther>BG</w:LidThemeOther><br />  <w:LidThemeAsian>JA</w:LidThemeAsian><br />  <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript><br />  <w:Compatibility><br />   <w:BreakWrappedTables/><br />   <w:SnapToGridInCell/><br />   <w:WrapTextWithPunct/><br />   <w:UseAsianBreakRules/><br />   <w:DontGrowAutofit/><br />   <w:SplitPgBreakAndParaMark/><br />   <w:EnableOpenTypeKerning/><br />   <w:DontFlipMirrorIndents/><br />   <w:OverrideTableStyleHps/><br />   <w:UseFELayout/><br />  </w:Compatibility><br />  <m:mathPr><br />   <m:mathFont m:val="Cambria Math"/><br />   <m:brkBin m:val="before"/><br />   <m:brkBinSub m:val="--"/><br />   <m:smallFrac m:val="off"/><br />   <m:dispDef/><br />   <m:lMargin m:val="0"/><br />   <m:rMargin m:val="0"/><br />   <m:defJc m:val="centerGroup"/><br />   <m:wrapIndent m:val="1440"/><br />   <m:intLim m:val="subSup"/><br />   <m:naryLim m:val="undOvr"/><br />  </m:mathPr></w:WordDocument><br /></xml><![endif]--><!-- [if gte mso 9]><xml><br /> <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false" DefSemiHidden="false" DefQFormat="false" DefPriority="99" LatentStyleCount="371"><br />  <w:LsdException Locked="false" Priority="0" QFormat="true" Name="Normal"/><br />  <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 1"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 2"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 3"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 4"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 5"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 6"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 7"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 8"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 9"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 6"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 7"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 8"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 9"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 1"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 2"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 3"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 4"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 5"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 6"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 7"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 8"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 9"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Normal Indent"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="footnote text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="annotation text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="header"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="footer"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index heading"/><br />  <w:LsdException Locked="false" Priority="35" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="caption"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="table of figures"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="envelope address"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="envelope return"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="footnote reference"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="annotation reference"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="line number"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="page number"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="endnote reference"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="endnote text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="table of authorities"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="macro"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="toa heading"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Bullet"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Number"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Bullet 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Bullet 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Bullet 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Bullet 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Number 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Number 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Number 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Number 5"/><br />  <w:LsdException Locked="false" Priority="10" QFormat="true" Name="Title"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Closing"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Signature"/><br />  <w:LsdException Locked="false" Priority="1" SemiHidden="true" UnhideWhenUsed="true" Name="Default Paragraph Font"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text Indent"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Continue"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Continue 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Continue 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Continue 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Continue 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Message Header"/><br />  <w:LsdException Locked="false" Priority="11" QFormat="true" Name="Subtitle"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Salutation"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Date"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text First Indent"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text First Indent 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Note Heading"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text Indent 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text Indent 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Block Text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Hyperlink"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="FollowedHyperlink"/><br />  <w:LsdException Locked="false" Priority="22" QFormat="true" Name="Strong"/><br />  <w:LsdException Locked="false" Priority="20" QFormat="true" Name="Emphasis"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Document Map"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Plain Text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="E-mail Signature"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Top of Form"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Bottom of Form"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Normal (Web)"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Acronym"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Address"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Cite"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Code"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Definition"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Keyboard"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Preformatted"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Sample"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Typewriter"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Variable"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Normal Table"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="annotation subject"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="No List"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Outline List 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Outline List 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Outline List 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Simple 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Simple 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Simple 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Classic 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Classic 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Classic 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Classic 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Colorful 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Colorful 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Colorful 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Columns 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Columns 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Columns 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Columns 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Columns 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 6"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 7"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 8"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 6"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 7"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 8"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table 3D effects 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table 3D effects 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table 3D effects 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Contemporary"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Elegant"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Professional"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Subtle 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Subtle 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Web 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Web 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Web 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Balloon Text"/><br />  <w:LsdException Locked="false" Priority="39" Name="Table Grid"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Theme"/><br />  <w:LsdException Locked="false" SemiHidden="true" Name="Placeholder Text"/><br />  <w:LsdException Locked="false" Priority="1" QFormat="true" Name="No Spacing"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 1"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 1"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 1"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 1"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 1"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" Name="Revision"/><br />  <w:LsdException Locked="false" Priority="34" QFormat="true" Name="List Paragraph"/><br />  <w:LsdException Locked="false" Priority="29" QFormat="true" Name="Quote"/><br />  <w:LsdException Locked="false" Priority="30" QFormat="true" Name="Intense Quote"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 1"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 1"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 1"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 1"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 1"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 1"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 1"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 1"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 2"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 2"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 2"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 2"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 2"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 2"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 2"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 2"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 2"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 2"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 2"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 2"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 2"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 2"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 3"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 3"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 3"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 3"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 3"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 3"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 3"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 3"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 3"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 3"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 3"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 3"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 3"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 3"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 4"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 4"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 4"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 4"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 4"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 4"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 4"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 4"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 4"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 4"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 4"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 4"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 4"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 4"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 5"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 5"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 5"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 5"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 5"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 5"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 5"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 5"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 5"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 5"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 5"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 5"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 5"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 5"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 6"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 6"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 6"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 6"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 6"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 6"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 6"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 6"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 6"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 6"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 6"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 6"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 6"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 6"/><br />  <w:LsdException Locked="false" Priority="19" QFormat="true" Name="Subtle Emphasis"/><br />  <w:LsdException Locked="false" Priority="21" QFormat="true" Name="Intense Emphasis"/><br />  <w:LsdException Locked="false" Priority="31" QFormat="true" Name="Subtle Reference"/><br />  <w:LsdException Locked="false" Priority="32" QFormat="true" Name="Intense Reference"/><br />  <w:LsdException Locked="false" Priority="33" QFormat="true" Name="Book Title"/><br />  <w:LsdException Locked="false" Priority="37" SemiHidden="true" UnhideWhenUsed="true" Name="Bibliography"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/><br />  <w:LsdException Locked="false" Priority="41" Name="Plain Table 1"/><br />  <w:LsdException Locked="false" Priority="42" Name="Plain Table 2"/><br />  <w:LsdException Locked="false" Priority="43" Name="Plain Table 3"/><br />  <w:LsdException Locked="false" Priority="44" Name="Plain Table 4"/><br />  <w:LsdException Locked="false" Priority="45" Name="Plain Table 5"/><br />  <w:LsdException Locked="false" Priority="40" Name="Grid Table Light"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 1"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 1"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 1"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 1"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 1"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 1"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 1"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 2"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 2"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 2"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 2"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 2"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 2"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 2"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 3"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 3"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 3"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 3"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 3"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 3"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 3"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 4"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 4"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 4"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 4"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 4"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 4"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 4"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 5"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 5"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 5"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 5"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 5"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 5"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 5"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 6"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 6"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 6"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 6"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 6"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 6"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 6"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 1"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 1"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 1"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 1"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 1"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 1"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 1"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 2"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 2"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 2"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 2"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 2"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 2"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 2"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 3"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 3"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 3"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 3"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 3"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 3"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 3"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 4"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 4"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 4"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 4"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 4"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 4"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 4"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 5"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 5"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 5"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 5"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 5"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 5"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 5"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 6"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 6"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 6"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 6"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 6"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 6"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 6"/><br /> </w:LatentStyles><br /></xml><![endif]--><!-- [if gte mso 10]></p>
<style>
 /* Style Definitions */<br /> table.MsoNormalTable<br />	{mso-style-name:"Table Normal";<br />	mso-tstyle-rowband-size:0;<br />	mso-tstyle-colband-size:0;<br />	mso-style-noshow:yes;<br />	mso-style-priority:99;<br />	mso-style-parent:"";<br />	mso-padding-alt:0cm 5.4pt 0cm 5.4pt;<br />	mso-para-margin-top:0cm;<br />	mso-para-margin-right:0cm;<br />	mso-para-margin-bottom:8.0pt;<br />	mso-para-margin-left:0cm;<br />	line-height:107%;<br />	mso-pagination:widow-orphan;<br />	font-size:11.0pt;<br />	font-family:"Calibri",sans-serif;<br />	mso-ascii-font-family:Calibri;<br />	mso-ascii-theme-font:minor-latin;<br />	mso-hansi-font-family:Calibri;<br />	mso-hansi-theme-font:minor-latin;<br />	mso-bidi-font-family:"Times New Roman";<br />	mso-bidi-theme-font:minor-bidi;}<br /></style>
<p><![endif]--></p><p>Let’s see the structure of an actual request.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-8c9a443 elementor-widget elementor-widget-image" data-id="8c9a443" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="576" src="https://softuni.org/wp-content/uploads/2022/07/HTTP-Requests-Example.png" class="attachment-large size-large wp-image-22080" alt="HTTP Requests Example" srcset="https://softuni.org/wp-content/uploads/2022/07/HTTP-Requests-Example.png 1024w, https://softuni.org/wp-content/uploads/2022/07/HTTP-Requests-Example-300x169.png 300w, https://softuni.org/wp-content/uploads/2022/07/HTTP-Requests-Example-768x432.png 768w, https://softuni.org/wp-content/uploads/2022/07/HTTP-Requests-Example-600x338.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
				<div class="elementor-element elementor-element-e493ae9 elementor-widget elementor-widget-text-editor" data-id="e493ae9" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><!-- [if gte mso 9]><xml><br /> <o:OfficeDocumentSettings><br />  <o:RelyOnVML/><br />  <o:AllowPNG/><br /> </o:OfficeDocumentSettings><br /></xml><![endif]--><!-- [if gte mso 9]><xml><br /> <w:WordDocument><br />  <w:View>Normal</w:View><br />  <w:Zoom>0</w:Zoom><br />  <w:TrackMoves/><br />  <w:TrackFormatting/><br />  <w:HyphenationZone>21</w:HyphenationZone><br />  <w:PunctuationKerning/><br />  <w:ValidateAgainstSchemas/><br />  <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid><br />  <w:IgnoreMixedContent>false</w:IgnoreMixedContent><br />  <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText><br />  <w:DoNotPromoteQF/><br />  <w:LidThemeOther>BG</w:LidThemeOther><br />  <w:LidThemeAsian>JA</w:LidThemeAsian><br />  <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript><br />  <w:Compatibility><br />   <w:BreakWrappedTables/><br />   <w:SnapToGridInCell/><br />   <w:WrapTextWithPunct/><br />   <w:UseAsianBreakRules/><br />   <w:DontGrowAutofit/><br />   <w:SplitPgBreakAndParaMark/><br />   <w:EnableOpenTypeKerning/><br />   <w:DontFlipMirrorIndents/><br />   <w:OverrideTableStyleHps/><br />   <w:UseFELayout/><br />  </w:Compatibility><br />  <m:mathPr><br />   <m:mathFont m:val="Cambria Math"/><br />   <m:brkBin m:val="before"/><br />   <m:brkBinSub m:val="--"/><br />   <m:smallFrac m:val="off"/><br />   <m:dispDef/><br />   <m:lMargin m:val="0"/><br />   <m:rMargin m:val="0"/><br />   <m:defJc m:val="centerGroup"/><br />   <m:wrapIndent m:val="1440"/><br />   <m:intLim m:val="subSup"/><br />   <m:naryLim m:val="undOvr"/><br />  </m:mathPr></w:WordDocument><br /></xml><![endif]--><!-- [if gte mso 9]><xml><br /> <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false" DefSemiHidden="false" DefQFormat="false" DefPriority="99" LatentStyleCount="371"><br />  <w:LsdException Locked="false" Priority="0" QFormat="true" Name="Normal"/><br />  <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 1"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 2"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 3"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 4"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 5"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 6"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 7"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 8"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 9"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 6"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 7"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 8"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 9"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 1"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 2"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 3"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 4"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 5"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 6"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 7"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 8"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 9"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Normal Indent"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="footnote text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="annotation text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="header"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="footer"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index heading"/><br />  <w:LsdException Locked="false" Priority="35" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="caption"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="table of figures"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="envelope address"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="envelope return"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="footnote reference"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="annotation reference"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="line number"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="page number"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="endnote reference"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="endnote text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="table of authorities"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="macro"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="toa heading"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Bullet"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Number"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Bullet 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Bullet 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Bullet 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Bullet 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Number 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Number 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Number 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Number 5"/><br />  <w:LsdException Locked="false" Priority="10" QFormat="true" Name="Title"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Closing"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Signature"/><br />  <w:LsdException Locked="false" Priority="1" SemiHidden="true" UnhideWhenUsed="true" Name="Default Paragraph Font"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text Indent"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Continue"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Continue 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Continue 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Continue 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Continue 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Message Header"/><br />  <w:LsdException Locked="false" Priority="11" QFormat="true" Name="Subtitle"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Salutation"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Date"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text First Indent"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text First Indent 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Note Heading"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text Indent 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text Indent 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Block Text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Hyperlink"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="FollowedHyperlink"/><br />  <w:LsdException Locked="false" Priority="22" QFormat="true" Name="Strong"/><br />  <w:LsdException Locked="false" Priority="20" QFormat="true" Name="Emphasis"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Document Map"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Plain Text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="E-mail Signature"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Top of Form"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Bottom of Form"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Normal (Web)"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Acronym"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Address"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Cite"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Code"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Definition"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Keyboard"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Preformatted"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Sample"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Typewriter"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Variable"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Normal Table"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="annotation subject"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="No List"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Outline List 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Outline List 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Outline List 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Simple 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Simple 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Simple 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Classic 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Classic 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Classic 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Classic 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Colorful 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Colorful 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Colorful 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Columns 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Columns 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Columns 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Columns 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Columns 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 6"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 7"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 8"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 6"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 7"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 8"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table 3D effects 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table 3D effects 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table 3D effects 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Contemporary"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Elegant"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Professional"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Subtle 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Subtle 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Web 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Web 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Web 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Balloon Text"/><br />  <w:LsdException Locked="false" Priority="39" Name="Table Grid"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Theme"/><br />  <w:LsdException Locked="false" SemiHidden="true" Name="Placeholder Text"/><br />  <w:LsdException Locked="false" Priority="1" QFormat="true" Name="No Spacing"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 1"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 1"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 1"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 1"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 1"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" Name="Revision"/><br />  <w:LsdException Locked="false" Priority="34" QFormat="true" Name="List Paragraph"/><br />  <w:LsdException Locked="false" Priority="29" QFormat="true" Name="Quote"/><br />  <w:LsdException Locked="false" Priority="30" QFormat="true" Name="Intense Quote"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 1"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 1"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 1"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 1"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 1"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 1"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 1"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 1"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 2"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 2"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 2"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 2"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 2"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 2"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 2"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 2"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 2"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 2"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 2"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 2"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 2"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 2"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 3"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 3"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 3"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 3"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 3"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 3"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 3"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 3"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 3"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 3"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 3"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 3"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 3"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 3"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 4"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 4"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 4"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 4"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 4"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 4"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 4"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 4"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 4"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 4"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 4"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 4"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 4"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 4"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 5"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 5"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 5"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 5"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 5"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 5"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 5"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 5"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 5"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 5"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 5"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 5"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 5"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 5"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 6"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 6"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 6"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 6"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 6"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 6"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 6"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 6"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 6"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 6"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 6"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 6"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 6"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 6"/><br />  <w:LsdException Locked="false" Priority="19" QFormat="true" Name="Subtle Emphasis"/><br />  <w:LsdException Locked="false" Priority="21" QFormat="true" Name="Intense Emphasis"/><br />  <w:LsdException Locked="false" Priority="31" QFormat="true" Name="Subtle Reference"/><br />  <w:LsdException Locked="false" Priority="32" QFormat="true" Name="Intense Reference"/><br />  <w:LsdException Locked="false" Priority="33" QFormat="true" Name="Book Title"/><br />  <w:LsdException Locked="false" Priority="37" SemiHidden="true" UnhideWhenUsed="true" Name="Bibliography"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/><br />  <w:LsdException Locked="false" Priority="41" Name="Plain Table 1"/><br />  <w:LsdException Locked="false" Priority="42" Name="Plain Table 2"/><br />  <w:LsdException Locked="false" Priority="43" Name="Plain Table 3"/><br />  <w:LsdException Locked="false" Priority="44" Name="Plain Table 4"/><br />  <w:LsdException Locked="false" Priority="45" Name="Plain Table 5"/><br />  <w:LsdException Locked="false" Priority="40" Name="Grid Table Light"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 1"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 1"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 1"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 1"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 1"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 1"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 1"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 2"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 2"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 2"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 2"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 2"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 2"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 2"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 3"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 3"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 3"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 3"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 3"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 3"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 3"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 4"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 4"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 4"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 4"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 4"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 4"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 4"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 5"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 5"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 5"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 5"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 5"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 5"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 5"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 6"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 6"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 6"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 6"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 6"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 6"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 6"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 1"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 1"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 1"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 1"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 1"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 1"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 1"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 2"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 2"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 2"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 2"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 2"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 2"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 2"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 3"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 3"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 3"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 3"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 3"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 3"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 3"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 4"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 4"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 4"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 4"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 4"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 4"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 4"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 5"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 5"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 5"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 5"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 5"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 5"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 5"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 6"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 6"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 6"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 6"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 6"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 6"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 6"/><br /> </w:LatentStyles><br /></xml><![endif]--><!-- [if gte mso 10]></p>
<style>
 /* Style Definitions */<br /> table.MsoNormalTable<br />	{mso-style-name:"Table Normal";<br />	mso-tstyle-rowband-size:0;<br />	mso-tstyle-colband-size:0;<br />	mso-style-noshow:yes;<br />	mso-style-priority:99;<br />	mso-style-parent:"";<br />	mso-padding-alt:0cm 5.4pt 0cm 5.4pt;<br />	mso-para-margin-top:0cm;<br />	mso-para-margin-right:0cm;<br />	mso-para-margin-bottom:8.0pt;<br />	mso-para-margin-left:0cm;<br />	line-height:107%;<br />	mso-pagination:widow-orphan;<br />	font-size:11.0pt;<br />	font-family:"Calibri",sans-serif;<br />	mso-ascii-font-family:Calibri;<br />	mso-ascii-theme-font:minor-latin;<br />	mso-hansi-font-family:Calibri;<br />	mso-hansi-theme-font:minor-latin;<br />	mso-bidi-font-family:"Times New Roman";<br />	mso-bidi-theme-font:minor-bidi;}<br /></style>
<p><![endif]--></p><p>HTTP requests have a <b>line</b>, <b>headers</b>, a<b> new line</b> (<b>CR</b> + <b>LF</b>) after that, and a <b>body </b>at the end.</p><p>The HTTP request line is the command you send to the server to indicate what resource you want to get or process. It consists of:</p><ul><li>      Request <b>method </b>(in our example &#8220;GET&#8221;);</li><li>      Request-<b>URL</b> (this is the resource path);</li><li>      <b>HTTP version</b> string.</li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-fc92903 elementor-widget elementor-widget-text-editor" data-id="fc92903" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Web browsers use <b>URLs</b>, but HTTP uses <b>URIs</b> to address the resources.</p><ul><li>      <b>URL</b> stands for &#8220;<b><i>uniform resource locator</i></b>&#8221; and it describes a <b>full unique address for a resource </b>on the Internet, which consists of <b>protocol</b> + <b>host </b>+ <b>resource path</b>, like in the example above</li><li>      <b>URI</b> stands for &#8220;<b><i>uniform resource identifier</i></b>&#8221; and it holds a full or relative unique path to a resource, for example &#8220;<b>/about</b>&#8220;.</li></ul><p>When you request a resource over HTTP, you specify the <b>relative URI</b> of the resource in the <b>request</b> line and you specify the <b>host name</b> in the request <b>headers</b>. Both relative URI and host name come from the URL you want to access.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-0a48c57 elementor-widget elementor-widget-text-editor" data-id="0a48c57" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>After the request line, the <b>HTTP request headers</b> are given. Headers specify specific <b>parameters</b> about the requested resource:</p><ul><li>      &#8220;<b>Host</b>&#8221; is an important header, holding the requested resource. If we have several Web sites on the same Web server (for example <b>softuni.org</b> and <b>learn.softuni.org</b>), this &#8220;<b>Host</b>&#8221; header will tell the server which website to access.</li><li>      The <b>other headers </b>specify settings like what kind of content the client can accept and understands (for example only HTML or any content), what is the preferred language the client wants to use, what kind of compression the client understands (for example gzip and deflate), what are the client Web browser&#8217;s brand and version (encoded as the so-called &#8220;<b><i>user agent</i></b>&#8221; identifier) and other parameters.</li><li>      The headers section in the HTTP request <b>ends by an empty line </b>(CR + LF twice).</li></ul><p>After the request headers, comes the <b>request body</b>.</p><ul><li>      It can hold anything, for example, URL-encoded data or JSON objects or binary data.</li><li>      In the given example the body is <b>empty</b>, which is typical for HTTP GET requests.</li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-5a534e3 elementor-widget elementor-widget-spacer" data-id="5a534e3" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-e4aaa41 elementor-widget elementor-widget-heading" data-id="e4aaa41" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">HTTP Request Methods</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-5f75d57 elementor-widget elementor-widget-text-editor" data-id="5f75d57" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The HTTP request <strong>method</strong> defines what <strong>action</strong> will be performed on the identified resource. The most commonly used HTTP methods are <b>GET</b>, <b>POST</b>, <b>PUT</b>, <b>DELETE</b> and <b>PATCH </b>which correspond to read, create, update and delete (or CRUD) operations, respectively.</p><p><strong>Idempotency</strong> and <strong>safety</strong> are properties of HTTP methods.</p><p>Safe methods can only be used for<strong> read-only</strong> operations since they <strong>do not alter</strong> the server state. Using GET or HEAD on a resource URL, for example, should never change the resource. Safe methods are considered GET, HEAD, TRACE and OPTIONS.</p><p>Idempotent methods can send <strong>multiple</strong> <strong>identical</strong> <strong>requests</strong> to the server and the outcome will always be <strong>the same </strong>and it does not matter how many times the requests will be sent. This does not mean, however, that the server has to respond in the same way to each request. For example, if we want to delete a resource we send a DELETE request. The first time the server returns a response that the file <strong>has been deleted</strong>. If you try to send the same request again the server will respond that the file <strong>has already been deleted</strong>. Here we have two different responses but the second request <strong>did not alter</strong> the server state. In this case, the DELETE operation is <strong>idempotent</strong>.</p><p>The following HTTP methods are idempotent: GET, HEAD, OPTIONS, TRACE, PUT and DELETE. All safe HTTP methods are idempotent. PUT and DELETE are idempotent but not safe.</p><p>You can see all methods and their function in the graphic below.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-31b6af0 elementor-widget elementor-widget-image" data-id="31b6af0" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="988" height="528" src="https://softuni.org/wp-content/uploads/2022/07/HTTP-Request-Methods-e1657276635747.png" class="attachment-large size-large wp-image-21990" alt="HTTP Request Methods" srcset="https://softuni.org/wp-content/uploads/2022/07/HTTP-Request-Methods-e1657276635747.png 988w, https://softuni.org/wp-content/uploads/2022/07/HTTP-Request-Methods-e1657276635747-300x160.png 300w, https://softuni.org/wp-content/uploads/2022/07/HTTP-Request-Methods-e1657276635747-768x410.png 768w, https://softuni.org/wp-content/uploads/2022/07/HTTP-Request-Methods-e1657276635747-600x321.png 600w" sizes="(max-width: 988px) 100vw, 988px" />															</div>
				</div>
				<div class="elementor-element elementor-element-13e0573 elementor-widget elementor-widget-text-editor" data-id="13e0573" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The main HTTP methods corresponding to the CRUD operations are POST, GET, PUT/PATCH and DELETE.</p><ul><li>  The <strong>GET</strong> method <strong>retrieves</strong> a specified resource (a list or a single resource). If there are no errors the method returns a representation of the resource in XML or JSON. GET is used to <b>download </b>a Web page, CSS file, script, document or other resources from a Web site. For example, a Web page’s content (fonts, images, etc.) is loaded using HTTP GET requests. This<strong> does not modify </strong>the state at the server-side, it only ‘reads’ it.</li><li>      The <strong>POST</strong> method <strong>modifies</strong> the state of the server since it creates new resources. For example, when you login into a website, the login sends your credentials to the server using a POST request.</li><li>      <b>DELETE</b> is used to <b>delete</b> (or <b>remove</b>) an existing resource. An example of an HTTP DELETE request is for deleting an item from the shopping cart in an e-commerce Web application.</li><li>      The <b>PATCH</b> method <b>updates</b> an existing resource <b>partially</b>. It is used to modify a field of a given object. An example is an HTTP PATCH request for updating the quantity of an order item in the shopping cart in an e-commerce Web application.</li><li>  The HTTP <b>HEAD</b> method retrieves the resource&#8217;s <b>headers</b>, without the resource itself. HEAD is used rarely, for example<b>, </b>to check for modifications on the server-side.</li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-4f27d0c elementor-widget elementor-widget-spacer" data-id="4f27d0c" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-d1d71e5 elementor-widget elementor-widget-heading" data-id="d1d71e5" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">HTTP Response Structure</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-aee5286 elementor-widget elementor-widget-text-editor" data-id="aee5286" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>After receiving and interpreting a request message, the server sends an HTTP response message. You can see an example below.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-73e2af2 elementor-widget elementor-widget-image" data-id="73e2af2" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="494" src="https://softuni.org/wp-content/uploads/2022/07/HTTP-Responses-Example-e1657276587336.png" class="attachment-large size-large wp-image-22081" alt="HTTP Responses Example" srcset="https://softuni.org/wp-content/uploads/2022/07/HTTP-Responses-Example-e1657276587336.png 1024w, https://softuni.org/wp-content/uploads/2022/07/HTTP-Responses-Example-e1657276587336-300x145.png 300w, https://softuni.org/wp-content/uploads/2022/07/HTTP-Responses-Example-e1657276587336-768x371.png 768w, https://softuni.org/wp-content/uploads/2022/07/HTTP-Responses-Example-e1657276587336-600x289.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
				<div class="elementor-element elementor-element-dbafd5f elementor-widget elementor-widget-text-editor" data-id="dbafd5f" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The response message gives information on whether our request has been successfully <strong>executed</strong> or <strong>has</strong> <strong>failed</strong>. It consists of a <strong>status line</strong>, response <strong>headers </strong>and a response <strong>body</strong>.</p><p>The HTTP response <b>status line</b> starts with the protocol version, followed by the response <b>status code</b>, followed by a human-readable text explanation of the status code.</p><p>The <b>status code </b>tells the client whether the requested operation was successful or not. It is a three-digit integer whose first digit defines the response class.</p><p>Status codes are:</p><ul><li aria-level="1">Informational responses (100–199)</li><li aria-level="1">Successful responses (200–299)</li><li aria-level="1">Redirection messages (300–399)</li><li aria-level="1">Client error responses (400–499)</li><li aria-level="1">Server error responses (500–599)</li></ul><p>You can check the graphic below to see the most common status codes.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-d4f085b elementor-widget elementor-widget-spacer" data-id="d4f085b" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-1a4f58a elementor-widget elementor-widget-image" data-id="1a4f58a" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="532" src="https://softuni.org/wp-content/uploads/2022/07/HTTP-Response-Status-Codes-e1657276611484.png" class="attachment-large size-large wp-image-21992" alt="HTTP Response Status Codes" srcset="https://softuni.org/wp-content/uploads/2022/07/HTTP-Response-Status-Codes-e1657276611484.png 1024w, https://softuni.org/wp-content/uploads/2022/07/HTTP-Response-Status-Codes-e1657276611484-300x156.png 300w, https://softuni.org/wp-content/uploads/2022/07/HTTP-Response-Status-Codes-e1657276611484-768x399.png 768w, https://softuni.org/wp-content/uploads/2022/07/HTTP-Response-Status-Codes-e1657276611484-600x312.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
				<div class="elementor-element elementor-element-0ff6516 elementor-widget elementor-widget-text-editor" data-id="0ff6516" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>After the HTTP status line come the HTTP <b>response headers that</b> provide <b>metadata </b>for the returned resource (or the returned error), such as content-encoding, content size in bytes, content last-modify date and many others.</p><p>After the response headers and the empty line separator, the HTTP <b>response body</b> comes. This is the requested resource that can be text, binary data or it can be empty. In the example we used above, the Web server returns a CSS script for styling a navigation bar.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-772d575 elementor-widget elementor-widget-spacer" data-id="772d575" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-103ecbb elementor-widget elementor-widget-heading" data-id="103ecbb" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Content-Type and Disposition Headers</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-fe937c1 elementor-widget elementor-widget-text-editor" data-id="fe937c1" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><b>HTTP headers </b>play an important role in modern Web development.</p><p>The &#8220;<b>Content-Type</b>&#8221; and the &#8220;<b>Content-Disposition</b>&#8221; <b>headers</b> specify how to process the data in the HTTP request or in the HTTP response body. These headers can be used both in the HTTP requests and in the HTTP responses.</p><p>In the <b>HTTP requests,</b> the &#8220;<b>Content-Type</b>&#8221; header specifies what kind of data the client sends to the server, for example, a JSON document or URL-encoded form data or a plain-text document or a JPEG image. In the <b>HTTP responses, </b>the &#8220;<b>Content-Type</b>&#8221; header specifies what kind of data the server returns to the client, for example an HTML document or a JPEG image.</p><p>For example, the header &#8220;<b>Content-Type: application/json</b>&#8221; specifies a JSON-encoded data (a JSON object). By default, the UTF-8 encoding is used.</p><p>The &#8220;<b>Content-Type: text/html; charset=utf-8</b>&#8221; specifies an HTML document with UTF-8 encoding. Note that the encoding (or the charset) specified in the HTTP headers has a <b>higher priority </b>than the encoding specified in the header of the HTML document (using the &#8220;meta charset&#8221; HTML tag).</p>								</div>
				</div>
				<div class="elementor-element elementor-element-855b4b6 elementor-widget elementor-widget-spacer" data-id="855b4b6" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-6090d96 elementor-widget elementor-widget-heading" data-id="6090d96" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">HTTP Dev Tools</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-b471c53 elementor-widget elementor-widget-image" data-id="b471c53" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="300" height="113" src="https://softuni.org/wp-content/uploads/2022/05/x1_QOx_tPV5wJnhTzAGhfIiLA.png.pagespeed.ic_.8CDwgq7rJK-e1657179114951-300x113.png" class="attachment-medium size-medium wp-image-21410" alt="Postman Client Tool Logo" srcset="https://softuni.org/wp-content/uploads/2022/05/x1_QOx_tPV5wJnhTzAGhfIiLA.png.pagespeed.ic_.8CDwgq7rJK-e1657179114951-300x113.png 300w, https://softuni.org/wp-content/uploads/2022/05/x1_QOx_tPV5wJnhTzAGhfIiLA.png.pagespeed.ic_.8CDwgq7rJK-e1657179114951-600x226.png 600w, https://softuni.org/wp-content/uploads/2022/05/x1_QOx_tPV5wJnhTzAGhfIiLA.png.pagespeed.ic_.8CDwgq7rJK-e1657179114951.png 700w" sizes="(max-width: 300px) 100vw, 300px" />															</div>
				</div>
				<div class="elementor-element elementor-element-2119184 elementor-widget elementor-widget-text-editor" data-id="2119184" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>There are browser built-in tools and client tools that help developers <strong>monitor</strong> the request-response traffic. An example of a client tool is the Postman HTTP client. Web developers use it for <b>composing and sending HTTP requests and analyzing the HTTP response from the server</b>, testing, debugging server APIs, researching how to use certain service APIs and for resolving technical issues during the software development. If you are interested in other HTTP client tools, you can try out <strong>Insomnia Core REST Client</strong> and <strong>Hoppscotch</strong>.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-b690d49 elementor-widget elementor-widget-spacer" data-id="b690d49" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-551543a elementor-widget elementor-widget-heading" data-id="551543a" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Lesson Topics</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-4a0f072 elementor-widget elementor-widget-text-editor" data-id="4a0f072" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<div><div>In this tutorial, we cover the following topics:</div></div><ul><li><strong>What is the HTTP Protocol<br /></strong></li><li><strong>HTTP Request Structure<br /></strong></li><li><strong>HTTP Request Methods</strong></li><li><strong>HTTP Response Status Codes<br /></strong></li><li><strong>Content-Type and Disposition Headers</strong></li></ul>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-3381a86 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="3381a86" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0cf09e3" data-id="0cf09e3" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-5b63bc4 elementor-widget elementor-widget-spacer" data-id="5b63bc4" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-a0aff0b elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="a0aff0b" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-48c6c18" data-id="48c6c18" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-de5c938 elementor-widget elementor-widget-heading" data-id="de5c938" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Lesson Slides</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-37e6760 elementor-widget elementor-widget-pdfjs_viewer" data-id="37e6760" data-element_type="widget" data-widget_type="pdfjs_viewer.default">
				<div class="elementor-widget-container">
					<iframe src="https://softuni.org/wp-content/plugins/pdf-viewer-for-elementor/assets/pdfjs/web/viewer.html?file=https://softuni.org/wp-content/uploads/2022/07/Dev-Concepts-Episode-39-HTTP-Essentials.pdf&amp;embedded=true" style="display: block; margin-left: auto; margin-right: auto; width: 100%; height: 800px;" frameborder="1" marginheight="0px" marginwidth="0px" allowfullscreen></iframe>				</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				</div>
		<p>The post <a href="https://softuni.org/dev-concepts/everything-you-need-to-know-about-http-protocol/">Everything You Need To Know About HTTP Protocol [Dev Concepts #39]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://softuni.org/dev-concepts/everything-you-need-to-know-about-http-protocol/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Handling an HTML Form – GET and POST Methods, and Data Encoding [Dev Concepts #38]</title>
		<link>https://softuni.org/dev-concepts/handling-an-html-form/</link>
					<comments>https://softuni.org/dev-concepts/handling-an-html-form/#respond</comments>
		
		<dc:creator><![CDATA[Nikol Ruseva]]></dc:creator>
		<pubDate>Thu, 30 Jun 2022 06:00:00 +0000</pubDate>
				<category><![CDATA[Dev Concepts]]></category>
		<category><![CDATA[dataencoding]]></category>
		<category><![CDATA[devconcept]]></category>
		<category><![CDATA[formdata]]></category>
		<category><![CDATA[formmethods]]></category>
		<category><![CDATA[htmlform]]></category>
		<category><![CDATA[httprequest]]></category>
		<category><![CDATA[httpresponse]]></category>
		<category><![CDATA[networkinspector]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[software engineering]]></category>
		<guid isPermaLink="false">https://softuni.org/?p=21526</guid>

					<description><![CDATA[<p>In this lesson, we discuss HTML Forms and how to use GET and POST methods to send encoded data to the server for processing.</p>
<p>The post <a href="https://softuni.org/dev-concepts/handling-an-html-form/">Handling an HTML Form – GET and POST Methods, and Data Encoding [Dev Concepts #38]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="21526" class="elementor elementor-21526" data-elementor-post-type="post">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-5d5405e elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5d5405e" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0d32134" data-id="0d32134" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-9216798 elementor-widget elementor-widget-text-editor" data-id="9216798" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>HTML Forms are used to <strong>collect </strong>input from users and <strong>send</strong> it to the server for processing. <br />Examples are <strong>registration form</strong> that users fill out to sign up on a website and<strong> order submission forms </strong>on e-commerce sites.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-88292b4 elementor-widget elementor-widget-video" data-id="88292b4" data-element_type="widget" data-settings="{&quot;youtube_url&quot;:&quot;https:\/\/www.youtube.com\/watch?v=gs_cpvOv63g&quot;,&quot;video_type&quot;:&quot;youtube&quot;,&quot;controls&quot;:&quot;yes&quot;}" data-widget_type="video.default">
				<div class="elementor-widget-container">
							<div class="elementor-wrapper elementor-open-inline">
			<div class="elementor-video"></div>		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-dc9b80c elementor-widget elementor-widget-spacer" data-id="dc9b80c" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-f6eb159 elementor-widget elementor-widget-heading" data-id="f6eb159" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">HTML Form Structure</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-c3c81fe elementor-widget elementor-widget-text-editor" data-id="c3c81fe" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>HTML has <strong>input elements</strong> displayed in different ways such as <strong>input</strong> <strong>field</strong>, <strong>checkbox</strong> (for selecting zero or more of multiple choices), <strong>radio</strong> <strong>buttons</strong> (for selecting one of multiple choices), <strong>submit</strong> <strong>button</strong> etc. The basic structure of a form consists of <strong>input fields</strong> and a <strong>submit button</strong>. The user fills out the input fields with <strong>the required information</strong> and upon clicking the <strong>submit</strong> <strong>button</strong> the data is sent to a <strong>form</strong> <strong>handler</strong>. Typically, the form handler is a <strong>file</strong> on the server with a <strong>script</strong> for processing input data.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-edfa28d elementor-widget elementor-widget-image" data-id="edfa28d" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="570" src="https://softuni.org/wp-content/uploads/2022/06/HTML-Forms-Structure-e1656488599535.png" class="attachment-large size-large wp-image-21598" alt="HTML Forms Structure" srcset="https://softuni.org/wp-content/uploads/2022/06/HTML-Forms-Structure-e1656488599535.png 1024w, https://softuni.org/wp-content/uploads/2022/06/HTML-Forms-Structure-e1656488599535-300x167.png 300w, https://softuni.org/wp-content/uploads/2022/06/HTML-Forms-Structure-e1656488599535-768x428.png 768w, https://softuni.org/wp-content/uploads/2022/06/HTML-Forms-Structure-e1656488599535-600x334.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
				<div class="elementor-element elementor-element-8199816 elementor-widget elementor-widget-heading" data-id="8199816" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Form Action Attribute</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-2c52016 elementor-widget elementor-widget-text-editor" data-id="2c52016" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><!-- [if gte mso 9]><xml><br /> <o:OfficeDocumentSettings><br />  <o:RelyOnVML/><br />  <o:AllowPNG/><br /> </o:OfficeDocumentSettings><br /></xml><![endif]--><!-- [if gte mso 9]><xml><br /> <w:WordDocument><br />  <w:View>Normal</w:View><br />  <w:Zoom>0</w:Zoom><br />  <w:TrackMoves/><br />  <w:TrackFormatting/><br />  <w:HyphenationZone>21</w:HyphenationZone><br />  <w:PunctuationKerning/><br />  <w:ValidateAgainstSchemas/><br />  <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid><br />  <w:IgnoreMixedContent>false</w:IgnoreMixedContent><br />  <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText><br />  <w:DoNotPromoteQF/><br />  <w:LidThemeOther>BG</w:LidThemeOther><br />  <w:LidThemeAsian>JA</w:LidThemeAsian><br />  <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript><br />  <w:Compatibility><br />   <w:BreakWrappedTables/><br />   <w:SnapToGridInCell/><br />   <w:WrapTextWithPunct/><br />   <w:UseAsianBreakRules/><br />   <w:DontGrowAutofit/><br />   <w:SplitPgBreakAndParaMark/><br />   <w:EnableOpenTypeKerning/><br />   <w:DontFlipMirrorIndents/><br />   <w:OverrideTableStyleHps/><br />   <w:UseFELayout/><br />  </w:Compatibility><br />  <m:mathPr><br />   <m:mathFont m:val="Cambria Math"/><br />   <m:brkBin m:val="before"/><br />   <m:brkBinSub m:val="--"/><br />   <m:smallFrac m:val="off"/><br />   <m:dispDef/><br />   <m:lMargin m:val="0"/><br />   <m:rMargin m:val="0"/><br />   <m:defJc m:val="centerGroup"/><br />   <m:wrapIndent m:val="1440"/><br />   <m:intLim m:val="subSup"/><br />   <m:naryLim m:val="undOvr"/><br />  </m:mathPr></w:WordDocument><br /></xml><![endif]--><!-- [if gte mso 9]><xml><br /> <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false" DefSemiHidden="false" DefQFormat="false" DefPriority="99" LatentStyleCount="371"><br />  <w:LsdException Locked="false" Priority="0" QFormat="true" Name="Normal"/><br />  <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 1"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 2"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 3"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 4"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 5"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 6"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 7"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 8"/><br />  <w:LsdException Locked="false" Priority="9" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="heading 9"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 6"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 7"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 8"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index 9"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 1"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 2"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 3"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 4"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 5"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 6"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 7"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 8"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" Name="toc 9"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Normal Indent"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="footnote text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="annotation text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="header"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="footer"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="index heading"/><br />  <w:LsdException Locked="false" Priority="35" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="caption"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="table of figures"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="envelope address"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="envelope return"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="footnote reference"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="annotation reference"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="line number"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="page number"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="endnote reference"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="endnote text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="table of authorities"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="macro"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="toa heading"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Bullet"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Number"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Bullet 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Bullet 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Bullet 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Bullet 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Number 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Number 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Number 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Number 5"/><br />  <w:LsdException Locked="false" Priority="10" QFormat="true" Name="Title"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Closing"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Signature"/><br />  <w:LsdException Locked="false" Priority="1" SemiHidden="true" UnhideWhenUsed="true" Name="Default Paragraph Font"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text Indent"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Continue"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Continue 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Continue 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Continue 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="List Continue 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Message Header"/><br />  <w:LsdException Locked="false" Priority="11" QFormat="true" Name="Subtitle"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Salutation"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Date"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text First Indent"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text First Indent 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Note Heading"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text Indent 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Body Text Indent 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Block Text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Hyperlink"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="FollowedHyperlink"/><br />  <w:LsdException Locked="false" Priority="22" QFormat="true" Name="Strong"/><br />  <w:LsdException Locked="false" Priority="20" QFormat="true" Name="Emphasis"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Document Map"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Plain Text"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="E-mail Signature"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Top of Form"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Bottom of Form"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Normal (Web)"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Acronym"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Address"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Cite"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Code"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Definition"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Keyboard"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Preformatted"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Sample"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Typewriter"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="HTML Variable"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Normal Table"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="annotation subject"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="No List"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Outline List 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Outline List 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Outline List 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Simple 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Simple 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Simple 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Classic 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Classic 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Classic 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Classic 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Colorful 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Colorful 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Colorful 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Columns 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Columns 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Columns 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Columns 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Columns 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 6"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 7"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Grid 8"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 4"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 5"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 6"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 7"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table List 8"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table 3D effects 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table 3D effects 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table 3D effects 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Contemporary"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Elegant"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Professional"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Subtle 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Subtle 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Web 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Web 2"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Web 3"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Balloon Text"/><br />  <w:LsdException Locked="false" Priority="39" Name="Table Grid"/><br />  <w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true" Name="Table Theme"/><br />  <w:LsdException Locked="false" SemiHidden="true" Name="Placeholder Text"/><br />  <w:LsdException Locked="false" Priority="1" QFormat="true" Name="No Spacing"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 1"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 1"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 1"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 1"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 1"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 1"/><br />  <w:LsdException Locked="false" SemiHidden="true" Name="Revision"/><br />  <w:LsdException Locked="false" Priority="34" QFormat="true" Name="List Paragraph"/><br />  <w:LsdException Locked="false" Priority="29" QFormat="true" Name="Quote"/><br />  <w:LsdException Locked="false" Priority="30" QFormat="true" Name="Intense Quote"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 1"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 1"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 1"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 1"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 1"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 1"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 1"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 1"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 2"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 2"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 2"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 2"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 2"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 2"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 2"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 2"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 2"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 2"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 2"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 2"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 2"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 2"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 3"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 3"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 3"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 3"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 3"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 3"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 3"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 3"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 3"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 3"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 3"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 3"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 3"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 3"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 4"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 4"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 4"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 4"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 4"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 4"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 4"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 4"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 4"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 4"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 4"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 4"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 4"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 4"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 5"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 5"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 5"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 5"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 5"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 5"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 5"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 5"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 5"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 5"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 5"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 5"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 5"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 5"/><br />  <w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 6"/><br />  <w:LsdException Locked="false" Priority="61" Name="Light List Accent 6"/><br />  <w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 6"/><br />  <w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 6"/><br />  <w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 6"/><br />  <w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 6"/><br />  <w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 6"/><br />  <w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 6"/><br />  <w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 6"/><br />  <w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 6"/><br />  <w:LsdException Locked="false" Priority="70" Name="Dark List Accent 6"/><br />  <w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 6"/><br />  <w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 6"/><br />  <w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 6"/><br />  <w:LsdException Locked="false" Priority="19" QFormat="true" Name="Subtle Emphasis"/><br />  <w:LsdException Locked="false" Priority="21" QFormat="true" Name="Intense Emphasis"/><br />  <w:LsdException Locked="false" Priority="31" QFormat="true" Name="Subtle Reference"/><br />  <w:LsdException Locked="false" Priority="32" QFormat="true" Name="Intense Reference"/><br />  <w:LsdException Locked="false" Priority="33" QFormat="true" Name="Book Title"/><br />  <w:LsdException Locked="false" Priority="37" SemiHidden="true" UnhideWhenUsed="true" Name="Bibliography"/><br />  <w:LsdException Locked="false" Priority="39" SemiHidden="true" UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/><br />  <w:LsdException Locked="false" Priority="41" Name="Plain Table 1"/><br />  <w:LsdException Locked="false" Priority="42" Name="Plain Table 2"/><br />  <w:LsdException Locked="false" Priority="43" Name="Plain Table 3"/><br />  <w:LsdException Locked="false" Priority="44" Name="Plain Table 4"/><br />  <w:LsdException Locked="false" Priority="45" Name="Plain Table 5"/><br />  <w:LsdException Locked="false" Priority="40" Name="Grid Table Light"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 1"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 1"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 1"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 1"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 1"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 1"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 1"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 2"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 2"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 2"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 2"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 2"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 2"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 2"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 3"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 3"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 3"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 3"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 3"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 3"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 3"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 4"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 4"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 4"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 4"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 4"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 4"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 4"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 5"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 5"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 5"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 5"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 5"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 5"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 5"/><br />  <w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light Accent 6"/><br />  <w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 6"/><br />  <w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 6"/><br />  <w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 6"/><br />  <w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 6"/><br />  <w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful Accent 6"/><br />  <w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful Accent 6"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 1"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 1"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 1"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 1"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 1"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 1"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 1"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 2"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 2"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 2"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 2"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 2"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 2"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 2"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 3"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 3"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 3"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 3"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 3"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 3"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 3"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 4"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 4"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 4"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 4"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 4"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 4"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 4"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 5"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 5"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 5"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 5"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 5"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 5"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 5"/><br />  <w:LsdException Locked="false" Priority="46" Name="List Table 1 Light Accent 6"/><br />  <w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 6"/><br />  <w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 6"/><br />  <w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 6"/><br />  <w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 6"/><br />  <w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful Accent 6"/><br />  <w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful Accent 6"/><br /> </w:LatentStyles><br /></xml><![endif]--><!-- [if gte mso 10]></p>
<style>
 /* Style Definitions */<br /> table.MsoNormalTable<br />	{mso-style-name:"Table Normal";<br />	mso-tstyle-rowband-size:0;<br />	mso-tstyle-colband-size:0;<br />	mso-style-noshow:yes;<br />	mso-style-priority:99;<br />	mso-style-parent:"";<br />	mso-padding-alt:0cm 5.4pt 0cm 5.4pt;<br />	mso-para-margin-top:0cm;<br />	mso-para-margin-right:0cm;<br />	mso-para-margin-bottom:8.0pt;<br />	mso-para-margin-left:0cm;<br />	line-height:107%;<br />	mso-pagination:widow-orphan;<br />	font-size:11.0pt;<br />	font-family:"Calibri",sans-serif;<br />	mso-ascii-font-family:Calibri;<br />	mso-ascii-theme-font:minor-latin;<br />	mso-hansi-font-family:Calibri;<br />	mso-hansi-theme-font:minor-latin;<br />	mso-bidi-font-family:"Times New Roman";<br />	mso-bidi-theme-font:minor-bidi;}<br /></style>
<p><![endif]--></p><p>You add an <strong>action</strong> <strong>attribute</strong> to the form to define where the submitted data goes. In the example above the submitted information will be <strong>handled</strong> by the script of the <strong>home.html</strong> document.</p><p>In this case, the URL is called <strong>relative</strong>. Relative URLs are compared to the <strong>current</strong> <strong>URL</strong> that is loaded in the Web browser. We can use <strong>slashes</strong> and the &#8220;<strong>double</strong> <strong>dot</strong>&#8221; notation to address a different folder or the parent folder of the virtual folder structure on the Web server.</p><p><b><span lang="EN-US" style="mso-ansi-language: EN-US;">Full URLs </span></b><span lang="EN-US" style="mso-ansi-language: EN-US;">are used to submit the form data to completely <strong>different</strong> <strong>Web</strong> <strong>site</strong>. For example, a Web site may embed an HTML form for newsletter subscription which submits its form fields to an <strong>external</strong> Web site, which provides email newsletter services.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-d1d71e5 elementor-widget elementor-widget-heading" data-id="d1d71e5" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Form Method Attribute</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-aee5286 elementor-widget elementor-widget-text-editor" data-id="aee5286" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>In the following example, we have added an HTTP <strong>method</strong> <strong>attribute</strong> to the form. The method can be either <strong>GET</strong> or <strong>POST</strong>. Both methods are used to <strong>transfer</strong> <strong>data</strong> from client to server.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-73e2af2 elementor-widget elementor-widget-image" data-id="73e2af2" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="483" src="https://softuni.org/wp-content/uploads/2022/06/Adding-Method-To-HTML-Forms-e1656487470842.png" class="attachment-large size-large wp-image-21590" alt="" srcset="https://softuni.org/wp-content/uploads/2022/06/Adding-Method-To-HTML-Forms-e1656487470842.png 1024w, https://softuni.org/wp-content/uploads/2022/06/Adding-Method-To-HTML-Forms-e1656487470842-300x142.png 300w, https://softuni.org/wp-content/uploads/2022/06/Adding-Method-To-HTML-Forms-e1656487470842-768x362.png 768w, https://softuni.org/wp-content/uploads/2022/06/Adding-Method-To-HTML-Forms-e1656487470842-600x283.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
				<div class="elementor-element elementor-element-dbafd5f elementor-widget elementor-widget-text-editor" data-id="dbafd5f" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The <strong>GET</strong> method transfers data in the URL with a <strong>query</strong> <strong>string</strong>. Therefore, the <strong>length</strong> of the URL <strong>is</strong> <strong>limited</strong>. GET is preferable for images, word documents or data that does not require any security.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-87e0925 elementor-widget elementor-widget-text-editor" data-id="87e0925" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong>POST</strong> is an HTTP method that encodes form data in a <strong>specified</strong> <strong>format</strong> and sends it to the server via the <strong>HTTP</strong> <strong>message</strong> <strong>body</strong>. The World Wide Web frequently uses POST to send <strong>user-generated data</strong> or an <strong>uploaded</strong> <strong>file</strong> to the web server.</p><p>In the example above, you can see the standard <strong>URL encoding</strong> used to encode the HTML form fields and URLs. The URL encoding is a long string of <strong>name</strong> and <strong>value</strong> <strong>pairs</strong>. Each pair is separated from one another by an ampersand (&amp;) sign and each name is separated from the value by an equals (=) sign. For example: <strong>key1</strong>=<strong>value1</strong>&amp;<strong>key2</strong>=<strong>value2</strong>.</p><p>This <strong>encoding </strong>can be used for text and other data fields, but it does not support <strong>file upload fields.</strong> We can overcome this limitation by switching to <strong>multipart encoding.</strong></p>								</div>
				</div>
				<div class="elementor-element elementor-element-d4f085b elementor-widget elementor-widget-spacer" data-id="d4f085b" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-103ecbb elementor-widget elementor-widget-heading" data-id="103ecbb" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Differences Between GET and POST Methods</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-fe937c1 elementor-widget elementor-widget-text-editor" data-id="fe937c1" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>If you want to send one or two <strong>simple</strong> <strong>variables</strong> (for example search parameters) to your server, then you <strong>use</strong> <strong>GET</strong>. However, if your form includes <strong>passwords</strong>, <strong>credit</strong> <strong>card</strong> <strong>information</strong>, or any other data that needs extra <strong>protection</strong> then <strong>POST</strong> is a better choice. You can see a side to side <strong>comparison</strong> between the two methods in the example below.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-855b4b6 elementor-widget elementor-widget-spacer" data-id="855b4b6" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-ff5d40e elementor-widget elementor-widget-image" data-id="ff5d40e" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="768" src="https://softuni.org/wp-content/uploads/2022/06/GET-and-POST-Methods-Comparison.png" class="attachment-large size-large wp-image-21600" alt="GET and POST Methods Comparison" srcset="https://softuni.org/wp-content/uploads/2022/06/GET-and-POST-Methods-Comparison.png 1024w, https://softuni.org/wp-content/uploads/2022/06/GET-and-POST-Methods-Comparison-300x225.png 300w, https://softuni.org/wp-content/uploads/2022/06/GET-and-POST-Methods-Comparison-768x576.png 768w, https://softuni.org/wp-content/uploads/2022/06/GET-and-POST-Methods-Comparison-600x450.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
				<div class="elementor-element elementor-element-c7e7d1a elementor-widget elementor-widget-spacer" data-id="c7e7d1a" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-551543a elementor-widget elementor-widget-heading" data-id="551543a" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Lesson Topics</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-4a0f072 elementor-widget elementor-widget-text-editor" data-id="4a0f072" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<div><div>In this tutorial, we cover the following topics:</div></div><ul><li><p><strong>HTML Form Structure<br /></strong></p></li><li><p><strong>Form Action Attribute<br /></strong></p></li><li><p><strong>Form Method Attribute</strong></p></li><li><strong>Differences Between GET and POST Methods</strong></li></ul>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-3381a86 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="3381a86" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0cf09e3" data-id="0cf09e3" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-5b63bc4 elementor-widget elementor-widget-spacer" data-id="5b63bc4" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-a0aff0b elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="a0aff0b" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-48c6c18" data-id="48c6c18" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-de5c938 elementor-widget elementor-widget-heading" data-id="de5c938" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Lesson Slides</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-37e6760 elementor-widget elementor-widget-pdfjs_viewer" data-id="37e6760" data-element_type="widget" data-widget_type="pdfjs_viewer.default">
				<div class="elementor-widget-container">
					<iframe src="https://softuni.org/wp-content/plugins/pdf-viewer-for-elementor/assets/pdfjs/web/viewer.html?file=https://softuni.org/wp-content/uploads/2022/06/Dev-Concepts-Episode-38-HTML-Form-Submissions.pdf&amp;embedded=true" style="display: block; margin-left: auto; margin-right: auto; width: 100%; height: 800px;" frameborder="1" marginheight="0px" marginwidth="0px" allowfullscreen></iframe>				</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				</div>
		<p>The post <a href="https://softuni.org/dev-concepts/handling-an-html-form/">Handling an HTML Form – GET and POST Methods, and Data Encoding [Dev Concepts #38]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://softuni.org/dev-concepts/handling-an-html-form/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Understanding HTTP Dev Tools [Dev Concepts #37]</title>
		<link>https://softuni.org/dev-concepts/understanding-http-dev-tools-37/</link>
					<comments>https://softuni.org/dev-concepts/understanding-http-dev-tools-37/#respond</comments>
		
		<dc:creator><![CDATA[Nikol Ruseva]]></dc:creator>
		<pubDate>Fri, 24 Jun 2022 06:00:00 +0000</pubDate>
				<category><![CDATA[Dev Concepts]]></category>
		<category><![CDATA[browsertools]]></category>
		<category><![CDATA[clienttool]]></category>
		<category><![CDATA[devconcept]]></category>
		<category><![CDATA[devtools]]></category>
		<category><![CDATA[HTTP]]></category>
		<category><![CDATA[httprequest]]></category>
		<category><![CDATA[httpresponse]]></category>
		<category><![CDATA[networkinspector]]></category>
		<category><![CDATA[networkprotocol]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[software engineering]]></category>
		<guid isPermaLink="false">https://softuni.org/?p=21404</guid>

					<description><![CDATA[<p>In this lesson, we talk about the browser Dev Tools and explain how to use them to your best advantage. Learn how the network inspector and client tools can ease your work as a developer.</p>
<p>The post <a href="https://softuni.org/dev-concepts/understanding-http-dev-tools-37/">Understanding HTTP Dev Tools [Dev Concepts #37]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="21404" class="elementor elementor-21404" data-elementor-post-type="post">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-5d5405e elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5d5405e" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0d32134" data-id="0d32134" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-f9c2680 elementor-widget elementor-widget-spacer" data-id="f9c2680" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-9216798 elementor-widget elementor-widget-text-editor" data-id="9216798" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The <strong>HTTP flow</strong> of <strong>requests</strong> and <strong>responses</strong> can give you useful information about how the web application <strong>communicates</strong> with the <strong>server</strong>. It can <strong>improve</strong> your software development process, and <strong>save</strong> you time and effort when debugging.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-88292b4 elementor-widget elementor-widget-video" data-id="88292b4" data-element_type="widget" data-settings="{&quot;youtube_url&quot;:&quot;https:\/\/youtu.be\/eQJyA9TQNGQ&quot;,&quot;video_type&quot;:&quot;youtube&quot;,&quot;controls&quot;:&quot;yes&quot;}" data-widget_type="video.default">
				<div class="elementor-widget-container">
							<div class="elementor-wrapper elementor-open-inline">
			<div class="elementor-video"></div>		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-dc9b80c elementor-widget elementor-widget-spacer" data-id="dc9b80c" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-fcf2cc7 elementor-widget elementor-widget-heading" data-id="fcf2cc7" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-large">Built-in Browser Tools</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-c3c81fe elementor-widget elementor-widget-text-editor" data-id="c3c81fe" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Modern Web browsers have a set of <b>built-in tools</b> for <b>monitoring</b> the <b>HTTP traffic</b>. The functionality of these tools includes also <b>inspecting </b>the already rendered HTML elements and <b>debugging </b>right into the browser. </p>								</div>
				</div>
				<section class="elementor-section elementor-inner-section elementor-element elementor-element-34c3f5c elementor-section-content-middle elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="34c3f5c" data-element_type="section">
						<div class="elementor-container elementor-column-gap-custom">
					<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-4ec8e76" data-id="4ec8e76" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-16e5ea8 elementor-widget elementor-widget-image" data-id="16e5ea8" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="421" height="314" src="https://softuni.org/wp-content/uploads/2022/06/Inspect-Tutorial-Dev-Concepts-37.png" class="attachment-large size-large wp-image-21407" alt="Open Inspect Menu In Browser" srcset="https://softuni.org/wp-content/uploads/2022/06/Inspect-Tutorial-Dev-Concepts-37.png 421w, https://softuni.org/wp-content/uploads/2022/06/Inspect-Tutorial-Dev-Concepts-37-300x224.png 300w" sizes="(max-width: 421px) 100vw, 421px" />															</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-e7daf9e" data-id="e7daf9e" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-28a73ff elementor-widget elementor-widget-text-editor" data-id="28a73ff" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Chrome Developer Tools can be accessed by pressing the <b>[F12] key</b> in Google Chrome. Another way is to <b>right-click</b> anywhere on the Web page and select <b>[Inspect]</b> in the context menu.</p><p>This opens a panel with several tabs. The <b>Elements </b>tab shows the HTML used to build the current Web page. It holds information about the UI controls in <b>the Document Object Model (DOM) tree</b>.</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<div class="elementor-element elementor-element-f1136a1 elementor-widget elementor-widget-spacer" data-id="f1136a1" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<section class="elementor-section elementor-inner-section elementor-element elementor-element-9ef8f95 elementor-section-content-middle elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="9ef8f95" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-4d9e4fa" data-id="4d9e4fa" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-1cf8226 elementor-widget elementor-widget-text-editor" data-id="1cf8226" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The <b>Console </b>tab shows <b>error</b><b>s </b>and <b>logs </b>for the currently loaded Web Page. The tab is also used for executing <b>JavaScript commands </b>and interacting with the page.</p><p>You can set <strong>breakpoints</strong> and <strong>evaluate</strong> <strong>expressions</strong> in JavaScript through the <strong>Sources</strong> tab. All <b>files </b>that were used to make the website are listed here.</p>								</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-5301659" data-id="5301659" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-2f6b87b elementor-widget elementor-widget-image" data-id="2f6b87b" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="672" src="https://softuni.org/wp-content/uploads/2022/05/error-404-6052476_1920-1024x672.png" class="attachment-large size-large wp-image-21408" alt="Error 404! Image" srcset="https://softuni.org/wp-content/uploads/2022/05/error-404-6052476_1920-1024x672.png 1024w, https://softuni.org/wp-content/uploads/2022/05/error-404-6052476_1920-300x197.png 300w, https://softuni.org/wp-content/uploads/2022/05/error-404-6052476_1920-768x504.png 768w, https://softuni.org/wp-content/uploads/2022/05/error-404-6052476_1920-1536x1008.png 1536w, https://softuni.org/wp-content/uploads/2022/05/error-404-6052476_1920-600x394.png 600w, https://softuni.org/wp-content/uploads/2022/05/error-404-6052476_1920.png 1920w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<div class="elementor-element elementor-element-9aa6695 elementor-widget elementor-widget-spacer" data-id="9aa6695" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-2c52016 elementor-widget elementor-widget-text-editor" data-id="2c52016" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>To <b>monitor the data </b>exchanged between the current  page and the Web server, we use the <b>Network </b>tab. This tab is commonly used to confirm that resources are downloaded or uploaded correctly.</p><p>When you click on a link, the browser sends multiple <b>requests </b>to the server regarding different elements of the page. The HTML required to render the page is sent back in the form of <b>responses </b>from the server. There is information about every response that includes <b>HTTP request URL</b>, the <b>request method</b>, remote server IP address and port, <b>status code </b>and many other technical details.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-febddd3 e-transform elementor-widget elementor-widget-image" data-id="febddd3" data-element_type="widget" data-settings="{&quot;_transform_scale_effect&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0.6999999999999999555910790149937383830547332763671875,&quot;sizes&quot;:[]},&quot;_transform_scale_effect_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_scale_effect_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="890" height="465" src="https://softuni.org/wp-content/uploads/2022/05/Request-Response-e1656004186580.png" class="attachment-large size-large wp-image-21409" alt="HTTP Requests and Responses Traffic" srcset="https://softuni.org/wp-content/uploads/2022/05/Request-Response-e1656004186580.png 890w, https://softuni.org/wp-content/uploads/2022/05/Request-Response-e1656004186580-300x157.png 300w, https://softuni.org/wp-content/uploads/2022/05/Request-Response-e1656004186580-768x401.png 768w, https://softuni.org/wp-content/uploads/2022/05/Request-Response-e1656004186580-600x313.png 600w" sizes="(max-width: 890px) 100vw, 890px" />															</div>
				</div>
				<div class="elementor-element elementor-element-7c1798e elementor-widget elementor-widget-heading" data-id="7c1798e" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Client Tools</h2>				</div>
				</div>
				<section class="elementor-section elementor-inner-section elementor-element elementor-element-49cf79f elementor-section-full_width elementor-section-content-middle elementor-section-height-default elementor-section-height-default" data-id="49cf79f" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-ebd9c94" data-id="ebd9c94" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-349a909 elementor-widget elementor-widget-text-editor" data-id="349a909" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Another useful tool for developers who need information on HTTP traffic is the <b>Postman HTTP client</b>. This tool is used for <b>composing </b>and <b>sending </b>requests, <b>analyzing </b>HTTP responses from the server for testing, <b>debugging </b>server APIs and for <b>resolving </b>technical <b>issues </b>during the software development process.</p>								</div>
				</div>
					</div>
		</div>
				<div class="elementor-column elementor-col-50 elementor-inner-column elementor-element elementor-element-c77c165" data-id="c77c165" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-20f1857 elementor-widget elementor-widget-image" data-id="20f1857" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img loading="lazy" decoding="async" width="1024" height="386" src="https://softuni.org/wp-content/uploads/2022/05/x1_QOx_tPV5wJnhTzAGhfIiLA.png.pagespeed.ic_.8CDwgq7rJK-e1656003104260-1024x386.png" class="attachment-large size-large wp-image-21410" alt="Postman Client Tool Logo" srcset="https://softuni.org/wp-content/uploads/2022/05/x1_QOx_tPV5wJnhTzAGhfIiLA.png.pagespeed.ic_.8CDwgq7rJK-e1656003104260-1024x386.png 1024w, https://softuni.org/wp-content/uploads/2022/05/x1_QOx_tPV5wJnhTzAGhfIiLA.png.pagespeed.ic_.8CDwgq7rJK-e1656003104260-768x290.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" />															</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<div class="elementor-element elementor-element-aee5286 elementor-widget elementor-widget-text-editor" data-id="aee5286" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>With <b>Postman </b>you can <b>create </b>an HTTP request, <b>send </b>it to the Web server, <b>view </b>the HTTP response, and <b>generate </b>a <b>source code </b>to execute the HTTP request in many languages, such as <b>JavaScript</b>, <b>C#,</b> <b>Java</b>, <b>Python</b>, <b>PHP </b>and many others.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-801da90 elementor-widget elementor-widget-text-editor" data-id="801da90" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span data-preserver-spaces="true">Another alternative for an HTTP client tool is the <b>Insomnia Core Rest Client</b>. In case you prefer a Web-based HTTP tool, you can try <b>Hoppscotch</b>.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-d523d39 elementor-widget elementor-widget-spacer" data-id="d523d39" data-element_type="widget" data-widget_type="spacer.default">
				<div class="elementor-widget-container">
							<div class="elementor-spacer">
			<div class="elementor-spacer-inner"></div>
		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-72baa39 elementor-widget elementor-widget-heading" data-id="72baa39" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Lesson Topics</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-4a0f072 elementor-widget elementor-widget-text-editor" data-id="4a0f072" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<div><div>In this tutorial, we cover the following topics:</div></div><ul><li><p><strong>Network Inspector</strong></p></li><li><p><strong>Postman Client Tool<br /></strong></p></li><li><p><strong>Sending and Analyzing HTTP Requests</strong></p></li></ul>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-3381a86 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="3381a86" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0cf09e3" data-id="0cf09e3" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
							</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-a0aff0b elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="a0aff0b" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-48c6c18" data-id="48c6c18" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-6fa2400 elementor-widget elementor-widget-heading" data-id="6fa2400" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-xl">Lesson Slides</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-37e6760 elementor-widget elementor-widget-pdfjs_viewer" data-id="37e6760" data-element_type="widget" data-widget_type="pdfjs_viewer.default">
				<div class="elementor-widget-container">
					<iframe src="https://softuni.org/wp-content/plugins/pdf-viewer-for-elementor/assets/pdfjs/web/viewer.html?file=https://softuni.org/wp-content/uploads/2022/06/Dev-Concepts-Episode-37-HTTP-Dev-Tools-1.pdf&amp;embedded=true" style="display: block; margin-left: auto; margin-right: auto; width: 100%; height: 800px;" frameborder="1" marginheight="0px" marginwidth="0px" allowfullscreen></iframe>				</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				</div>
		<p>The post <a href="https://softuni.org/dev-concepts/understanding-http-dev-tools-37/">Understanding HTTP Dev Tools [Dev Concepts #37]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://softuni.org/dev-concepts/understanding-http-dev-tools-37/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>How to Become Google Expert Developer? [Dev Talks #3]</title>
		<link>https://softuni.org/dev-talks/how-to-become-google-expert-developer/</link>
					<comments>https://softuni.org/dev-talks/how-to-become-google-expert-developer/#respond</comments>
		
		<dc:creator><![CDATA[Luben Lubenov]]></dc:creator>
		<pubDate>Thu, 16 Jun 2022 14:10:31 +0000</pubDate>
				<category><![CDATA[Dev Talks]]></category>
		<category><![CDATA[data management]]></category>
		<category><![CDATA[data storage]]></category>
		<category><![CDATA[databases]]></category>
		<category><![CDATA[DBMS]]></category>
		<category><![CDATA[devconcept]]></category>
		<category><![CDATA[MongoDB]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[NoSQL]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[RDBMS]]></category>
		<category><![CDATA[relational database]]></category>
		<category><![CDATA[software engineering]]></category>
		<guid isPermaLink="false">https://softuni.org/?p=21300</guid>

					<description><![CDATA[<p>Say hello to Iliya Idakiev. He will take you into the world of Google Developer Experts</p>
<p>The post <a href="https://softuni.org/dev-talks/how-to-become-google-expert-developer/">How to Become Google Expert Developer? [Dev Talks #3]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="21300" class="elementor elementor-21300" data-elementor-post-type="post">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-5d5405e elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5d5405e" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0d32134" data-id="0d32134" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-9216798 elementor-widget elementor-widget-text-editor" data-id="9216798" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>Meet <strong>Iliya Idakiev</strong>. He is a <strong>Google Developer Expert</strong> (GDE) in Angular and Web Technologies and he has been working with <strong>JavaScript</strong> for over 7 years. He teaches at <strong>Sofia University</strong> and has been running <strong>his own company</strong> (<strong>Hillgrand</strong>) for almost 5 years where he develops various <strong>web applications</strong>. He likes to organize and participate in <strong>JavaScript</strong> events and he and his team have a <strong>YouTube</strong> channel (<strong>commitjs</strong>). </p><p>Today he is here to answer some questions you probably have about the process of becoming a GDE.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-88292b4 elementor-widget elementor-widget-video" data-id="88292b4" data-element_type="widget" data-settings="{&quot;youtube_url&quot;:&quot;https:\/\/youtu.be\/lxmIZGWD8gs&quot;,&quot;video_type&quot;:&quot;youtube&quot;,&quot;controls&quot;:&quot;yes&quot;}" data-widget_type="video.default">
				<div class="elementor-widget-container">
							<div class="elementor-wrapper elementor-open-inline">
			<div class="elementor-video"></div>		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-51a0f67 elementor-widget elementor-widget-heading" data-id="51a0f67" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">What inspired you to become a developer?</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-c3c81fe elementor-widget elementor-widget-text-editor" data-id="c3c81fe" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><img loading="lazy" decoding="async" class="size-medium wp-image-21304 alignleft" src="https://softuni.org/wp-content/uploads/2022/06/01-300x200.jpg" alt="" width="300" height="200" srcset="https://softuni.org/wp-content/uploads/2022/06/01-300x200.jpg 300w, https://softuni.org/wp-content/uploads/2022/06/01-1024x683.jpg 1024w, https://softuni.org/wp-content/uploads/2022/06/01-768x512.jpg 768w, https://softuni.org/wp-content/uploads/2022/06/01-1536x1024.jpg 1536w, https://softuni.org/wp-content/uploads/2022/06/01-2048x1365.jpg 2048w, https://softuni.org/wp-content/uploads/2022/06/01-600x400.jpg 600w" sizes="(max-width: 300px) 100vw, 300px" />&#8220;My experience began at <strong>University</strong>. My major was <strong>Informatics</strong>. I was studying <strong>C++ </strong>and also working with <strong>.NET</strong> and <strong>C#</strong>. Then I decided to learn <strong>JavaScript</strong>. Shortly after that, I started teaching JavaScript and opened my own company.&#8221;</p>								</div>
				</div>
				<div class="elementor-element elementor-element-f908f5c elementor-widget elementor-widget-heading" data-id="f908f5c" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">How did you become a Google Developer Expert?</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-62dcdc3 elementor-widget elementor-widget-text-editor" data-id="62dcdc3" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><img loading="lazy" decoding="async" class="size-medium wp-image-21305 alignright" src="https://softuni.org/wp-content/uploads/2022/06/02-300x200.jpg" alt="" width="300" height="200" srcset="https://softuni.org/wp-content/uploads/2022/06/02-300x200.jpg 300w, https://softuni.org/wp-content/uploads/2022/06/02-1024x683.jpg 1024w, https://softuni.org/wp-content/uploads/2022/06/02-768x512.jpg 768w, https://softuni.org/wp-content/uploads/2022/06/02-1536x1025.jpg 1536w, https://softuni.org/wp-content/uploads/2022/06/02-2048x1366.jpg 2048w, https://softuni.org/wp-content/uploads/2022/06/02-600x400.jpg 600w" sizes="(max-width: 300px) 100vw, 300px" />&#8220;To be a <strong>Google Developer Expert</strong> means to be recognized by Google for the things that you do for certain technologies. I wanted for a long time to become a <strong>Google Angular Expert</strong>. I was organizing events and a lot of courses. I started to go to conferences and I met with a lot of people who were already Google Developer Experts. So one day I decided to go on several interviews and everything went pretty smooth.&#8221;</p>								</div>
				</div>
				<div class="elementor-element elementor-element-44d02cd elementor-widget elementor-widget-heading" data-id="44d02cd" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">What is the process of becoming a Google Developer Expert?</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-4a0f072 elementor-widget elementor-widget-text-editor" data-id="4a0f072" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><em><img loading="lazy" decoding="async" class="size-medium wp-image-21307 alignright" src="https://softuni.org/wp-content/uploads/2022/06/contributing-300x200.jpeg" alt="" width="300" height="200" srcset="https://softuni.org/wp-content/uploads/2022/06/contributing-300x200.jpeg 300w, https://softuni.org/wp-content/uploads/2022/06/contributing-1024x682.jpeg 1024w, https://softuni.org/wp-content/uploads/2022/06/contributing-768x512.jpeg 768w, https://softuni.org/wp-content/uploads/2022/06/contributing-600x400.jpeg 600w, https://softuni.org/wp-content/uploads/2022/06/contributing.jpeg 1400w" sizes="(max-width: 300px) 100vw, 300px" /></em>&#8220;First, you have to be <strong>recommended</strong> by another Google Developer Expert and you must send all the <strong>background</strong> that you have (open-source projects, events, courses, etc.). You need to <strong>contribute to the community</strong>. The person from Google will check your background and you will have 2 or 3 <strong>interviews</strong> (personal and technical). Among all the benefits of becoming a Google Developer Expert, the biggest one for me is that you get <strong>recognized</strong> by Google and people look at you differently.&#8221;</p>								</div>
				</div>
				<div class="elementor-element elementor-element-a506182 elementor-widget elementor-widget-heading" data-id="a506182" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">What is your experience with contributing to open-source projects?</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-309ffa6 elementor-widget elementor-widget-text-editor" data-id="309ffa6" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>&#8220;When you are working on some application and you are using some modules, at a certain point you will start to discover issues with these modules or new features that can be added. If you have time, you can <strong>fix these issues or add new features</strong> and make a pull request. This is a way to become a contributor.</p><p>Another way is to <strong>open-source the useful libraries that you developed</strong> in your projects.&#8221;</p>								</div>
				</div>
				<div class="elementor-element elementor-element-2dff924 elementor-widget elementor-widget-heading" data-id="2dff924" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">How do you relax?</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-f47c783 elementor-widget elementor-widget-text-editor" data-id="f47c783" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><em><img loading="lazy" decoding="async" class="size-medium wp-image-21310 alignleft" src="https://softuni.org/wp-content/uploads/2022/06/template-code-scaled-1-300x200.jpg" alt="" width="300" height="200" srcset="https://softuni.org/wp-content/uploads/2022/06/template-code-scaled-1-300x200.jpg 300w, https://softuni.org/wp-content/uploads/2022/06/template-code-scaled-1-768x512.jpg 768w, https://softuni.org/wp-content/uploads/2022/06/template-code-scaled-1-600x400.jpg 600w, https://softuni.org/wp-content/uploads/2022/06/template-code-scaled-1.jpg 804w" sizes="(max-width: 300px) 100vw, 300px" /></em>&#8220;I like <strong>walking</strong> and <strong>traveling</strong> to peaceful and beautiful places. I was a DJ before and still do it from time to time.&#8221;</p>								</div>
				</div>
				<div class="elementor-element elementor-element-129d9c5 elementor-widget elementor-widget-heading" data-id="129d9c5" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">What are the projects that you are working on?</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-b318581 elementor-widget elementor-widget-text-editor" data-id="b318581" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><img loading="lazy" decoding="async" class="wp-image-21306 alignright" src="https://softuni.org/wp-content/uploads/2022/06/03-300x200.jpg" alt="" width="291" height="194" srcset="https://softuni.org/wp-content/uploads/2022/06/03-300x200.jpg 300w, https://softuni.org/wp-content/uploads/2022/06/03-1024x683.jpg 1024w, https://softuni.org/wp-content/uploads/2022/06/03-768x512.jpg 768w, https://softuni.org/wp-content/uploads/2022/06/03-1536x1024.jpg 1536w, https://softuni.org/wp-content/uploads/2022/06/03-2048x1365.jpg 2048w, https://softuni.org/wp-content/uploads/2022/06/03-600x400.jpg 600w" sizes="(max-width: 291px) 100vw, 291px" /></p><p>&#8220;I mostly do private <strong>JavaScript-related training</strong>. I like <strong>live coding</strong>, which is much more interesting and effective for the students. One of the biggest projects we developed is the <strong>Front-End</strong> of a customer portal for monitoring and controlling off-grid and hybrid power systems. It was very challenging, and I am proud of this project.&#8221;</p>								</div>
				</div>
				<div class="elementor-element elementor-element-b2dfe91 elementor-widget elementor-widget-heading" data-id="b2dfe91" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">When do you realize that you are successful?</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-d778372 elementor-widget elementor-widget-text-editor" data-id="d778372" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>&#8220;This is other people&#8217;s decision, not mine. But I can say that I succeed when I<strong> accomplish my goals</strong>.&#8221;</p>								</div>
				</div>
				<div class="elementor-element elementor-element-22cdae9 elementor-widget elementor-widget-heading" data-id="22cdae9" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">What tips for success would you give?</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-f840f2f elementor-widget elementor-widget-text-editor" data-id="f840f2f" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><em><img loading="lazy" decoding="async" class="size-medium wp-image-20809 alignleft" src="https://softuni.org/wp-content/uploads/2022/05/featureimage-colleagues-looking-at-a-laptop-300x157.jpg" alt="" width="300" height="157" srcset="https://softuni.org/wp-content/uploads/2022/05/featureimage-colleagues-looking-at-a-laptop-300x157.jpg 300w, https://softuni.org/wp-content/uploads/2022/05/featureimage-colleagues-looking-at-a-laptop-1024x536.jpg 1024w, https://softuni.org/wp-content/uploads/2022/05/featureimage-colleagues-looking-at-a-laptop-768x402.jpg 768w, https://softuni.org/wp-content/uploads/2022/05/featureimage-colleagues-looking-at-a-laptop-600x314.jpg 600w, https://softuni.org/wp-content/uploads/2022/05/featureimage-colleagues-looking-at-a-laptop.jpg 1200w" sizes="(max-width: 300px) 100vw, 300px" /></em>&#8220;I think that everyone should find what he/ she is <strong>happy</strong> and <strong>enthusiastic</strong> about and try to become the <strong>best</strong> in it. Do not focus on the money/ salary, but focus on becoming <strong>better</strong> in what you do. <strong>Dedicate</strong> yourself and <strong>do not give up</strong>. This will make you successful.&#8221;</p>								</div>
				</div>
				<div class="elementor-element elementor-element-beadac7 elementor-widget elementor-widget-heading" data-id="beadac7" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">How did you manage to stay motivated?</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-d978151 elementor-widget elementor-widget-text-editor" data-id="d978151" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>&#8220;Going to <strong>meet-ups</strong> and <strong>knowledge sharing</strong> is very good and useful. This will keep you <strong>awake</strong> and <strong>inspired</strong>.&#8221;</p>								</div>
				</div>
				<div class="elementor-element elementor-element-545bb07 elementor-widget elementor-widget-heading" data-id="545bb07" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">What advice will you give to young people who study at University?</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-1ebd013 elementor-widget elementor-widget-text-editor" data-id="1ebd013" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><em><img loading="lazy" decoding="async" class="size-medium wp-image-21308 alignleft" src="https://softuni.org/wp-content/uploads/2022/06/developers-300x197.jpg" alt="" width="300" height="197" srcset="https://softuni.org/wp-content/uploads/2022/06/developers-300x197.jpg 300w, https://softuni.org/wp-content/uploads/2022/06/developers-600x395.jpg 600w, https://softuni.org/wp-content/uploads/2022/06/developers.jpg 768w" sizes="(max-width: 300px) 100vw, 300px" /></em>&#8220;The University is a place where you can learn something that is going to be like a <strong>base</strong> for your life ahead. My advice is to start <strong>teaching</strong> other people as soon as you can because this will make you better in your field. Be a part of the community that is doing what you are doing and try to <strong>solve</strong> other people&#8217;s problems (for example, on Stack Overflow). <strong>Sharing knowledge is amazing!&#8221;</strong></p>								</div>
				</div>
				<div class="elementor-element elementor-element-a6df34e elementor-widget elementor-widget-heading" data-id="a6df34e" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">Do you have a favorite book on programming?</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-61a63aa elementor-widget elementor-widget-text-editor" data-id="61a63aa" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>&#8220;I would recommend books like &#8220;<strong><em>Clean Code&#8221;</em>,</strong> &#8220;<strong><em>Clean Architecture&#8221;,</em></strong> and &#8220;<strong><em>Enterprise System Architecture&#8221;</em></strong>. It is wise to invest time in something useful for your field. Also, <strong>GitHub</strong> is the best “book” that I would recommend.&#8221;</p>								</div>
				</div>
				<div class="elementor-element elementor-element-7d1cb84 elementor-widget elementor-widget-heading" data-id="7d1cb84" data-element_type="widget" data-widget_type="heading.default">
				<div class="elementor-widget-container">
					<h2 class="elementor-heading-title elementor-size-default">How do you see yourself in 5 years?</h2>				</div>
				</div>
				<div class="elementor-element elementor-element-9c7c478 elementor-widget elementor-widget-text-editor" data-id="9c7c478" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><em><img loading="lazy" decoding="async" class=" wp-image-21309 alignleft" src="https://softuni.org/wp-content/uploads/2022/06/Idakiev-300x300.png" alt="" width="224" height="224" srcset="https://softuni.org/wp-content/uploads/2022/06/Idakiev-300x300.png 300w, https://softuni.org/wp-content/uploads/2022/06/Idakiev-150x150.png 150w, https://softuni.org/wp-content/uploads/2022/06/Idakiev-100x100.png 100w, https://softuni.org/wp-content/uploads/2022/06/Idakiev.png 460w" sizes="(max-width: 224px) 100vw, 224px" /></em>&#8220;My goals are to <strong>develop</strong> my company and give my team a better working environment. I see myself still teaching other people and <strong>contributing</strong> to the community.&#8221;</p>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-3381a86 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="3381a86" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0cf09e3" data-id="0cf09e3" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
							</div>
		</div>
					</div>
		</section>
				</div>
		<p>The post <a href="https://softuni.org/dev-talks/how-to-become-google-expert-developer/">How to Become Google Expert Developer? [Dev Talks #3]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://softuni.org/dev-talks/how-to-become-google-expert-developer/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>What is a Database System (DBMS)? [Dev Concepts #36]</title>
		<link>https://softuni.org/dev-concepts/what-is-a-database-system/</link>
					<comments>https://softuni.org/dev-concepts/what-is-a-database-system/#respond</comments>
		
		<dc:creator><![CDATA[Aleksandar Peev]]></dc:creator>
		<pubDate>Thu, 26 May 2022 06:00:00 +0000</pubDate>
				<category><![CDATA[Dev Concepts]]></category>
		<category><![CDATA[data management]]></category>
		<category><![CDATA[data storage]]></category>
		<category><![CDATA[databases]]></category>
		<category><![CDATA[DBMS]]></category>
		<category><![CDATA[devconcept]]></category>
		<category><![CDATA[MongoDB]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[NoSQL]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[RDBMS]]></category>
		<category><![CDATA[relational database]]></category>
		<category><![CDATA[software engineering]]></category>
		<guid isPermaLink="false">https://softuni.org/?p=21165</guid>

					<description><![CDATA[<p>In this lesson, we explain the concept of databases and typical CRUD operations. We will also take a look at relational and NoSQL databases. </p>
<p>The post <a href="https://softuni.org/dev-concepts/what-is-a-database-system/">What is a Database System (DBMS)? [Dev Concepts #36]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></description>
										<content:encoded><![CDATA[		<div data-elementor-type="wp-post" data-elementor-id="21165" class="elementor elementor-21165" data-elementor-post-type="post">
						<section class="elementor-section elementor-top-section elementor-element elementor-element-5d5405e elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="5d5405e" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0d32134" data-id="0d32134" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-9216798 elementor-widget elementor-widget-text-editor" data-id="9216798" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span data-preserver-spaces="true">A </span><strong><span data-preserver-spaces="true">database</span></strong><span data-preserver-spaces="true"> is a collection of data that is organized so that it can be easily </span><strong><span data-preserver-spaces="true">accessed</span></strong><span data-preserver-spaces="true">, </span><strong><span data-preserver-spaces="true">managed</span></strong><span data-preserver-spaces="true">, and </span><strong><span data-preserver-spaces="true">updated</span></strong><span data-preserver-spaces="true">.</span></p><ul><li><span data-preserver-spaces="true">Usually, you need to <strong>store data</strong> that will be <strong>accessible</strong> even after you end the program execution.</span></li><li>One way to do that is by using a <strong>text file</strong>, but this is not scalable and does not provide any <strong>structure</strong>.</li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-46eff64 elementor-widget elementor-widget-text-editor" data-id="46eff64" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong><span style="font-size: 16px;"><img loading="lazy" decoding="async" class="wp-image-21185 alignleft" src="https://softuni.org/wp-content/uploads/2022/05/database-with-server-1-300x244.png" alt="database-with-server" width="218" height="177" srcset="https://softuni.org/wp-content/uploads/2022/05/database-with-server-1-300x244.png 300w, https://softuni.org/wp-content/uploads/2022/05/database-with-server-1.png 455w" sizes="(max-width: 218px) 100vw, 218px" /></span>Databases</strong> <strong>hold</strong> and <strong>manage</strong> data in the back-end systems. Almost all modern software systems use a <strong>database</strong> in some form. The data in <strong>database systems</strong> is organized in <strong>tables</strong>, <strong>collections</strong>, <strong>key-value pairs</strong> or <strong>other structures</strong>. The software, which <strong>manages</strong>, <strong>retrieves</strong> and <strong>manipulates data</strong> in a database, is called <strong>Database Management System(DBMS)</strong>.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-88292b4 elementor-widget elementor-widget-video" data-id="88292b4" data-element_type="widget" data-settings="{&quot;youtube_url&quot;:&quot;https:\/\/youtu.be\/W3fqNuzdJPE&quot;,&quot;video_type&quot;:&quot;youtube&quot;,&quot;controls&quot;:&quot;yes&quot;}" data-widget_type="video.default">
				<div class="elementor-widget-container">
							<div class="elementor-wrapper elementor-open-inline">
			<div class="elementor-video"></div>		</div>
						</div>
				</div>
				<div class="elementor-element elementor-element-3d7dddf elementor-widget elementor-widget-text-editor" data-id="3d7dddf" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h3 style="text-align: center;"><b>Relational and Non-Relational Model</b></h3>								</div>
				</div>
				<div class="elementor-element elementor-element-c3c81fe elementor-widget elementor-widget-text-editor" data-id="c3c81fe" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>In this section, we will explain the difference between these two <strong>database models</strong>:</p><ul><li>The <strong>relational model </strong>is based on <strong>tables</strong> and <strong>relationships.</strong></li><li>The <strong style="font-size: 16px;">non-relational model </strong>is<span style="font-size: 16px;"> based on </span><strong style="font-size: 16px;">collections of documents.</strong></li></ul>								</div>
				</div>
				<div class="elementor-element elementor-element-a6d80c4 elementor-widget elementor-widget-text-editor" data-id="a6d80c4" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>The structure of <strong>relational databases</strong> is <strong>strict</strong>, while the <strong>non-relational</strong> is <strong>not</strong> <strong>so strict</strong>. <strong>SQL databases</strong> regulate the input data, what their format is, how different types of data are connected, etc. <strong>RDBMS</strong> systems manage <strong>relational databases</strong> and expose a universal interface for developers: the <strong>SQL language</strong>. <strong>Relational databases</strong> organize data in tables, which hold <strong>data rows</strong>, and each row holds <strong>columns</strong>.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-396c344 elementor-widget elementor-widget-image" data-id="396c344" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img decoding="async" src="https://softuni.org/wp-content/uploads/elementor/thumbs/relational-vs-nosql-ppe6wwo9em8m7o7us710conv50xdrefn4y0bhss6dw.png" title="relational-vs-nosql" alt="relational-vs-nosql" loading="lazy" />															</div>
				</div>
				<div class="elementor-element elementor-element-809e7fb elementor-widget elementor-widget-text-editor" data-id="809e7fb" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong>Non-Relational</strong> databases have a <strong>dynamic schema</strong>. A <strong>schema </strong>is the structure of the database, which describes all its <strong>objects</strong> (<strong>tables</strong>, <strong>collections</strong>, <strong>views</strong>, and <strong>others</strong>) and <strong>their structures</strong>. The data stored in <strong>NoSQL</strong> databases are not <strong>strictly structured</strong>. Sometimes these <strong>databases</strong> are called &#8220;<strong>schema-free databases</strong>&#8220;. Properties of an <strong>entity</strong> (the columns in the <strong>SQL database</strong>) can be added <strong>dynamically</strong>. <strong>NoSQL databases</strong> can be based on <strong>several data models</strong> (several ways to <strong>structure data</strong>).</p>								</div>
				</div>
				<div class="elementor-element elementor-element-f4d27aa elementor-widget elementor-widget-text-editor" data-id="f4d27aa" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h3><b>Define, Manipulate, Retrieve and Manage Data with DBMS</b></h3>								</div>
				</div>
				<div class="elementor-element elementor-element-62dcdc3 elementor-widget elementor-widget-text-editor" data-id="62dcdc3" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong>Database Management System (DBMS)</strong> is a <strong>server software</strong>, which takes <strong>data queries</strong> of manipulation commands from the <strong>clients</strong>, <strong>execute</strong> the <strong>commands in the database</strong>, and <strong>returns the results</strong> to the clients.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-c2ccca5 elementor-widget elementor-widget-image" data-id="c2ccca5" data-element_type="widget" data-widget_type="image.default">
				<div class="elementor-widget-container">
															<img decoding="async" src="https://softuni.org/wp-content/uploads/elementor/thumbs/dbms-diagram-ppe7iolnqg1r6gl5mlvv46uakdli2yvs4q39qkhu9e.png" title="dbms-diagram" alt="dbms-diagram" loading="lazy" />															</div>
				</div>
				<div class="elementor-element elementor-element-aee5286 elementor-widget elementor-widget-text-editor" data-id="aee5286" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p>While a <strong>database</strong> could be just a <strong>collection of data files</strong>, the <strong>DBMS</strong> is what makes it so powerful with its <strong>structure</strong>, <strong>algorithms</strong>, <strong>optimizations</strong>, and <strong>APIs</strong>. For <strong>comparison</strong>, in a <strong>text file</strong>, you will be able to save <strong>whatever information</strong> you like, while in a <strong>database</strong>, managed by a <strong>DBMS</strong>, you can <strong>set rules</strong> on the incoming data. <strong>DBMS systems</strong> implement a <strong>programming API</strong> or <strong>specialized language</strong>, such as <strong>SQL</strong>, to manage data.</p>								</div>
				</div>
				<div class="elementor-element elementor-element-801da90 elementor-widget elementor-widget-text-editor" data-id="801da90" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><span data-preserver-spaces="true">To do so, first, we create a </span><strong><span data-preserver-spaces="true">query</span></strong><span data-preserver-spaces="true"> (or command) through the client that is passed to the engine through its <strong>API</strong>. The engine processes the <strong>query</strong> and accesses the data files. Then, the <strong>database storage</strong> returns the desired data from the data files to the engine. Finally, the engine processes the returned data and passes it to the client for <strong>visualizing in a human-readable format</strong>.</span></p>								</div>
				</div>
				<div class="elementor-element elementor-element-836143e elementor-widget elementor-widget-text-editor" data-id="836143e" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<p><strong>Databases</strong> are very powerful in keeping <strong>collections of entities. </strong>The <strong>relational model</strong> is based on tables and relationships, and the <strong>non-relational model </strong>is based on collections of documents. <strong>Database systems</strong> are an important component of most <strong>modern software systems</strong>, and therefore software engineers must have at least <strong>basic database skills</strong>. </p>								</div>
				</div>
				<div class="elementor-element elementor-element-389579b elementor-widget elementor-widget-text-editor" data-id="389579b" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h2>Lesson Topics</h2>								</div>
				</div>
				<div class="elementor-element elementor-element-4a0f072 elementor-widget elementor-widget-text-editor" data-id="4a0f072" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<div><div>In this tutorial, we cover the following topics:</div></div><ul><li><p><strong>Databases Introduction</strong></p></li><li><p><strong>SQL vs NoSQL Databases</strong></p></li><li><p><strong>DBMS Systems</strong></p></li></ul>								</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-3381a86 elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="3381a86" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-0cf09e3" data-id="0cf09e3" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
							</div>
		</div>
					</div>
		</section>
				<section class="elementor-section elementor-top-section elementor-element elementor-element-a0aff0b elementor-section-boxed elementor-section-height-default elementor-section-height-default" data-id="a0aff0b" data-element_type="section">
						<div class="elementor-container elementor-column-gap-default">
					<div class="elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-48c6c18" data-id="48c6c18" data-element_type="column">
			<div class="elementor-widget-wrap elementor-element-populated">
						<div class="elementor-element elementor-element-8f9bdef elementor-widget elementor-widget-text-editor" data-id="8f9bdef" data-element_type="widget" data-widget_type="text-editor.default">
				<div class="elementor-widget-container">
									<h2>Lesson Slides</h2>								</div>
				</div>
				<div class="elementor-element elementor-element-37e6760 elementor-widget elementor-widget-pdfjs_viewer" data-id="37e6760" data-element_type="widget" data-widget_type="pdfjs_viewer.default">
				<div class="elementor-widget-container">
					<iframe src="https://softuni.org/wp-content/plugins/pdf-viewer-for-elementor/assets/pdfjs/web/viewer.html?file=https://softuni.org/wp-content/uploads/2022/05/Dev-Concepts-Episode-36-What-is-a-Database-System-DBMS.pdf&amp;embedded=true" style="display: block; margin-left: auto; margin-right: auto; width: 100%; height: 800px;" frameborder="1" marginheight="0px" marginwidth="0px" allowfullscreen></iframe>				</div>
				</div>
					</div>
		</div>
					</div>
		</section>
				</div>
		<p>The post <a href="https://softuni.org/dev-concepts/what-is-a-database-system/">What is a Database System (DBMS)? [Dev Concepts #36]</a> appeared first on <a href="https://softuni.org">SoftUni Global</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://softuni.org/dev-concepts/what-is-a-database-system/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Page Caching using Disk: Enhanced 
Lazy Loading (feed)

Served from: softuni.org @ 2026-07-13 07:54:17 by W3 Total Cache
-->