Kompüter, Proqramlaşdırma
FAT - bu nədir? obyekt-yönümlü proqramlaşdırma əsas prinsipləri
Niyə obyekt-yönümlü proqramlaşdırma ən layihələrində üstünlük? FAT öz mürəkkəbliyi ilə məşğul olmaq üçün effektiv yol təqdim edir. Əvəzində yürütülebilir təlimat bir ardıcıllıqla kimi bir proqram nəzərə alaraq, müəyyən xüsusiyyətləri ilə obyektlərin bir qrup kimi təmsil və müəyyən tədbirlər ilə istehsal edir. Bu aydın, daha etibarlı və legkosoprovozhdaemyh applications nəticələnir.
əsas prinsipləri obyekt-yönümlü proqramlaşdırma (OOP) məhdudiyyətlər pre-mövcud yanaşmalar aşkar edilmişdir, çünki formalaşır. Onların arasında - dəyişiklik məhdudiyyətlər tətbiq məlumat və links çox sayda sınırsız erişim. mühüm Onların maarifləndirmə və səbəbləri nə OOP proqramlaşdırma anlamaq və onun üstünlükləri hansılardır.
prosessual dilləri
C, Pascal, FORTRAN, və oxşar dillər prosessual var. , Məlumat almaq üçün altı bölünür nömrələri nümayiş nəticə əlavə: Bu operator hər bir şey üçün kompüter deyir. Əlavə prosessual dil təlimat siyahısı. Bu kiçik olarsa, (tez-tez bir paradiqma adlandırılacaq) başqa heç bir təşkilat prinsip tələb olunmur. proqramçı təlimat siyahısını yaradır və kompüter onları həyata keçirir.
funksiyaları ayrılması
applications növbə daha çətin siyahısı olduqda. onlar qruplaşdırılıb qədər bir neçə yüz təlimat artıq başa düşmək olar Az. Bu səbəbdən, funksiyası onun yaradıcıları üçün proqram daha anlaşıqlı etmək üçün yol idi. Bəzi dillərdə, eyni anlayış subroutines və ya prosedurlar adlandırmaq olar.
The app bir aydın müəyyən məqsəd və interface hər hansı funksiyaları bölünür.
prosedurların ayrılması ideyası bir modul adlı obyekt daha böyük bir qruplaşma daxil genişlənmişdir bilər, lakin prinsipi eyni deyil: sənədin siyahıları keçirmək komponentlərinin qruplaşdırılması.
funksiyaları və modulları Separation - FAT qədər bir neçə onilliklər üçün paradiqma yaradır strukturlaşdırılmış proqramlaşdırma künc daş biri.
strukturlaşdırılmış proqramlaşdırma problemlər
applications böyük olmaq kimi, strukturlaşdırılmış proqramlaşdırma çətinliklər yaşamağa başlayır. Layihələr çox mürəkkəb olur. qrafik keçdikdə. Bu proqramçılar bir çox ehtiva edir. mürəkkəblik artmışdır. atəş xərclər cədvəli daha keçdikdə edilib və dağılması gəldi.
uğursuzluqlar səbəbləri təhlili prosessual paradiqma çatışmazlıqlar ortaya qoydu. Asılı olmayaraq də həyata proqramlaşdırma yanaşma strukturlaşdırılmış necə böyük applications mürəkkəb olur.
prosessual dil ilə bağlı bu problemlərin səbəbləri hansılardır? Birincisi, funksiyaları qlobal məlumatlara limitsiz girmə imkanı vardır. İkincisi, olmayan prosedurları və pis dəyərlər real dünya simülasyonu.
biz inventar mühasibat proqram çərçivəsində bu məsələləri nəzərə alsaq, qlobal məlumatların ən mühüm elementlərindən biri SKUs bir sıra edir. Müxtəlif funksiyaları dəyişikliklər göstərilir və belə ki, yeni bir değer daxil onlara müraciət edə bilərsiniz. D.
sınırsız erişim
proqram məsələn, C, məlumatların iki növ vardır, yazılı. Yerli funksiyası ərzində gizli və digər prosedurları istifadə olunmur.
iki və ya daha çox funksiyaları eyni data çıxışı var, sonuncu qlobal olmalıdır. Belə ki, məsələn, mövzular haqqında hesab məlumat alınır. qlobal data hər hansı bir mövcud prosedur ola bilər.
Böyük bir proqram, bir çox xüsusiyyətləri və bir çox qlobal elementləri var. prosessual paradiqma problem aralarında potensial links bir daha çox gətirib çıxarır ki.
Belə əlaqələri çox sayda bir neçə çətinliklər yaradır. Birincisi, bu proqramın strukturu anlayışı çətinləşdirir. İkincisi, çətin dəyişdirmək üçün. qlobal data maddə Change istifadə etmək imkanına malik bütün funksiyaları tənzimlənməsi tələb edə bilər.
Məsələn, kimsə mühasibat proqram qərar uçota obyekt kodu: 5 rəqəm ibarət olmalıdır ki, 12 Bu bir dəyişiklik tələb edir data type qısa uzun üçün. funksiyası code yeni formatı ilə işləmək üçün redaktə olunmalıdır İndi bağlı.
elementləri daha böyük proqram dəyişib, o, prosedurlar onlara daxil olmaq nə demək çətindir. Lakin hətta bu rəqəm əgər, onlara digər qlobal data yanlış əməliyyat səbəb ola bilər dəyişir. Hər şey başqa hər şey ilə bağlı belə bir yerdə bir dəyişiklik başqa əksyanma olunur.
real dünya modelləşdirilməsi
prosessual paradiqma ikinci və daha vacib problem öz yeri xüsusi məlumat və funksiyaları zəif real dünyada şeyi simüle edir. Burada belə insanların və ya avtomobil kimi obyektləri ilə məşğul olur. Onlar heç bir məlumatın və ya funksiyası kimi. Complex real-dünya obyektlərin atributları və davranış var.
atributları
güc və qapılar sayı - insanlar üçün atributları (bəzən xassələri) nümunələri göz rəngi və post adı bir avtomobil üçün. Məlum olub ki, proqramda məlumatlarına ekvivalent real dünya atributları. Onlar mavi (göz rəngi) və ya dörd (qapılar sayı) kimi xüsusi dəyərlər var.
davranış
Behavior - real-dünya obyektlərin təsiri bir növ cavab istehsal olunur. Siz maaş artımı üçün boss soruşsanız, cavab "bəli" və ya "yox". Siz əyləc basın varsa, avtomobil dayanacaq. Və dayandırılması sözü davranışları nümunələridir. proseduru oxşar Davranış: bu bir şey etmək adlanır və bu, belə deyil olunur. Belə ki, özləri tərəfindən məlumat və funksiyaları real-dünya səmərəli obyektlərin model yoxdur.
çıxış
OOP obyekt məlumat və funksiyaları bir sıra kimi təmsil olunur. Yalnız C ++ üzv funksiyaları deyilir prosedurları, onun dəyəri əldə etmək üçün imkan verir. Bu gizli və dəyişikliklər qorunur. Anlamları və funksiyaları bir encapsulated olunur. Encapsulation və upryatyvanie - obyekt-yönümlü Dil təsviri əsas şərtləri.
Siz data dəyişdirmək istəyirsinizsə, bu funksiyaları onlarla qarşılıqlı dəqiq bilir. No digər prosedurlar gedə bilməz. Bu yazı, ayıklama, və proqram saxlanılması asanlaşdırır.
Ərizə adətən üzv funksiyaları səbəb bir-biri ilə qarşılıqlı bir neçə obyektlərin ibarətdir.
Bu gün ən çox istifadə edilən dil OOP (obyekt-yönümlü proqramlaşdırma) - C ++ (plus plus). Java belə göstəricilər, şablonlar və C ++ daha az güclü və çox yönlü edir çox miras kimi bəzi xüsusiyyətləri yoxdur. C # hələ C ++ populyarlıq əldə etməyib.
Bu Smalltalk kimi bəzi digər obyekt-yönümlü dildə C ++ adlı üsulları üzv funksiyaları qondarma ki, qeyd etmək lazımdır. verileri adlı atributudur. obyektin bir üsul zəng ona mesaj göndərir.
analogiya
Siz şirkət şöbələrinin obyektləri təsəvvür edə bilərsiniz. ən təşkilatlarda, işçilərin heyət aşağıdakı Həddindən artıq yükləmə əmək haqqı, və pərakəndə ticarətlə məşğul sonra bir həftə bir gün işləmir. Hər bir şöbə aydın təyin vəzifələri ilə öz heyəti var. şöbələri insanlar onların informasiya ilə işləmək və s. əmək haqqı, satış, mühasibat heyəti, göstəriciləri ... öz data var Şirkətin bölgüsü, buna görə də, onun əməliyyatlarının nəzarət asanlaşdırır və məlumatların bütövlüyünü saxlayır. Mühasibat uçotu üçün məsuliyyət daşıyır payroll. Siz iyul ayında cənub filial ödənilən əmək haqqı ümumi məbləği bilmək istəyirsinizsə, arxiv daxil delve ehtiyac yoxdur. Bu məsul şəxs qeyd göndərmək ki, şəxs data çıxışı var və tələb məlumata cavab göndərir qədər gözləyin kifayətdir. Bu qaydalara riayət və xarici müdaxilə olmaması təmin edir. Eyni şəkildə FAT bir obyekt təşkilat tətbiq edir.
Bu obyektlərin oriyentasiya iş proqramı detalları tətbiq deyil ki, yadda olmalıdır. operatorları C ++ Ən təlimat Əslində belə C. kimi prosessual dillərə uyğun, C. funksiyaları çox oxşardır ++ C üzvü funksiyaları Yalnız geniş kontekstində təlimat prosessual və ya yönümlü obyekt müəyyən etmək üçün imkan verir.
OOP obyekt: Definition
əvəzinə ayrı-ayrı funksiyaları öz bölgüsü haqqında suallar obyekt-yönümlü dilində proqramlaşdırma problemi nəzərə zaman ayrılması müəssisələrində bir problemdir. OOP düşüncə applications inkişaf üçün çox asandır. Bu proqram və real obyektlərin oxşarlıq ilə bağlıdır.
OOP obyektlərin şeyi hansı var? Burada bəzi tipik kateqoriyalar var.
OOP Fiziki obyekt - edir:
- nəqliyyat axını modelləri;
- circuit dizayn proqramlarında elektrik komponentləri;
- ölkə iqtisadiyyatına model;
- hava nəqliyyatına nəzarət sistemi təyyarə.
ətraf mühit istifadəçi kompüter Elements:
- menyu;
- windows;
- qrafik (xətti, düzbucaqlı, dairə);
- klaviatura, siçan, printer, disk sürücüleri.
nəfər:
- işçilər;
- tələbələr;
- müştərilərin;
- satıcılar.
information:
- kitab saxlanılması;
- Şəxsi məsələ;
- lüğət;
- seqmentlərində və qəsəbələrin longitudes cədvəli.
real dünya Rabitə obyektlərin və FAT funksiyaları və məlumat onlar proqramlaşdırma devrim var birləşməsi nəticəsi idi. orada prosessual dildə belə bir yaxın matç.
sinif
bir sinif üzvü - FAT obyektləri. Bu nə deməkdir? Proqramlaşdırma dilləri inşa etmişik data növləri. Type int, t. E. C müəyyən edilir bir tam ++. Siz int dəyişənlərin hər hansı bir sayı elan edə bilər.
Eynilə, obyektlərin plüralizmi bir sinif tərəfindən müəyyən. Bu int dəyişənlərin yaratmaq deyil kimi funksiyaları və öz imkanları daxil data, həmçinin onları yaratmaq deyil müəyyən edir.
FAT Class - analoji obyektlərin bir sıra bir təsviri. Prince, Sting və Madonna müğənnilər var. Var ki, adı heç kəs, lakin onlar müvafiq xüsusiyyətləri var əgər insanlar, belə adlandırmaq olar. OOP obyekt - Bu instansiya.
miras
Həyat, siniflər subclasses bölünür. Məsələn, heyvanlar suda-quruda yaşayanlar, məməlilər, quşlar, həşərat daxil və s bölünür. D.
bölgüsü bu cür prinsipi hər yarımsinif sinif olan ümumi xüsusiyyətləri var ki. Bütün avtomobillər təkərlər və motor var. Bu vasitələrin müəyyən xüsusiyyətləri var. hər yarımsinif ümumi xüsusiyyətləri ilə yanaşı, öz xüsusiyyətlərinə malikdir. Bir çox avtobus oturacaqlar və yük ağır yük daşımaq üçün yer var.
Eynilə, bir baza sinif onlar əlavə öz xüsusiyyətləri bölüşmək ki müəyyən edilə bilər yarımsinif valideyn neçə törəmələri ola bilər. prosessual sadələşdirilməsi funksiyaları kimi Miras. kod bir neçə hissələri olduqca çox eyni bunu varsa, siz ümumi elementləri çıxarış və bir proseduru onları qoymaq bilər. Üç tətbiq sahəsi ümumi tədbirlər həyata funksiyası zəng edə bilərsiniz, lakin onlar istehsal və öz əməliyyatları edə bilərsiniz. Eynilə, baza sinif törəmələri qrupuna ümumi məlumat var. Oxşar funksiyası obyekt-yönümlü proqram miras azaldır və onun elementlərinin əlaqələr aydınlaşdırmaq.
təkrar
sinif yaradılmış və debugged sonra, öz applications təkrar digər proqramçılar verilə bilər. Müxtəlif applications daxil edilə bilər funksiyaları bir kitabxana kimi.
OOP-ci ildə miras çox istifadə fikir bir uzantısıdır. Mövcud sinif, bu dəyişmədən, biz digər funksiyaları əlavə yeni bir təşkil edə bilər. Mövcud proqram yenidən istifadə rahatlığı - FAT əhəmiyyətli bir üstünlük. Bu ilkin investisiya artan gəlirlilik təmin inanılır.
yeni məlumat növləri yaratmaq
yeni məlumat növləri yaradılması üçün əlverişli Facilities. bir proqram iki ölçülü dəyərlər istifadə edir düşünək (məsələn, koordinatları və ya enlem ve boylam) və onlara hesab fəaliyyət ifadə etmək üçün bir arzusu var:
position1 = mövqe + mənşəyi,
harada position1, mövqe və mənşə - müstəqil ədədi dəyərlər bir cüt. onun obyektlərin bu iki dəyərlər daxildir sinif və dəyişən bəyannamələrin yaradılması yeni data type yaradır.
Polimorfizmi, həddindən artıq
hesab istifadə Operators (bərabər) = və + (plus) mövqeli yuxarıda, eləcə də hərəkət etmir daxili belə int kimi növləri. Vəzifə obyektləri, və s. Müəyyən bir və proqram tərəfindən müəyyən deyil. Necə bu operatorları onları idarə etmək üçün necə bilmirəm? Cavab yeni davranışları onlara müəyyən edilə bilər ki, var. Bu əməliyyatlar üzv funksiyaları Class Vəzifə olacaq.
polimorfizmi adlanır nə onlar iş asılı olaraq operatorları və ya prosedurları istifadə. Yeni data növü ilə işləmək imkanı olur belə + və ya = kimi bir operator var, o, bu yüklənmir olduğunu söyləyir. FAT in Overload - polimorfizmi bir növ. Onun əhəmiyyətli xüsusiyyətidir.
FAT "butaforiya üçün Object-Oriented Programming" mövzusunda kitab hər kəs daha ətraflı bu mövzu ilə tanış olmaq üçün imkan verir.
Similar articles
Trending Now