Кіріспе
Мәтіндік файлдағы таңбалар тізбесін анықтаушы. Компьютерде жол нөмірі – мәтіндік файлдағы таңбалардың белгілі бір тізбесін көрсетуге қолданылатын әдіс. Жолдарға нөмірлер берудің ең көп таралған тәсілі – әр жолға бірегей нөмір беру, бірінші жол үшін 1-ден бастап, әр келесі жол үшін 1-ге арттыру. C бағдарламалау тілінде, бастапқы кодтың жол нөмірі сол уақытқа дейін оқылған немесе енгізілген жаңа жол символдарының санынан бірге артық болады. Бағдарламашылар Fortran, JOSS және BASIC сияқты көне бағдарламалау тілдеріндегі операторларға жол нөмірлерін де тағайындауға болады. Fortran-да әр операторға жол нөмірі міндетті емес, және жол нөмірлері тізбекпен орналасуы қажет емес. Жол нөмірлерінің мақсаты – тармақтану және форматталған операторлар арқылы сілтеме жасау. JOSS және BASIC екеуі де жол нөмірлерін синтаксистің қажетті бөлігі етіп белгіледі. Бұл себептің бастысы сол кезде көптеген операциялық жүйелерде интерактивті мәтіндік редакторлар болмады; бағдарламашының интерфейсі көбінесе жол редакторымен шектелгендіктен, жол нөмірлері бастапқы кодтағы нақты жолдарды өңдеу үшін сілтеме жасауға және бағдарламашыға белгілі бір жерде жаңа жол қосуға мүмкіндік беретін механизмді қамтамасыз етті. Жол нөмірлері сондай-ақ бағдарламаға енгізілетін код пен пайдаланушы енгізген кезде бірден орындалатын тікелей режимдегі командаларды (жол нөмірлері жоқ) ажыратудың ыңғайлы тәсілін де ұсынды. Көбінесе қазіргі операциялық жүйелерде интерактивті мәтіндік өңдеудің кең таралғандығына байланысты, жол нөмірлері көптеген бағдарламалау тілдерінің, тіпті қазіргі Fortran және Basic тілдерінің мүмкіндігі емес.
In computing, a line number is a method used to specify a particular sequence of characters in a text file. The most common method of assigning numbers to lines is to assign every line a unique number, starting at 1 for the first line, and incrementing by 1 for each successive line. In the C programming language the line number of a source code line is one greater than the number of new line characters read or introduced up to that point. Programmers could also assign line numbers to statements in older programming languages, such as Fortran, JOSS, and BASIC. In Fortran, not every statement needed a line number, and line numbers did not have to be in sequential order. The purpose of line numbers was for branching and for reference by formatting statements. Both JOSS and BASIC made line numbers a required element of syntax. The primary reason for this is that most operating systems at the time lacked interactive text editors; since the programmer's interface was usually limited to a line editor, line numbers provided a mechanism by which specific lines in the source code could be referenced for editing, and by which the programmer could insert a new line at a specific point. Line numbers also provided a convenient means of distinguishing between code to be entered into the program and direct mode commands to be executed immediately when entered by the user (which do not have line numbers). Largely due to the prevalence of interactive text editing in modern operating systems, line numbers are not a feature of most programming languages, even modern Fortran and Basic.
COBOL
COBOL-да жол нөмірлері перфокарталардың алғашқы алты таңбасында (реттік нөмір аймағы) көрсетілген. Бұл бастапқыда қолмен өңдеуден кейін бағдарламалық кодтың дұрыс реттілігін қамтамасыз ету үшін механикалық карталарды сұрыптауды жеңілдету мақсатында қолданылған. Компилятор бұл жол нөмірлерін ескермеген.
ДОПЕ
1962 жылы DOPE (Dartmouth Oversimplified Programming Experiment) әрбір оператор үшін жол нөмірін қажет ететін және жол нөмірлерін тізбектеп реттеуді пайдаланған алғашқы бағдарламалау тілдерінің бірі болды. Жол нөмірлері екі команда үшін арналған пункттер ретінде берілді: C (салыстыру операциясы, арифметикалық ЕСЕПТЕУ) және T (бару операциясы, GO TO).
Жолдар саны мен стилі
Бұл тілдерде бағдарламалау стилінің ерекшелігі, тіпті қажеттілік болғандықтан, жол нөмірлерінің арасында бос орын қалдыру қалыпты жағдай еді. Яғни, бағдарламашы (1, 2, 3, ) емес, (10, 20, 30, ) тізбегін пайдаланатын. Бұл бағдарламашыға кейіннен кодтың бір жолын қосуға мүмкіндік берді. Мысалы, егер 20-шы және 30-шы жолдар арасындағы кодтың бір жолы жіберіліп қалса, бағдарламашы ұмытылған жолды 25-ші жолға қоса алатын. Егер нөмірлеуде бос орын болмаса, бағдарламашы 3-ші жолды және одан кейінгі барлық жолдарды қайта нөмірлеуге мәжбүр болар еді, 2-ші жолдан кейін жаңа жолды енгізу үшін. Әрине, егер бағдарламашы тоғыздан астам қосымша жолдарды қосу қажет болса, тіпті сирек нөмірлеу болған жағдайда да қайта нөмірлеу қажет болады. Дегенмен, бұл нөмірлеу тек 10 жолға бір жолды нөмірлеумен шектеледі; егер бағдарламашы 29-шы және 30-шы жолдар арасына жол қосу қажет деп тапса, тек 30-шы жолды ғана нөмірлеу керек болады, ал 40-шы жолды өзгертудің қажеті жоқ. Кейбір BASIC тілдерінде бағдарламаның (немесе оның белгілі бір бөлігінің) жол нөмірлерін тең аралықпен қайта тағайындайтын команда болды. Сондай-ақ, бұл команда сол жол нөмірлеріне жасалған барлық сілтемелерді де қайта нөмірлейтін, осылайша олар дұрыс жұмыс істей беруіне мүмкіндік беретін. Субпрограммалар бар үлкен бағдарламада әрбір субпрограмма әдетте негізгі бағдарламаның (және бұрынғы субпрограммалардың) кеңейтуіне орын қалдыру үшін жеткілікті үлкен жол нөмірінен басталатын. Мысалы, субпрограммалар 10000, 20000, 30000 және т.б. жолдардан басталуы мүмкін.
Жолдар саны мен синтаксис қателері
Егер бағдарламашы бағдарламаға синтаксистік қате енгізсе, компилятор (немесе интерпретатор) бағдарламашыға берілген жол нөмірінде компиляциялау (немесе орындау) әрекеті сәтсіз аяқталғанын хабарлайды. Бұл бағдарламашыға қатені табуды едәуір жеңілдетеді. Қателердің орналасқан жерін көрсету үшін жол нөмірлерін пайдалану, қазіргі заманғы бағдарламалау құралдарында стандарт болып табылады, тіпті жол нөмірлерін қолмен көрсету қажет болмаса да. Бағдарлама үшін бастапқы кодтағы жаңа жолдарды санап, қате орны ретінде автоматты түрде жасалған жол нөмірін көрсету оңай шаруа. Microsoft Visual Studio, Eclipse немесе Xcode сияқты IDE-лерде, мұнда компилятор көбінесе мәтін редакторымен біріктірілген, бағдарламашы қатеге екі рет шерту арқылы сол қате бар жолға тікелей өтуі мүмкін.