- •26. Форма терезесі.
- •57. Программаны орындау кезіндегі қателерді дұрыстау.
- •58. Депозитария- проект және формалар қоймасы.
- •59. Формада компоненттерді «көп қабатты» орналастыру.
- •5. Компоненттер палитрасы.
- •6. Форма терезесі.
- •7. Редактор коды терезесі.
- •8. Объектлер инспекторы.
- •10. Интегралданған өңдеу ортасы терезесін конфигурациялық басқару.
- •12. Проектнің негізгі файлдары.
- •13. Проект каталогтарын ұйымдастыру.
- •14. Жаңа проект құру.
- •15. Проектні сақтау.
- •16. Проект менеджері(Project Manajer).
- •18. Проектге жаңа форма қосу.
- •19. Форманың жеке көшірмесін жасау.
- •20. Депозитариядан форманы уақытша алу(заимствование).
- •21. Форма мен модульді проектге қоспай көру.
- •22. Компоненттерді кітапхана бетінен формаға тасымалдау.
- •24. Parent және Owner компоненттері.
- •27. 59. Формада компоненттерді «көп қабатты» орналастыру.
- •28. «Жоғалған» компоненттерді іздеу.
- •29. Object TreeView терезесі және Редактор Коды диаграммасының беті.
- •30. Компоненттер тобымен жұмыс істеу.
- •31. Компоненттер фиксациясы.
- •32.58.Депозитария- проект және формалар қоймасы.
- •33. Code Insight-ты қолдану.
- •34. Class Explorer класстар зерттеушісі.
- •35. Редактор кодының терезесіне орнатылған өңдеуді қолдау(поддержка разработки).
- •37. Проектні құрастыру және компиляцияға жіберу.
- •38. Құрастырушы және компилятор хабарламасы.
- •39.57. Программаны орындау кезіндегі қателерді дұрыстау.
- •40. Watch List бақылау терезесі.
- •41. Қосымшаларды қадам бойынша орындау.
- •42. Үзіліссіздік нүктесі.
- •43. Debug Inspector –кейінге қалдыру инспекторы терезесін қолдану.
- •44. Енгізілетін компоненттер тізімі және мәтіндік ақпараттың бейнелері
- •45. Label,StaticText,Panel компоненттерінің жазуларындағы мәтiннiң бейнелерi
- •46. Edit, LabeledEdit, MaskEdit редакциялау терезелері.
- •47. ListBox, CheckListBox, ValueListEditor, ComboBox, ComboBoxEx- тiзiмдерден таңдаудың компоненттерi
- •48. StringGrid - жолдар кестесi
- •49. 60.Енгізілетін компоненттер тізімі және сандардың,күн мен уақыттың бейнелері.
- •50. UpDown ,cSpinEdit - бүтін сандарды енгізу және бейнелеу компоненттері.
- •51. F1Book компоненті- excel беті.
- •52. Мәтiндiк және сандық мәлiметтердi синтаксис бойынша дұрыс енгiзудi қамтамасыз ету.
- •54. Windows құжаты үлгісіндегі мәліметтерді бейнелеу-ListView компоненті.
- •61. Қолданушы кнопканы шерткенде, кнопкада қандай да бір жазу шығаратын қосымша құрыңыз.
- •62. 89. Екі санды енгізіп, көбейтіндісінің нәтижесін шығаратын қосымша құрыңыз.
- •63. Қателік шыққан жағдайда не істейміз? Мысал келтіру
- •64. Екі резистордан тұратын электр шынжыры(цепь) берілген.Олар параллель де,тізбектей де жалғануы мүмкін.Кедергісін есептеңіз.
- •65. Қарапайым және күрделі программалау жүйелеріне мысал.
- •66. Күрделі жүйелердін құрулымы. Күрделі жүйелердін мысалдары.
- •67. Хаосты ретке келтіру. Декомпозициянын қызметі.
- •68. Декомпозициянын қызметі. Абстракциянын қызметі.
- •69. Программалық жүйелерді жоболау әдістері.
- •70. Объектілік моделдердін мысалдары.
- •71. Объектілік жолынын қурылу бөлімдері. Программалау парадигмасы.
- •72. Абстракция. Инкапсуляция. Модулдік.
- •73. Иерархия. Типизациялау. Параллелизм.
- •74. Объектілік моделді ќолдану. Кластар жјне объекттер.
- •75. Объектілер арасындағы қатынас. Қатынас типтеріне мысал.
- •78. Ассоциация. Мұралау. Әдіс іздеуі.
- •79. Агрегация. Класстар байланыстары.
- •80.Кластардың және объектердің өзара байланысына мысал.
- •81. Кластардың және объектердің сапасы.
- •83. Кластардың және объектердің идентификациясына мысал.
- •84. Объектіге бағытталған анализ.
- •85. 87. Кілттік абстракциялар және механизмдерге мысал.
- •Void calibrate(Temperature actualTemperature);
- •86.Әдіс. Белгілер. Белгілер элементтері.
- •88. Моделдер және ракурстар. Логикалық және физикалық моделдерге мысал.
- •90.. Статикалыќ жјне динамикалыќ моделдер. Жобалау аспаптары.
39.57. Программаны орындау кезіндегі қателерді дұрыстау.
Егер приложение құрып ол орындалса ол дұрыс жұмыс жасап тұр деп айта алмаймыз. Онда көптеген қателер болуы әбден мүмкін. Ол әрине логикалық қателер болуы мүмкін. Бұл қателер кейбір деректердің байланысы кезінде болатын: нолге бөлу қателігі, толып кету, жоқ файлдың ашылып кетуі т.б. Тағы да дәл сол есеп кейде орындалатын кейде орындалмайтын қателіктер. Мұндай табу қиынға соғатын қателер әдетте айнымалылардың бастапқы мәндері болмағанда пайда болады.
Осындай жағдайларда қателердің себебі дұрыстау кезінде шығады. Бірінші рет компиляцига жіберген кезде бәрі дұрыс жұмыс жасап тұрған сияқты болады,ал екінші рет компиляцига жібергенде қателік туралы терезе шығады. Ол терезеде” проект Project1.exe EOverflow классының генерация кезінде толып кету хабарламасымен бірге шығару генерациясын шақырғаны жайлы. Процесс тоқтатылды. Әрі қарай жалғастыру үшін Step немесе Run командасын пайдаланыңыз”.
Бұл қателік туралы хабарлама шығару деп аталатын генерацияға әкеледі. Шығару (exceptions) әр түрлі қателіктерде генерация жасалынады. Қателік туралы хабарлама терезесі алдымыздан шықса әрі қарай не істейміз? Қателік хабарламасы терезесіндегі ОК батырмасын басып бізКод Редакторы терезесіне тап боламыз және белгіленген жол көрсетілген, жанында жасыл стрелкасы бар программамыздың кодын көреміз. Ол қатесі бар оператор.
Келесі әрекет:
-Ctrl-F2 пернесін басуға болады. Ол приложенияның орындалуын және түзетілуін тоқтады яғни үзеді.
-Run| Run командасын орындауға болады. Бұл қателіктерге қарамастан орындауды жалғастырады. Бірақ бұл ештеңеге әкелмейді,тек қателік жағдай қайталана береді.
-Программаның бөлігін қадам бойынша өтуге болады.
Қателік себебі анық болмаса жалғыз әдістің бірі:
-Приложениядағы болып жатқан қате процесстер туралы ақпарат алу керек. Оны бірнеше әдіс арқылы алуға болады. С++Builder6-де Tooltip Expression Evolution деген багалау мастері бар. Тышқаннын курсорын кодтағы айнымалының біріне ,мәселен А-ға, апарсақ “A=1E+308” деген жазуды көреміз. Осындай қарапайым әдіспен программадағы айнымалының мағынасын біле аламыз.
40. Watch List бақылау терезесі.
Айтылымдарды бағалау мастері, әрине жаксы құрал. Бірақ ол тек жалғыз айнымалы мағынасын береді,ал күрделі приложенияларда бірнеше айнымалыны көз алдымызда елестете алуымыз керек. Себебі соларды салыстыру арқылы приложенияның дұрыс емес жұмыс жасауынының себептерін түсіну керек. Осындай мүмкіндікті бақылау терезесі Watch List береді. Оны көріну күйіне қою үшін View| Debug Window| Watches командасын орындаймыз.
Бақылау терезесі өте жақсы құрал, бірақ онымен жұмыс жасау барысында кейбір ережелерді ұстану керек. Код жазып жатқанда үнсіз келісім бойынша барлық компоненттер және олардың қасиеттері ағымдағы формаға жатады. Бақылау терезесінде мұндай жорамалдар жасалмайды. Сондықтан терезеге Label1->Caption деп енгізсек, онда приложенияның орындалу барысында тоқтау болғанда ол айтылым орнына мынандай хабарлама аламыз: “Undefined symbol ‘Label1’ ”, яғни ‘Label1’ символы анықталмаған. Егер сол айтылымды формага Form1 сілтеме жасасақ, онда бәрі дұрыс жұмыс жасар еді.
Кейде айнымалыны бақылау мүмкін емес. Өйткені оптимизациялайтын компилятор шешім шығаратын кодтан өшіріп тастап, оны жүйелік регистрге сәйкестендіріп орналастырады. Ол приложенияның орындалуын жылдамдатады, жадыны үнемдейді, бірақ айнымалыларды бақылауға кедергі келтіреді. Мұндай жағдайда сәйкес айнымалыны кілттік Volatile сөзімен хабарлауға болады. Мысалы:
volatile int x;
Volatile спецификаторы компиляторға берілген айнымалыны регистрге сақтауға болмайтындығын айтады.
Дәл сол мақсатқа жету үшін ең жақсы нұсқа- Project| Options ашылған Advanced Compiler терезесіндегі Register Variables опциясын сөндіру.
Енді бақылау терезесімен жұмыс жасауды қарастырайық. Тышқанның оң жақ батырмасын шертіп ашылған мәзірден командалар тізбегін таңдаймыз: Edit Watch(отредактировать наблюдаемое выражение) немесе Add Watch( добавить новое наблюдаемое выражение). Екі жағдайда да Watch Properties терезесіне тап боламыз. Бұл терезеге одан да оңай Ctrl-F5 батырмасын басып, екі рет шерту арқылы түсуге болады.
Watch Properties терезесінің элементтерін кысқаша айта кетейік. Expression терезесіне кез келген айнымалы атын жазып қойсақ болады. Repeat count терезесі массивтерді бақылауда қолданылады. Digits енгізілетін сандардың разрядын анықтайды. Enabled идентификаторы приложенияның орындалу барысында бақылау терезесіне сәйкес айтылмдарды енгізуді сөндіруді болдырады.
