<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Sukrut Patil</title>
    <description>The latest articles on DEV Community by Sukrut Patil (@sukrutpatil).</description>
    <link>https://dev.to/sukrutpatil</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F399809%2F5cc7d72a-f321-4103-8a3d-077c4049eba7.jpg</url>
      <title>DEV Community: Sukrut Patil</title>
      <link>https://dev.to/sukrutpatil</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sukrutpatil"/>
    <language>en</language>
    <item>
      <title>OOP -Part 2 Polymorphism</title>
      <dc:creator>Sukrut Patil</dc:creator>
      <pubDate>Fri, 06 Nov 2020 03:49:05 +0000</pubDate>
      <link>https://dev.to/sukrutpatil/oop-part-2-polymorphism-kpg</link>
      <guid>https://dev.to/sukrutpatil/oop-part-2-polymorphism-kpg</guid>
      <description>&lt;p&gt;Hope you enjoyed reading my last blog. Today, we will talk about polymorphism. It is something that your Ex might have done a lot to you. What?? No… I am not talking about cheating. I am talking about the conversation where she will say something and that will have more than one meaning and context. Polymorphism is similar, here we define one object and that object is referenced to different classes due to which same object will have different meaning and context. But there is one difference between your Ex’s example and polymorphism concept. Unlike your Ex, in OOPs you can easily figure out the context of the object and the behavior of that object. &lt;br&gt;
The bookish definition of polymorphism is: Object taking multiple forms is called polymorphism. There are two different concepts in polymorphism, overloading and overriding. But before this you need to know there some basic terminologies.&lt;br&gt;
• Methods: When a behavior of anything is defined within a block and that block is placed inside a class than that is called method.  It will look something like this. (Ignore the language, it’s not important at this point.)&lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fla90gk0faf4y5n4auqax.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fla90gk0faf4y5n4auqax.PNG"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In real world programming they are a lot bigger. But small or big a problem is a problem. I mean a method is a method. So, I was talking about the behavior, the behavior of above method is to return the sum of two numbers ‘a’ and ‘b’. &lt;br&gt;
Method Overloading:&lt;br&gt;
This is when I define two methods with same name but with different parameters. Look at the examples below, you will get a better idea:&lt;br&gt;
 &lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fvy25670r7wwmya75k9yy.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fvy25670r7wwmya75k9yy.PNG"&gt;&lt;/a&gt;&lt;br&gt;
Just simple as this. And when we create object of the class and call these methods, we just have to pass exact same number of parameters that a respective method has. And as all of this is done at the compile time it is called static polymorphism. &lt;br&gt;
&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F5bp4xvikchw31s0syqws.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F5bp4xvikchw31s0syqws.PNG"&gt;&lt;/a&gt;&lt;br&gt;
Consider methods as Poppins candy. They all are packed in same packet (we call it a class in OOPs). They all have different flavors (we call it behavior/ functionalities). Yet they all have same name. We don’t name them differently or describe them differently, isn’t it?&lt;/p&gt;

&lt;p&gt;Method Overriding:&lt;br&gt;
I hope you remember what I told you about inheritance. If not, read my previous article. Take example of super class ‘Human’. There are some methods defined in them as eyes, legs, brain, hands, etc. and their behavior within those methods. There are two subclasses Men and Women derived from superclass Human. But you know that the behavior of some methods is different in Men class than that of Women class. In such conditions we use the concept of method overriding. Here, we define the method with same name and parameters in subclass. Which means, we will also redefine method brain in ‘Women’ class and change its behavior to receive more hormones than neurons (If you know what I mean).&lt;br&gt;
Method name will be same, parameters will also be same, only the behavior will be different. &lt;br&gt;
That was all for today. Hope, you understood the concepts. And yes, You can correct me if I'm wrong (which I know I'm not).&lt;/p&gt;

</description>
      <category>oop</category>
      <category>beginners</category>
      <category>java</category>
    </item>
    <item>
      <title>OOP -Part 1 Inheritance</title>
      <dc:creator>Sukrut Patil</dc:creator>
      <pubDate>Tue, 03 Nov 2020 17:51:28 +0000</pubDate>
      <link>https://dev.to/sukrutpatil/oop-part-1-inheritance-4plo</link>
      <guid>https://dev.to/sukrutpatil/oop-part-1-inheritance-4plo</guid>
      <description>&lt;p&gt;Object Oriented Programming, or I call it as common sense of programming. And we very well know not lot of people use their common sense very often and so OOPs concepts are generally misunderstood or misinterpreted. In this article, I am not going to associate any language with OOPs because not many of them are purely object oriented.&lt;br&gt;
