Proqram anlayışı



Proqram anlayışını daxil etməzdən və C dilinin müasir İnformasiya və Kommunikasiya Texnologiyalarında yeri barədə söz açmazdan öncə, gəlin, əvvəl bu günkü həyatımızda kompüterlərin və proqramların oynadığı rola sadə bir nəzər salaq.
Kompüterlər demək olar ki, hər yerdə, məişətdə, təhsildə, tibbdə, sənayedə və s. yerlərdə çox geniş istifadə olunur. Məsələn, NASA-da kosmik gəmilər, süni peyklər, zavodlarda mürəkkəb istehsal prosesləri kompüterlər vasitəsilə idarə olunur.
Milyardlarla insan məlumatları içərisində axtarış parametrlərinə uyğun gələnini kompüter verilənlər bazasında çox az bir zaman ərzində tapır. Adi istifadəçilər kompüterlə müxtəlif oyunlar oynayır, hər hansı mətn və ya cədvəl üzərində işləyir.
Arxitektura cəhətdən dünyada mövcud olan əksər kompüterlər arasında elə də böyük fərq yoxdur. Yəni evdə istifadə etdiyimiz kompüterlə NASA-da istifadə olunan kompüterlər bir-birindən əsasən, yaddaş və sürətinə görə fərqlənir.
Bəs niyə biz öz kompüterimizlə hansısa kosmik gəmiləri idarə etmirik? Kompüterlərə bu qədər müxtəlif işlər yerinə yetirməsinə imkan verən nədir? Niyə hansısa kompüterlə hər hansısa işi görmək olar, digəri ilə yox? Kompüterin, ümumiyyətlə istənilən bir işi görə bilməsinə imkan verən nədir? Əlbəttə ki, proqram. Məhz proqram kompüterə hansı işlər görməli olduğunu tam detalları ilə bildirir. Proqramsız kompüter tamamilə yararsız bir dəmir parçasıdır.
Proqramı isə, əlbəttə ki, proqramçılar tərtib edir. Bu iş son dərəcə çətin və məsuliyyətlidir. Proqramın hazırlanma prosesi, onun daxili strukturu və yerinə yetirilmə prosesi kifayət qədər mürəkkəb məsələlərdir və bu məsələlərlə məşğul olmaq təcrübə tələb edir.
Proqram sözü söz qaynağı olaraq, müəyyən şərtlərə və nizama görə edilməsi lazım olan əməliyyatların bütünü mənasına gəlməkdədir. Proqramlaşdırma da, proqram ortaya çıxarma işidir. Müəyyən şərtlərə və nizama görə müxtəlif əməliyyatlar reallaşdırmaq həyatı asanlaşdırmaq üçün lazımdır. Müxtəlif problemlərin həll olunmasında proqramlar zəruridir. Yazılan proqramlar həyatımızın bir çox hissəsində bizə lazım olmaqda, işlərimizi asanlaşdırmaqdadır. Elə insan yoxdur ki, həyatı boyunca hansısa proqramla bilərək və ya bilməyərək təmasda olmasın, əgər bu adam mağarada yaşamırsa.
Nümunə olaraq, 25!(25*24*23*22*...1) əməliyyatının nəticəsi normal bir insan tərəfindən bir anda bilinməzkən, yazdığımız sadə bir proqramla bu əməliyyat kompüterə çox sürətli və səhvsiz olaraq etdirilə bilər.
Proqramlaşdırmaya başlayacaq adamın əvvəlcə problemi, şərtləri, həll yollarını, üsulları ən yaxşı şəkildə sinifləyə bilmə qabiliyyətinin olması gözlənilir. Böyük proyektlərdə analiz dediyimiz bu ilk qisim və daha sonrasındakı kodlaşdırma və test fərqli kəslər və ya qruplar tərəfindən reallaşdırılır.
Kompüter proqramlarının yazılmasında dəyişik proqramlaşdırma üsulları istifadə edilir. Yuxarıda faktorial nümunəsi kimi sadə problemlərin həllində Struktur Proqramlaşdırma, gerçək həyat problemlərində Obyekt Yönümlü Proqramlaşdırma, həlli qeyri-mümkün kimi görünən, həllə gedən yolda da yeni həllər çıxaracaq yeni proqramların meydana gəlməsi lazım olan vəziyyətlərdə də Süni intellekt proqramlaşdırma istifadə edilir.
Bəhs etdiyimiz hər üsul üçün ayrı proqramlaşdırma dilləri mövcuddur. Bir proqramlaşdırma diliylə hər mərhələdə proqram yazma deyə bir şey yoxdur. Nümunə olaraq, Struktur Proqramlaşdırma edilə biləcək bir dil C (hansı ki, çox əhəmiyyətlidir), Obyekt Yönümlü Proqramlaşdırma edə biləcəyimiz dillər (Java, C++), son olaraq, Süni Zəka proqramları yazıla biləcək Prolog yüzlərlə, hətta minlərlə proqramlaşdırma dillərindən yalnız bir neçəsidir.
Bu dillər vasitəsi ilə ortaya çıxacaq məhsullara kompüterimizə yüklədiyimiz müxtəlif proqramlar (Office, Photoshop, oyunlar və s.), mobil telefonlara yüklənən proqramlar, sonra paltaryuyan maşınların, bəzi nəqliyyat vasitələrinin (avtomobil, qatar, təyyarə kimi)və s. digər qurğuların avtomatik idarə edilməsi üçün yazılmış proqramları göstərmək olar.

«« Alqoritmləşdirmə    Proqram anlayışı    Proqramlaşdırma dillərinin səviyyələri »»
Share


Muəllif: Dürdanə Abdullayeva


YER Hostinq

Pulsuz elanlar saytı

Internet Jobs Database