proqramlasdirma-sahesi-ile-bagli-bilmedikleriniz

Proqramlaşdırma sahəsi ilə bağlı bilmədikləriniz

Dövrümüzdə aktual olan və yüksək gəlirli hesab edilən sahə haqqında nə bilirik?
Proqramlaşdırma ( programming) – proqram yaratmaqla bağlı nəzəri və praktiki yaradıcılıq sahəsidir. 

Kompüterdə məsələnin həlli aşağıdakı mərhələlərdən ibarətdir:
1. Məsələnin qoyuluşu: məsələ haqqında informasiyanın toplanması; məsələnin şərtinin formalaşdırılması; son məqsədin müəyyən olunması; nəticələrin formasının müəyyən olunması; verilənlərin təsviri (onların tipləri, dəyişmə diapazonu, strukturu və s.).
2. Məsələnin, modelin analizi və tədqiqi: mövcud analoqların analizi; texniki və proqram vasitələrinin analizi; riyazi modelin hazırlanması (işlənilməsi); verilənlərin strukturunun hazırlanması (işlənilməsi).
3. Alqoritmin hazırlanması (işlənilməsi): alqoritmin layihələndirilməsi üsulunun seçilməsi; alqoritmin yazılış formasının seçilməsi (blok-sxem, psevdokod və s.) testin və testləşdirmə üsulunun seçilməsi; alqoritmin layihələndirilməsi.
4. Proqramlaşdırma : proqramlaşdırma dilinin seçilməsi; verilənlərin təşkili qaydalarının dəqiqləşdirilməsi; seçilmiş proqramlaşdırma dilində alqoritmin yazılması.
5. Testdən keçirmə və sazlama (otladka): sintaksisin yoxlanılması; məntiqi quruluşun və semantikanın yoxlanılması; test hesablamalar və testin nəticələrinin analizi; proqramın təkmilləşdirilməsi.
6. Məsəslənin həllinin nəticələrinin analizi və lazım gələrsə riyazi modelin dəqiqləşdirilməsi (2-5 mərhələlərinin təkrar ediliməsi).
7. Proqramın müşayiəti: konkret məsəslələrin həlli üçün proqrama əlavələrin edilməsi; həll olunan məsələ, riyazi model, alqoiritm, proqram, testlərin toplanması və istifadəçi üçün sənədləşmənin tərtibi.

Developer, (Azərbaycan dilində adı: Proqramçı) kompüter və digər rəqəmsal cihazlar üçün tətbiq (apk) və s. proqramlar hazırlayan, onların daim aktiv qalmasını təmin edən şəxsdir. Proqramistlər müxtəlif sahələrdə ixtisaslaşıb işlərin yerinə yetirə bilər. Bu sahələrə, Software Developer (Proqram tərtibçisi), Game Developer (Oyun tərtibçisi), Web Developer (Veb Proqram yaradısı), Mobile Developer (Mobil tətbiq yaradısı), Front-end Developer və ya Back-End Developer aiddir. Proqramçı peşəsini seçmiş şəxsləri bəzən Proqramist, Developer, Kompüter mühəndisi, Coder də adlandırırlar. Ancaq ümumi olaraq hamısı eyni şəkildə Developer (proqramist) peşəsinə daxildir. Coder, proqramist, developer və proqram mühəndisi arasındakı dəqiq fərq nədir?
Ola bilsinki, bu iş adları haqqında keçmişdə eşitmisiniz, bəs tam olaraq onlar arsındakı fərq nədir? Bəzi insanlar bunun əsasən təhsilinizdən və əldə etdiyiniz naliyyətlərdən asılı olduğunu iddia edirlər, bir şəkildə bu həqiqət ola bilər, amma bəziləri iddia edirlər ki, bəzən işlədiyiniz şirkət proqramçı, tərtibatçı və ya digəri oluduğunuza sadəcə bir iş adı olaraq qərar verir.