“What? But Sukrut as soon as we hear object oriented the names that pop out of our mouth are Java, C++, python. What about those?” Let me bring it to you all, none of the above are purely object oriented. The languages that are purely object oriented are Smalltalk and self. Heard of them? Probably not. As some things don’t make since in real world but yet they exist (Donald Trump). Similarly, there are some concepts in such languages that don’t make sense according to OOPs concepts but yet they are there and that what makes them not purely object oriented. We will also be looking at those concepts… Stay tuned. &lt;br&gt;
There are 4 main concepts of OOPS, Inheritance, Polymorphism, Abstraction and Encapsulation.  And the concepts of OOPs revolve around these 4 only. Let’s look at them one by one and in this blog, we will be looking at Inheritance. But first, few basic terminologies that you need to understand. &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Object: Object is anything or any real-world entity that you can think of. Wait don’t think about women. Ethically that not right but conceptually it is right… &lt;/li&gt;
&lt;li&gt;Class: Collection of objects is known as class. Since you are still objectifying women (conceptually). Let me carry on with the same example. Consider group of ladies than, “Women” is the class for each and every on of them and Miss. Shital, Miss. Tiffany, Miss. Nargis are the objects of that class women. Remember, classes are logical and do not occupy any memory.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Okay now, let’s talk about inheritance. As its name suggest when an object acquires properties and behavior of parent object it is known as inheritance. For example, there is super class called ‘Humans’ which has child classes ‘Men’ and ‘Women’.  Human class has predefined properties in it like eyes, legs, brain, hands only those that are common in both men and women. Now, men class or women class don’t need to redeclare those for themselves. They can inherit these properties from super class Humans. Okay, they can redefine them within themselves. For example, men class can redeclare property ‘hair’ and change its behavior to ‘short’ and women class can redeclare it to ‘long’ but that is not in the scope of this blog we will study that later in polymorphism. &lt;br&gt;
So, what inheritance does for us is reduce our work and let us work with prewritten code. In other words, make us lazier. And according to me lazier the programmer better is the code written. What say? Anyways, Inheritance is of 5 different kinds, 1. Single, 2. Multiple 3. Multilevel 4. Hierarchical 5. Hybrid (Virtual) Inheritance&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Single Inheritance: Consider this as a father child relation.&lt;/li&gt;
&lt;li&gt;Multiple Inheritance: This is many to one relation between classes. That means child class will have more than one parent classes.&lt;/li&gt;
&lt;li&gt;Multilevel Inheritance: Here child class will have a parent class and a parent class will also have a parent class and so on. &lt;/li&gt;
&lt;li&gt;Hierarchical Inheritance: This is like a family tree. Where more then one subclasses are derived from one single super class. As explained in above Humans’ example. &lt;/li&gt;
&lt;li&gt;Hybrid Inheritance: This is mixture of any of the above inheritance.
This is what I understood studying inheritance in object-oriented programming. I might be wrong somewhere (Just a curtesy sentence. I know I am not wrong) so, please correct me if I am. This might help me understand better. I kept it as simple as I could and if you are interested in knowing other concepts of OPPs stay tuned. I will be posting them soon.&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>beginners</category>
      <category>oop</category>
      <category>java</category>
    </item>
    <item>
      <title>ABC of web designing</title>
      <dc:creator>Sukrut Patil</dc:creator>
      <pubDate>Tue, 30 Jun 2020 12:22:55 +0000</pubDate>
      <link>https://dev.to/sukrutpatil/abc-of-web-designing-4fji</link>
      <guid>https://dev.to/sukrutpatil/abc-of-web-designing-4fji</guid>
      <description>&lt;p&gt;I have spent the past few months designing and developing websites and here are some of the important insights that I would like to share about it. Web development has undergone a drastic change since it was made there are no limits what we can do in it. There are hundreds of tools that are used just to design the website and a few more to develop it. It is necessary for you to know how to use both of such tools in order to become a successful web developer. In this blog, I will be sharing designing a website step by step and the tools, libraries that I personally use.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1.Brainstorming your idea:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Sometimes we have very perfect ideas in our minds but when we try to explain it to others, we could not. We miss a lot of details or sometimes the whole idea. So the best solution for this is designing wire-frames, illustrations, and swimlane diagrams. Listen to the client’s requirements and draw him some illustrations and ask for the confirmation. In this way, neither you lose your idea nor the client.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tools:&lt;/strong&gt; Sketch, Figma, Lucidchart, sometimes paper-pen are best.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2.Choosing the right assets&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Here, you need to be creative. This stage includes choosing color schemes, pictures, videos and typography. Different colors represent different meanings, understand those, crosscheck them with the intent of your website. For example, yellow represents cheerfulness, joy. So, if the website that you are designing is about food, yellow is your color. Pare the color for other good contrasting colors for your texts. White and black are the universal picks. They go with any color you choose. If it’s too hard for you then do check out the following websites which will definitely sort your problem:&lt;br&gt;
