Cel mai bun răspuns
Mediul este literalmente tot ceea ce este instalat pe mașina dvs., care poate afecta dezvoltarea sau testarea aplicației dvs. – aceasta poate include:
- Editorii / IDE-urile pe care le folosești (pot afecta cât de eficient poți scrie cod).
- Ce compilatoare / interpreți folosești și versiunile lor exacte – poate afecta dacă codul dvs. se va executa deloc sau cât de eficient îl face.
- Sistemul de operare instalat pe computerul dvs. – Poate avea un efect semnificativ asupra modului în care este scris codul dvs.
- Variabilele de mediu setate pe mașina dvs., relevante în special în timpul testării, deoarece acestea pot afecta dramatic anumite funcții ale unor aplicații.
- Bibliotecile suplimentare instalate pe mașina dvs. (inclusiv eventualele instalate de alte programe); poate afecta cât de bine va rula codul dvs. pe mașinile altor persoane (cu versiuni de bibliotecă potențial diferite instalate)
- Alte programe care rulează pe mașina dvs., în special în timpul testelor de încărcare și performanță.
- RAM și spațiu pe disc pe mașină: poate afecta performanța codului dvs., în special în condiții de testare a sarcinii / stresului. deloc).
În mod ideal, mediul dvs. de dezvoltare ar trebui să fie cât se poate de curat – instalați doar acele biblioteci de care codul dvs. are nevoie și utilizați doar versiunile compilatorului / interpretului de care aveți nevoie. plan de utilizare. În mod similar, pentru testarea funcțională, aveți nevoie de un mediu curat în care aplicația dvs. poate fi executată numai cu versiunile bibliotecilor pentru care intenționați.
Pentru testarea sarcinii / stresului, trebuie să mergeți cu un pas mai departe – o mașină complet sterilă fără alte aplicații care rulează pe acesta în afară de sistemul de operare și numai aplicația dvs. și dependențele instalate pe acesta. Unele organizații vor merge atât de departe încât să facă o ștergere completă a discului și să o reinstaleze atunci când intenționează să streseze programele de testare.
Răspuns
Programarea este procesul de preluare a unui algoritm și codificare într-un notație, un limbaj de programare, astfel încât să poată fi executat de un computer. Deși există multe limbaje de programare și multe tipuri diferite de computere, primul pas important este nevoia de a avea soluția. Fără un algoritm nu poate exista niciun program.
Informatica nu este studiul programării. Cu toate acestea, programarea este o parte importantă a ceea ce face un informatician. Programarea este adesea modul în care creăm o reprezentare pentru soluțiile noastre. Prin urmare, această reprezentare a limbajului și procesul de creare a acesteia devin o parte fundamentală a disciplinei.
Algoritmii descriu soluția unei probleme în ceea ce privește datele necesare pentru a reprezenta instanța problemei și setul de pași necesari pentru a produce rezultatul dorit. Limbajele de programare trebuie să ofere o modalitate noțională de a reprezenta atât procesul, cât și datele. În acest scop, limbile oferă structuri de control și tipuri de date.
Construcțiile de control permit reprezentarea pașilor algoritmici într-un mod convenabil, dar fără ambiguități. Cel puțin, algoritmii necesită construcții care efectuează procesare secvențială, selecție pentru luarea deciziilor și iterație pentru control repetitiv. Atâta timp cât limbajul oferă aceste afirmații de bază, acesta poate fi utilizat pentru reprezentarea algoritmului.
Toate elementele de date din computer sunt reprezentate ca șiruri de cifre binare. Pentru a da semnificație acestor șiruri, trebuie să avem tipuri de date. Tipurile de date oferă o interpretare pentru aceste date binare, astfel încât să putem gândi datele în termeni care au sens în ceea ce privește problema rezolvată. Aceste tipuri de date încorporate la nivel scăzut (uneori numite tipuri de date primitive) oferă elemente de bază pentru dezvoltarea algoritmilor.
De exemplu, majoritatea limbajelor de programare oferă un tip de date pentru numere întregi. Șirurile de cifre binare din memoria computerului pot fi interpretate ca numere întregi și având în vedere semnificațiile tipice pe care le asociem în mod obișnuit cu numere întregi (de exemplu, 23, 654 și -19). În plus, un tip de date oferă, de asemenea, o descriere a operațiunilor la care pot participa elementele de date. Cu numere întregi, operațiuni precum adunarea, scăderea și multiplicarea sunt comune. Ne-am așteptat că tipurile numerice de date pot participa la aceste operații aritmetice.
Dificultatea care apare adesea pentru noi este faptul că problemele și soluțiile lor sunt foarte complexe. Aceste construcții simple și tipuri de date furnizate de limbaj, deși cu siguranță suficiente pentru a reprezenta soluții complexe, sunt de obicei dezavantajate pe măsură ce lucrăm prin procesul de rezolvare a problemelor. Avem nevoie de modalități de a controla această complexitate și de a ajuta la crearea de soluții.