continue ifadəsi Dövrlərlə işləmək üçün digər bir kontrol ifadəsi də continue – dir. Qeyd olunduğu kimi, break ifadəsi dövrü birdəfəlik saxlayırdı. Yəni, dövrün geri qalan addımlarının sayının nə olmasından asılı olmayaraq, dövr break- a çatanda, dayandırılırdı. break – dan fərqli olaraq, continue ifadəsi dövrü tamam saxlamır. Bunun yerinə, dövrün icrası continue sətrinə çatdıqda cari əməliyyat pas keçilir – ötürülür və iterasiya növbəti addımdan icra olunmağa davam edir. Bir nümunəyə baxaq:
using System; class soft
{
static void Main()
{
for (int i = -10; i < 10; i++)
{
if (i == 0) continue; Console.WriteLine("i = " + i);
}
Console.ReadKey();
}
}
Bu proqramda, i dəyişəninin qiymətinin 0 olduğu vəziyyətdə dövrün işi pas keçilir. Beləliklə, i = 0 olduqda, proqramda continue ifadəsindən dövrün qapanış mötərizəsinə qədərki aradakı kodların heç biri icra olunmur.
Obyekt yünümlü anlayışı. Əvvəlcə bu anlayışı proqramlaşdırmadan bağımsız izah etməyə çalışaq. Bir iş görərkən, o işi hissələrə bölmək, o hissələri ayrı-ayrı yerinə yetirmək, sonra hissələr arasındakı məntiqi əlaqəni qurarq yekun işin ortaya çıxarılmasına üsuluna obyekt yönümlü deyilir. Məsələn, bir ticarət mərkəzi düşünün. Ticarət mərkəzlərinə daxil olanda, müxtəlif satış bölmələrinə rast gəlirik: kitab bölməsi, ət məhsullarının satışı bölməsi ya da süd məhsullarının satışı bölməsi. Hər halda kitab satışı bölməsində ət satışını həyata keçirmək çox mənasız olardı. Çünki, bu obyektlər bir-birlərindən asılı deyil. Buna görə də, bir-birlərinə birbaşa aid olmayan obyektləri (kitab, ət, süd, meyvələr) ayrı-ayrı satış bölmələrində yerləşdirmək, daha gözəl üsul olardı. Əgər ət və kitab eyni bir bölmədə satılsaydı, bu vəziyyətdən nə satıcı, nə də müştəri razı qalardı. Hətta bu vəziyyəti görən müştəri böyük ehtimalla bir daha o ticarət mərkəzinə getməyəcəkdir. Beləliklə, bir- birlərinə dəxli olmayan obyektləri ayıraraq, biz obyekt yönümlü satışı həyata keçirdik. Bu prinsipə söykənərək proqram yazmağa imkan verən proqramlaşdırma dillərinə də obeyekt yönümlü proqramlaşdırma dili (object oriented programming language) deyilir. Obyekt yönümlü proqralaşdırma dillərinə bu qədər bəsit və primitiv tərif vermək, əslində o qədər də düzgün deyil. Obyekt yönümlülüyü təmin edən bəzi kriteriyalar var ki, bölmənin davamında qeyd olunacaq. Bununla belə, OYP dillərində obyekt yönümlülüyün əsas vahidi sinifdir. Yəni, bir-birlərinə birbaşa bağlı olmayan proqram kodlarını ayrı-ayrı siniflərdə yazaraq obyekt yönümlü proqram yazmış oluruq. Bir proqram yazarkən, əvvəlcə həmin proqramı yaxşıca analiz edirik və proqramımızda mövcud olacaq proqram modullarını bir-birlərinə qarışdırmadan ayrı-ayrı siniflərdə yazırıq. Obyekt yönümlü olmadan böyük həcmli proqramlar yazmaq çox çətin idi, hətta mümkün deyildi. Çünki, məsələn 5000 sətir kod yazdıqdan sonra proqramı idarə etmək mümkünsüz hala gəlirdi. Bu, böyük bir spagetti boşqabının içindən hansısa vermişel dənəsini axtarmağa çalışmaq kimi idi. Obyekt yönümlü proqram yazmaq ona görə vacibdir ki, böyük proqramları rahatlıqla yaza bilər, bir aydan sonra proqramımıza baxanda həmin proqramı tanıya bilək. Dinamik proqramlar yaza bilək (update oluna bilən). Bu səbəblər uzanır gedir. Amma deyilənləri ümumiləşdirsək, obyekt yönümlü olaraq proqram yazmaq ona görə əlverişlidir ki, bu zaman kompüter kimi ―düşünməyə‖ ehtiac yoxdur. Adi həyatda işlərinizi necə edirsinizsə, eyni düşüncə və məntiqlə rahatlıqla proqramlarınızı obyekt yönümlü olaraq yaza bilərsiniz. Nə yaxşı ki, C# bizə tamamilə obyekt yönümlü proqram yazmağa imkan verir. Yaşasın C#!
Obyekt yönümlü proqramlaşdırma dillərində özünü göstərən 4 əsas faktor var:
Beləliklə, bir proqramlaşdırma dillərində yuxarıda göstərilən xüsusiyyətlərin hamısı dəstəklənirsə, o artıq tamamilə obyekt yönümlü (pure object oriented) proqramlaşdırma dili olur, hansı ki C# bu sinfə aiddir.