step by step to Java
Tags: java, beginners
Published: 2020-04-07 22:27:20

Java programming drags your intention but you are with 0 experience – as you think – in technology world? … well let me please then try to help, cause the best guide is the one who passed through this by himself.

Well firstly I would like to tell my thoughts about programming in general, it is more personalised so if you are not interested skip to next paragraph. So normally, I am kind of person who just get crazy for anything related to languages. I wish to be a good Polyglot who speaks fluently many languages and at least know alittle bit about others as I think practically no one can know all spoken languages around the world fluently as theory maybe practically nooope and sure this is in my opinion. Any way what has this to do with me and programming? It is the same. We are looking in the languages for proper communication, exploring and understanding. Plus it is a joy in itself too and level up your mental abilities and enhance your ability of switching and finishing multitasks faster.
 So similar to languages and people. A computer is the one we want to deal and communicate with and programming is the used language. 
So now we have this beautiful cute creature which came from the outside space  , to know his abilities we have to go through Anatomy too to understand how it works in his mind, how he receives information , how he see this information and how he act up to this.. if I understand this plus I know his language it would be easy then to control him to proceed what I want , logic?

So how computer think? Ok as our minds go with electro pulses which are translated to huge things ,same computer it works with electricity so it depends up on the electrical voltage from 0 to 1 , how exactly? Lets think about it too like SOS lapms signal , you close it =0 , then you light it up back =1.
So 1 it doesn’t mean number as much as an action, action of on and 0 is action of off.
So to express a word, a number, a value …etc it work like the SOS exact number of ( on / Off ) together it will give the word save , some others give the word our , same others give the word our souls .
So you created all of this only using 2 actions ( on / Off ), same for computer with this 0,1
This 0,1 comination codes are called as binary codes. And each of it saved in a very tiny small place called Bit which is the smallest unit in the computer saving capacity world ;) . but as every measuring units we have small bigger and bigger like millimetre centimetre and meter , with the same way in computer saving capacity measuring unit we have
Bit
Byte = 8 bits
Kilobyte = 1024 Byte
Megabyte = 1024 Kilobyte
Gigabyte = 1024 Megabyte
Ok now again lets take the human being example.. The brain take the heard or seen words and translate it into this electro pulses right?, same for computer so actually there is 2 translations would it in programming . a translation the programmer do, when he translates the orders and the instructions in the programming language order. Another translation of this high language to the machine language which as we said before contains of binary codes. So for the first translation a human being do it ( the programmer ) so who does the second translation? … it is the compiler.
Ok we wont talk here in details about the translation the compiler does but we will move to our part as human translator then. so as the main principle of all machines ( EVA Principle ) which too called as IPO declares , there are ( inputs    going through process to give us  outputs) so if we collect the first letters of ( Input, Process, Output) it will be IPO . A programmer should understand that a computer is very smart but yet limited, no decisions are done by itself. All is pre-predicted and had a logical plan up to this maybe based on possibilities and results. So a programmer too mostly will go through this logic to understand what he wants to have as a result and up to this create this process that will lead to it and sure ending by knowledge of the exact inputs. 
Here we see the human intelligence. The ability of imagination and make the process backwards. To make it easy to understand for the computer or the machines in general.
Just to make it easier … let’s imagine Science teacher and his students. He wants his students make an exact experiment successfully. The students need materials then the process ( the conditions as well like heat, darkness or light ..etc.) to lead them up to the exact result ( output) he wants them to have or to learn …. Ok now if you are this teacher , you have to think backwards. To have this result it should be this process with this conditions so I will need those materials.
Referring to the same example we can then move to the 3 fundamental concepts of the programming:
1-	Sequence ( an action leads to the next action in specific order)
2-	Conditional ( in case of this condition, this action will be taken instead)
3-	Loop:  When we may want to repeat an instruction. A question is asked, and depending on the answer, an action is performed and the original question is asked again, until the answer is such that the action is no longer required.

so what are those concepts really like. Assume you are going for shopping for some one lets say your parents, you have the inputs (the money to buy) then you should go through the process to get the output which is the shopping cart as your parents want.
Ok this 3 concepts are in the process then, maybe you have only one concept, maybe two or maybe the three of them. Sequence is more like a list of orders (do this then this then this ..etc.) so it is just direct sequence of the orders which lead from one to the following till the end of the list 
(Buy tomatoes, buy eggs, buy cheese…etc.) so what you do ? You just follow each and finish it one by one in same order.
Ok now the conditional is like (parents said if you don’t find white onion then buy red ones) so the normal case that we will buy the white onion, but IF we don’t find it only then we will buy the red ones)
The loop it is a circle of repeating some actions as long as a certain condition is there like (ask for fresh baked bread if it is not available come again after 5 minutes to ask again , till you find fresh ones) so what we will do? A circle, we ask if no we go and we are back in 5 min and we ask if still no again we are back in 5 min and so on till we have it.
So up to here I hope I was able to make it simple to get the main door to Java programming and for now as a preparation for the next time, just you can open the Jshel
https://tryjshell.org/
It will be used for the next time though
Thanks for your reading and your feedback.