1
ҚАЗАҚСТАН РЕСПУБЛИКАСЫ
БІЛІМ ЖƏНЕ ҒЫЛЫМ МИНИСТРЛІГІ
Т. А. Павловская
С/С++
ЖОҒАРҒЫ ДЕҢГЕЙЛІ ТІЛДЕ
ПРОГРАММАЛАУ
Оқулық
Алматы, 2012
2
Қазақстан Республикасы Білім жəне ғылым министрлігінің «Оқулық»
республикалық ғылыми-практикалық орталығы бекіткен
Қазақшаға аударғандар: БӨРІБАЕВ Б., АБДРАХМАНОВА М. Б.
Павловская Т. А.
С/С++. Жоғарғы деңгейлі тілде программалау: Оқулық.-Алматы: «Дəуір» баспасы,
2012. - 504 бет.
ISBN 978-601-217-347-5
Бұл кітаптың мақсаты – ISO/IEC 14882 стандартына сəйкес C++ тіліне қысқа əрі нақты түрде
сипаттама беру. Кітап тілді оның əліпбиінен бастап игеруге бел буған студенттерге арналған,
алайда ол программалауды жетік меңгерген мамандар үшін де пайдалы болады. Кітапты жа-
зуда алға қойылған мақсат – C++ тілінің мүмкіндіктерін жəне оларды пайдалану тəсілдерін
дұрыс көрсету, осы жəне басқа да программалау тілдерін үйренуге түрткі болу жəне қазіргі
заманғы объектіге бағытталған технологияларды түсінуге жол ашу.
Өзекті тақырыптар бойынша бақылау тапсырмалары 20 нұсқада берілген жəне автор өзінің
оқытушыларға көрсетіп отырған көмегін олар дұрыс бағалайды деп сенім артады.
ISBN 978-601-217-347-5
© ЗАО Издательство «Питер», 2012
© ҚР жоғары оқу орындарының
қауымдастығы, 2012
ƏОЖ 004.43(075.8)
КБЖ 32.973-018 я 73
П 12
П 12
ƏОЖ 004.43(075.8)
КБЖ 32.973-018 я 73
3
Алғы сөз
Бұл кітаптың негізгі мақсаты – С++ тілін «Для чайников» сериясының үзінділігі
мен үстіртін баяндауынан қорғай отырып, маңызы тек программалау тəжіри-
бе
сін игергеннен кейін айқындалатын ерекшеліктер туралы шексіз пікірлерсіз,
ISO/IEC 14882 (1998) стандартына сəйкес, нақты əрі қысқа түрде сипаттау болып
табылады. Бұл кітап тілді жаңадан оқып үйрене бастаған студенттерге арналған,
алайда ол программалауда бірсыпыра білім жинақтағандар үшін де қажеттілігін
жоймайды. Оны дəрістердің қысқаша конспектісі немесе қосымша анықтамалық
құрал ретінде қарастыруға болады.
Назарларыңызға ұсынылып отырған кітап жалпы материал мазмұнын
толыққанды ашуға ұмтылмайды, ол үшін анықтамалық құралдар, құжаттамалар
жəне мəтінге тəуелді көмекті қолдану мүмкіндіктері бар. Мұны жазуда алға
қойылған мақсат – С++ тілінің мүмкіндіктері мен оларды қолдану туралы дұрыс
көзқарас қалыптастыру, сонымен қатар болашақта осы жəне басқа да программа-
лау тілдерін үйренуге жол көрсету.
Кітапта тілдің негізгі конструкцияларынан басқа, программаларды жазу ба-
рысында қолданылатын негізгі мəліметтер құрылымдары, программалардың
сапалық көрсеткіштері, сонымен қатар программалау стилі жəне технологиясы
жөнінде бірсыпыра ұсыныстар қарастырылады.
Осы кітапқа қосымша ретінде 2002 жылы Т. А. Павловская мен Ю. А. Щу-
пактың «С/С++. Жоғарғы деңгейлі тілде программалау. Құрылымдық программа-
лау» атты практикумы «Питер» баспасынан жарық көрді. Онда құрылымдық па-
радигма шеңберінде қолданылатын С++ тілінің құралдары сипатталып, оқулықта
берілген зертханалық тапсырмаларды түсіндіре отырып талдау жүргізіледі, соны-
мен қатар программаларды құру жəне жөндеп түзету технологиялары түбегейлі
қарастырылып, тапсырмаларды шешу нұсқалары оның тиімділігін бағалау
жол
дары да ұсынылады. 2004 жылы практикумның объектіге бағытталған
прог
раммалауға арналған екінші бөлімі басылып шықты. Практикумда қарас-
тырылатын негізгі сұрақтар ішінде UML, программалық инженерияның базалық
қағидалары, жобалау үлгілері келтіріліп, олар оқулықта қамтылған тақырыптар
шеңберінен шығып, оқырманға кəсіби программалау əлеміне жылдам қадам
басуға мүмкіндік береді.
Кітаптың үштен бірінен астам бөлігі стандартты кітапханаға, яғни програм-
маларды құру мерзімін қысқарту жəне олардың сенімділігін арттыруға, бір орта-
дан екінші бір ортаға көшірілу мүмкіндіктері мен қолданылу əмбебаптылығын
жоғарылату мақсатында əрбір кəсіби программалаушы меңгеруі тиіс құралдарға
шолу жасауға арналған.
4
Кітапта Windows жүйесіне жəне басқа да орталарға қатысты программалау
ісі қарастырылмайды, сондықтан барлық мысалдар «консольдік қосымшалар»
ретінде көрсетіледі. Мысалдардың синтаксисі С++ стандартына сəйкес келеді,
сондықтан олардың кейбіреулері осы аталған стандарттың бекітілуіне дейін
шыққан программалық қоршауларда орындалмауы мүмкін.
Кітап негізгі үш бөлімнен тұрады, олар: «Құрылымдық программалау»,
«Объектіге бағытталған программалау» жəне «Стандартты кітапхана».
Бірінші бөлімде С++ тілінің негізгі конструкциялары жəне қазіргі кездегі сапа
мен сенімділік талаптарына жауап беретін программа құрудың базалық техноло-
гиясы қарастырылады.
Екінші бөлім көлемді программаларды дұрыс құруға мүмкіндік беретін тіл
құралдарын – кластарды, мұралауды, шаблондарды жəне айрықша жағдайларды
(ерекше жағдайларды) – сипаттауға арналған. Бұл бөлім материалдары стандарт-
ты кітапхананы игеру үшін де қажет болады.
Үшінші бөлімде С++ тілінің стандартты кітапханасы құралдарына сипаттама
берілген. Ағымдар, контейнерлер, итераторлар, векторлар, стандартты алгоритм-
дер жəне олардың арасындағы байланыстар қарастырылады.
Кітаптағы тілдің синтаксистік элементтерінің анықтамалары қарайтылған
қаріппен ерекшеленіп берілген.
Қосымшаларда кез келген программаны жазу барысында қажет болатын
анықтамалық ақпараттың жинақталған көлемі берілген.
Кітапта сипаттама берілген барлық түйінді сөздерді, типтерді, тұрақтыларды,
функцияларды, макростар мен кластарды пəндік нұсқауыш арқылы табуға бо-
лады, осы мүмкіндік кітапты анықтамалық ретінде де қолдануға жол ашады.
Қолдануды жеңілдету үшін нұсқауыш жолында элемент атынан кейін үтір арқылы
осы элемент кіретін класс аты немесе түсіндірме берілген.
Осы мүмкіндікті пайдалана отырып, автор өзінің алғашқы программалау
тілінен берген ұстаздары – П. А. Шипилов пен Г. Л. Голованевскийге, «Питер»
баспасының қызметкері А. В. Васильевке, əріптестері – А. В. Лаздин, Ю. А. Щу-
пак жəне И. Яковлевке, əдебиеттер тізімінде есімі аталған барлық корифейлерге,
сонымен қатар ата-анасына жəне суреттерді салған ұлы Евгенийге үлкен алғысын
білдіреді.
Кітаптың негізіне автордың Санкт-Петербург ақпараттық технологиялар,
механика жəне оптика университетінде (СПбГУ-ИТМО) оқитын дəрістер курсы
алынған.
Кітапқа қатысты айтар сыни пікірлеріңіз бен ұсыныстарыңызды mux@tp2055.
spb.edu немесе 2:5030/1016.20@fi donet.org адрестеріне хабарлауыңызға болады.
Достарыңызбен бөлісу: |