miercuri, 11 ianuarie 2023

programare nu vei folosi

 

Acum, hai sa vedem ce presupun urmatoarele tehnologii si sa subliniem cateva dintre limbajele de programare necesare fiecareia.

Retine: Nu trebuie sa scrii lucrurile de la 0 sau sa reinventezi roata, ci pur si simplu te poti folosi de ce au dezvoltat altii, pentru a crea ceva mai mare, mai bun si mai rapid.

 

#1 Software Dev.


Software Development
 reprezinta tot ceea ce construiesti cu un limbaj de programare.

Practic, tu creezi un program care ii va da o anumita instructiune calculatorului, pe care acesta o va executa ulterior. Aici putem vorbi de la platforme, pana la elemente de integrare sau poate chiar zone de testare.  

Ce tine de limbaje in aceasta arie: C++JavaPythonCRubyPHPGO

  • C++: poti face destul de multe lucruri cu acest limbaj - de la drivere pentru calculator, la aplicatii GUI, la o zona de website-uri, la partea de back-end, dar si de jocuri.
  • Java: fiind foarte cunoscut, acesta iti ofera aceleasi posibilitati precum  C++ , dar si programare la nivel de retea.
  • Python: este cel mai simplu dintre limbaje, dar vei vedea ca va fi prezent si in celelalte arii.
  • C: este folosit atunci cand programezi la nivel de hardware.


#2 Web Dev


Pentru partea de Web Development este important sa ai in vedere ca exista 2 componente principale:

Frontend (ceea ce vezi)

Backend (ceea ce face ca site-ul / platforma sa functioneze, partea din spate). Backend-ul este punctul de legatura intre ceea ce face si vede userul si baza de date. Adica ii ofera utilizatorului informatiile necesare stocate si nu numai.

Limbaje: HTML, CSS, JavaScript


Poate deja stii ca HTML este o forma de a crea o structura a unui site web. Iar CSS coloreaza si se refera la aspect.

La JavaScript putem face urmatoarea analogie: se prezinta precum muschii umani care sustin scheletul (adica HTML si CSS). Ofera functionalitate site-ului, dar si o mai buna interactiune cu acesta.

Doar ca in programare nu vei folosi doar un limbaj sau cateva instructiuni. Lucrurile sunt putin mai complexe. Si aici apar framework-urile.



Un framework este un set de instructiuni, de functii, de clase, de anumite elemente pe care un programator le poate folosi din nou si din nou.
Asa cum iti spuneam si mai sus, nu va trebui sa pornesti totul de la 0, iar oamenii capabili sa schimbe ceva si-au dat seama de acest aspect.

Apoi au aparut framework-uri: AngularReact. Luam exemplul urmator: pe partea de front-end stii functiile pe care le vei folosi, si stii cum functioneaza acestea.

Pe partea de front-end un framework este: ReactAngularBootstrap.

Pe partea de back-end poti sa dezvolti cu mai multe limbaje de programare, iar la limbajul de programare Python adaugi framework-ul Django si Flask.

La PHP apar framework-urile: Laravel si Symphony.


Mai exista un limbaj care acum e in trend. Se numeste Node.js care de fapt reprezinta un mediu de dezvoltare a codului in JavaScript. Acesta merge bine impreuna cu Express.js.

Daca esti la inceput si vrei sa intelegi cum functioneaza Web Dev. atunci iti recomand sa incepi cu HTMLCSS si JavaScript.

O alta alternativa este WordPress, deoarece iti va oferi o grafica vizuala din cateva click-uri si asa ajungi sa iti dai seama ce construiesti.

 

#3 Mobile Dev.

 

Aici vorbim de 2 categorii: cea de Android si cea de IOS.
La IOS avem un limbaj care se numeste SWIFT, cu care poti dezvolta ecosistemul IOS (adica poti dezvolta pe telefon, pentru ceas, pentru tableta, laptop-uri si tot ce reprezinta Apple).

Pe cealalta parte, la Android se foloseste Java si din ce in ce mai mult Kotlin, deoarece este un limbaj cu care poti programa mai usor si ofera mult mai multe facilitati decat Java.

De la o vreme incoace, developerii au incercat sa gaseaca modalitati prin care sa simplifice tot procesul. De exemplu pentru o aplicatie pe Facebook, e nevoie de 2 echipe diferite: una pentru Android si cealalta pentru IOS.

Pentru a face lucrurile mai eficiente si sa functioneze atat pentru Android cat si pentru IOS exista 2 limbaje:

  • Xamarin pe care il poti scrie cu ajutorul C#
  • React Native pe crea il poti scrie cu JavaScript


#4 Game Dev.


Aici ai framework-uri foarte solide. Vorbim totodata de UnityUnreal Engine, dar si de OpenGL. Acestea sunt niste engine-uri care iti ofera posibilitatea de a dezvolta jocuri foarte rapid, foarte usor.

Pe partea de Unity poti folosi C#, pe partea de Unreal si OpenGL poti folosi C++.

 

#5 Hardware Programming



Exista anumite platforme care te ajuta sa iti faca munca mai usoara. Tu poti face anumite drag and drop-uri si si sa eficientizezi lucrul.

Depinde cum definesti Hardware Programming. Poti programa la nivel de dispozitive IoT (internet of things), programezi anumite placute sa iti inregistreze temperatura din camera si sa iti trimita o notificare.

Astfel de lucruri le poti face cu Python, C++, C, Verilog.

De asemenea, aici intra partea de Robotica.

 

#6 Automation & Scripting


Adica partea de automatizare a infrastructurilor IT si nu numai, si partea de automatizare a anumitor task-uri, procese pe care tu le ai pe calculator.

La Automation recomand Python.

Cand vorbim de Scripting, ne referim la un sistem Linux sau Windows in care tu iti faci un program care sa ruleze in mod recurent sau sa rulezi la un anumit interval de timp si care sa iti salveze foarte mult din timp.

Poti sa folosesti PythonBash (pe Linux), Perl.

Vreau sa iei in calcul faptul ca tot ceea ce am mentionat mai sus o imagine de ansamblu, si bineinteles, lucrurile cu care eu am interactionat cel mai mult.

Intreaba-te: "Care ar fi limbajul care mi se potriveste cel mai mult? Pe care dintre toate acestea vreau sa le explorez?"

De exemplu:

Daca esti o persoana mai mult axata pe partea de design, pe frumos, pe modul cum arata, care ar fi experienta unui utilizator, esti mai creativ, atunci esti mai mult pe partea de front-end.

Dar daca esti o persoana careia ii place structura, logica, organizarea, cifrele, analiza, atunci esti pe partea de back-end.

Sper ca acest material sa iti fie folositor, iar daca vrei sa relaxezi mult mai bine, te invit sa te uiti la viata .

O zi productiva iti doresc,