Professional Documents
Culture Documents
ÅéóáãùãÞ
Óôá ðñïçãïýìåíá êåöÜëáéá áíáöåñèÞêáìå áíáëõôéêÜ óôçí áíÜðôõîç
ôùí áëãïñßèìùí êáé ôùí äéáöüñùí ôå÷íéêþí. Óôá åðüìåíá êåöÜëáéá èá á-
ó÷ïëçèïýìå ìå ôïí ðñïãñáììáôéóìü äçëáäÞ ôç äéáôýðùóç ôùí áëãïñßè-
ìùí óå ôÝôïéá ìïñöÞ, þóôå íá ìðïñïýí íá õëïðïéçèïýí áðü ôïí õðïëïãé-
óôÞ. Ôï êåöÜëáéï áõôü áó÷ïëåßôáé ìå ãåíéêÝò Ýííïéåò ðïõ åßíáé áðáñáßôç-
ôåò ðñéí áðü ôçí åíáó÷üëçóç ìå ôç äéáäéêáóßá ôïõ ðñïãñáììáôéóìïý. Ïñß-
æåôáé ç Ýííïéá ôïõ ðñïãñÜììáôïò, ðáñïõóéÜæåôáé ìßá óýíôïìç éóôïñßá
ôùí ãëùóóþí ðñïãñáììáôéóìïý êáé ôùí åéäþí ðñïãñáììáôéóìïý, êáèþò
êáé ïé ôå÷íéêÝò ðïõ ÷ñçóéìïðïéïýíôáé ãéá ôç óùóôÞ äçìéïõñãßá ðñïãñáì-
ìÜôùí. ÓõãêåêñéìÝíá ðáñïõóéÜæïíôáé ïé ôå÷íéêÝò ôçò éåñáñ÷éêÞò ó÷åäßá-
óçò ðñïãñáììÜôùí, ôïõ ôìçìáôéêïý ðñïãñáììáôéóìïý êáé êýñéá ïé áñ÷Ýò
ôïõ äïìçìÝíïõ ðñïãñáììáôéóìïý. Åðßóçò ðåñéãñÜöåôáé ç äéáäéêáóßá ðïõ
áêïëïõèåßôáé áðü ôç ôç óýíôáîç ôïõ ðñïãñÜììáôïò ìÝ÷ñé ôçí ôåëéêÞ ôïõ
åêôÝëåóç áðü ôïí õðïëïãéóôÞ êáé ôç ëÞøç ôùí áðïôåëåóìÜôùí.
Äéäáêôéêïß óôü÷ïé
Óôü÷ïé ôïõ êåöáëáßïõ áõôïý åßíáé ï ìáèçôÞò :
ë Íá ïñßæåé ôé åßíáé ðñüãñáììá êáé íá êáôáôÜóóåé êáé íá óõãêñßíåé ôéò
ãëþóóåò ðñïãñáììáôéóìïý.
ë Íá áíáãíùñßæåé ôá êõñéüôåñá åßäç ðñïãñáììáôéóìïý êáé íá ðåñéãñÜ-
öåé ôá âáóéêÜ ÷áñáêôçñéóôéêÜ ôùí ôå÷íéêþí ðïõ ÷ñçóéìïðïéïýíôáé.
ë Íá äéáôõðþíåé ôá ðëåïíåêôÞìáôá ôïõ äïìçìÝíïõ ðñïãñáììáôéóìïý.
ë Íá ðåñéãñÜöåé ôç äéáäéêáóßá åêôÝëåóçò åíüò ðñïãñÜììáôïò.
ë Íá áíáöÝñåé ôá âáóéêÜ ðñïãñÜììáôá ðïõ ðåñéÝ÷åé Ýíá ðñïãñáììáôé-
óôéêü ðåñéâÜëëïí
ÐñïåñùôÞóåéò
3 Ç äçìéïõñãßá ôïõ áëãïñßèìïõ áñêåß ãéá íá åðéëýóïõìå Ýíá ðñüâëçìá
óôïí õðïëïãéóôÞ;
3 Ðþò äéá÷åéñßæåôáé ôéò ðëçñïöïñßåò ï õðïëïãéóôÞò;
3 Ãíùñßæåéò êÜðïéåò ãëþóóåò ðñïãñáììáôéóìïý;
3 Ðþò êáé ãáôß åîåëßóóïíôáé ïé ãëþóóåò;
3 Ç ýðáñîç óõãêåêñéìÝíùí ìåèïäïëïãéþí êáé ôå÷íéêþí âïçèÜåé óôçí åðß-
ëõóç ôùí ðñïâëçìÜôùí;
ÅéóáãùãÞ óôïí ðñïãñáììáôéóìü
117
Ó÷. 6.1. Åíá ðñüãñáììá óå ãëþóóá ìç÷áíÞò, óå óõìâïëéêÞ ãëþóóá êáé óå ãëþóóá
õøçëïý åðéðÝäïõ ãéá ôïí õðïëïãéóìü ôïõ áèñïßóìáôïò ôùí áñéèìþí 1 Ýùò 10
C PROGRAM EQUATION
READ(*,1) A,B
1 FORMAT(F5.1)
IF (A.EQ.0) GO TO 20
X=(-1.)*B/A
WRITE(*,2) X
2 FORMAT(‘X=’,F10.2)
GO TO 50
20 IF (B.EQ.0) WRITE(*,3)
IF (B.NE.0) WRITE(*,4)
3 FORMAT(‘ÁÏÑÉÓÔÇ’)
4 FORMAT(‘ÁÄÕÍÁÔÇ’)
50 STOP
END
IDENTIFICATION DIVISION.
PROGRAM-ID. EQUATION.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SOURCE-COMPUTER. IBM-PC.
OBJECT-COMPUTER. IBM-PC.
SPECIAL-NAMES. DECIMAL-POINT IS COMMA.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 X PIC S9(6)V9.
77 A PIC S9(6).
77 B PIC S9(6).
77 W-X PIC -(6),-.
PROCEDURE DIVISION.
ARXH.
DISPLAY ‘ ÄÙÓÅ Á’.
ACCEPT A.
DISPLAY ‘ ÄÙÓÅ Â’.
ACCEPT B.
DISPLAY ‘ ‘.
IF A = 0 GO TO ROYT-1.
COMPUTE X = B * (- 1) / A.
MOVE X TO W-X.
DISPLAY ‘ H ËÕÓÇ ÅÉÍÁÉ : ‘ W-X.
STOP RUN.
ROYT-1.
IF B = 0
DISPLAY ‘ ÁÏÑÉÓÔÇ’
ELSE
DISPLAY ‘ ÁÄÕÍÁÔÇ’.
STOP RUN.
Ó÷. 6.3. Ç ãëþóóá COBOL äçìéïõñãÞèçêå áðü ôçí Grace Marray Hopper áîéùìáôéêü
ôïõ ðïëåìéêïý íáõôéêïý ôùí ÇÐÁ ôï 1960. Ç COBOL Ýêáíå äõíáôÞ ôçí áîéïðïßçóç ôùí
-
õðïëïãéóôþí áðü ôéò åðé÷åéñÞóåéò êáé ôïõò ïñãáíéóìïýò ðáñÝ÷ïíôáò éó÷õñüôáôåò äõ
íáôüôçôåò äéá÷åßñéóçò áñ÷åßùí äåäïìÝíùí. Åíá ðñüãñáììá COBOL äéáèÝôåé ôÝóóåñéò
õðïäéáéñÝóåéò (divisions). Ç ãëþóóá ÷ñçóéìïðïéåß ðåñéãñáöéêü ôñüðï ãéá ôç óýíôáîç
ôùí åíôïëþí ìå ÷ñÞóç ñçìÜôùí ôçò áããëéêÞò ãëþóóáò, üðùò ADD, MULTIPLY, MOVE
ê.ëð. ìå áðïôÝëåóìá ôç äçìéïõñãßá ãåíéêÜ ìáêñïóêåëþí ðñïãñáììÜôùí. - ÊÜèå åíôï
ëÞ ôçò ãëþóóáò ôåñìáôßæåôáé ìå ôåëåßá. Ôï ðñüãñáììá ôïõ ðáñáäåßãìáôïò åðéëýåé
ôçí åîßóùóç á’ âáèìïý.
122 ÁíÜðôõîç åöáñìïãþí óå ðñïãñáììáôéóôéêü ðåñéâÜëëïí
Ó÷. 6.4. Ç ãëþóóá BASIC äçìéïõñãÞèçêå ôï 1964 óôï Dartmouth College áðü
- ôïõò êá
èçãçôÝò Kemeny êáé Kurtz. Óôü÷ïò ôùí äçìéïõñãþí ôçò Þôáí ç õëïðïßçóç ìéáò áðëÞò
ãëþóóáò ðñïãñáììáôéóìïý ãéá åêðáéäåõôéêïýò óêïðïýò. Ç BASIC ãíþñéóå - åêðëçêôé
êÞ äéÜäïóç ìå ôçí åìöÜíéóç ôùí ìéêñïûðïëïãéóôþí (1975). Ï ðñþôïò äéåñìçíåõôÞò
ôçò ãëþóóáò óå 8Ê ROM Þôáí Ýñãï ôùí Bill Gates êáé Paul Allen. Áò óçìåéùèåß
- üôé, ç å
ôáéñßá Microsoft éäñýèçêå áðü ôïí Bill Gates ãéá ôçí åìðïñéêÞ åêìåôÜëëåõóç áõôïý
ôïõ äéåñìçíåõôÞ. Ç Ýêäïóç GWBASIC ðáñïõóéÜæåôáé ôï 1981 ìå ôïí IBM PC. Êýñéï ÷á-
ñáêôçñéóôéêü ôçò ãëþóóáò åßíáé ç ýðáñîç áñéèìþí ôùí ãñáììþí ôïõ ðñïãñÜììáôïò,
ïé ïðïßïé ÷ñçóéìïðïéïýíôáé êáé ùò èÝóåéò ðñïïñéóìïý åíôïëþí äéáêëÜäùóçò. ÅîÝëéîç
ôçò ãëþóóáò åßíáé ïé åêäüóåéò QuickBASIC êáé Visual BASIC. Ôï ðñüãñáììá ôïõ ðáñá-
äåßãìáôïò åðéëýåé ôçí åîßóùóç á’ âáèìïý.
TO KYBOS :A
REPEAT 4 [FD :A RT 90]
PU SETPOS [20 20] PD
REPEAT 4 [FD :A RT 90]
PU HOME PD
REPEAT 2 [FD :A RT 45 FD 29 RT 135]
PU SETX :A SETY 0 PD
REPEAT 2 [FD :A RT 45 FD 29 RT 135]
HOME
END
Ó÷. 6.5. Ç ãëþóóá ðñïãñáììáôéóìïý LOGO ïëïêëçñþèçêå ôï 1967 óôç Âïóôþíç áðü
ôïí Seymoyr Papert. Ôï üíïìÜ ôçò ðñïÝñ÷åôáé áðü ôçí åëëçíéêÞ ëÝîç “ëüãïò”.
- Ðñü
êåéôáé ãéá ãëþóóá êáôÜëëçëç ãéá ôçí åéóáãùãÞ óôïí ðñïãñáììáôéóìü-ìáèçôþí ìé
êñÞò çëéêßáò. Ôï ðñüãñáììá ôïõ ðáñáäåßãìáôïò ó÷åäéÜæåé Ýíáí êýâï áêìÞò
- Á ìå äéá
äï÷éêÝò êéíÞóåéò ôçò ÷åëþíáò.
(DEFUN a-exisosi (a b)
(setf apot (- (/ b a)))
(princ “Ç åîßóùóç ”)
(princ a)
(princ “x + ”)
(princ b)
(princ “ = 0 Ý÷åé óáí ëýóç ÷ = ”)
(princ apot))
Ó÷. 6.6. Ç ãëþóóá LISP äçìéïõñãÞèçêå ôï 1959 óôï ÌÉÔ. Ðñüêåéôáé ãéá ìç- äéáäéêáóéá
êÞ ãëþóóá ðïõ ðñïïñßæåôáé ãéá ôçí åðåîåñãáóßá óõìâïëéêþí äåäïìÝíùí. Âáóéêüò
ôýðïò äåäïìÝíùí, áðü ôïí ïðïßï åî Üëëïõ ðÞñå êáé ôï üíïìÜ ôçò, åßíáé -ç óõíäåäåìÝ
íç ëßóôá. Óôï ðáñÜäåéãìá öáßíåôáé ìéá óõíÜñôçóç ôçò ãëþóóáò, ðïõ åðéëýåé
- ôçí åîß
óùóç á’ âáèìïý. Ôï ðñüãñáììá åêôåëåßôáé äßíïíôáò óôç ãñáììÞ åíôïëþí ð.÷.
(a-exisosi 2 5).
ðñïãñáììÜôùí áðëþí óôç óõããñáöÞ êáé ôçí êáôáíüçóç êáé åýêïëùí óôç
äéüñèùóç. Ï äïìçìÝíïò ðñïãñáììáôéóìüò êáé ôá ÷áñáêôçñéóôéêÜ ôïõ èá
ðáñïõóéáóôïýí åêôåíþò óå åðüìåíç ðáñÜãñáöï.
Ìßá áêüìç ãëþóóá ðïõ ãíþñéóå ìåãÜëç äéÜäïóç åßíáé ç ãëþóóá C. Ç C
áíáðôý÷èçêå óôá åñãáóôÞñéá ôçò åôáéñåßáò BELL êáé ÷ñçóéìïðïéÞèçêå ãéá
ôçí áíÜðôõîç ôïõ ëåéôïõñãéêïý óõóôÞìáôïò Unix, ãëþóóá ìå éó÷õñÜ ÷á-
ñáêôçñéóôéêÜ, ìåñéêÜ áðü áõôÜ êïéíÜ ìå ôçí Pascal êáôÜëëçëç ãéá áíÜðôõ-
îç äïìçìÝíùí åöáñìïãþí áëëÜ êáé ìå ðïëëÝò äõíáôüôçôåò ãëþóóáò ÷áìç-
ëïý åðéðÝäïõ. Ç C åîåëß÷ôçêå óôç ãëþóóá C++, ðïõ åßíáé áíôéêåéìåíï-
óôñáöÞò. Ç éäÝá ôïõ áíôéêåéìåíïóôñáöïýò ðñïãñáììáôéóìïý ðáñïõóéÜ-
óôçêå ãéá ðñþôç öïñÜ óôç äåêáåôßá ôïõ 70 êáé óõíå÷ßæåé áêüìç íá áðëþ-
íåôáé áëëÜæïíôáò ôïí ðáñáäïóéáêü ðñïãñáììáôéóìü. Ëüãù ôçò óçìáóßáò
ôïõ áíôéêåéìåíïóôñáöïýò ðñïãñáììáôéóìïý ìåñéêÜ óôïé÷åßá ôïõ ðáñïõ-
óéÜæïíôáé óå îå÷ùñéóôÞ ðáñÜãñáöï.
Ôá ôåëåõôáßá ÷ñüíéá ÷ñçóéìïðïéåßôáé éäéáßôåñá, åéäéêÜ ãéá ðñïãñáììáôé-
óìü óôï Äéáäßêôõï (Internet), ç JAVA. H JAVA åßíáé ìßá áíôéêåéìåíïóôñáöÞò
ãëþóóá ðïõ áíáðôý÷èçêå áðü ôçí åôáéñåßá SUN ìå óêïðü ôçí áíÜðôõîç
åöáñìïãþí, ðïõ èá åêôåëïýíôáé óå êáôáíåìçìÝíá ðåñéâÜëëïíôá, äçëáäÞ
óå äéáöïñåôéêïýò õðïëïãéóôÝò ïé ïðïßïé åßíáé óõíäåäåìÝíïé óôï Äéáäßêôõï.
Ôá ðñïãñÜììáôá áõôÜ ìðïñïýí íá åêôåëïýíôáé áðü äéáöïñåôéêïýò õðï-
ëïãéóôÝò, ðñïóùðéêïýò Þ ìåãÜëá óõóôÞìáôá ìå äéáöïñåôéêÜ ëåéôïõñãéêÜ
óõóôÞìáôá ÷ùñßò áëëáãÝò.
Ç åìöÜíéóç ôùí ãñáöéêþí ðåñéâáëëüíôùí åñãáóßáò äçìéïýñãçóå ôçí
áíÜãêç ãéá áíÜðôõîç ðñïãñáììÜôùí ðïõ íá åêìåôáëëåýïíôáé ôïí ãñáöé-
ÅéóáãùãÞ óôïí ðñïãñáììáôéóìü
125
#include <stdio.h>
printf(“A = ”);
scanf(“%f”, &a);
printf(“B = ”);
scanf(“%f”, &b);
if (a == 0) {
if (b == 0) {
printf(“ÁÏÑÉÓÔÇ\n”);
}
else {
printf(“ÁÄÕÍÁÔÇ\n”);
}
}
else {
printf(“X = %f\n”, -b/a);
}
return 0;
}
CLEAR
? “1. ÅÉÓÁÃÙÃÇ ÓÔÏÉ×ÅÉÙÍ”
? “2. ÅÊÔÕÐÙÓÇ ÅÔÉÊÅÔÙÍ”
? “3. ÐÑÏÂÏËÇ”
? “4. ÔÅËÏÓ”
INPUT “ÅðéëÝîôå [1..4] : “ TO CHOICE
DO CASE
CASE CHOICE=1
APPEND
CASE CHOICE=2
LABEL FORM PELATES
CASE CHOICE=3
BROWSE
OTHERWISE
QUIT
END CASE
Ó÷. 6.8. Ç dBASE ðáñïõóéÜóôçêå óôá ôÝëç ôçò äåêáåôßáò ôïõ 70 áðü ôçí åôáéñßá
Ashton-Tate áñ÷éêÜ ãéá ìéêñïõðïëïãéóôÝò 8-bit êáé áñãüôåñá ãéá ðñïóùðéêïýò õðï-
ëïãéóôÝò. Ç dBASE õðÞñîå ï óðïõäáéüôåñïò åêðñüóùðïò åîåëéãìÝíùí ãëùóóþí êáé
åñãáëåßùí ðñïãñáììáôéóìïý ôçò åðï÷Þò ìå êýñéï ÷áñáêôçñéóôéêü ôéò åîáéñåôéêÝò äõ-
íáôüôçôåò äéá÷åßñéóçò áñ÷åßùí (âÜóåùí) äåäïìÝíùí. Ç dBASE ìðïñïýóå íá ëåéôïõñ-
ãåß ìå Üìåóç åêôÝëåóç ôùí åíôïëþí ôçò ìÝóá áðü ìéá äéáëïãéêÞ äéåðáöÞ ÷ñÞóôç, ìå
-
óõíÝðåéá íá ìðïñåß íá ÷ñçóéìïðïéçèåß êáé áðü Üôïìá ìå åëÜ÷éóôåò ãíþóåéò ðñïãñáì
-
ìáôéóìïý. Ôï ãåãïíüò áõôü óõíÝâáëå óôçí åõñåßá äéÜäïóç ôùí ðñïóùðéêþí õðïëï
ãéóôþí. Ç ðëÝïí äéáäåäïìÝíç Ýêäïóç Þôáí ç dBASE III Plus. ÅîÝëéîÞ ôçò õðÞñîå ï
Clipper ìåôáãëùôôéæüìåíç ãëþóóá, ìå ôçí ïðïßá äçìéïõñãÞèçêáí ðëÞèïò- åìðïñé
-
êþí åöáñìïãþí óå ðñïóùðéêïýò õðïëïãéóôÝò. Ôá ðñïúüíôá áõôÜ, ðïõ óõ÷íÜ åðïíï
ìÜæïíôáé xBASE, õðÞñîáí ðñïÜããåëïé ôùí óçìåñéíþí ðáêÝôùí äéá÷åßñéóçò âÜóåùí
- ðáñïõ
äåäïìÝíùí üðùò ç Access. Ôï áðüóðáóìá ðñïãñÜììáôïò ôïõ ðáñáäåßãìáôïò
óéÜæåé Ýíá ìåíïý åðéëïãþí êáé åêôåëåß äéáêëÜäùóç óôçí áíôßóôïé÷ç ëåéôïõñãßá.
Ôï áëöÜâçôï
ÁëöÜâçôï ìßáò ãëþóóáò êáëåßôáé ôï óýíïëï ôùí óôïé÷åßùí ðïõ ÷ñçóé-
ìïðïéåßôáé áðü ôç ãëþóóá.
Ãéá ðáñÜäåéãìá ç åëëçíéêÞ ãëþóóá ðåñéÝ÷åé ôá åîÞò óôïé÷åßá: Ôá ãñÜì-
ìáôá ôïõ áëöáâÞôïõ ðåæÜ êáé êåöáëáßá 48 äçëáäÞ ÷áñáêôÞñåò (Á-Ù êáé
á-ù), ôá 10 øçößá (0-9) êáé üëá ôá óçìåßá óôßîçò. Áíôßóôïé÷á ç áããëéêÞ
ãëþóóá ðåñéëáìâÜíåé ôá ãñÜììáôá ôïõ áããëéêïý áëöáâÞôïõ (A-Z êáé a-z)
êáèþò êáé ôá øçößá êáé üëá ôá óçìåßá óôßîçò ðïõ ÷ñçóéìïðïéïýíôáé.
Ôï ëåîéëüãéï
Ôï ëåîéëüãéï áðïôåëåßôáé áðü Ýíá õðïóýíïëï üëùí ôùí áêïëïõèéþí
ðïõ äçìéïõñãïýíôáé áðü ôá óôïé÷åßá ôïõ áëöáâÞôïõ, ôéò ëÝîåéò ðïõ åßíáé
äåêôÝò áðü ôçí ãëþóóá. Ãéá ðáñÜäåéãìá óôçí åëëçíéêÞ ãëþóóá ç áêïëïõ-
èßá ôùí ãñáììÜôùí ÁÂÃÁ åßíáé äåêôÞ áöïý áðïôåëåß ëÝîç, áëëÜ ç áêïëïõ-
èßá ÁÂÃÄÁ äåí áðïôåëåß ëÝîç ôçò åëëçíéêÞò ãëþóóáò, Üñá äåí åßíáé äåêôÞ.
Ç ÃñáììáôéêÞ
Ç ÃñáììáôéêÞ áðïôåëåßôáé áðü ôï ôõðéêü Þ ôõðïëïãéêü (accidence) êáé
ôï óõíôáêôéêü (syntax).
Ôõðéêü åßíáé ôï óýíïëï ôùí êáíüíùí ðïõ ïñßæåé ôéò ìïñöÝò ìå ôéò ï-
ðïßåò ìßá ëÝîç åßíáé áðïäåêôÞ. Ãéá ðáñÜäåéãìá óôçí åëëçíéêÞ ãëþóóá ïé ëÝ-
îåéò ãëþóóá, ãëþóóáò, ãëþóóåò åßíáé äåêôÝò, åíþ ç ëÝîç ãëþóóáô äåí åßíáé
áðïäåêôÞ.
ÅéóáãùãÞ óôïí ðñïãñáììáôéóìü
131
Ç óçìáóéïëïãßá
Ç óçìáóéïëïãßá (Semantics) åßíáé ôï óýíïëï ôùí êáíüíùí ðïõ êáèïñßæåé
ôï íüçìá ôùí ëÝîåùí êáé êáôÜ åðÝêôáóç ôùí åêöñÜóåùí êáé ðñïôÜóåùí
ðïõ ÷ñçóéìïðïéïýíôáé óå ìßá ãëþóóá. ÊÜèå ãëþóóá ðñïóäéïñßæåôáé
áðü ôï áëöÜâçôï ôçò, ôï ëå-
Óôéò ãëþóóåò ðñïãñáììáôéóìïý ïé ïðïßåò åßíáé ôå÷íçôÝò ãëþóóåò, ï äç- îéëüãéï ôçò, ôç ãñáììáôéêÞ
ìéïõñãüò ôçò ãëþóóáò áðïöáóßæåé ôç óçìáóéïëïãßá ôùí ëÝîåùí ôçò ãëþó- ôçò êáé ôç óçìáóéïëïãßá ôçò.
óáò.
,,,,
ÁÍ Áñéèìüò>0 ÔÏÔÅ ÃÑÁØÅ ‘Èåôéêüò’
ÁËËÉÙÓ_ÁÍ Áñéèìüò=0 ÔÏÔÅ ÃÑÁØÅ ‘ÌçäÝí’
ÁËËÉÙÓ ÃÑÁØÅ ‘Áñíçôéêüò’
ÔÅËÏÓ_ÁÍ
,,,
Ç ÷ñÞóç ôïõ GOTO êÜíåé áêüìá êáé áõôü ôï ìéêñü ôìÞìá ðñïãñÜì-
ìáôïò äýóêïëï óôçí êáôáíüçóç ôïõ êáé óôçí ðáñáêïëïýèçóÞ ôïõ.
⇒
ÅéóáãùãÞ óôïí ðñïãñáììáôéóìü
135
Áíáêåöáëáßùóç
Äçìéïõñãßá ðñïãñÜììáôïò åßíáé ç ìåôáôñïðÞ ôïõ áëãïñßèìïõ ðïõ åðé-
ëýåé Ýíá ðñüâëçìá óå åíôïëÝò ðñïãñÜììáôïò. Ïé åíôïëÝò ãñÜöïíôáé óå êÜ-
ðïéá áðü ôéò åêáôïíôÜäåò ãëþóóåò ðñïãñáììáôéóìïý, ðïõ Ý÷ïõí áíáðôõ-
÷èåß ìå óêïðü íá äéåõêïëýíïõí ôçí åðßëõóç óõãêåêñéìÝíïõ ôýðïõ ðñïâëç-
ìÜôùí. Ç åðéëïãÞ ôçò êáôáëëçëüôåñçò ãëþóóáò åîáñôÜôáé áðü ôï åßäïò
ôçò åöáñìïãÞò, ôï õðïëïãéóôéêü ðåñéâÜëëïí ðïõ èá åêôåëåóôåß, ôéò ãíþ-
óåéò êáé ôéò ðñïôéìÞóåéò ôïõ ðñïãñáììáôéóôÞ.
Ïé ôå÷íéêÝò ðïõ ÷ñçóéìïðïéïýíôáé ãéá ôçí áíÜðôõîç ðñïãñáììÜôùí åß-
íáé ôçò éåñáñ÷éêÞò ó÷åäßáóçò, ôïõ ôìçìáôéêïý ðñïãñáììáôéóìïý êáé ôïõ
äïìçìÝíïõ ðñïãñáììáôéóìïý, ðïõ åðéôñÝðïõí ôç äçìéïõñãßá ðñïãñáì-
ìÜôùí êáôáíïçôþí êáé áðëþí, åíþ äéåõêïëýíïõí ôç äéüñèùóç êáé ôç óõ-
íôÞñçóç ôùí åöáñìïãþí. ¸íá åßäïò ðñïãñáììáôéóìïý ðïõ ãíùñßæåé éäéáß-
ôåñç Üíèçóç ôåëåõôáßá, åßíáé ï áíôéêåéìåíïóôñáöÞò ðñïãñáììáôéóìüò.
ÊÜèå ðñüãñáììá ãéá íá åêôåëåóôåß áðü ôïí õðïëïãéóôÞ ÷ñåéÜæåôáé
ðñþôá íá ìåôáôñáðåß óå ìïñöÞ êáôáíïçôÞ áðü áõôüí. Ç ìåôáôñïðÞ áõ-
ôÞ ãßíåôáé áðü ôïõò ìåôáãëùôôéóôÝò Þ ôïõò äéåñìçíåõôÝò, ïé ïðïßïé åðéóç-
ÅéóáãùãÞ óôïí ðñïãñáììáôéóìü
141
ìáßíïõí êáé ôá óõíôáêôéêÜ ëÜèç, ðïõ Ý÷åé êÜèå ðñüãñáììá. Ç óýíôáîç ôïõ
ðñïãñÜììáôïò, ç ìåôÜöñáóç, ç äéüñèùóç ôùí ëáèþí êáé ç åêôÝëåóç ôïõ
ãßíåôáé ìå ôá ïëïêëçñùìÝíá ðñïãñáììáôéóôéêÜ ðåñéâÜëëïíôá ðïõ äéáèÝ-
ôïõí ðïëëÜ åñãáëåßá ãéá ôçí õðïâïÞèçóç ôçò áíÜðôõîçò ôùí åöáñìïãþí.
ËÝîåéò êëåéäéÜ
Ðñüãñáììá, Ãëþóóá ìç÷áíÞò, ÓõìâïëéêÞ ãëþóóá, Ãëþóóåò õøçëïý å-
ðéðÝäïõ, Ôìçìáôéêüò ðñïãñáììáôéóìüò, ÄïìçìÝíïò ðñïãñáììáôéóìüò, Á-
íôéêåéìåíïóôñáöÞò ðñïãñáììáôéóìüò, ÌåôáãëùôôéóôÞò, ÄéåñìçíåõôÞò,
Ðñïãñáììáôéóôéêü ðåñéâÜëëïí
142 ÁíÜðôõîç åöáñìïãþí óå ðñïãñáììáôéóôéêü ðåñéâÜëëïí
Âéâëéïãñáößá
1. Ph. Breton, Éóôïñßá ôçò ÐëçñïöïñéêÞò, Åêäüóåéò Äßáõëïò, ÁèÞíá,
2. Ã. Ìðáìðéíéþôçò, ÈåùñçôéêÞ Ãëùóóïëïãßá, ÁèÞíá, 1986.
3. ×ñ. Êïßëéáò-Óôñ, Êáëáöáôïýäçò, Ôï ðñþôï âéâëßï ôçò ÐëçñïöïñéêÞò,
Åêäüóåéò ÍÝùí Ôå÷íïëïãéþí, ÁèÞíá, 1992.
4. Åãêõêëïðáßäåéá ÐëçñïöïñéêÞò êáé Ôå÷íïëïãßáò Õðïëïãéóôþí, Åêäü-
óåéò ÍÝùí Ôå÷íïëïãéþí, ÁèÞíá, 1986.
5. Áè.ÔóïõñïðëÞò-Óô.Êëçìüðïõëïò, Áðü ôç FORTRAN 77 óôç FORTRAN
90, Åêäüóåéò ÐåëåêÜíïò, ÁèÞíá, 1995.
6. ×. Êïßëéáò-Óôñ. Ìáñáãêüò, Ç ãëþóóá COBOL êáé ïé åöáñìïãÝò ôçò,
Åêäüóåéò ÍÝùí Ôå÷íïëïãéþí, ÁèÞíá, ÁèÞíá, 1992.
7. Ê. ÌáñéíÜêçò-Í. Éùáííßäçò, Structure & Advanced COBOL, Åêäüóåéò ‘Å-
ëéî, ÁèÞíá, 1992.
8. ×. Êïßëéáò-Áë. ÔïìáñÜò, GWBASIC Èåùñßá êáé ÅöáñìïãÝò, Åêäüóåéò
ÍÝùí Ôå÷íïëïãéþí, ÁèÞíá, 1992.
9. Ì. ÊáôæïõñÜêç-Ì. Ãåñãáôóïýëçò-Ó. Êüêêïôïò, PROãñáììáôßæïíôáò
óôç LOGéêÞ, ‘Åêäïóç ÅÐÕ, ÁèÞíá, 1991.
10. Áéê. Ãåùñãïðïýëïõ, LOGO ÂÞìá ðñïò ÂÞìá, Åêäüóåéò ÍÝùí Ôå÷íïëï-
ãéþí, ÁèÞíá, 1991.
11. Áë. ÔïìáñÜò, C Èåùñßá êáé ÐñÜîç, Åêäüóåéò ÍÝùí Ôå÷íïëïãéþí, ÁèÞ-
íá, 1995.
12. M.ÌáëéÜððçò, SQL ÐåñéâÜëëïíôá ÁíÜðôõîçò Åöáñìïãþí 4çò ÃåíéÜò,
Åêäüóåéò ÍÝùí Ôå÷íïëïãéþí, ÁèÞíá, 1995.
13. E. Horowitz, ÂáóéêÝò áñ÷Ýò ãëùóóþí ðñïãñáììáôéóìïý, ÊëåéäÜñéè-
ìïò, ÁèÞíá, 1995.
14. R. Shackelford, Introduction to Computing and Algorithms,
Addison-Wesley, USA, 1998.
15. W. Hutching-H. Somers, An Introduction to Machine Translation,
Academic Press, London, 1992.
ÅéóáãùãÞ óôïí ðñïãñáììáôéóìü
143
Äéåõèýíóåéò Äéáäéêôýïõ
ë cuiwww.unige.ch/langlist
ÊáôÜëïãïò üëùí ôùí ãëùóóþí ðñïãñáììáôéóìïý ðïõ õðÜñ÷ïõí. Ðå-
ñéÝ÷åé ðåñéóóüôåñåò áðü 2000 ãëþóóåò êáé åíçìåñþíåôáé óõíå÷þò.
ë www.swcp.com/~dodrill/
ÐåñéÝ÷åé ðëçñïöïñßåò áëëÜ êáé ðïëëÝò åêðáéäåõôéêÝò áóêÞóåéò ãéá äéÜ-
öïñåò ãëþóóåò ðñïãñáììáôéóìïý.
ë www.progsource.com
ÃåíéêÝò ðëçñïöïñßåò, ðïëëÝò åöáñìïãÝò, ÷ñÞóéìá âïçèçôéêÜ ðñïãñÜì-
ìáôá êáèþò êáé áíáöïñÝò óå Üëëåò äéåõèýíóåéò ãéá ðïëëÝò ãëþóóåò ðñï-
ãñáììáôéóìïý üðùò Pascal, Delphi, C/C++, Java, Perl, Visual Basic.
ë www.hensa.ac.uk/parallel/
Ðëçñïöïñßåò ãéá ôïí ðáñÜëëçëï ðñïãñáììáôéóìü êáé ôéò ãëþóóåò ðïõ
õðïóôçñßæïõí ôïí ðáñÜëëçëï ðñïãñáììáôéóìü.
ë Softwaredesign.com/objects.html
ÃåíéêÝò óõíïðôéêÝò ðëçñïöïñßåò ãéá ôï ôé åßíáé áíôéêåéìåíïóôñáöÞò
ðñïãñáììáôéóìüò êáé ôá âáóéêÜ ÷áñáêôçñéóôéêÜ ôïõ áíôéêåéìåíïóôñá-
öïýò ðñïãñáììáôéóìïý.
ë Iamwww.unibe.ch/~scg/Ooinfo
Óôïé÷åßá ãéá ôïí áíôéêåéìåíïóôñáöÞ ðñïãñáììáôéóìü, ôéò ãëþóóåò ðïõ
÷ñçóéìïðïéïýíôáé êáé ðïëëÝò ó÷åôéêÝò äéåõèýíóåéò.