如题所述
ããæ好æ¯å»ä¹¦åºä¹°ä¸æ¬èµæ书ï¼ä¸è¬ä¹¦éé¢è¦ç¹åä¹ é¢é½æ
ãã1. åºæ¬æ°æ®ç»æä¸ç®æ³
ãã1.1 ç®æ³
ããç®æ³ï¼æ¯æ解é¢æ¹æ¡çåç¡®èå®æ´çæè¿°ã
ããç®æ³ä¸çäºç¨åºï¼ä¹ä¸ç计ç®æºæ¹æ³ï¼ç¨åºçç¼å¶ä¸å¯è½ä¼äºç®æ³ç设计ã
ããç®æ³çåºæ¬ç¹å¾ï¼æ¯ä¸ç»ä¸¥è°¨å°å®ä¹è¿ç®é¡ºåºçè§åï¼æ¯ä¸ä¸ªè§åé½æ¯ææçï¼æ¯æç¡®çï¼æ¤é¡ºåºå°å¨æéç次æ°ä¸ç»æ¢ãç¹å¾å æ¬ï¼
ããï¼1ï¼å¯è¡æ§ï¼
ããï¼2ï¼ç¡®å®æ§ï¼ç®æ³ä¸æ¯ä¸æ¥éª¤é½å¿ é¡»ææç¡®å®ä¹ï¼ä¸å 许æ模棱两å¯ç解éï¼ä¸å 许æå¤ä¹æ§ï¼
ããï¼3ï¼æç©·æ§ï¼ç®æ³å¿ é¡»è½å¨æéçæ¶é´å åå®ï¼å³è½å¨æ§è¡æé个æ¥éª¤åç»æ¢ï¼å æ¬åççæ§è¡æ¶é´çå«ä¹ï¼
ããï¼4ï¼æ¥æ足å¤çæ æ¥ã
ããç®æ³çåºæ¬è¦ç´ ï¼ä¸æ¯å¯¹æ°æ®å¯¹è±¡çè¿ç®åæä½ï¼äºæ¯ç®æ³çæ§å¶ç»æã
ããæ令系ç»ï¼ä¸ä¸ªè®¡ç®æºç³»ç»è½æ§è¡çæææ令çéåã
ããåºæ¬è¿ç®åæä½å æ¬ï¼ç®æ¯è¿ç®ãé»è¾è¿ç®ãå ³ç³»è¿ç®ãæ°æ®ä¼ è¾ã
ããç®æ³çæ§å¶ç»æï¼é¡ºåºç»æãéæ©ç»æã循ç¯ç»æã
ããç®æ³åºæ¬è®¾è®¡æ¹æ³ï¼å举æ³ãå½çº³æ³ãéæ¨ãéå½ãåæéæ¨ææ¯ãå溯æ³ã
ããç®æ³å¤æ度ï¼ç®æ³æ¶é´å¤æ度åç®æ³ç©ºé´å¤æ度ã
ããç®æ³æ¶é´å¤æ度æ¯ææ§è¡ç®æ³æéè¦ç计ç®å·¥ä½éã
ããç®æ³ç©ºé´å¤æ度æ¯ææ§è¡è¿ä¸ªç®æ³æéè¦çå å空é´ã
ãã1.2 æ°æ®ç»æçåºæ¬æ¦å¿µ
ããæ°æ®ç»æç 究çä¸ä¸ªæ¹é¢ï¼
ããï¼1ï¼æ°æ®éåä¸åæ°æ®å ç´ ä¹é´æåºæçé»è¾å ³ç³»ï¼å³æ°æ®çé»è¾ç»æï¼
ããï¼2ï¼å¨å¯¹æ°æ®è¿è¡å¤çæ¶ï¼åæ°æ®å ç´ å¨è®¡ç®æºä¸çåå¨å ³ç³»ï¼å³æ°æ®çåå¨ç»æï¼
ããï¼3ï¼å¯¹åç§æ°æ®ç»æè¿è¡çè¿ç®ã
ããæ°æ®ç»ææ¯æç¸äºæå ³èçæ°æ®å ç´ çéåã
ããæ°æ®çé»è¾ç»æå å«ï¼
ããï¼1ï¼è¡¨ç¤ºæ°æ®å ç´ çä¿¡æ¯ï¼
ããï¼2ï¼è¡¨ç¤ºåæ°æ®å ç´ ä¹é´çååä»¶å ³ç³»ã
ããæ°æ®çåå¨ç»ææ顺åºãé¾æ¥ãç´¢å¼çã
ãã线æ§ç»ææ¡ä»¶ï¼
ããï¼1ï¼æä¸åªæä¸ä¸ªæ ¹ç»ç¹ï¼
ããï¼2ï¼æ¯ä¸ä¸ªç»ç¹æå¤æä¸ä¸ªå件ï¼ä¹æå¤æä¸ä¸ªå件ã
ããé线æ§ç»æï¼ä¸æ»¡è¶³çº¿æ§ç»ææ¡ä»¶çæ°æ®ç»æã
ãã1.3 线æ§è¡¨åå ¶é¡ºåºåå¨ç»æ
ãã线æ§è¡¨ç±ä¸ç»æ°æ®å ç´ ææï¼æ°æ®å ç´ çä½ç½®åªåå³äºèªå·±çåºå·ï¼å ç´ ä¹é´çç¸å¯¹ä½ç½®æ¯çº¿æ§çã
ããå¨å¤æ线æ§è¡¨ä¸ï¼ç±è¥å¹²é¡¹æ°æ®å ç´ ç»æçæ°æ®å ç´ ç§°ä¸ºè®°å½ï¼èç±å¤ä¸ªè®°å½ææç线æ§è¡¨å称为æ件ã
ããé空线æ§è¡¨çç»æç¹å¾ï¼
ããï¼1ï¼ä¸åªæä¸ä¸ªæ ¹ç»ç¹a1ï¼å®æ å件ï¼
ããï¼2ï¼æä¸åªæä¸ä¸ªç»ç«¯ç»ç¹anï¼å®æ å件ï¼
ããï¼3ï¼é¤æ ¹ç»ç¹ä¸ç»ç«¯ç»ç¹å¤ï¼å ¶ä»ææç»ç¹æä¸åªæä¸ä¸ªå件ï¼ä¹æä¸åªæä¸ä¸ªå件ãç»ç¹ä¸ªæ°n称为线æ§è¡¨çé¿åº¦ï¼å½n=0æ¶ï¼ç§°ä¸ºç©ºè¡¨ã
ãã线æ§è¡¨ç顺åºåå¨ç»æå ·æ以ä¸ä¸¤ä¸ªåºæ¬ç¹ç¹ï¼
ããï¼1ï¼çº¿æ§è¡¨ä¸ææå ç´ çæå çåå¨ç©ºé´æ¯è¿ç»çï¼
ããï¼2ï¼çº¿æ§è¡¨ä¸åæ°æ®å ç´ å¨åå¨ç©ºé´ä¸æ¯æé»è¾é¡ºåºä¾æ¬¡åæ¾çã
ããaiçåå¨å°å为ï¼ADR(ai)=ADR(a1)+(i-1)k,ï¼ADR(a1)为第ä¸ä¸ªå ç´ çå°åï¼k代表æ¯ä¸ªå ç´ å çåèæ°ã
ãã顺åºè¡¨çè¿ç®ï¼æå ¥ãå é¤ã
ãã1.4 æ åéå
ããæ æ¯éå®å¨ä¸ç«¯è¿è¡æå ¥ä¸å é¤ç线æ§è¡¨ï¼å 许æå ¥ä¸å é¤çä¸ç«¯ç§°ä¸ºæ 顶ï¼ä¸å 许æå ¥ä¸å é¤çå¦ä¸ç«¯ç§°ä¸ºæ åºã
ããæ æç §âå è¿ååºâï¼FILOï¼æâåè¿å åºâï¼LIFOï¼ç»ç»æ°æ®ï¼æ å ·æè®°å¿ä½ç¨ãç¨top表示æ 顶ä½ç½®ï¼ç¨bottom表示æ åºã
ããæ çåºæ¬è¿ç®ï¼
ããï¼1ï¼æå ¥å ç´ ç§°ä¸ºå ¥æ è¿ç®ï¼
ããï¼2ï¼å é¤å ç´ ç§°ä¸ºéæ è¿ç®ï¼
ããï¼3ï¼è¯»æ 顶å ç´ æ¯å°æ 顶å ç´ èµç»ä¸ä¸ªæå®çåéï¼æ¤æ¶æéæ ååã
ããéåæ¯æå 许å¨ä¸ç«¯ï¼éå°¾ï¼è¿å ¥æå ¥ï¼èå¨å¦ä¸ç«¯ï¼é头ï¼è¿è¡å é¤ç线æ§è¡¨ãRearæéæåéå°¾ï¼frontæéæåé头ã
ããéåæ¯âå è¿è¡åºâï¼FIFOï¼æâåè¿ååºâï¼LILOï¼ç线æ§è¡¨ã
ããéåè¿ç®å æ¬
ããï¼1ï¼å ¥éè¿ç®ï¼ä»éå°¾æå ¥ä¸ä¸ªå ç´ ï¼
ããï¼2ï¼ééè¿ç®ï¼ä»é头å é¤ä¸ä¸ªå ç´ ã
ãã循ç¯éåï¼s=0表示éå空ï¼s=1ä¸front=rear表示éå满
ãã1.5 线æ§é¾è¡¨
ããæ°æ®ç»æä¸çæ¯ä¸ä¸ªç»ç¹å¯¹åºäºä¸ä¸ªåå¨åå ï¼è¿ç§åå¨åå 称为åå¨ç»ç¹ï¼ç®ç§°ç»ç¹ã
ããç»ç¹ç±ä¸¤é¨åç»æï¼
ããï¼1ï¼ç¨äºåå¨æ°æ®å ç´ å¼ï¼ç§°ä¸ºæ°æ®åï¼
ããï¼2ï¼ç¨äºåæ¾æéï¼ç§°ä¸ºæéåï¼ç¨äºæååä¸ä¸ªæåä¸ä¸ªç»ç¹ã
ããå¨é¾å¼åå¨ç»æä¸ï¼åå¨æ°æ®ç»æçåå¨ç©ºé´å¯ä»¥ä¸è¿ç»ï¼åæ°æ®ç»ç¹çåå¨é¡ºåºä¸æ°æ®å ç´ ä¹é´çé»è¾å ³ç³»å¯ä»¥ä¸ä¸è´ï¼èæ°æ®å ç´ ä¹é´çé»è¾å ³ç³»æ¯ç±æéåæ¥ç¡®å®çã
ããé¾å¼åå¨æ¹å¼å³å¯ç¨äºè¡¨ç¤ºçº¿æ§ç»æï¼ä¹å¯ç¨äºè¡¨ç¤ºé线æ§ç»æã
ãã线æ§é¾è¡¨ï¼HEAD称为头æéï¼HEAD=NULLï¼æ0ï¼ç§°ä¸ºç©ºè¡¨ï¼å¦ææ¯ä¸¤æéï¼å·¦æéï¼Llinkï¼æåå件ç»ç¹ï¼å³æéï¼Rlinkï¼æåå件ç»ç¹ã
ãã线æ§é¾è¡¨çåºæ¬è¿ç®ï¼æ¥æ¾ãæå ¥ãå é¤ã
ãã1.6 æ ä¸äºåæ
ããæ æ¯ä¸ç§ç®åçé线æ§ç»æï¼ææå ç´ ä¹é´å ·æææ¾çå±æ¬¡ç¹æ§ã
ããå¨æ ç»æä¸ï¼æ¯ä¸ä¸ªç»ç¹åªæä¸ä¸ªå件ï¼ç§°ä¸ºç¶ç»ç¹ï¼æ²¡æå件çç»ç¹åªæä¸ä¸ªï¼ç§°ä¸ºæ çæ ¹ç»ç¹ï¼ç®ç§°æ çæ ¹ãæ¯ä¸ä¸ªç»ç¹å¯ä»¥æå¤ä¸ªå件ï¼ç§°ä¸ºè¯¥ç»ç¹çåç»ç¹ã没æå件çç»ç¹ç§°ä¸ºå¶åç»ç¹ã
ããå¨æ ç»æä¸ï¼ä¸ä¸ªç»ç¹ææ¥æçå件ç个æ°ç§°ä¸ºè¯¥ç»ç¹ç度ï¼ææç»ç¹ä¸æ大ç度称为æ ç度ãæ çæ大å±æ¬¡ç§°ä¸ºæ ç深度ã
ããäºåæ çç¹ç¹ï¼
ããï¼1ï¼é空äºåæ åªæä¸ä¸ªæ ¹ç»ç¹ï¼
ããï¼2ï¼æ¯ä¸ä¸ªç»ç¹æå¤æ两棵åæ ï¼ä¸åå«ç§°ä¸ºè¯¥ç»ç¹çå·¦åæ ä¸å³åæ ã
ããäºåæ çåºæ¬æ§è´¨ï¼
ããï¼1ï¼å¨äºåæ ç第kå±ä¸ï¼æå¤æ2k-1(kâ¥1)个ç»ç¹ï¼
ããï¼2ï¼æ·±åº¦ä¸ºmçäºåæ æå¤æ2m-1个ç»ç¹ï¼
ããï¼3ï¼åº¦ä¸º0çç»ç¹ï¼å³å¶åç»ç¹ï¼æ»æ¯æ¯åº¦ä¸º2çç»ç¹å¤ä¸ä¸ªï¼
ããï¼4ï¼å ·æn个ç»ç¹çäºåæ ï¼å ¶æ·±åº¦è³å°ä¸º[log2n]+1,å ¶ä¸[log2n]表示ålog2nçæ´æ°é¨åï¼
ããï¼5ï¼å ·æn个ç»ç¹çå®å ¨äºåæ ç深度为[log2n]+1ï¼
ããï¼6ï¼è®¾å®å ¨äºåæ å ±æn个ç»ç¹ãå¦æä»æ ¹ç»ç¹å¼å§ï¼æå±åºï¼æ¯ä¸å±ä»å·¦å°å³ï¼ç¨èªç¶æ°1ï¼2ï¼â¦.nç»ç»ç¹è¿è¡ç¼å·ï¼k=1,2â¦.nï¼ï¼æ以ä¸ç»è®ºï¼
ããâ è¥k=1ï¼å该ç»ç¹ä¸ºæ ¹ç»ç¹ï¼å®æ²¡æç¶ç»ç¹ï¼è¥k>1ï¼å该ç»ç¹çç¶ç»ç¹ç¼å·ä¸ºINT(k/2)ï¼
ããâ¡è¥2kâ¤nï¼åç¼å·ä¸ºkçç»ç¹çå·¦åç»ç¹ç¼å·ä¸º2kï¼å¦å该ç»ç¹æ å·¦åç»ç¹ï¼ä¹æ å³åç»ç¹ï¼ï¼
ããâ¢è¥2k+1â¤nï¼åç¼å·ä¸ºkçç»ç¹çå³åç»ç¹ç¼å·ä¸º2k+1ï¼å¦å该ç»ç¹æ å³åç»ç¹ã
ãã满äºåæ æ¯æé¤æåä¸å±å¤ï¼æ¯ä¸å±ä¸çææç»ç¹æ两个åç»ç¹ï¼åkå±ä¸æ2k-1个ç»ç¹æ·±åº¦ä¸ºmç满äºåæ æ2m-1个ç»ç¹ã
ããå®å ¨äºåæ æ¯æé¤æåä¸å±å¤ï¼æ¯ä¸å±ä¸çç»ç¹æ°åè¾¾å°æ大å¼ï¼å¨æåä¸å±ä¸åªç¼ºå°å³è¾¹çè¥å¹²ç»ç¹ã
ããäºåæ åå¨ç»æéç¨é¾å¼åå¨ç»æï¼å¯¹äºæ»¡äºåæ ä¸å®å ¨äºåæ å¯ä»¥æå±åºè¿è¡é¡ºåºåå¨ã
ããäºåæ çéåï¼
ããï¼1ï¼ååºéåï¼DLRï¼ï¼é¦å 访é®æ ¹ç»ç¹ï¼ç¶åéåå·¦åæ ï¼æåéåå³åæ ï¼
ããï¼2ï¼ä¸åºéåï¼LDRï¼ï¼é¦å éåå·¦åæ ï¼ç¶å访é®æ ¹ç»ç¹ï¼æåéåå³åæ ï¼
ããï¼3ï¼ååºéåï¼LRDï¼é¦å éåå·¦åæ ï¼ç¶å访é®éåå³åæ ï¼æå访é®æ ¹ç»ç¹ã
ãã1.7 æ¥æ¾ææ¯
ãã顺åºæ¥æ¾ç使ç¨æ åµï¼
ããï¼1ï¼çº¿æ§è¡¨ä¸ºæ åºè¡¨ï¼
ããï¼2ï¼è¡¨éç¨é¾å¼åå¨ç»æã
ããäºåæ³æ¥æ¾åªéç¨äºé¡ºåºåå¨çæåºè¡¨ï¼å¯¹äºé¿åº¦ä¸ºnçæåºçº¿æ§è¡¨ï¼æåæ åµåªéæ¯è¾log2n次ã
ãã1.8 æåºææ¯
ããæåºæ¯æå°ä¸ä¸ªæ åºåºåæ´çææå¼ééå顺åºæåçæåºåºåã
ãã交æ¢ç±»æåºæ³ï¼
ããï¼1ï¼å泡æåºæ³ï¼éè¦æ¯è¾ç次æ°ä¸ºn(n-1)/2ï¼
ããï¼2ï¼å¿«éæåºæ³ã
ããæå ¥ç±»æåºæ³ï¼
ããï¼1ï¼ç®åæå ¥æåºæ³ï¼æåæ åµéè¦n(n-1)/2次æ¯è¾ï¼
ããï¼2ï¼å¸å°æåºæ³ï¼æåæ åµéè¦O(n1.5)次æ¯è¾ã
ããéæ©ç±»æåºæ³ï¼
ããï¼1ï¼ç®åéæ©æåºæ³, æåæ åµéè¦n(n-1)/2次æ¯è¾ï¼
ããï¼2ï¼å æåºæ³ï¼æåæ åµéè¦O(nlog2n)次æ¯è¾ã
ãã2. ç¨åºè®¾è®¡åºç¡
ãã2.1 ç¨åºè®¾è®¡è®¾è®¡æ¹æ³åé£æ ¼
ããè¯å¥½çç¨åºè®¾è®¡é£æ ¼ï¼1ãæºç¨åºææ¡£åï¼2ãæ°æ®è¯´æçæ¹æ³ï¼3ãè¯å¥çç»æï¼4ãè¾å ¥åè¾åºã
ãã注éååºè¨æ§æ³¨éååè½æ§æ³¨éï¼è¯å¥ç»ææ¸ æ°ç¬¬ä¸ãæç第äºã
ãã2.2 ç»æåç¨åºè®¾è®¡
ããç»æåç¨åºè®¾è®¡æ¹æ³çåæ¡ååæ¯ï¼1. èªé¡¶åä¸ï¼2. éæ¥æ±ç²¾ï¼3.模ååï¼4.éå¶ä½¿ç¨gotoè¯å¥ã
ããç»æåç¨åºçåºæ¬ç»æåç¹ç¹ï¼
ããï¼1ï¼é¡ºåºç»æï¼ä¸ç§ç®åçç¨åºè®¾è®¡ï¼æåºæ¬ãæ常ç¨çç»æï¼
ããï¼2ï¼éæ©ç»æï¼å称åæ¯ç»æï¼å æ¬ç®åéæ©åå¤åæ¯éæ©ç»æï¼å¯æ ¹æ®æ¡ä»¶ï¼å¤æåºè¯¥éæ©åªä¸æ¡åæ¯æ¥æ§è¡ç¸åºçè¯å¥åºåï¼
ããï¼3ï¼éå¤ç»æï¼å称循ç¯ç»æï¼å¯æ ¹æ®ç»å®æ¡ä»¶ï¼å¤ææ¯å¦éè¦éå¤æ§è¡æä¸ç¸åç¨åºæ®µã
ãã2.3 é¢å对象çç¨åºè®¾è®¡
ããé¢å对象çç¨åºè®¾è®¡ï¼ä»¥60年代æ«æªå¨å¥¥æ¯é大å¦åæªå¨è®¡ç®æºä¸å¿ç å¶çSIMULAè¯è¨ä¸ºæ å¿ã
ããé¢å对象æ¹æ³çä¼ç¹ï¼1ãä¸äººç±»ä¹ æ¯çæç»´æ¹æ³ä¸è´ï¼2ã稳å®æ§å¥½ï¼3ãå¯éç¨æ§å¥½ï¼4ãæäºå¼å大å软件产åï¼5ãå¯ç»´æ¤æ§å¥½ã
ãã对象æ¯é¢å对象æ¹æ³ä¸æåºæ¬çæ¦å¿µï¼å¯ä»¥ç¨æ¥è¡¨ç¤ºå®¢è§ä¸çä¸çä»»ä½å®ä½ï¼å¯¹è±¡æ¯å®ä½çæ½è±¡ã
ããé¢å对象çç¨åºè®¾è®¡æ¹æ³ä¸ç对象æ¯ç³»ç»ä¸ç¨æ¥æ述客è§äºç©çä¸ä¸ªå®ä½ï¼æ¯ææç³»ç»çä¸ä¸ªåºæ¬åä½ï¼ç±ä¸ç»è¡¨ç¤ºå ¶éæç¹å¾çå±æ§åå®å¯æ§è¡çä¸ç»æä½ç»æã
ããå±æ§å³å¯¹è±¡æå å«çä¿¡æ¯ï¼æä½æè¿°äºå¯¹è±¡æ§è¡çåè½ï¼æä½ä¹ç§°ä¸ºæ¹æ³ææå¡ã
ãã对象çåºæ¬ç¹ç¹ï¼1ãæ è¯æä¸æ§ï¼2ãåç±»æ§ï¼3ãå¤ææ§ï¼4ãå°è£ æ§ï¼5ã模åç¬ç«æ§å¥½ã
ããç±»æ¯æå ·æå ±åå±æ§ãå ±åæ¹æ³ç对象çéåãæ以类æ¯å¯¹è±¡çæ½è±¡ï¼å¯¹è±¡æ¯å¯¹åºç±»çä¸ä¸ªå®ä¾ã
ããæ¶æ¯æ¯ä¸ä¸ªå®ä¾ä¸å¦ä¸ä¸ªå®ä¾ä¹é´ä¼ éçä¿¡æ¯ã
ããæ¶æ¯çç»æå æ¬ï¼1ãæ¥æ¶æ¶æ¯ç对象çå称ï¼2ãæ¶æ¯æ è¯ç¬¦ï¼ä¹ç§°æ¶æ¯åï¼3ãé¶ä¸ªæå¤ä¸ªåæ°ã
ãã继æ¿æ¯æè½å¤ç´æ¥è·å¾å·²æçæ§è´¨åç¹å¾ï¼èä¸å¿ éå¤å®ä¹ä»ä»¬ã
ãã继æ¿åå继æ¿åå¤é继æ¿ãå继æ¿æä¸ä¸ªç±»åªå 许æä¸ä¸ªç¶ç±»ï¼å¤é继æ¿æä¸ä¸ªç±»å 许æå¤ä¸ªç¶ç±»ã
ããå¤ææ§æ¯æåæ ·çæ¶æ¯è¢«ä¸åç对象æ¥åæ¶å¯å¯¼è´å®å ¨ä¸åçè¡å¨çç°è±¡ã
ãã3. 软件工ç¨åºç¡
ãã3.1 软件工ç¨åºæ¬æ¦å¿µ
ãã计ç®æºè½¯ä»¶æ¯å æ¬ç¨åºãæ°æ®åç¸å ³ææ¡£çå®æ´éåã
ãã软件çç¹ç¹å æ¬ï¼
ããï¼1ï¼è½¯ä»¶æ¯ä¸ç§é»è¾å®ä½ï¼
ããï¼2ï¼è½¯ä»¶çç产ä¸ç¡¬ä»¶ä¸åï¼å®æ²¡æææ¾çå¶ä½è¿ç¨ï¼
ããï¼3ï¼è½¯ä»¶å¨è¿è¡ã使ç¨æé´ä¸åå¨ç£¨æãèåé®é¢ï¼
ããï¼4ï¼è½¯ä»¶çå¼åãè¿è¡å¯¹è®¡ç®æºç³»ç»å ·æä¾èµæ§ï¼å计ç®æºç³»ç»çéå¶ï¼è¿å¯¼è´äºè½¯ä»¶ç§»æ¤çé®é¢ï¼
ããï¼5ï¼è½¯ä»¶å¤ææ§é«ï¼ææ¬æè´µï¼
ããï¼6ï¼è½¯ä»¶å¼åæ¶å诸å¤ç社ä¼å ç´ ã
ãã软件æåè½å为åºç¨è½¯ä»¶ãç³»ç»è½¯ä»¶ãæ¯æ软件ï¼æå·¥å ·è½¯ä»¶ï¼ã
ãã软件å±æºä¸»è¦è¡¨ç°å¨ææ¬ãè´¨éãç产ççé®é¢ã
ãã软件工ç¨æ¯åºç¨äºè®¡ç®æºè½¯ä»¶çå®ä¹ãå¼ååç»´æ¤çä¸æ´å¥æ¹æ³ãå·¥å ·ãææ¡£ãå®è·µæ ååå·¥åºã
ãã软件工ç¨å æ¬3个è¦ç´ ï¼æ¹æ³ãå·¥å ·åè¿ç¨ã
ãã软件工ç¨è¿ç¨æ¯æ软件转å为è¾åºçä¸ç»å½¼æ¤ç¸å ³çèµæºåæ´»å¨ï¼å å«4ç§åºæ¬æ´»å¨ï¼
ããï¼1ï¼Pââ软件è§æ ¼è¯´æï¼ï¼2ï¼Dââ软件å¼åï¼ï¼3ï¼Cââ软件确认ï¼ï¼4ï¼Aââ软件æ¼è¿ã
ãã软件å¨æï¼è½¯ä»¶äº§åä»æåºãå®ç°ã使ç¨ç»´æ¤å°åæ¢ä½¿ç¨éå½¹çè¿ç¨ã
ãã软件çå½å¨æä¸ä¸ªé¶æ®µ:软件å®ä¹ã软件å¼åãè¿è¡ç»´æ¤ï¼ä¸»è¦æ´»å¨é¶æ®µæ¯ï¼1ãå¯è¡æ§ç 究ä¸è®¡åå¶å®ï¼2ãéæ±åæï¼3ã软件设计ï¼4ã软件å®ç°ï¼5ã软件æµè¯ï¼6ãè¿è¡åç»´æ¤ã
ãã软件工ç¨çç®æ åä¸ååï¼
ããç®æ ï¼å¨ç»å®ææ¬ãè¿åº¦çåæä¸ï¼å¼ååºå ·ææææ§ãå¯é æ§ãå¯ç解æ§ãå¯ç»´æ¤æ§ãå¯éç¨æ§ãå¯éåºæ§ãå¯ç§»æ¤æ§ãå¯è¿½è¸ªæ§åå¯äºæä½æ§ä¸æ»¡è¶³ç¨æ·éæ±ç产åã
ããåºæ¬ç®æ ï¼ä»åºè¾ä½çå¼åææ¬ï¼è¾¾å°è¦æ±ç软件åè½ï¼åå¾è¾å¥½ç软件æ§è½ï¼å¼å软件æäºç§»æ¤ï¼éè¦è¾ä½çè´¹ç¨ï¼è½ææ¶å®æå¼åï¼åæ¶äº¤ä»ä½¿ç¨ã
ããåºæ¬ååï¼æ½è±¡ãä¿¡æ¯éè½ã模ååãå±é¨åãç¡®å®æ§ãä¸è´æ§ãå®å¤æ§åå¯éªè¯æ§ã
ãã软件工ç¨çç论åææ¯æ§ç 究çå 容主è¦å æ¬ï¼è½¯ä»¶å¼åææ¯å软件工ç¨ç®¡çã
ãã软件å¼åææ¯å æ¬ï¼è½¯ä»¶å¼åæ¹æ³å¦ãå¼åè¿ç¨ãå¼åå·¥å ·å软件工ç¨ç¯å¢ã
ãã软件工ç¨ç®¡çå æ¬ï¼è½¯ä»¶ç®¡çå¦ã软件工ç¨ç»æµå¦ã软件å¿çå¦çå 容ã
ãã软件管çå¦å æ¬äººåç»ç»ãè¿åº¦å®æãè´¨éä¿è¯ãé 置管çã项ç®è®¡åçã
ãã软件工ç¨ååå æ¬æ½è±¡ãä¿¡æ¯éè½ã模ååãå±é¨åãç¡®å®æ§ãä¸è´æ§ãå®å¤æ§åå¯éªè¯æ§ã
ãã3.2 ç»æååææ¹æ³
ããç»æåæ¹æ³çæ ¸å¿ååºç¡æ¯ç»æåç¨åºè®¾è®¡ç论ã
ããéæ±åææ¹æ³æï¼1ãç»æåéæ±åææ¹æ³ï¼2ãé¢å对象çåæçæ¹æ³ã
ããä»éæ±åæ建ç«ç模åçç¹æ§æ¥åï¼éæåæåå¨æåæã
ããç»æååææ¹æ³çå®è´¨ï¼çç¼äºæ°æ®æµï¼èªé¡¶åä¸ï¼éå±å解ï¼å»ºç«ç³»ç»çå¤çæµç¨ï¼ä»¥æ°æ®æµå¾åæ°æ®åå ¸ä¸ºä¸»è¦å·¥å ·,建ç«ç³»ç»çé»è¾æ¨¡åã
ããç»æååæç常ç¨å·¥å ·ï¼1ãæ°æ®æµå¾ï¼2ãæ°æ®åå ¸ï¼3ãå¤å®æ ï¼4ãå¤å®è¡¨ã
ããæ°æ®æµå¾ï¼æè¿°æ°æ®å¤çè¿ç¨çå·¥å ·ï¼æ¯éæ±ç解çé»è¾æ¨¡åçå¾å½¢è¡¨ç¤ºï¼å®ç´æ¥æ¯æç³»ç»åè½å»ºæ¨¡ã
ããæ°æ®åå ¸ï¼å¯¹ææä¸ç³»ç»ç¸å ³çæ°æ®å ç´ çä¸ä¸ªæç»ç»çå表ï¼ä»¥å精确çãä¸¥æ ¼çå®ä¹ï¼ä½¿å¾ç¨æ·åç³»ç»åæå对äºè¾å ¥ãè¾åºãåå¨æååä¸é´è®¡ç®ç»ææå ±åçç解ã
ããå¤å®æ ï¼ä»é®é¢å®ä¹çæåæè¿°ä¸åæ¸ åªäºæ¯å¤å®çæ¡ä»¶ï¼åªäºæ¯å¤å®çç»è®ºï¼æ ¹æ®æè¿°ææä¸çè¿æ¥è¯æ¾åºå¤å®æ¡ä»¶ä¹é´çä»å±å ³ç³»ã并åå ³ç³»ãéæ©å ³ç³»ï¼æ ¹æ®å®ä»¬æé å¤å®æ ã
ããå¤å®è¡¨ï¼ä¸å¤å®æ ç¸ä¼¼ï¼å½æ°æ®æµå¾ä¸çå å·¥è¦ä¾èµäºå¤ä¸ªé»è¾æ¡ä»¶çåå¼ï¼å³å®æ该å å·¥çä¸ç»å¨ä½æ¯ç±äºæä¸ç»æ¡ä»¶åå¼çç»åèå¼åçï¼ä½¿ç¨å¤å®è¡¨æè¿°æ¯è¾éå®ã
ããæ°æ®åå ¸æ¯ç»æååæçæ ¸å¿ã
ãã软件éæ±è§æ ¼è¯´æ书çç¹ç¹ï¼1ãæ£ç¡®æ§ï¼2ãæ å²ä¹æ§ï¼3ãå®æ´æ§ï¼4ãå¯éªè¯æ§ï¼5ãä¸è´æ§ï¼6ãå¯ç解æ§ï¼7ãå¯è¿½è¸ªæ§ã
ãã3.3 ç»æå设计æ¹æ³
ãã软件设计çåºæ¬ç®æ æ¯ç¨æ¯è¾æ½è±¡æ¦æ¬çæ¹å¼ç¡®å®ç®æ ç³»ç»å¦ä½å®æé¢å®çä»»å¡ï¼è½¯ä»¶è®¾è®¡æ¯ç¡®å®ç³»ç»çç©ç模åã
ãã软件设计æ¯å¼åé¶æ®µæéè¦çæ¥éª¤ï¼æ¯å°éæ±åç¡®å°è½¬å为å®æ´ç软件产åæç³»ç»çå¯ä¸éå¾ã
ããä»ææ¯è§ç¹æ¥çï¼è½¯ä»¶è®¾è®¡å æ¬è½¯ä»¶ç»æ设计ãæ°æ®è®¾è®¡ãæ¥å£è®¾è®¡ãè¿ç¨è®¾è®¡ã
ããï¼1ï¼ç»æ设计ï¼å®ä¹è½¯ä»¶ç³»ç»å主è¦é¨ä»¶ä¹é´çå ³ç³»ã
ããï¼2ï¼æ°æ®è®¾è®¡ï¼å°åææ¶å建ç模å转å为æ°æ®ç»æçå®ä¹ã
ããï¼3ï¼æ¥å£è®¾è®¡ï¼æ述软件å é¨ã软件ååä½ç³»ç»ä¹é´ä»¥å软件ä¸äººä¹é´å¦ä½éä¿¡ã
ããï¼4ï¼è¿ç¨è®¾è®¡ï¼æç³»ç»ç»æé¨ä»¶è½¬æ¢æ软件çè¿ç¨æè¿°ã
ããä»å·¥ç¨ç®¡çè§åº¦æ¥çï¼æ¦è¦è®¾è®¡å详ç»è®¾è®¡ã
ãã软件设计çä¸è¬è¿ç¨ï¼è½¯ä»¶è®¾è®¡æ¯ä¸ä¸ªè¿ä»£çè¿ç¨ï¼å è¿è¡é«å±æ¬¡çç»æ设计ï¼åè¿è¡ä½å±æ¬¡çè¿ç¨è®¾è®¡ï¼ç©¿æè¿è¡æ°æ®è®¾è®¡åæ¥å£è®¾è®¡ã
ããè¡¡é软件模åç¬ç«æ§ä½¿ç¨è¦åæ§åå èæ§ä¸¤ä¸ªå®æ§ç度éæ åã
ããå¨ç¨åºç»æä¸å模åçå èæ§è¶å¼ºï¼åè¦åæ§è¶å¼±ãä¼ç§è½¯ä»¶åºé«å èï¼ä½è¦åã
ãã软件æ¦è¦è®¾è®¡çåºæ¬ä»»å¡æ¯ï¼1ã设计软件系ç»ç»æï¼2ãæ°æ®ç»æåæ°æ®åºè®¾è®¡ï¼3ãç¼åæ¦è¦è®¾è®¡ææ¡£ï¼4ãæ¦è¦è®¾è®¡ææ¡£è¯å®¡ã
ãã模åç¨ä¸ä¸ªç©å½¢è¡¨ç¤ºï¼ç®å¤´è¡¨ç¤ºæ¨¡åé´çè°ç¨å ³ç³»ã
ããå¨ç»æå¾ä¸è¿å¯ä»¥ç¨å¸¦æ³¨éçç®å¤´è¡¨ç¤ºæ¨¡åè°ç¨è¿ç¨ä¸æ¥åä¼ éçä¿¡æ¯ãè¿å¯ç¨å¸¦å®å¿åçç®å¤´è¡¨ç¤ºä¼ éçæ¯æ§å¶ä¿¡æ¯ï¼ç©ºå¿åç®å¿è¡¨ç¤ºä¼ éçæ¯æ°æ®ã
ããç»æå¾çåºæ¬å½¢å¼ï¼åºæ¬å½¢å¼ã顺åºå½¢å¼ãéå¤å½¢å¼ãéæ©å½¢å¼ã
ããç»æå¾æåç§æ¨¡åç±»åï¼ä¼ å ¥æ¨¡åãä¼ åºæ¨¡åãåæ¢æ¨¡åååè°æ¨¡åã
ããå ¸åçæ°æ®æµç±»åæ两ç§ï¼åæ¢ååäºå¡åã
ããåæ¢åç³»ç»ç»æå¾ç±è¾å ¥ãä¸å¿åæ¢ãè¾åºä¸é¨åç»æã
ããäºå¡åæ°æ®æµçç¹ç¹æ¯ï¼æ¥åä¸é¡¹äºå¡ï¼æ ¹æ®äºå¡å¤ççç¹ç¹åæ§è´¨ï¼éæ©åæ´¾ä¸ä¸ªéå½çå¤çåå ï¼ç¶åç»åºç»æã
ãã详ç»è®¾è®¡ï¼æ¯ä¸ºè½¯ä»¶ç»æå¾ä¸çæ¯ä¸ä¸ªæ¨¡åç¡®å®å®ç°ç®æ³åå±é¨æ°æ®ç»æï¼ç¨æç§éå®çè¡¨è¾¾å·¥å ·è¡¨ç¤ºç®æ³åæ°æ®ç»æçç»èã
ãã常è§çè¿ç¨è®¾è®¡å·¥å ·æï¼å¾å½¢å·¥å ·ï¼ç¨åºæµç¨å¾ï¼ãè¡¨æ ¼å·¥å ·ï¼å¤å®è¡¨ï¼ãè¯è¨å·¥å ·ï¼PDLï¼ã
ãã3.4 软件æµè¯
ãã软件æµè¯å®ä¹ï¼ä½¿ç¨äººå·¥æèªå¨æ段æ¥è¿è¡ææµå®æ个系ç»çè¿ç¨ï¼å ¶ç®çå¨äºæ£éªå®æ¯å¦æ»¡è¶³è§å®çéæ±ææ¯å¼æ¸ é¢æç»æä¸å®é ç»æä¹é´çå·®å«ã
ãã软件æµè¯çç®çï¼åç°é误èæ§è¡ç¨åºçè¿ç¨ã
ãã软件æµè¯æ¹æ³ï¼éææµè¯åå¨ææµè¯ã
ããï¼1ï¼éææµè¯å æ¬ä»£ç æ£æ¥ãéæç»æåæã代ç è´¨é度éãä¸å®é è¿è¡è½¯ä»¶ï¼ä¸»è¦éè¿äººå·¥è¿è¡ã
ããï¼2ï¼å¨ææµè¯ï¼æ¯åºæ¬è®¡ç®æºçæµè¯ï¼ä¸»è¦å æ¬ç½çæµè¯æ¹æ³åé»çæµè¯æ¹æ³ã
ããâ ç½çæµè¯ï¼å¨ç¨åºå é¨è¿è¡ï¼ä¸»è¦ç¨äºå®æ软件å é¨æä½çéªè¯ã主è¦æ¹æ³æé»è¾è¦çãåºæ¬åºè·¯å¾æµè¯ã
ããâ¡é»çæµè¯ï¼ä¸»è¦è¯æåè½ä¸å¯¹æéæ¼ãçé¢é误ãæ°æ®ç»ææå¤é¨æ°æ®åºè®¿é®é误ãæ§è½é误ãåå§ååç»æ¢æ¡ä»¶éï¼ç¨äºè½¯ä»¶ç¡®è®¤ã主è¦æ¹æ³æçä»·ç±»ååæ³ãè¾¹çå¼åææ³ãé误æ¨æµæ³ãå æå¾çã
ãã软件æµè¯è¿ç¨ä¸è¬æ4个æ¥éª¤è¿è¡ï¼åå æµè¯ãéææµè¯ãéªæ¶æµè¯ï¼ç¡®è®¤æµè¯ï¼åç³»ç»æµè¯ã
ãã3.5 ç¨åºçè°è¯
ããç¨åºè°è¯çä»»å¡æ¯è¯æåæ¹æ£ç¨åºä¸çé误ï¼ä¸»è¦å¨å¼åé¶æ®µè¿è¡ã
ããç¨åºè°è¯çåºæ¬æ¥éª¤ï¼1ãé误å®ä½ï¼2ãä¿®æ¹è®¾è®¡å代ç ï¼ä»¥æé¤é误ï¼3ãè¿è¡åå½æµè¯ï¼é²æ¢å¼è¿æ°çé误ã
ãã软件è°è¯å¯å表éæè°è¯åå¨æè°è¯ãéæè°è¯ä¸»è¦æ¯æéè¿äººçæç»´æ¥åææºç¨åºä»£ç åæéï¼æ¯ä¸»è¦ç设计æ段ï¼èå¨æè°è¯æ¯è¾ å©éæè°è¯ã主è¦è°è¯æ¹æ³æï¼1ã强è¡æéæ³ï¼2ãå溯æ³ï¼3ãåå æé¤æ³ã
ãã4. æ°æ®åºè®¾è®¡åºç¡
ãã4.1 æ°æ®åºç³»ç»çåºæ¬æ¦å¿µ
ããæ°æ®ï¼å®é ä¸å°±æ¯æè¿°äºç©ç符å·è®°å½ã
ããæ°æ®çç¹ç¹ï¼æä¸å®çç»æï¼æåä¸å¼ä¹åï¼å¦æ´åãå®åãå符åçãèæ°æ®çå¼ç»åºäºç¬¦åå®åçå¼ï¼å¦æ´åå¼15ã
ããæ°æ®åºï¼æ¯æ°æ®çéåï¼å ·æç»ä¸çç»æå½¢å¼å¹¶åæ¾äºç»ä¸çåå¨ä»è´¨å ï¼æ¯å¤ç§åºç¨æ°æ®çéæï¼å¹¶å¯è¢«å个åºç¨ç¨åºå ±äº«ã
ããæ°æ®åºåæ¾æ°æ®æ¯ææ°æ®ææä¾çæ°æ®æ¨¡å¼åæ¾çï¼å ·æéæä¸å ±äº«çç¹ç¹ã
ããæ°æ®åºç®¡çç³»ç»ï¼ä¸ç§ç³»ç»è½¯ä»¶ï¼è´è´£æ°æ®åºä¸çæ°æ®ç»ç»ãæ°æ®æ纵ãæ°æ®ç»´æ¤ãæ§å¶åä¿æ¤åæ°æ®æå¡çï¼æ¯æ°æ®åºçæ ¸å¿ã
ããæ°æ®åºç®¡çç³»ç»åè½ï¼
ããï¼1ï¼æ°æ®æ¨¡å¼å®ä¹ï¼å³ä¸ºæ°æ®åºæå»ºå ¶æ°æ®æ¡æ¶ï¼
ããï¼2ï¼æ°æ®ååçç©çæ建ï¼ä¸ºæ°æ®æ¨¡å¼çç©çååä¸æ建æä¾ææçååæ¹æ³ä¸æ段ï¼
ããï¼3ï¼æ°æ®æ纵ï¼ä¸ºç¨æ·ä½¿ç¨æ°æ®åºçæ°æ®æä¾æ¹ä¾¿ï¼å¦æ¥è¯¢ãæå ¥ãä¿®æ¹ãå é¤ç以åç®åçç®æ¯è¿ç®åç»è®¡ï¼
ããï¼4ï¼æ°æ®çå®æ´æ§ãå®çæ§å®ä¹ä¸æ£æ¥ï¼
ããï¼5ï¼æ°æ®åºç并åæ§å¶ä¸æ éæ¢å¤ï¼
ããï¼6ï¼æ°æ®çæå¡ï¼å¦æ·è´ã转åãéç»ãæ§è½çæµãåæçã
ãã为å®æ以ä¸å 个åè½ï¼æ°æ®åºç®¡çç³»ç»æä¾ä»¥ä¸çæ°æ®è¯è¨ï¼
ããï¼1ï¼æ°æ®å®ä¹è¯è¨ï¼è´è´£æ°æ®ç模å¼å®ä¹ä¸æ°æ®çç©çååæ建ï¼
ããï¼2ï¼æ°æ®æ纵è¯è¨ï¼è´è´£æ°æ®çæ纵ï¼å¦æ¥è¯¢ä¸å¢ãå ãæ¹çï¼
ããï¼3ï¼æ°æ®æ§å¶è¯è¨ï¼è´è´£æ°æ®å®æ´æ§ãå®å ¨æ§çå®ä¹ä¸æ£æ¥ä»¥å并åæ§å¶ãæ éæ¢å¤çã
ããæ°æ®è¯è¨æå ¶ä½¿ç¨æ¹å¼å ·æ两ç§ç»æå½¢å¼ï¼äº¤äºå¼å½ä»¤(å称èªå«åæèªä¸»åè¯è¨)宿主åè¯è¨ï¼ä¸è¬å¯åµå ¥æäºå®¿ä¸»è¯è¨ä¸ï¼ã
ããæ°æ®åºç®¡çåï¼å¯¹æ°æ®åºè¿è¡è§åã设计ãç»´æ¤ãçè§ççä¸ä¸ç®¡ç人åã
ããæ°æ®åºç³»ç»ï¼ç±æ°æ®åºï¼æ°æ®ï¼ãæ°æ®åºç®¡çç³»ç»ï¼è½¯ä»¶ï¼ãæ°æ®åºç®¡çåï¼äººåï¼ã硬件平å°ï¼ç¡¬ä»¶ï¼ã软件平å°ï¼è½¯ä»¶ï¼äºä¸ªé¨åææçè¿è¡å®ä½ã
ããæ°æ®åºåºç¨ç³»ç»ï¼ç±æ°æ®åºç³»ç»ãåºç¨è½¯ä»¶ååºç¨çé¢ä¸è ç»æã
ããæ件系ç»é¶æ®µï¼æä¾äºç®åçæ°æ®å ±äº«ä¸æ°æ®ç®¡çè½åï¼ä½æ¯å®æ æ³æä¾å®æ´çãç»ä¸çã管çåæ°æ®å ±äº«çè½åã
ããå±æ¬¡æ°æ®åºä¸ç½ç¶æ°æ®åºç³»ç»é¶æ®µ ï¼ä¸ºç»ä¸ä¸å ±äº«æ°æ®æä¾äºæåæ¯æã
ããå ³ç³»æ°æ®åºç³»ç»é¶æ®µ
ããæ°æ®åºç³»ç»çåºæ¬ç¹ç¹ï¼æ°æ®çéææ§ ãæ°æ®çé«å ±äº«æ§ä¸ä½åä½æ§ ãæ°æ®ç¬ç«æ§ï¼ç©çç¬ç«æ§ä¸é»è¾ç¬ç«æ§ï¼ãæ°æ®ç»ä¸ç®¡çä¸æ§å¶ã
ããæ°æ®åºç³»ç»çä¸çº§æ¨¡å¼ï¼
ããï¼1ï¼æ¦å¿µæ¨¡å¼ï¼æ°æ®åºç³»ç»ä¸å ¨å±æ°æ®é»è¾ç»æçæè¿°ï¼å ¨ä½ç¨æ·å ¬å ±æ°æ®è§å¾ï¼
ããï¼2ï¼å¤æ¨¡å¼ï¼ä¹ç§°å模å¼ä¸ç¨æ·æ¨¡å¼ãæ¯ç¨æ·çæ°æ®è§å¾ï¼ä¹å°±æ¯ç¨æ·æè§å°çæ°æ®æ¨¡å¼ï¼
ããï¼3ï¼å 模å¼ï¼å称ç©ç模å¼ï¼å®ç»åºäºæ°æ®åºç©çåå¨ç»æä¸ç©çååæ¹æ³ã
ããæ°æ®åºç³»ç»ç两级æ å°ï¼
ããï¼1ï¼æ¦å¿µæ¨¡å¼å°å 模å¼çæ å°ï¼
ããï¼2ï¼å¤æ¨¡å¼å°æ¦å¿µæ¨¡å¼çæ å°ã
ãã1. åºæ¬æ°æ®ç»æä¸ç®æ³
ãã1.1 ç®æ³
ããç®æ³ï¼æ¯æ解é¢æ¹æ¡çåç¡®èå®æ´çæè¿°ã
ããç®æ³ä¸çäºç¨åºï¼ä¹ä¸ç计ç®æºæ¹æ³ï¼ç¨åºçç¼å¶ä¸å¯è½ä¼äºç®æ³ç设计ã
ããç®æ³çåºæ¬ç¹å¾ï¼æ¯ä¸ç»ä¸¥è°¨å°å®ä¹è¿ç®é¡ºåºçè§åï¼æ¯ä¸ä¸ªè§åé½æ¯ææçï¼æ¯æç¡®çï¼æ¤é¡ºåºå°å¨æéç次æ°ä¸ç»æ¢ãç¹å¾å æ¬ï¼
ããï¼1ï¼å¯è¡æ§ï¼
ããï¼2ï¼ç¡®å®æ§ï¼ç®æ³ä¸æ¯ä¸æ¥éª¤é½å¿ é¡»ææç¡®å®ä¹ï¼ä¸å 许æ模棱两å¯ç解éï¼ä¸å 许æå¤ä¹æ§ï¼
ããï¼3ï¼æç©·æ§ï¼ç®æ³å¿ é¡»è½å¨æéçæ¶é´å åå®ï¼å³è½å¨æ§è¡æé个æ¥éª¤åç»æ¢ï¼å æ¬åççæ§è¡æ¶é´çå«ä¹ï¼
ããï¼4ï¼æ¥æ足å¤çæ æ¥ã
ããç®æ³çåºæ¬è¦ç´ ï¼ä¸æ¯å¯¹æ°æ®å¯¹è±¡çè¿ç®åæä½ï¼äºæ¯ç®æ³çæ§å¶ç»æã
ããæ令系ç»ï¼ä¸ä¸ªè®¡ç®æºç³»ç»è½æ§è¡çæææ令çéåã
ããåºæ¬è¿ç®åæä½å æ¬ï¼ç®æ¯è¿ç®ãé»è¾è¿ç®ãå ³ç³»è¿ç®ãæ°æ®ä¼ è¾ã
ããç®æ³çæ§å¶ç»æï¼é¡ºåºç»æãéæ©ç»æã循ç¯ç»æã
ããç®æ³åºæ¬è®¾è®¡æ¹æ³ï¼å举æ³ãå½çº³æ³ãéæ¨ãéå½ãåæéæ¨ææ¯ãå溯æ³ã
ããç®æ³å¤æ度ï¼ç®æ³æ¶é´å¤æ度åç®æ³ç©ºé´å¤æ度ã
ããç®æ³æ¶é´å¤æ度æ¯ææ§è¡ç®æ³æéè¦ç计ç®å·¥ä½éã
ããç®æ³ç©ºé´å¤æ度æ¯ææ§è¡è¿ä¸ªç®æ³æéè¦çå å空é´ã
ãã1.2 æ°æ®ç»æçåºæ¬æ¦å¿µ
ããæ°æ®ç»æç 究çä¸ä¸ªæ¹é¢ï¼
ããï¼1ï¼æ°æ®éåä¸åæ°æ®å ç´ ä¹é´æåºæçé»è¾å ³ç³»ï¼å³æ°æ®çé»è¾ç»æï¼
ããï¼2ï¼å¨å¯¹æ°æ®è¿è¡å¤çæ¶ï¼åæ°æ®å ç´ å¨è®¡ç®æºä¸çåå¨å ³ç³»ï¼å³æ°æ®çåå¨ç»æï¼
ããï¼3ï¼å¯¹åç§æ°æ®ç»æè¿è¡çè¿ç®ã
ããæ°æ®ç»ææ¯æç¸äºæå ³èçæ°æ®å ç´ çéåã
ããæ°æ®çé»è¾ç»æå å«ï¼
ããï¼1ï¼è¡¨ç¤ºæ°æ®å ç´ çä¿¡æ¯ï¼
ããï¼2ï¼è¡¨ç¤ºåæ°æ®å ç´ ä¹é´çååä»¶å ³ç³»ã
ããæ°æ®çåå¨ç»ææ顺åºãé¾æ¥ãç´¢å¼çã
ãã线æ§ç»ææ¡ä»¶ï¼
ããï¼1ï¼æä¸åªæä¸ä¸ªæ ¹ç»ç¹ï¼
ããï¼2ï¼æ¯ä¸ä¸ªç»ç¹æå¤æä¸ä¸ªå件ï¼ä¹æå¤æä¸ä¸ªå件ã
ããé线æ§ç»æï¼ä¸æ»¡è¶³çº¿æ§ç»ææ¡ä»¶çæ°æ®ç»æã
ãã1.3 线æ§è¡¨åå ¶é¡ºåºåå¨ç»æ
ãã线æ§è¡¨ç±ä¸ç»æ°æ®å ç´ ææï¼æ°æ®å ç´ çä½ç½®åªåå³äºèªå·±çåºå·ï¼å ç´ ä¹é´çç¸å¯¹ä½ç½®æ¯çº¿æ§çã
ããå¨å¤æ线æ§è¡¨ä¸ï¼ç±è¥å¹²é¡¹æ°æ®å ç´ ç»æçæ°æ®å ç´ ç§°ä¸ºè®°å½ï¼èç±å¤ä¸ªè®°å½ææç线æ§è¡¨å称为æ件ã
ããé空线æ§è¡¨çç»æç¹å¾ï¼
ããï¼1ï¼ä¸åªæä¸ä¸ªæ ¹ç»ç¹a1ï¼å®æ å件ï¼
ããï¼2ï¼æä¸åªæä¸ä¸ªç»ç«¯ç»ç¹anï¼å®æ å件ï¼
ããï¼3ï¼é¤æ ¹ç»ç¹ä¸ç»ç«¯ç»ç¹å¤ï¼å ¶ä»ææç»ç¹æä¸åªæä¸ä¸ªå件ï¼ä¹æä¸åªæä¸ä¸ªå件ãç»ç¹ä¸ªæ°n称为线æ§è¡¨çé¿åº¦ï¼å½n=0æ¶ï¼ç§°ä¸ºç©ºè¡¨ã
ãã线æ§è¡¨ç顺åºåå¨ç»æå ·æ以ä¸ä¸¤ä¸ªåºæ¬ç¹ç¹ï¼
ããï¼1ï¼çº¿æ§è¡¨ä¸ææå ç´ çæå çåå¨ç©ºé´æ¯è¿ç»çï¼
ããï¼2ï¼çº¿æ§è¡¨ä¸åæ°æ®å ç´ å¨åå¨ç©ºé´ä¸æ¯æé»è¾é¡ºåºä¾æ¬¡åæ¾çã
ããaiçåå¨å°å为ï¼ADR(ai)=ADR(a1)+(i-1)k,ï¼ADR(a1)为第ä¸ä¸ªå ç´ çå°åï¼k代表æ¯ä¸ªå ç´ å çåèæ°ã
ãã顺åºè¡¨çè¿ç®ï¼æå ¥ãå é¤ã
ãã1.4 æ åéå
ããæ æ¯éå®å¨ä¸ç«¯è¿è¡æå ¥ä¸å é¤ç线æ§è¡¨ï¼å 许æå ¥ä¸å é¤çä¸ç«¯ç§°ä¸ºæ 顶ï¼ä¸å 许æå ¥ä¸å é¤çå¦ä¸ç«¯ç§°ä¸ºæ åºã
ããæ æç §âå è¿ååºâï¼FILOï¼æâåè¿å åºâï¼LIFOï¼ç»ç»æ°æ®ï¼æ å ·æè®°å¿ä½ç¨ãç¨top表示æ 顶ä½ç½®ï¼ç¨bottom表示æ åºã
ããæ çåºæ¬è¿ç®ï¼
ããï¼1ï¼æå ¥å ç´ ç§°ä¸ºå ¥æ è¿ç®ï¼
ããï¼2ï¼å é¤å ç´ ç§°ä¸ºéæ è¿ç®ï¼
ããï¼3ï¼è¯»æ 顶å ç´ æ¯å°æ 顶å ç´ èµç»ä¸ä¸ªæå®çåéï¼æ¤æ¶æéæ ååã
ããéåæ¯æå 许å¨ä¸ç«¯ï¼éå°¾ï¼è¿å ¥æå ¥ï¼èå¨å¦ä¸ç«¯ï¼é头ï¼è¿è¡å é¤ç线æ§è¡¨ãRearæéæåéå°¾ï¼frontæéæåé头ã
ããéåæ¯âå è¿è¡åºâï¼FIFOï¼æâåè¿ååºâï¼LILOï¼ç线æ§è¡¨ã
ããéåè¿ç®å æ¬
ããï¼1ï¼å ¥éè¿ç®ï¼ä»éå°¾æå ¥ä¸ä¸ªå ç´ ï¼
ããï¼2ï¼ééè¿ç®ï¼ä»é头å é¤ä¸ä¸ªå ç´ ã
ãã循ç¯éåï¼s=0表示éå空ï¼s=1ä¸front=rear表示éå满
ãã1.5 线æ§é¾è¡¨
ããæ°æ®ç»æä¸çæ¯ä¸ä¸ªç»ç¹å¯¹åºäºä¸ä¸ªåå¨åå ï¼è¿ç§åå¨åå 称为åå¨ç»ç¹ï¼ç®ç§°ç»ç¹ã
ããç»ç¹ç±ä¸¤é¨åç»æï¼
ããï¼1ï¼ç¨äºåå¨æ°æ®å ç´ å¼ï¼ç§°ä¸ºæ°æ®åï¼
ããï¼2ï¼ç¨äºåæ¾æéï¼ç§°ä¸ºæéåï¼ç¨äºæååä¸ä¸ªæåä¸ä¸ªç»ç¹ã
ããå¨é¾å¼åå¨ç»æä¸ï¼åå¨æ°æ®ç»æçåå¨ç©ºé´å¯ä»¥ä¸è¿ç»ï¼åæ°æ®ç»ç¹çåå¨é¡ºåºä¸æ°æ®å ç´ ä¹é´çé»è¾å ³ç³»å¯ä»¥ä¸ä¸è´ï¼èæ°æ®å ç´ ä¹é´çé»è¾å ³ç³»æ¯ç±æéåæ¥ç¡®å®çã
ããé¾å¼åå¨æ¹å¼å³å¯ç¨äºè¡¨ç¤ºçº¿æ§ç»æï¼ä¹å¯ç¨äºè¡¨ç¤ºé线æ§ç»æã
ãã线æ§é¾è¡¨ï¼HEAD称为头æéï¼HEAD=NULLï¼æ0ï¼ç§°ä¸ºç©ºè¡¨ï¼å¦ææ¯ä¸¤æéï¼å·¦æéï¼Llinkï¼æåå件ç»ç¹ï¼å³æéï¼Rlinkï¼æåå件ç»ç¹ã
ãã线æ§é¾è¡¨çåºæ¬è¿ç®ï¼æ¥æ¾ãæå ¥ãå é¤ã
ãã1.6 æ ä¸äºåæ
ããæ æ¯ä¸ç§ç®åçé线æ§ç»æï¼ææå ç´ ä¹é´å ·æææ¾çå±æ¬¡ç¹æ§ã
ããå¨æ ç»æä¸ï¼æ¯ä¸ä¸ªç»ç¹åªæä¸ä¸ªå件ï¼ç§°ä¸ºç¶ç»ç¹ï¼æ²¡æå件çç»ç¹åªæä¸ä¸ªï¼ç§°ä¸ºæ çæ ¹ç»ç¹ï¼ç®ç§°æ çæ ¹ãæ¯ä¸ä¸ªç»ç¹å¯ä»¥æå¤ä¸ªå件ï¼ç§°ä¸ºè¯¥ç»ç¹çåç»ç¹ã没æå件çç»ç¹ç§°ä¸ºå¶åç»ç¹ã
ããå¨æ ç»æä¸ï¼ä¸ä¸ªç»ç¹ææ¥æçå件ç个æ°ç§°ä¸ºè¯¥ç»ç¹ç度ï¼ææç»ç¹ä¸æ大ç度称为æ ç度ãæ çæ大å±æ¬¡ç§°ä¸ºæ ç深度ã
ããäºåæ çç¹ç¹ï¼
ããï¼1ï¼é空äºåæ åªæä¸ä¸ªæ ¹ç»ç¹ï¼
ããï¼2ï¼æ¯ä¸ä¸ªç»ç¹æå¤æ两棵åæ ï¼ä¸åå«ç§°ä¸ºè¯¥ç»ç¹çå·¦åæ ä¸å³åæ ã
ããäºåæ çåºæ¬æ§è´¨ï¼
ããï¼1ï¼å¨äºåæ ç第kå±ä¸ï¼æå¤æ2k-1(kâ¥1)个ç»ç¹ï¼
ããï¼2ï¼æ·±åº¦ä¸ºmçäºåæ æå¤æ2m-1个ç»ç¹ï¼
ããï¼3ï¼åº¦ä¸º0çç»ç¹ï¼å³å¶åç»ç¹ï¼æ»æ¯æ¯åº¦ä¸º2çç»ç¹å¤ä¸ä¸ªï¼
ããï¼4ï¼å ·æn个ç»ç¹çäºåæ ï¼å ¶æ·±åº¦è³å°ä¸º[log2n]+1,å ¶ä¸[log2n]表示ålog2nçæ´æ°é¨åï¼
ããï¼5ï¼å ·æn个ç»ç¹çå®å ¨äºåæ ç深度为[log2n]+1ï¼
ããï¼6ï¼è®¾å®å ¨äºåæ å ±æn个ç»ç¹ãå¦æä»æ ¹ç»ç¹å¼å§ï¼æå±åºï¼æ¯ä¸å±ä»å·¦å°å³ï¼ç¨èªç¶æ°1ï¼2ï¼â¦.nç»ç»ç¹è¿è¡ç¼å·ï¼k=1,2â¦.nï¼ï¼æ以ä¸ç»è®ºï¼
ããâ è¥k=1ï¼å该ç»ç¹ä¸ºæ ¹ç»ç¹ï¼å®æ²¡æç¶ç»ç¹ï¼è¥k>1ï¼å该ç»ç¹çç¶ç»ç¹ç¼å·ä¸ºINT(k/2)ï¼
ããâ¡è¥2kâ¤nï¼åç¼å·ä¸ºkçç»ç¹çå·¦åç»ç¹ç¼å·ä¸º2kï¼å¦å该ç»ç¹æ å·¦åç»ç¹ï¼ä¹æ å³åç»ç¹ï¼ï¼
ããâ¢è¥2k+1â¤nï¼åç¼å·ä¸ºkçç»ç¹çå³åç»ç¹ç¼å·ä¸º2k+1ï¼å¦å该ç»ç¹æ å³åç»ç¹ã
ãã满äºåæ æ¯æé¤æåä¸å±å¤ï¼æ¯ä¸å±ä¸çææç»ç¹æ两个åç»ç¹ï¼åkå±ä¸æ2k-1个ç»ç¹æ·±åº¦ä¸ºmç满äºåæ æ2m-1个ç»ç¹ã
ããå®å ¨äºåæ æ¯æé¤æåä¸å±å¤ï¼æ¯ä¸å±ä¸çç»ç¹æ°åè¾¾å°æ大å¼ï¼å¨æåä¸å±ä¸åªç¼ºå°å³è¾¹çè¥å¹²ç»ç¹ã
ããäºåæ åå¨ç»æéç¨é¾å¼åå¨ç»æï¼å¯¹äºæ»¡äºåæ ä¸å®å ¨äºåæ å¯ä»¥æå±åºè¿è¡é¡ºåºåå¨ã
ããäºåæ çéåï¼
ããï¼1ï¼ååºéåï¼DLRï¼ï¼é¦å 访é®æ ¹ç»ç¹ï¼ç¶åéåå·¦åæ ï¼æåéåå³åæ ï¼
ããï¼2ï¼ä¸åºéåï¼LDRï¼ï¼é¦å éåå·¦åæ ï¼ç¶å访é®æ ¹ç»ç¹ï¼æåéåå³åæ ï¼
ããï¼3ï¼ååºéåï¼LRDï¼é¦å éåå·¦åæ ï¼ç¶å访é®éåå³åæ ï¼æå访é®æ ¹ç»ç¹ã
ãã1.7 æ¥æ¾ææ¯
ãã顺åºæ¥æ¾ç使ç¨æ åµï¼
ããï¼1ï¼çº¿æ§è¡¨ä¸ºæ åºè¡¨ï¼
ããï¼2ï¼è¡¨éç¨é¾å¼åå¨ç»æã
ããäºåæ³æ¥æ¾åªéç¨äºé¡ºåºåå¨çæåºè¡¨ï¼å¯¹äºé¿åº¦ä¸ºnçæåºçº¿æ§è¡¨ï¼æåæ åµåªéæ¯è¾log2n次ã
ãã1.8 æåºææ¯
ããæåºæ¯æå°ä¸ä¸ªæ åºåºåæ´çææå¼ééå顺åºæåçæåºåºåã
ãã交æ¢ç±»æåºæ³ï¼
ããï¼1ï¼å泡æåºæ³ï¼éè¦æ¯è¾ç次æ°ä¸ºn(n-1)/2ï¼
ããï¼2ï¼å¿«éæåºæ³ã
ããæå ¥ç±»æåºæ³ï¼
ããï¼1ï¼ç®åæå ¥æåºæ³ï¼æåæ åµéè¦n(n-1)/2次æ¯è¾ï¼
ããï¼2ï¼å¸å°æåºæ³ï¼æåæ åµéè¦O(n1.5)次æ¯è¾ã
ããéæ©ç±»æåºæ³ï¼
ããï¼1ï¼ç®åéæ©æåºæ³, æåæ åµéè¦n(n-1)/2次æ¯è¾ï¼
ããï¼2ï¼å æåºæ³ï¼æåæ åµéè¦O(nlog2n)次æ¯è¾ã
ãã2. ç¨åºè®¾è®¡åºç¡
ãã2.1 ç¨åºè®¾è®¡è®¾è®¡æ¹æ³åé£æ ¼
ããè¯å¥½çç¨åºè®¾è®¡é£æ ¼ï¼1ãæºç¨åºææ¡£åï¼2ãæ°æ®è¯´æçæ¹æ³ï¼3ãè¯å¥çç»æï¼4ãè¾å ¥åè¾åºã
ãã注éååºè¨æ§æ³¨éååè½æ§æ³¨éï¼è¯å¥ç»ææ¸ æ°ç¬¬ä¸ãæç第äºã
ãã2.2 ç»æåç¨åºè®¾è®¡
ããç»æåç¨åºè®¾è®¡æ¹æ³çåæ¡ååæ¯ï¼1. èªé¡¶åä¸ï¼2. éæ¥æ±ç²¾ï¼3.模ååï¼4.éå¶ä½¿ç¨gotoè¯å¥ã
ããç»æåç¨åºçåºæ¬ç»æåç¹ç¹ï¼
ããï¼1ï¼é¡ºåºç»æï¼ä¸ç§ç®åçç¨åºè®¾è®¡ï¼æåºæ¬ãæ常ç¨çç»æï¼
ããï¼2ï¼éæ©ç»æï¼å称åæ¯ç»æï¼å æ¬ç®åéæ©åå¤åæ¯éæ©ç»æï¼å¯æ ¹æ®æ¡ä»¶ï¼å¤æåºè¯¥éæ©åªä¸æ¡åæ¯æ¥æ§è¡ç¸åºçè¯å¥åºåï¼
ããï¼3ï¼éå¤ç»æï¼å称循ç¯ç»æï¼å¯æ ¹æ®ç»å®æ¡ä»¶ï¼å¤ææ¯å¦éè¦éå¤æ§è¡æä¸ç¸åç¨åºæ®µã
ãã2.3 é¢å对象çç¨åºè®¾è®¡
ããé¢å对象çç¨åºè®¾è®¡ï¼ä»¥60年代æ«æªå¨å¥¥æ¯é大å¦åæªå¨è®¡ç®æºä¸å¿ç å¶çSIMULAè¯è¨ä¸ºæ å¿ã
ããé¢å对象æ¹æ³çä¼ç¹ï¼1ãä¸äººç±»ä¹ æ¯çæç»´æ¹æ³ä¸è´ï¼2ã稳å®æ§å¥½ï¼3ãå¯éç¨æ§å¥½ï¼4ãæäºå¼å大å软件产åï¼5ãå¯ç»´æ¤æ§å¥½ã
ãã对象æ¯é¢å对象æ¹æ³ä¸æåºæ¬çæ¦å¿µï¼å¯ä»¥ç¨æ¥è¡¨ç¤ºå®¢è§ä¸çä¸çä»»ä½å®ä½ï¼å¯¹è±¡æ¯å®ä½çæ½è±¡ã
ããé¢å对象çç¨åºè®¾è®¡æ¹æ³ä¸ç对象æ¯ç³»ç»ä¸ç¨æ¥æ述客è§äºç©çä¸ä¸ªå®ä½ï¼æ¯ææç³»ç»çä¸ä¸ªåºæ¬åä½ï¼ç±ä¸ç»è¡¨ç¤ºå ¶éæç¹å¾çå±æ§åå®å¯æ§è¡çä¸ç»æä½ç»æã
ããå±æ§å³å¯¹è±¡æå å«çä¿¡æ¯ï¼æä½æè¿°äºå¯¹è±¡æ§è¡çåè½ï¼æä½ä¹ç§°ä¸ºæ¹æ³ææå¡ã
ãã对象çåºæ¬ç¹ç¹ï¼1ãæ è¯æä¸æ§ï¼2ãåç±»æ§ï¼3ãå¤ææ§ï¼4ãå°è£ æ§ï¼5ã模åç¬ç«æ§å¥½ã
ããç±»æ¯æå ·æå ±åå±æ§ãå ±åæ¹æ³ç对象çéåãæ以类æ¯å¯¹è±¡çæ½è±¡ï¼å¯¹è±¡æ¯å¯¹åºç±»çä¸ä¸ªå®ä¾ã
ããæ¶æ¯æ¯ä¸ä¸ªå®ä¾ä¸å¦ä¸ä¸ªå®ä¾ä¹é´ä¼ éçä¿¡æ¯ã
ããæ¶æ¯çç»æå æ¬ï¼1ãæ¥æ¶æ¶æ¯ç对象çå称ï¼2ãæ¶æ¯æ è¯ç¬¦ï¼ä¹ç§°æ¶æ¯åï¼3ãé¶ä¸ªæå¤ä¸ªåæ°ã
ãã继æ¿æ¯æè½å¤ç´æ¥è·å¾å·²æçæ§è´¨åç¹å¾ï¼èä¸å¿ éå¤å®ä¹ä»ä»¬ã
ãã继æ¿åå继æ¿åå¤é继æ¿ãå继æ¿æä¸ä¸ªç±»åªå 许æä¸ä¸ªç¶ç±»ï¼å¤é继æ¿æä¸ä¸ªç±»å 许æå¤ä¸ªç¶ç±»ã
ããå¤ææ§æ¯æåæ ·çæ¶æ¯è¢«ä¸åç对象æ¥åæ¶å¯å¯¼è´å®å ¨ä¸åçè¡å¨çç°è±¡ã
ãã3. 软件工ç¨åºç¡
ãã3.1 软件工ç¨åºæ¬æ¦å¿µ
ãã计ç®æºè½¯ä»¶æ¯å æ¬ç¨åºãæ°æ®åç¸å ³ææ¡£çå®æ´éåã
ãã软件çç¹ç¹å æ¬ï¼
ããï¼1ï¼è½¯ä»¶æ¯ä¸ç§é»è¾å®ä½ï¼
ããï¼2ï¼è½¯ä»¶çç产ä¸ç¡¬ä»¶ä¸åï¼å®æ²¡æææ¾çå¶ä½è¿ç¨ï¼
ããï¼3ï¼è½¯ä»¶å¨è¿è¡ã使ç¨æé´ä¸åå¨ç£¨æãèåé®é¢ï¼
ããï¼4ï¼è½¯ä»¶çå¼åãè¿è¡å¯¹è®¡ç®æºç³»ç»å ·æä¾èµæ§ï¼å计ç®æºç³»ç»çéå¶ï¼è¿å¯¼è´äºè½¯ä»¶ç§»æ¤çé®é¢ï¼
ããï¼5ï¼è½¯ä»¶å¤ææ§é«ï¼ææ¬æè´µï¼
ããï¼6ï¼è½¯ä»¶å¼åæ¶å诸å¤ç社ä¼å ç´ ã
ãã软件æåè½å为åºç¨è½¯ä»¶ãç³»ç»è½¯ä»¶ãæ¯æ软件ï¼æå·¥å ·è½¯ä»¶ï¼ã
ãã软件å±æºä¸»è¦è¡¨ç°å¨ææ¬ãè´¨éãç产ççé®é¢ã
ãã软件工ç¨æ¯åºç¨äºè®¡ç®æºè½¯ä»¶çå®ä¹ãå¼ååç»´æ¤çä¸æ´å¥æ¹æ³ãå·¥å ·ãææ¡£ãå®è·µæ ååå·¥åºã
ãã软件工ç¨å æ¬3个è¦ç´ ï¼æ¹æ³ãå·¥å ·åè¿ç¨ã
ãã软件工ç¨è¿ç¨æ¯æ软件转å为è¾åºçä¸ç»å½¼æ¤ç¸å ³çèµæºåæ´»å¨ï¼å å«4ç§åºæ¬æ´»å¨ï¼
ããï¼1ï¼Pââ软件è§æ ¼è¯´æï¼ï¼2ï¼Dââ软件å¼åï¼ï¼3ï¼Cââ软件确认ï¼ï¼4ï¼Aââ软件æ¼è¿ã
ãã软件å¨æï¼è½¯ä»¶äº§åä»æåºãå®ç°ã使ç¨ç»´æ¤å°åæ¢ä½¿ç¨éå½¹çè¿ç¨ã
ãã软件çå½å¨æä¸ä¸ªé¶æ®µ:软件å®ä¹ã软件å¼åãè¿è¡ç»´æ¤ï¼ä¸»è¦æ´»å¨é¶æ®µæ¯ï¼1ãå¯è¡æ§ç 究ä¸è®¡åå¶å®ï¼2ãéæ±åæï¼3ã软件设计ï¼4ã软件å®ç°ï¼5ã软件æµè¯ï¼6ãè¿è¡åç»´æ¤ã
ãã软件工ç¨çç®æ åä¸ååï¼
ããç®æ ï¼å¨ç»å®ææ¬ãè¿åº¦çåæä¸ï¼å¼ååºå ·ææææ§ãå¯é æ§ãå¯ç解æ§ãå¯ç»´æ¤æ§ãå¯éç¨æ§ãå¯éåºæ§ãå¯ç§»æ¤æ§ãå¯è¿½è¸ªæ§åå¯äºæä½æ§ä¸æ»¡è¶³ç¨æ·éæ±ç产åã
ããåºæ¬ç®æ ï¼ä»åºè¾ä½çå¼åææ¬ï¼è¾¾å°è¦æ±ç软件åè½ï¼åå¾è¾å¥½ç软件æ§è½ï¼å¼å软件æäºç§»æ¤ï¼éè¦è¾ä½çè´¹ç¨ï¼è½ææ¶å®æå¼åï¼åæ¶äº¤ä»ä½¿ç¨ã
ããåºæ¬ååï¼æ½è±¡ãä¿¡æ¯éè½ã模ååãå±é¨åãç¡®å®æ§ãä¸è´æ§ãå®å¤æ§åå¯éªè¯æ§ã
ãã软件工ç¨çç论åææ¯æ§ç 究çå 容主è¦å æ¬ï¼è½¯ä»¶å¼åææ¯å软件工ç¨ç®¡çã
ãã软件å¼åææ¯å æ¬ï¼è½¯ä»¶å¼åæ¹æ³å¦ãå¼åè¿ç¨ãå¼åå·¥å ·å软件工ç¨ç¯å¢ã
ãã软件工ç¨ç®¡çå æ¬ï¼è½¯ä»¶ç®¡çå¦ã软件工ç¨ç»æµå¦ã软件å¿çå¦çå 容ã
ãã软件管çå¦å æ¬äººåç»ç»ãè¿åº¦å®æãè´¨éä¿è¯ãé 置管çã项ç®è®¡åçã
ãã软件工ç¨ååå æ¬æ½è±¡ãä¿¡æ¯éè½ã模ååãå±é¨åãç¡®å®æ§ãä¸è´æ§ãå®å¤æ§åå¯éªè¯æ§ã
ãã3.2 ç»æååææ¹æ³
ããç»æåæ¹æ³çæ ¸å¿ååºç¡æ¯ç»æåç¨åºè®¾è®¡ç论ã
ããéæ±åææ¹æ³æï¼1ãç»æåéæ±åææ¹æ³ï¼2ãé¢å对象çåæçæ¹æ³ã
ããä»éæ±åæ建ç«ç模åçç¹æ§æ¥åï¼éæåæåå¨æåæã
ããç»æååææ¹æ³çå®è´¨ï¼çç¼äºæ°æ®æµï¼èªé¡¶åä¸ï¼éå±å解ï¼å»ºç«ç³»ç»çå¤çæµç¨ï¼ä»¥æ°æ®æµå¾åæ°æ®åå ¸ä¸ºä¸»è¦å·¥å ·,建ç«ç³»ç»çé»è¾æ¨¡åã
ããç»æååæç常ç¨å·¥å ·ï¼1ãæ°æ®æµå¾ï¼2ãæ°æ®åå ¸ï¼3ãå¤å®æ ï¼4ãå¤å®è¡¨ã
ããæ°æ®æµå¾ï¼æè¿°æ°æ®å¤çè¿ç¨çå·¥å ·ï¼æ¯éæ±ç解çé»è¾æ¨¡åçå¾å½¢è¡¨ç¤ºï¼å®ç´æ¥æ¯æç³»ç»åè½å»ºæ¨¡ã
ããæ°æ®åå ¸ï¼å¯¹ææä¸ç³»ç»ç¸å ³çæ°æ®å ç´ çä¸ä¸ªæç»ç»çå表ï¼ä»¥å精确çãä¸¥æ ¼çå®ä¹ï¼ä½¿å¾ç¨æ·åç³»ç»åæå对äºè¾å ¥ãè¾åºãåå¨æååä¸é´è®¡ç®ç»ææå ±åçç解ã
ããå¤å®æ ï¼ä»é®é¢å®ä¹çæåæè¿°ä¸åæ¸ åªäºæ¯å¤å®çæ¡ä»¶ï¼åªäºæ¯å¤å®çç»è®ºï¼æ ¹æ®æè¿°ææä¸çè¿æ¥è¯æ¾åºå¤å®æ¡ä»¶ä¹é´çä»å±å ³ç³»ã并åå ³ç³»ãéæ©å ³ç³»ï¼æ ¹æ®å®ä»¬æé å¤å®æ ã
ããå¤å®è¡¨ï¼ä¸å¤å®æ ç¸ä¼¼ï¼å½æ°æ®æµå¾ä¸çå å·¥è¦ä¾èµäºå¤ä¸ªé»è¾æ¡ä»¶çåå¼ï¼å³å®æ该å å·¥çä¸ç»å¨ä½æ¯ç±äºæä¸ç»æ¡ä»¶åå¼çç»åèå¼åçï¼ä½¿ç¨å¤å®è¡¨æè¿°æ¯è¾éå®ã
ããæ°æ®åå ¸æ¯ç»æååæçæ ¸å¿ã
ãã软件éæ±è§æ ¼è¯´æ书çç¹ç¹ï¼1ãæ£ç¡®æ§ï¼2ãæ å²ä¹æ§ï¼3ãå®æ´æ§ï¼4ãå¯éªè¯æ§ï¼5ãä¸è´æ§ï¼6ãå¯ç解æ§ï¼7ãå¯è¿½è¸ªæ§ã
ãã3.3 ç»æå设计æ¹æ³
ãã软件设计çåºæ¬ç®æ æ¯ç¨æ¯è¾æ½è±¡æ¦æ¬çæ¹å¼ç¡®å®ç®æ ç³»ç»å¦ä½å®æé¢å®çä»»å¡ï¼è½¯ä»¶è®¾è®¡æ¯ç¡®å®ç³»ç»çç©ç模åã
ãã软件设计æ¯å¼åé¶æ®µæéè¦çæ¥éª¤ï¼æ¯å°éæ±åç¡®å°è½¬å为å®æ´ç软件产åæç³»ç»çå¯ä¸éå¾ã
ããä»ææ¯è§ç¹æ¥çï¼è½¯ä»¶è®¾è®¡å æ¬è½¯ä»¶ç»æ设计ãæ°æ®è®¾è®¡ãæ¥å£è®¾è®¡ãè¿ç¨è®¾è®¡ã
ããï¼1ï¼ç»æ设计ï¼å®ä¹è½¯ä»¶ç³»ç»å主è¦é¨ä»¶ä¹é´çå ³ç³»ã
ããï¼2ï¼æ°æ®è®¾è®¡ï¼å°åææ¶å建ç模å转å为æ°æ®ç»æçå®ä¹ã
ããï¼3ï¼æ¥å£è®¾è®¡ï¼æ述软件å é¨ã软件ååä½ç³»ç»ä¹é´ä»¥å软件ä¸äººä¹é´å¦ä½éä¿¡ã
ããï¼4ï¼è¿ç¨è®¾è®¡ï¼æç³»ç»ç»æé¨ä»¶è½¬æ¢æ软件çè¿ç¨æè¿°ã
ããä»å·¥ç¨ç®¡çè§åº¦æ¥çï¼æ¦è¦è®¾è®¡å详ç»è®¾è®¡ã
ãã软件设计çä¸è¬è¿ç¨ï¼è½¯ä»¶è®¾è®¡æ¯ä¸ä¸ªè¿ä»£çè¿ç¨ï¼å è¿è¡é«å±æ¬¡çç»æ设计ï¼åè¿è¡ä½å±æ¬¡çè¿ç¨è®¾è®¡ï¼ç©¿æè¿è¡æ°æ®è®¾è®¡åæ¥å£è®¾è®¡ã
ããè¡¡é软件模åç¬ç«æ§ä½¿ç¨è¦åæ§åå èæ§ä¸¤ä¸ªå®æ§ç度éæ åã
ããå¨ç¨åºç»æä¸å模åçå èæ§è¶å¼ºï¼åè¦åæ§è¶å¼±ãä¼ç§è½¯ä»¶åºé«å èï¼ä½è¦åã
ãã软件æ¦è¦è®¾è®¡çåºæ¬ä»»å¡æ¯ï¼1ã设计软件系ç»ç»æï¼2ãæ°æ®ç»æåæ°æ®åºè®¾è®¡ï¼3ãç¼åæ¦è¦è®¾è®¡ææ¡£ï¼4ãæ¦è¦è®¾è®¡ææ¡£è¯å®¡ã
ãã模åç¨ä¸ä¸ªç©å½¢è¡¨ç¤ºï¼ç®å¤´è¡¨ç¤ºæ¨¡åé´çè°ç¨å ³ç³»ã
ããå¨ç»æå¾ä¸è¿å¯ä»¥ç¨å¸¦æ³¨éçç®å¤´è¡¨ç¤ºæ¨¡åè°ç¨è¿ç¨ä¸æ¥åä¼ éçä¿¡æ¯ãè¿å¯ç¨å¸¦å®å¿åçç®å¤´è¡¨ç¤ºä¼ éçæ¯æ§å¶ä¿¡æ¯ï¼ç©ºå¿åç®å¿è¡¨ç¤ºä¼ éçæ¯æ°æ®ã
ããç»æå¾çåºæ¬å½¢å¼ï¼åºæ¬å½¢å¼ã顺åºå½¢å¼ãéå¤å½¢å¼ãéæ©å½¢å¼ã
ããç»æå¾æåç§æ¨¡åç±»åï¼ä¼ å ¥æ¨¡åãä¼ åºæ¨¡åãåæ¢æ¨¡åååè°æ¨¡åã
ããå ¸åçæ°æ®æµç±»åæ两ç§ï¼åæ¢ååäºå¡åã
ããåæ¢åç³»ç»ç»æå¾ç±è¾å ¥ãä¸å¿åæ¢ãè¾åºä¸é¨åç»æã
ããäºå¡åæ°æ®æµçç¹ç¹æ¯ï¼æ¥åä¸é¡¹äºå¡ï¼æ ¹æ®äºå¡å¤ççç¹ç¹åæ§è´¨ï¼éæ©åæ´¾ä¸ä¸ªéå½çå¤çåå ï¼ç¶åç»åºç»æã
ãã详ç»è®¾è®¡ï¼æ¯ä¸ºè½¯ä»¶ç»æå¾ä¸çæ¯ä¸ä¸ªæ¨¡åç¡®å®å®ç°ç®æ³åå±é¨æ°æ®ç»æï¼ç¨æç§éå®çè¡¨è¾¾å·¥å ·è¡¨ç¤ºç®æ³åæ°æ®ç»æçç»èã
ãã常è§çè¿ç¨è®¾è®¡å·¥å ·æï¼å¾å½¢å·¥å ·ï¼ç¨åºæµç¨å¾ï¼ãè¡¨æ ¼å·¥å ·ï¼å¤å®è¡¨ï¼ãè¯è¨å·¥å ·ï¼PDLï¼ã
ãã3.4 软件æµè¯
ãã软件æµè¯å®ä¹ï¼ä½¿ç¨äººå·¥æèªå¨æ段æ¥è¿è¡ææµå®æ个系ç»çè¿ç¨ï¼å ¶ç®çå¨äºæ£éªå®æ¯å¦æ»¡è¶³è§å®çéæ±ææ¯å¼æ¸ é¢æç»æä¸å®é ç»æä¹é´çå·®å«ã
ãã软件æµè¯çç®çï¼åç°é误èæ§è¡ç¨åºçè¿ç¨ã
ãã软件æµè¯æ¹æ³ï¼éææµè¯åå¨ææµè¯ã
ããï¼1ï¼éææµè¯å æ¬ä»£ç æ£æ¥ãéæç»æåæã代ç è´¨é度éãä¸å®é è¿è¡è½¯ä»¶ï¼ä¸»è¦éè¿äººå·¥è¿è¡ã
ããï¼2ï¼å¨ææµè¯ï¼æ¯åºæ¬è®¡ç®æºçæµè¯ï¼ä¸»è¦å æ¬ç½çæµè¯æ¹æ³åé»çæµè¯æ¹æ³ã
ããâ ç½çæµè¯ï¼å¨ç¨åºå é¨è¿è¡ï¼ä¸»è¦ç¨äºå®æ软件å é¨æä½çéªè¯ã主è¦æ¹æ³æé»è¾è¦çãåºæ¬åºè·¯å¾æµè¯ã
ããâ¡é»çæµè¯ï¼ä¸»è¦è¯æåè½ä¸å¯¹æéæ¼ãçé¢é误ãæ°æ®ç»ææå¤é¨æ°æ®åºè®¿é®é误ãæ§è½é误ãåå§ååç»æ¢æ¡ä»¶éï¼ç¨äºè½¯ä»¶ç¡®è®¤ã主è¦æ¹æ³æçä»·ç±»ååæ³ãè¾¹çå¼åææ³ãé误æ¨æµæ³ãå æå¾çã
ãã软件æµè¯è¿ç¨ä¸è¬æ4个æ¥éª¤è¿è¡ï¼åå æµè¯ãéææµè¯ãéªæ¶æµè¯ï¼ç¡®è®¤æµè¯ï¼åç³»ç»æµè¯ã
ãã3.5 ç¨åºçè°è¯
ããç¨åºè°è¯çä»»å¡æ¯è¯æåæ¹æ£ç¨åºä¸çé误ï¼ä¸»è¦å¨å¼åé¶æ®µè¿è¡ã
ããç¨åºè°è¯çåºæ¬æ¥éª¤ï¼1ãé误å®ä½ï¼2ãä¿®æ¹è®¾è®¡å代ç ï¼ä»¥æé¤é误ï¼3ãè¿è¡åå½æµè¯ï¼é²æ¢å¼è¿æ°çé误ã
ãã软件è°è¯å¯å表éæè°è¯åå¨æè°è¯ãéæè°è¯ä¸»è¦æ¯æéè¿äººçæç»´æ¥åææºç¨åºä»£ç åæéï¼æ¯ä¸»è¦ç设计æ段ï¼èå¨æè°è¯æ¯è¾ å©éæè°è¯ã主è¦è°è¯æ¹æ³æï¼1ã强è¡æéæ³ï¼2ãå溯æ³ï¼3ãåå æé¤æ³ã
ãã4. æ°æ®åºè®¾è®¡åºç¡
ãã4.1 æ°æ®åºç³»ç»çåºæ¬æ¦å¿µ
ããæ°æ®ï¼å®é ä¸å°±æ¯æè¿°äºç©ç符å·è®°å½ã
ããæ°æ®çç¹ç¹ï¼æä¸å®çç»æï¼æåä¸å¼ä¹åï¼å¦æ´åãå®åãå符åçãèæ°æ®çå¼ç»åºäºç¬¦åå®åçå¼ï¼å¦æ´åå¼15ã
ããæ°æ®åºï¼æ¯æ°æ®çéåï¼å ·æç»ä¸çç»æå½¢å¼å¹¶åæ¾äºç»ä¸çåå¨ä»è´¨å ï¼æ¯å¤ç§åºç¨æ°æ®çéæï¼å¹¶å¯è¢«å个åºç¨ç¨åºå ±äº«ã
ããæ°æ®åºåæ¾æ°æ®æ¯ææ°æ®ææä¾çæ°æ®æ¨¡å¼åæ¾çï¼å ·æéæä¸å ±äº«çç¹ç¹ã
ããæ°æ®åºç®¡çç³»ç»ï¼ä¸ç§ç³»ç»è½¯ä»¶ï¼è´è´£æ°æ®åºä¸çæ°æ®ç»ç»ãæ°æ®æ纵ãæ°æ®ç»´æ¤ãæ§å¶åä¿æ¤åæ°æ®æå¡çï¼æ¯æ°æ®åºçæ ¸å¿ã
ããæ°æ®åºç®¡çç³»ç»åè½ï¼
ããï¼1ï¼æ°æ®æ¨¡å¼å®ä¹ï¼å³ä¸ºæ°æ®åºæå»ºå ¶æ°æ®æ¡æ¶ï¼
ããï¼2ï¼æ°æ®ååçç©çæ建ï¼ä¸ºæ°æ®æ¨¡å¼çç©çååä¸æ建æä¾ææçååæ¹æ³ä¸æ段ï¼
ããï¼3ï¼æ°æ®æ纵ï¼ä¸ºç¨æ·ä½¿ç¨æ°æ®åºçæ°æ®æä¾æ¹ä¾¿ï¼å¦æ¥è¯¢ãæå ¥ãä¿®æ¹ãå é¤ç以åç®åçç®æ¯è¿ç®åç»è®¡ï¼
ããï¼4ï¼æ°æ®çå®æ´æ§ãå®çæ§å®ä¹ä¸æ£æ¥ï¼
ããï¼5ï¼æ°æ®åºç并åæ§å¶ä¸æ éæ¢å¤ï¼
ããï¼6ï¼æ°æ®çæå¡ï¼å¦æ·è´ã转åãéç»ãæ§è½çæµãåæçã
ãã为å®æ以ä¸å 个åè½ï¼æ°æ®åºç®¡çç³»ç»æä¾ä»¥ä¸çæ°æ®è¯è¨ï¼
ããï¼1ï¼æ°æ®å®ä¹è¯è¨ï¼è´è´£æ°æ®ç模å¼å®ä¹ä¸æ°æ®çç©çååæ建ï¼
ããï¼2ï¼æ°æ®æ纵è¯è¨ï¼è´è´£æ°æ®çæ纵ï¼å¦æ¥è¯¢ä¸å¢ãå ãæ¹çï¼
ããï¼3ï¼æ°æ®æ§å¶è¯è¨ï¼è´è´£æ°æ®å®æ´æ§ãå®å ¨æ§çå®ä¹ä¸æ£æ¥ä»¥å并åæ§å¶ãæ éæ¢å¤çã
ããæ°æ®è¯è¨æå ¶ä½¿ç¨æ¹å¼å ·æ两ç§ç»æå½¢å¼ï¼äº¤äºå¼å½ä»¤(å称èªå«åæèªä¸»åè¯è¨)宿主åè¯è¨ï¼ä¸è¬å¯åµå ¥æäºå®¿ä¸»è¯è¨ä¸ï¼ã
ããæ°æ®åºç®¡çåï¼å¯¹æ°æ®åºè¿è¡è§åã设计ãç»´æ¤ãçè§ççä¸ä¸ç®¡ç人åã
ããæ°æ®åºç³»ç»ï¼ç±æ°æ®åºï¼æ°æ®ï¼ãæ°æ®åºç®¡çç³»ç»ï¼è½¯ä»¶ï¼ãæ°æ®åºç®¡çåï¼äººåï¼ã硬件平å°ï¼ç¡¬ä»¶ï¼ã软件平å°ï¼è½¯ä»¶ï¼äºä¸ªé¨åææçè¿è¡å®ä½ã
ããæ°æ®åºåºç¨ç³»ç»ï¼ç±æ°æ®åºç³»ç»ãåºç¨è½¯ä»¶ååºç¨çé¢ä¸è ç»æã
ããæ件系ç»é¶æ®µï¼æä¾äºç®åçæ°æ®å ±äº«ä¸æ°æ®ç®¡çè½åï¼ä½æ¯å®æ æ³æä¾å®æ´çãç»ä¸çã管çåæ°æ®å ±äº«çè½åã
ããå±æ¬¡æ°æ®åºä¸ç½ç¶æ°æ®åºç³»ç»é¶æ®µ ï¼ä¸ºç»ä¸ä¸å ±äº«æ°æ®æä¾äºæåæ¯æã
ããå ³ç³»æ°æ®åºç³»ç»é¶æ®µ
ããæ°æ®åºç³»ç»çåºæ¬ç¹ç¹ï¼æ°æ®çéææ§ ãæ°æ®çé«å ±äº«æ§ä¸ä½åä½æ§ ãæ°æ®ç¬ç«æ§ï¼ç©çç¬ç«æ§ä¸é»è¾ç¬ç«æ§ï¼ãæ°æ®ç»ä¸ç®¡çä¸æ§å¶ã
ããæ°æ®åºç³»ç»çä¸çº§æ¨¡å¼ï¼
ããï¼1ï¼æ¦å¿µæ¨¡å¼ï¼æ°æ®åºç³»ç»ä¸å ¨å±æ°æ®é»è¾ç»æçæè¿°ï¼å ¨ä½ç¨æ·å ¬å ±æ°æ®è§å¾ï¼
ããï¼2ï¼å¤æ¨¡å¼ï¼ä¹ç§°å模å¼ä¸ç¨æ·æ¨¡å¼ãæ¯ç¨æ·çæ°æ®è§å¾ï¼ä¹å°±æ¯ç¨æ·æè§å°çæ°æ®æ¨¡å¼ï¼
ããï¼3ï¼å 模å¼ï¼å称ç©ç模å¼ï¼å®ç»åºäºæ°æ®åºç©çåå¨ç»æä¸ç©çååæ¹æ³ã
ããæ°æ®åºç³»ç»ç两级æ å°ï¼
ããï¼1ï¼æ¦å¿µæ¨¡å¼å°å 模å¼çæ å°ï¼
ããï¼2ï¼å¤æ¨¡å¼å°æ¦å¿µæ¨¡å¼çæ å°ã
温馨提示:答案为网友推荐,仅供参考