Coder, proqramİst, developer və proqram mühəndisi arasındakı dəqiq fərq nədir?
1. Kodyazan (Coder)
Kodyazan, tətbiqlərimizin əksəriyyətinin düzgün işləməsini təmin edən kodu yazan şəxsdir. Kodyazanlar yalnız tətbiqlərdə deyil,eyni zamanda video oyunlarda, sosial media platformalarında və bir çox digər proqramlarda da istifadə edilə bilən bir proqram yaratmaq qabiliyyətinə malikdirlər. Kodyazanlar bəzən bir proqramın hazırlanmasında tələb olunan bütün mərhələləri edə bilmirlər, məsələn, dizayn və ya sınaq, onlar əsasən baza kodunu yazmaq mərhələsində iştirak edirlər.Bəzi hallarda onları kodyazan adlandırdığınıza görə inciyə biləcək insanlar vardır.
2. Proqramist (Programmer)
Proqramist bir az daha ixtisaslaşmış bir insandır. Proqramistlər Java, Python, Ruby, Lisp, Go və s. kimi istənilən ilkin və ya yeni kompüter dillərində kompüter proqramları yaratmağı bacarırlar. Kompüter proqramçıları kod yazırlar. Proqram,  əməliyyat sistemləri və digər kompüter proqramlarından ibarət olan kod sətirlərini yazırlar. Bəzi insanlar 'kodlaşdırma' və 'proqramlaşdırma' terminlərini bir -birinin əvəzinə istifadə edirlər. Kod yazmağı öyrənmək, oxumağı və yazmağı öyrənməkdir, amma peşəkar proqramçı olmağı öyrənmək yazıçı olmağa bənzəyir. Oxumaq və yazmaq əsasdır, ancaq peşəkar adlandırılmaq üçün daha çox bacarıqlara ehtiyacınız var. Bu bacarığlara sahib olanlara da tez -tez proqramist və ya proqramçı , ya da ki, developer (proqram tərtibçisi) deyilir. Texniki cəhətdən kodlaşdırma yalnız kod yazmaq hərəkətidir və layihə hazırlanan zaman layihənin bir hissəsinə yönəlir, ancaq  proqramlaşdırma isə ümumiyyətlə, bir layihənin bir hissəsinı deyil, bütünününə yönəlir.
Onlar həm də alqoritmləri olduqca yaxşı başa düşürlər. Proqramçılar developerlərlə (tərtibatçı,inkişaf etdirici) ilə oxşar ola bilərlər, lakin aralarında incə bəzi fərqlər vardır. Proqramçı, əsasən proqram inkişaf mərhələsinin tətbiq hissəsinə yönəlmiş bir insandır. Bir proqramçı, ümumiyyətlə,  məhsul dizaynını və memarlığını tətbiq etmək üçün proqramlaşdırma dillərindən istifadə edən bir mütəxəssisdir. Bir proqramçı, proqram inkişafının bütün fərqli mərhələləri ilə maraqlanmır.Ancaq bir proqramçı bir developerin (tərtibatçı,inkişaf etdirici) alt qrupu hesab edilə bilər.
3. Tərtibatçı (Developer)
Tərtibatçı dizayn və digər xüsusiyyətlərə diqqət yetirərək tam qüsursuz bir kompüter proqramı yaza və yarada bilər. Onlar hər hansı bir proqram tətbiqinin inkişafı üçün açardırlar və ayrıca, onlar ən azı bir proqramlaşdırma dilinin mütəxəssisləridir. Tərtibatçılar proqramçılardan fərqli olaraq məsələ bir proqramın inkişafına gəldikdə daha ümumi ola bilərlər.
4. Proqram mühəndisi (Software Engineer)
Proqram Mühəndisi kompüter elmləri və ya proqram mühəndisliyi prinsiplərini və texnikasını yeni bir müstəqil proqramın inkişafı ilə əlaqədar hər şeyə tətbiq edən bir şəxsdir. Onlar əməliyyat sistemlərinin proqram təminatı, şəbəkə paylanması, kompilyatorlar və s. kimi hər cür sistem üçün proqram yaratmağı bacarırlar. Ümumiyyətlə, onlar diploma sahibdirlər və nəzəri cəhətdən bir çox şeyi sübut edə bilərlər. Proqram mühəndisləri yüksək maaşlı heyrətamiz bacarıqlara sahib insanlar kimi tanınırlar. Bir proqram mühəndisinin əmək haqqı illik 120 min dollara qədər ola bilər.

Nəticə:
Kodyazan, proqramçı, tərtibatçı və bir proqram mühəndisi arasındakı fərqləri anlamaq üçün başqa bir yol, onları iyerarxiya və ya pilləkən kimi görməkdir. Burada pilləkənin aşağı hissəsində Kodyazan və yuxarı hissəsində isə Proqram Mühəndisini tapa bilərik. Bəlkə sizin üçün bütün bu vəzifələr eyni mənanı verə bilər, çünki əvvəllər bir Proqram Mühəndisinin edə biləcəyi hər şeyi bir tərtibatçının hazırlaya biləcəyini bilirdiniz, amma onlar arasında bilməyə dəyər bəzi fərqlər həqiqətən var.
Bəzi şirkətlərin işçilərinin adına xüsusi diqqət yetirib və yetirməmələri narahat olmaq üçün böyük bir şey deyil, həqiqətən vacib olan şey nə edə biləcəyinizi və bunu nə dərəcədə yaxşı bacara biləcəyinizi bilməkdir.
   Bəzən proqramlaşdırma öyrənmək istəyən iş adamlarının və ya tələbələrin vaxtlarında problemler yarana bilər, bu zaman bu şəxslər üçün online resurslar çox səmərəli olur. Udemy Academy ən çox məsləhət görülən online akademiyalardan biridir. Burda nəinki, proqramlaşdırma, həmçinin xarici diləri, marketinqin sahələrini, dizaynerliyi belə öyrənə bilərsiniz. Bu artıq şəxsin öz seçiminə bağlıdır. Youtube, Yandex, Facebook,          Google kimi sosial şəbəkələr də sizə proqramlaşdırmanı öyrənməkdə çox kömək edə bilərlər 

Sahə maraqlıdır? Elə isə bu istiqamətdə inkişaf etməyə qorxma
Uğurlar !