DL1MP1K | Date: ხუთშაბათი, 2012-02-09, 7:47 PM | Message # 1 |
Lieutenant colonel
Group: VIP
Messages: 77
Awards: 0
Reputation: 1
Status: გასული
| დიახ, თანდათან ვუახლოვდებით იმ მთავარს რაც ესოდენ მნიშვნელოვანია C++ პროგრამირების ენაში. ჩვენ არაერთხელ გვქონია უკვე ამის შესახებ საუბარი, თუ რა უპირატესობა გააჩნია ობოექტორიენტირებულ პლათფორმას არა ობიექტორიენტირებულ პლათფორმასთან შედარებით, არც ის გამოგვრჩენია, რომ ზუსტად C++ პროგრამირების ენამ მოახდინა სწორედ ეს ე. წ. პროგრამირების რევოლუცუია. თუმცა ჯერ კიდევ სამოცდაათიან წლებში არსებობდა პროგრამირების ენები, რომელთაც ეს თვისება გააჩნდათ, მაგრამ არასრულყოფით რა თქმა უნდა. ეს ენები იყო Smalltalk და Modula. ოთხმოციანი წლების შუა რიცხვებში ჩნდება C პროგრამირების ენა, რომელსაც შემდეგ ცვლის ჯერ-ჯერობით დღეისათვის შეუცვლელი C++ ენა. რაში გამოიხატება ამ ენის C++ უპირატესობა სხვა ენებთან შედარებით. კერძოდ იმაში, რომ ამ ენით შესაძლებელია კლასების შექმნა, რომელიც არის ობიექტორიენტირებული პროგრამირების ფაილების ტიპეპის ძირითადობა. რა იგულისხმება კლასებში და რატომ მაინც და მაინც კლასები? ესაა ძირათად იმ თვისებების და მეთოდების ერთობლიობა, რომლებიც ობიექტების ავ-კარგიანობას ასახავენ, გვაჩვენებენ ამ ობიექტების მოქმედების შესაძლებლობებს (როგორც თვით პროგრამაში, ასევე სხვა პროგრამისტის რომელიმე პროგრამაში), საშუალებას იძლევიან ინსტანცების შექმნასა და მათი ცვლადების განსაზღვრაში, რომლებიც შემდეგში ობიექტის თვისებებად აღიქმებიან. რას ნიშნავს უფრო მარტივად ყოველივე ეს? ეს ნიშნავს იმას, რომ კლასები აღწერენ ობიექტებს, თვით ამ ობიექტების თვისებებისა და ოპერაციების გამოყენებით. ახლა შესაძლებელია გაჩნდეს კითხვა, თუ რას წარმოადგენს თვით ობიექტი? ესაა მარტივად, რომ ვთქვათ მართლაც რაღაცა ობიექტი, რომელსაც შესაძლებელია ბევრი თვისება გააჩნდეს. წარმოვიდგინოთ ვთქვათ ფანქარი, რომელსაც შესაძლებელია გააჩნდეს თავისი სისქე, თავისი სიგრძე და თავისი ფერი. ჩვენ შეგვიძლია რა თქმა უნდა მას კიდევ ბევრი თვისება მოვუძებნოთ, მაგრამ ყოველი ობიექტიდან ვიღებთ იმას, რაც ჩვენ პროგრამირებისათვის გვჭირდება. ახლა შევხედოთ თუ რა შეუძლია ფანქარმა რომ გააკეთოს. მას შეუძლია ჩვენი დახმარებით დახატოს, ხაზი გაავლოს, გააფერადოს და ბევრი კიდევ სხვა. აი ფანქრის ამ შესაძლებლობებს კი, ფანქრის ოპერაციები შეიძლება ვუწოდოთ. სწორედ ამ თვისებების და ოპერაციების ერთობლიობაა კლასები. ვინც ჩვენს ლექციებს Games Programming თვალს ადევნებდა, რომელშიდაც საუბარი გვქონდა თამაშების პროგრამირებაზე Flash -ით, მათ არ გაუჭირდებათ ამ ჩვენი ნაამბობის გაგება, რადგან თამაშების პროგრამირების დროს ხდება პირველ რიგში ასეთი კლასების გამოყენება. კერძოდ პირველ რიგში ვხატავთ რაიმეს, რომელიც ინსტანცირებისას გარდაიქმნება ობიექტად და ჩვენ გვეძლევა შესაძლებლობა Flash -ში წინასწარ განსაზღვრული კლასების გამოყენებით, ჩვენს მიერ ახლად შექმნილ ობიექტზე ვიმოქმედოთ მისივე თვისებებით და ვამოძრავოთ ჩვენი ობიექტი საითაც გვინდა იქით, ან შევასრულებინოთ სხვა რაიმე ოპერაცია. თამაშების პროგრამირების გახსენება ჩემს მიერ მიუთითებს იმაზეც, რომ თვით პროგრამში Flash გამოყენებულია კლასები, რომლებიც C++ პროგრამირების ენაშია შექმნილი. ეს კი გვეუბნება კლასების (და C++ ენის) კიდევ ერთ უპირატესობას, მაშასადამე თქვენ შეგიძლიათ შექმნათ კლასი, რომელიც შემდეგში შეიძლება სხვამაც გამოიყენოს. არ ვიცი თუ რაოდენ გასაგებად ავხსენი ყოველივე ეს, მაგრამ იმედი მაქვს თანდათანობით და მაგალითების დახმარებით ადვილად გაერკვევით ყველაფერ ამაში.
მიზანი ამართლებას საშუალებას ! ვინც ეძებს ის პოულობს : http://therealgta.ucoz.com ითამაშე ფლეშ თამაშები : http://gamesforboys.in
|
|
| |