&lt;a href="https://coolors.co/"&gt;https://coolors.co/&lt;/a&gt;&lt;br&gt;
&lt;a href="https://colorsinspo.com/"&gt;https://colorsinspo.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You also need good fonts that will serve the intent of your website. The best place to get free and attractive fonts for your website is Google-fonts. Pictures and videos are provided by the client but you can not use them as they are sent to you. They may not be in right resolutions or may not go with the color that you have chosen. So, you need to edit them accordingly. And the best editor that I find for this purpose is Adobe Lightroom and Adobe Photoshop. But as you know they are not free to use and certainly not cheap, but don’t worry I got you covered. There are some free alternatives for them with the same features (just 1 or 2 less). &lt;br&gt;
Pixlr: &lt;a href="http://pixlr.com"&gt;http://pixlr.com&lt;/a&gt;&lt;br&gt;
Gimp: &lt;a href="http://www.gimp.org"&gt;http://www.gimp.org&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Sometimes, the images you are provided are not enough. Sometimes, you need something that you can animate. For example, SVGs and when you need this I know exact place where you can get it &lt;a href="https://undraw.co/"&gt;https://undraw.co/&lt;/a&gt; is the free library where you can find the best yet free SVGs to use in your projects.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Tools:&lt;/strong&gt;&lt;br&gt;
Photo Editing: Adobe Lightroom, Adobe Photoshop, pixlr, gimp&lt;br&gt;
Free image and SVG libraries: pexels.com, undraw.co. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3.Designing the website&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;So, now you have the right colors, right fonts, right images. What’s next? Now, you have to put them together create designs place them in the right format. And where do we do it? Adobe Xd, Adobe Illustrator, or some other open-source applications like Figma or sketch (This is what I prefer).&lt;br&gt;
Your designs have to be unique, creative, and attention-grabbing. Here are some key rules while designing that you must follow if you want to be a good designer:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Always name the elements that you use. This is helpful later in the developing process&lt;/li&gt;
&lt;li&gt;Create layers. Don’t just put everything on a single frame. (Don’t forget to name the layers.)&lt;/li&gt;
&lt;li&gt;According to me, there are 2 types of designs: first is one with edges and another is one with curves. Choose one. Keep consistency in your design.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Remember, here you are illustrating the look and feel of the website so think about both UI as well as UX. Before, we have talked just about UI, the interface (looks) but that is not all, you have to consider user experience (feel) too. This includes the behavior, animations, and responses of the website. And thanks to these tools we can do them very easily. So, what do I mean by behavior? Well… the way you scroll, the way text and images occur, the dependency of different elements on each other, etc. Responses include pop-ups, page-transitions, etc. Just remember, it is not necessary to animate everything but it is a good practice to keep animations unidirectional especially when it is applied to same type of element. &lt;br&gt;
    Now, are we good to go for development or are we missing something? What about the responsiveness of our design? A good designer always keeps in mind that he has to keep his designs responsive for any device to be used. So, now, design all of the previous again for smaller devices like phones, notebooks, and tablets. But keep in mind, the theme of the website that you have designed for the bigger devices should not change. Neither the behavior nor the animations. &lt;br&gt;
    This was just about designing we still have not got into development yet. We will cover the development topic too. Stay tuned but for now, let’s conclude the ongoing topic of designing. So, to make a good design, the key factor is consistency. How, colors flow through your designs, how animations appear, are they consistent or they break? If not consistent, your design has definitely some improvements to be made. Again, these are my ideas, my experiences, yours might be different. I would definitely like to talk about it. So, leave comments, let’s discuss.&lt;br&gt;
Thank you. I will be back with a different topic soon.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Here is one of my design:&lt;/strong&gt;&lt;br&gt;
About the design: Explorer is an educational/ informative website about wonders in space.&lt;br&gt;
&lt;strong&gt;The desktop | notebook | tablet view:&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--GyG9pC_d--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/szegikmq9erlykkqw9x7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--GyG9pC_d--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/szegikmq9erlykkqw9x7.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The mobile view:&lt;/strong&gt;&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--lntB2zCB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/l0144b5g8ttaufr2dnet.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--lntB2zCB--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/l0144b5g8ttaufr2dnet.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>webdesign</category>
    </item>
  </channel>
</rss>
