
Ai auzit de interpolarea șirurilor de caractere în anumite limbaje de programare? Dacă n-ai auzit și n-ai mai întâlnit deloc conceptul de interpolare în programare, înseamnă că informațiile prezentate în acest articol sunt pentru tine!
Orice-ar fi, afli chestii interesante și dacă știi ce este interpolarea.
Blogul projava.ro este pentru cei care vor să devină profesioniști! Cum devii profesionist? În primul și-n primul rând, învățând!
Ce este interpolarea? Ca explicație generală, interpolarea înseamnă a introduce cuvinte sau fraze într-un text, cu scopul de a-l completa.
Într-un limbaj de programare, interpolarea se face la nivelul șirurilor de caractere. Cum? Adesea printr-un simbol care face trimiterea la o variabilă, uneori chiar la o expresie, și introduce valoarea variabilei într-un șir de caractere.
Hai să ne uităm la modul în care se face interpolarea în 3 limbaje de programare, și anume:
Dacă ai întâlnit conceptul de interpolare la nivel de șiruri de caractere în alte limbaje de programare, te rog să-mi lași un exemplu într-un comentariu. Mulțumesc!
Interpolarea șirurilor de caractere în PHP 🔗
Limbajul PHP mi se pare destul de interesant, deși poate deveni suficient de complex.
Referitor la șiruri sau la texte, acestea se pot scrie între ghilimele duble și ghilimele simple. Eu prefer să folosesc ghilimelele duble. De ce? Chiar dacă viteza de procesare este mai mare, când folosesc ghilimelele duble pot să mă folosesc de conceptul interpolării.
Privește următoarele două exemple:
$varUnu = 10; echo "Valoarea definită are valoarea $varUnu"; // Output: Valoarea definită are valoarea 10 $varDoi = 20; echo 'Valoarea definită are valoarea $varDoi'; // Output: Valoarea definită are valoarea $varDoi
Ce am făcut în codul anterior? Prima dată am definit o variabilă căruia i-am atribuit valoarea 10 și am folosit conceptul de interpolare în cadrul șirului de caractere care afișează „Valoarea definită are valoarea 10”.
Interpolarea are loc pur și simplu prin înlocuirea numelui de variabilă (cu tot cu prefixul $).
În al doilea exemplu (cu variabila $varDoi), am folosit ghilimele simple la afișare, iar interpolarea nu mai poate avea loc pentru că variabilele nu se interpretează.
Dacă vrei să fii profesionist, poți să pui numele variabilei, cu tot cu prefixul $, între acolade. Exemplu:
$varSite = "projava.ro";
echo "Bine ai venit pe site-ul {$varSite}!";
// Output: Bine ai venit pe site-ul projava.ro!
Observi că mi-am permis să adaug semnul exclamării la final? Hai să-ți mai dau un exemplu în care articulez un substantiv:
$programator = "programator";
echo "Porecla ta este $programatorul?";
/* Output: EROARE - Undefined variable $programatorul
De ce?
Pentru că în program se caută variabila "programatorul", nu "programator".
Să dau un motiv mai clar?
N-am lucrat corect și n-am delimitat numele variabilei de celelalte litere, așa cum fac în următorul exemplu
*/
echo "Porecla ta este {$programator}ul?";
// Output: Porecla ta este programatorul?
Hai să ne uităm un pic și la interpolarea în limbajul Ruby.
Interpolarea șirurilor de caractere în Ruby 🔗
Ruby este un limbaj care mi-a plăcut în urmă cu aproximativ 10 ani. Recunosc, mi-a plăcut mai mult să mă joc cu el, dar e bine când înveți ceva și din joacă…
Pentru interpolare, Ruby folosește simbolul #, urmat de numele variabilei între acolade. Orice interpolare în șirurile de caractere are de-a face cu numele variabilei. Fără numele variabilei, nu se adaugă valoarea variabilei.
Uite aici două exemple în limbajul Ruby:
var_numar_prim = 29
puts "Al 10-lea număr prim este #{var_numar_prim}"
# Output: Al 10-lea număr prim este 29
var_nume_oras = "Arad"
puts "Locuiești în orașul #{var_nume_oras}?"
# Output: Locuiești în orașul Arad?
La fel ca în PHP, și în Ruby se folosesc ghilimelele simple, dar dacă le folosești, iese din joc conceptul de interpolare.
Ai observat că în Ruby nu se pune punct și virgulă la finalul unei linii de cod? La fel e și în alte limbaje de renume, precum Python și Kotlin. Când detaliile fac diferența, unii aleg să le elimine. Glumesc…
Uite că ajungem și la limbajul C#, un limbaj mai elevat sau considerat un pic mai domnesc. De ce este un pic mai domnesc? Pentru că aparține de ecosistemul .NET, unde bogații, pardon, cei de la Microsoft fac legea.
Interpolarea șirurilor de caractere în C# 🔗
Și aici se folosește prefixul $, ca la PHP, numai că $ se pune înaintea ghilimelelor duble, iar când vine vorba de numele variabilei, deja cred că ai prins ideea că numele variabilei se pune între acolade. Vezi că limbajele de programare au foarte multe lucruri în comun? Diferențele se observă la detalii.
Exemplu de interpolare în C#:
string bestProgrammingLanguage = "Java";
Console.WriteLine($"Best programming language: {bestProgrammingLanguage}");
// Output: Best programming language: Java
Poți să faci abstracție de felul în care am scris în C# că Java este cel mai bun limbaj de programare… Java și C# sunt la fel de bune precum Barcelona și Real Madrid la fotbal. Tot la fel de bună (sau mare) este și rivalitatea între ele.
În C#, chiar și în Ruby, poți să pui expresii între acolade și se returnează rezultatul, dar în PHP nu se poate.
Exemplu cu expresii:
int a = 2;
int b = 3;
Console.WriteLine($"Suma lui {a} + {b} este {a + b}");
// Output: Suma lui 2 + 3 este 5
Ce zici? Ai înțeles ideea de interpolare? Practic, se pune numele variabilei între acolade, iar programul știe că în acel loc trebuie să pună valoarea variabilei.
Așa cum ți-am scris la început, dacă știi un alt limbaj de programare în care conceptul de interpolare este la ordinea zilei, te rog să-l exemplifici într-un comentariu. Mulțumesc!
Învață să fii profesionist!