айнара. с шыгару. С тіліні шыу тарихы
Скачать 26.96 Kb.
|
С++ тілінің шығу тарихы С++ тілінің шығуы UNIX операциялық жүйесімен тығыз байланысты, өйткені бұл ОС осы С тілінде жазылып шыққан. UNIX/C жұмыс істеу ортасы Си тілін жүйелік программалау тілі ретінде елге таныстырды,ол компиляторлар мен ОС-тер жазу үшін қолайлы деп саналады. Бірақ Си тілі кез келген салада программалар жазуға да өте қолайлы тіл болып табылады. Алғаш рет UNIX 1969 жылы Нью-Джерси штатындағы Белл фирмасының лабораториясында PDP-7 мини-ЭЕМ-інде жасалып шықты. UNIX PDP-7 компьютерінің ассемблер тілінде жазылды.Бұдан соң сол лабораторияның жетекшісі Кен Томпсон 1970 жылы В деп аталған жаңа тілге арнап компилятор жасап шықты. Осы тілді Си тілінің негізі деп атауға болады. Жалпы Си тілінің даму жолына қарасақ; Алгол-60 1960-жылдың басында халықаралық комитет басып шығарды CRL (Combined Programming Language) Кембриджде және Лондон университетінде 1960 ж.қатарласа жасалды. BCPL (Basic Combined Programming Language) Кембриджде Мартин Ричардс 1967 ж. жасап шығарды. В Bell Labs қызметкері Кен Томпсон 1970 жылы жасады С Bell Labs қызметкері Дэннис Ритчи 1972 жылы жасады Сонымен,1983 жылы С++ тілінің стандартын жасау мақсатында (ANSI C) Америка Ұлттық стандарттар институты (ANSI) құрылды. С++ тiлi BCPL және B тiлдердiң негiзiнде құралған және С тiлiнен дамыған. BCPL тiлi компилятордан жазуға және операциялық жүйенi бағдарламамен қамтамасыз етуге арналған. Бұл тiлдi 1967 жылы Мартин Ричард ойлап тапқан. Кен Томпсон В тiлiнiң көптеген мүмкiндiктерiн BCPL дубликатында және В тiлiн UNIX операциялық жүйелерiнiң алғашқы версияларын құру үшiн 1970 жылы Bell Laboratories-те DEC PDP-7 компьютерiнде қолданылды. BCPL және В тiлдерi қолдануға тиiмсiз болды. Онда мәлiметтiң әрбiр элементi жадыда бiр сөздiң орнын алады және мәлiмет элементтерiн өңдеуде бағдарламашыларға ауыртпалығын тигiздi. С тiлi В тiлiнiң негiзiнде дамыды. С тiлiн Bell Laboratories-те 1972 жылы Деннис Ритчи DEC PDP-11 компьютерiнде жасады. С BCPL және В тiлдерiнiң көптеген маңызды концепцияларын және мәлiмет типтерiн және басқа да қасиеттерiн қолданды. С тiлi UNIX операциялық жүйесiн өңдеудегi тiл ретiнде кеңiнен танымал болды. Қазiргi таңда барлық операциялық жүйелер С және С++ тiлдерiнде жазылған. Соңғы он жылдықта С тiлi көптеген компьютерлерде қолайлы болды. С++ - С тiлiнiң кеңейтiлген түрi. Оны 1980 жылдың басында Бъерн Строустроп Bell Laboratories-сында өңдеп шығарған. С++ тiлi С тiлiнiң бiрқатар қасиеттерiн реттеудi қамтамасыз етедi және ең маңыздысы объектi-бағдарланған бағдарламалық мүмкiндiгiн қамтамасыз етедi. Бұл бағдарламамен қамтамасыздандыру әлемiндегi революциялық идея болып табылады. Басқада бағдарламалық тiлдер көптеген қажеттi эффект бере алмағандықтан, С++ алғашқыда ең жоғарғы деңгейдегi нақтылы оқиғалар үлгiлерiн өңдеу мақсаты үшiн құрылған тiл болды. С++ тiлiн құруда С тiлiнiң сәйкестiгiн сақтап қалуға ерекше көңiл бөлiндi. С++ тiлiнiң көмегiмен кең көлемдi бағдарламалық проектiлер құруға болады. С++ тiлiнiң арқасында берiлген мәлiметтер типтерiне бақылауды күшейтуге және көптеген қосымша эффектiлердi жеңе алатын болдық. С++ тiлiнiң ең маңызды табысы объектi-бағдарланған бағдарламалау болып табылады. С++-тiң барлық жеңiлдiктерiн пайдалану үшiн негiзгi объектiлердi және олармен байланысқан операцияларды анықтап алу керек. C ++ мүмкіндіктері Танымал тіл C ++ негізінен қосымшаларда жасаушылар кең қолданады. Онда барлық маңызды бөліктер бар, мысалы, барлық қажетті блоктарды қамтамасыз ететін негізгі тіл, мысалы, айнымалылар, деректер түрлері, литералдар және т.б. TIOBE Programming Community Index-ке сәйкес бұл ең танымал бағдарламалау тілі төртінші орынға ие. С ++ тілінің қолданылуы оны сипаттамаларына байланысты ең қолайлы тілге айналдырады. Бұл бағдарламалау тілдерімен жұмыс істеуге мүдделі кез-келген әзірлеуші үшін алғашқы стартап тілі. Таза тұжырымдамаға негізделген тіл болғандықтан оны үйрену оңай. Оның синтаксисі өте қарапайым, оны жазуды жеңілдетеді, ал қателіктерді оңай көшіруге болады. Басқа тілді қолданар алдында бағдарламашылар алдымен C ++ тілін үйреніп, содан кейін басқаларын қолдануды жөн көрді. Дегенмен, көптеген жасаушылар C ++ қолданбасының көптеген түрлеріне және бірнеше платформалармен және бағдарламалық жасақтамамен үйлесімді болуға тырысады. Нысанға бағытталған С-ден С ++ -ке дейінгі негізгі жаңарту объектіге бағытталған бағдарламалау болып табылады. Демек, назар «объектілерге» және осы объектілердің айналасындағы өңдеуге аударылады. Бұл полиморфизм, мұрагерлік, инкапсуляция және абстракция, дамуды және қолдауды жеңілдететін ұғымдардан тұрады. Процедуралық C ++ жеке тапсырмаларды орындау үшін «шақыруға» болатын код сегменттерін қайта пайдалануға болатын блоктарға қосатын процедуралар мен ішкі бағдарламалар тұжырымдамасын қолдайды. Процедуралар мен ішкі бағдарламалар C ++ тілінде функциялар ретінде белгілі. Функция нөл немесе одан да көп параметрлерді қабылдай алады және нөлге немесе мәнге ие болады. Құрылымдық бағдарламалау C ++ коды модульді, функциялар, сыныптар мен объектілердің қолдауымен, модульдер еркін орналасады. С ++ тіліндегі ағынды басқару операторлары көптеген басқа құрылымдалған бағдарламалау тілдеріндегі мәліметтерге ұқсас. Бұлар шешім логикасын іске асыру үшін, қайталау немесе циклдарды орындау үшін, while, және do-while уақытында. Жадыны басқару C ++ динамикалық жадыны бөлуді қолдайды. Осылайша, сіз кез-келген уақытта бөлінген жадты босата аласыз. Көрсеткіштер Олар басқа айнымалының адресін сақтайтын айнымалылар. Меңзер айнымалының жадыдағы орнын көрсетеді. C ++ жад орнына қол жетімділікті қажет ететін көптеген мәселелерді шешуге мүмкіндік беретін көрсеткіштерді қолдайды. Құрастырылған тіл Ол іске қосылмас бұрын, компилятор деп аталатын бағдарлама арқылы C ++ бағдарламасы мақсатты машинаның жергілікті нұсқауларына аударылуы керек. Компиляциясыз ешқандай C ++ бағдарламасы жұмыс істей алмайды. Компилятор кейінірек жұмыс істей алатындай етіп C ++ бағдарламасын құрастырады. C ++ тіліндегі мәліметтер типтері - Бастапқы Int Ол бүтін сандарды сақтау үшін қолданылады. Оның жады компиляторға байланысты (32 немесе 64 бит). Ол 32 биттік компилятормен жұмыс істегенде 4 байт жадты алады. Жүзу Бөлшектерді 7 ондық санға дейін сақтау үшін қолданылады. Ол бір дәлдіктегі өзгермелі нүкте типі ретінде белгілі. Ол 4 байт жадты алады. Char Ол барлық таңбалардың жиынтығын сақтау үшін қолданылады. Ол алфавит әріптерін, сандарды, сондай-ақ арнайы таңбаларды қамтуы мүмкін. Ол 1 байт жадты алады, бұл машинадағы ең кіші адрестік блок. Қосарланған Бөлшектерді 15-16 ондық сандарға дейін сақтау үшін қолданылады. Әдетте бұл екі дәлдіктегі өзгермелі нүкте түрі ретінде белгілі. Бос (бос) Қайтаратын мағына нөлді немесе жоқты көрсетеді. Әдетте функцияны жариялау кезінде нөлдік мәнді тағайындау үшін қолданылады. Bool Бұл деректер түрі логикалық немесе логикалық мәнге сілтеме жасайды. Ол шын немесе жалған мәнін қабылдауы мүмкін. - екінші реттік Іс-шаралар Бұл жалпы атау арқылы қол жеткізілетін мәліметтер типі бірдей мәліметтер жиынтығы. Көрсеткіштер Олар негізінен басқа айнымалының жад адресін сақтау үшін қолданылатын айнымалылар. Мүмкіндіктер Бұл белгілі бір тапсырманы орындайтын сөйлемдер тобы. Функциялар - кіріктірілген немесе пайдаланушы анықтаған кітапханалар. - пайдаланушы анықталды Құрылымдар Бұл мәліметтер типі, онда әртүрлі типтегі мәліметтер жиынтығы жасалуы және объект арқылы қол жеткізілуі мүмкін. Одақ Әр түрлі типтегі мәліметтерді бір жадта сақтау мүмкіндігін ұсынады. C ++ не үшін қажет? Қолданбалар Қолданбалар Adobe жүйелерінде Illustrator, Photoshop, Adobe Premiere және Image Ready сияқты көптеген қосымшалар C ++ тілінде дамыған. Операциялық жүйелер C ++ Linux, Windows және macOS сияқты барлық негізгі операциялық жүйелерде қолданылады, өйткені бұл төменгі деңгейлі бағдарламалау тілі. Құрастырушылар Компиляторлардың көпшілігі С ++ тілінде жазылған. Сонымен қатар басқа тілдерді компиляциялауға арналған компиляторлар, мысалы C #, Java және т.б. Ойындар Бұл ресурстарды оңтайландыруға көмектесетін 3D ойындарының күрделілігін жоюға қызмет етеді. Сонымен қатар, ол желілердегі көп ойыншы опциясымен үйлеседі. Веб-браузерлер Ол веб-шолғыштарда тез пайда болатын мазмұнды талап ететін қазіргі қолданушылар үшін өте маңызды графиканы тез орындауға және ұсынуға мүмкіндік береді. Google Chrome және Mozilla Firefox интернет-браузерлерін жасау үшін C ++ қолданылды. Интернет заттары Ақылды сағаттар, автокөліктер, кір жуғыш машиналар, маршрутизаторлар мен қосқыштар сияқты әр түрлі Интернет заттары C ++ қолданады, өйткені олар аппараттық құралдарға мүмкіндігінше жақын кодты қажет етеді. Бұлтты / таратылған жүйелер Бұл бұлтта сақтау жүйелерінде және үлестірілген жүйелерде қолданылады, мұнда масштабталатын файлдық жүйелер аппараттық құралдармен тығыз жұмыс істеуі керек және әртүрлі машиналармен үйлесімділік те маңызды. Мәліметтер базасына қол жетімділік Ол мәліметтер базасының бағдарламалық жасақтамасын әзірлеу үшін қолданылады. Ұйымдарда қолданылатын MySQL мәліметтер базасын басқарудың өте танымал бағдарламалық жасақтамасы оның артықшылықтарының арқасында C ++ тілінде жазылған. Деректер қорының бағдарламалық жасақтамасына қол жеткізуге негізделген басқа қосымшалар бар, олар: Википедия, Yahoo, YouTube, Quora және т.б. Мысалдар Бұл бағдарлама пайдаланушыдан оң бүтін санды алады және оны n айнымалысында сақтайды. Содан кейін for циклі орындалады, ол енгізілген санның i-ге толық бөлінетіндігін немесе болмайтындығын тексереді. For циклі i-нің 2-ге тең бастапқы мәнінен басталады, әр қайталанған сайын i мәнін жоғарылатады. Егер пайдаланушы енгізген сан i-ге толық бөлінетін болса, isPrime жалғанға орнатылады және бұл сан жай сан болмайды. Алайда, егер i <= n / 2 сынақ шарты дұрыс болғанға дейін сан i-ге толық бөлінбесе, онда ол тек 1-ге және сол санға бөлінетіндігін білдіреді. Сонымен берілген сан жай сан болады. Кітапханалар Әзірлеушілер C ++ тілімен қамтамасыз етілген көптеген кіріктірілген функцияларға қол жеткізе алады. Бұл уақытты үнемдейді және дамуды тездетеді. Берілген функционалдылықтары бар кейбір C ++ тақырыптық файлдары: - iomanip: мәліметтер ағындарын форматтайтын ағын өңдеушілерді қамтиды. - iostream: стандартты енгізу және шығару функцияларын қамтиды. - cstdlib: сандарды мәтінге және керісінше түрлендіру функциясын қамтиды, - cmath: математикалық кітапхананың функцияларын, жадыны бөлуді, кездейсоқ сандарды және басқа да әртүрлі қызметтік функцияларды қамтиды. - fstream: файлдарды дискіге енгізу мен шығаруды орындайтын функциялардан тұрады. - ctime: уақыт пен күнді басқаруға арналған функцияны қамтиды. - жад: жадыны бөлу үшін C ++ стандартты кітапханасында қолданылатын кластар мен функцияларды қамтиды. Артықшылығы Жылдамдық C ++ - бұл төменгі деңгейлі бағдарламалау тілі болып табылатын С тілінің кеңейтілген нұсқасы болғандықтан, ол қол жетімді тілдердің бірі болып табылады. Бұл оны қажетті өнімділік өте маңызды жерлерде пайдалы етеді. Аппараттық құралға жақын C ++ - бұл аппараттық құралдарға жақын бағдарламалау тілдерінің бірі. Төмен деңгейлі қолдауды тиімді орындау үшін бағдарламалық жасақтама аппаратурамен тығыз байланыста болуы керек кеңістікте бұл өте тиімді. Тиімділік C ++ тілінде кодтау кезінде кеңінен қолдануға болатын шаблондардың стандартты кітапханасы бар. Бұл кітапханалар бағдарламалаушыға уақыт пен күш жұмсауға мүмкіндік беретін тиімді алгоритмдер ұсынады, олай болмаған жағдайда код жасау босқа кетеді. Бағдарламалау стильдерін таңдау еркіндігі C ++ шамамен жеті түрлі кодтау стилін қолдайды, бұл оны көп модельді бағдарламалау тілі етеді. Осылайша, объектілерді пайдаланбай, белгілі бір пайдалану жағдайына сәйкес келетін стильді таңдауға болады. Күрделі мәселелерді бұзу мүмкіндігі C ++ объектілерді құру арқылы күрделі есептерді интуитивті түрде шеше алады. Сонымен қатар, C ++ функциялары кодты түсінікті, түсінуге оңай, тестілеуге және өзгертуге ыңғайлы код блоктарына бөлуге мүмкіндік береді. Қателерді орындауға дейін анықтау мүмкіндігі C ++ тілінде статикалық тип бар, яғни компилятор бағдарламалаушының жазғаны туралы ешқандай болжам жасамайды. Пайдасы - компилятор қателіктер мен сәтсіздіктерді орындау алдында орындай алады, бұл ұзақ мерзімді үнемдеуге мүмкіндік береді. |