ภาษาที่ใช้และการพัฒนาโปรแกรม...
TRANSCRIPT
ระดบของภาษา 5 ระดบ
1. ภาษาเครอง(Machine Language)
2. ภาษาสญลกษณ(Symbolic Language) หรอภาษาแอสเซมบล(Assembly Language)
3. ภาษาระดบสง(High Level Language)
ภาษาเครอง(Machine Language)
เปนภาษาระดบตา(Low Level Language) เปนภาษาคอมพวเตอรภาษาเดยวทเครองคอมพวเตอร
สามารถเขาใจโดยไมตองมการแปล มรปแบบเปนรหสคาสงเปนตวเลขประกอบดวย 0 และ 1
เชน 1010 0001 เปนตน เปนภาษาใชงานเฉพาะเจาะจงกบเครองคอมพวเตอรหรอ
หนวยประมวลผลกลาง ขนอยกบสถาปตยกรรมของเครองใดเครองหนง
ภาษาสญลกษณ(Symbolic Language) หรอภาษาแอสเซมบล(Assembly Language)
มรปแบบเปนสญลกษณแทนรหสคาสงในภาษาเครอง ทาใหเขาใจความหมายของคาสง เชน ADD แทนการบวกเลข SUB แทนการลบเลข MUL แทนการคณเลข DIV แทนการหารเลข MOV แทนการยายขอมล
เปนภาษาทขนอยกบเครองคอมพวเตอรหรอหนวยประมวลผลกลาง ขนอยกบสถาปตยกรรมของเครองใดเครองหนง เหมอนกบภาษาเครอง
มตวแปลภาษาแอสเซมบลไปเปนภาษาเครอง เรยกวา Assembler
ภาษาระดบสง(High Level Language)
เปนภาษาไมขนอยกบเครองคอมพวเตอรหรอหนวยประมวลผลกลาง ยหอใดยหอหนง
มการเขยนโปรแกรมคลายคลงกบการเขยนประโยคในภาษาองกฤษ
มตวแปลภาษาระดบสงไปเปนภาษาเครอง 2 ประเภทคอ Interpreter และ Compiler
เหมาะสาหรบในการพฒนาโปรแกรมใชงาน และประยกตใชงานดานตาง ๆ ได
กลมใชงานดานวทยาศาสตร วศวกรรมศาสตร งานวจย (Science) ไดแก ภาษาฟอรแทรน(FORTRAN) และภาษาแอลกอล(ALGOL)
กลมใชงานดานธรกจ (Business) ไดแก ภาษาโคบอล(COBOL) ภาษาพแอลวน(PL/I) ภาษาอารพจ(RPG)
กลมภาษาระดบสง (1/2)
กลมใชงานทวไป(General Purpose) ไดแก ภาษาเบสค(BASIC) ภาษาปาสคาล(Pascal) ภาษาซ(C Language)
กลมใชงานดานตรรกะ ไดแก ภาษาเอดา(Ada) ภาษาโปรลอก(Prolog) ภาษาสโนบอล(SNOBOL)
กลมภาษาระดบสง (2/2)
ภาษาเบสค(Beginner’s All-purpose Symbolic Instruction Code)
เปนภาษาทใชกนมากทสดสาหรบไมโครคอมพวเตอร มนคอมพวเตอร และเมนเฟรมคอมพวเตอร
ผคดคนคอ Dartmouth College
เปนภาษาทใชโตตอบไปมาระหวางกนไดทนท จงงายสาหรบผทใชทเรมตนเรยน หรอตองการจะเรยนรหรอทาการแกไขและแกไขซนแทกซเออเรอสไดงาย
ภาษาโคบอล(COmmon Business Oriented Language )
เหมาะทจะใชกบการประมวลผลขอมลทางธรกจ และการสรางแฟมขอมลสาหรบงานตางๆ
ใชไดกบระบบคอมพวเตอรทวๆ ไป
ภาษาปาสคาล(Pascal)
ตงชอเปนเกยรตแก Blaise Pascal
ผคดคนคอ Nicklaus Wirth
เปนการเขยนโปรแกรมภาษาโครงสราง(Structure Programming) เพอใหโปรแกรมมความเปนมาตรฐานและงายแตการแกไขโดยใชคาสง IF-THEN-ELSE และ DO-WHILE
เปนภาษาทใชกบเครองไมโครคอมพวเตอร
ภาษาฟอรท(Fourth)
ใชกบงานดานวศวกรรม เรมแรกเรยกวา Fourth เพราะวาเปน Fourth-
Generation Language และใช IBM1130 ในการประมวลผล ซงยนยอมใหใชเพยง 5 ตวอกษร สาหรบการตงชอใดๆ จงตองเปลยนมาเปน forth โดยปรยาย
เหมาะสาหรบระบบเลกๆ สามารถจดทาโดยโอเอสไดและมกจะใชกบคอมพวเตอรขนาดเลก
ภาษาโลโก(Logo)
ใชสอนเดกในการฝกหดโตตอบกบเครองคอมพวเตอร
โลโกใชในการจดทากราฟฟก วาดภาพได
ใชกนมากในโรงเรยน
ใชกบไมโครคอมพวเตอร
ภาษาซมเลชน
ภาษาซมมเลชนทใชในการจดทาโมเดล จะไดแก GPSS ทมชอเตมวา General Purpose System Simulator และ SIMULA ซงมชอยอมาจาก Simulation Language
ภาษาระดบท 4 (4th GL : Fourth General Language)
เปนการพฒนาระบบโปรแกรมหรออตสาหกรรมซอฟตแวร ทผพฒนา(Developer) ใชเครองมอสรางโปรแกรม(Tools) โดยการออกแบบ(Design) ตามความตองการแลวสราง(Generate)ออกมาเปนระบบโปรแกรมใชงานไดเลย ทาใหสามารถพฒนาโปรแกรมไดมการทางานซบซอนได สะดวกรวดเรว แกไขตรวจสอบได
ภาษาธรรมชาต(Natural Language)
เปนภาษาระดบท 5 ทมนษยไดพฒนาฮารดแวรและซอฟตแวรใหเครองคอมพวเตอรมความสามารถเขาใจภาษามนษย
เปนการทาใหคอมพวเตอรมความเฉลยวฉลาดทเปนปญญาประดษฐ(AI : Artificial Intelligence) เชน แปลภาษาตาง ๆ ของมนษยได เชน องกฤษ ฝรงเศส ญปน เปนตน
การพฒนาโปรแกรมคอมพวเตอร
ขนตอนทเหมอนกน เรยกวา วงจรการพฒนาระบบ (System Development Life Cycle :SDLC)
ขนตอนการพฒนาระบบมอยดวยกน 7 ขน เขาใจปญหา (Problem Recognition) ศกษาความเปนไปได (Feasibility Study) วเคราะห (Analysis) ออกแบบ (Design) สรางหรอพฒนาระบบ (Construction) การปรบเปลยน (Conversion) บ ารงรกษา (Maintenance)
เขาใจปญหา Problem Recognition
ผบรหารหรอผใชตองเขาใจและทราบปญหาของระบบงานเดม จงตองการระบบสารสนเทศใหมเพอแกไขระบบงานเดม รวมไปถงเพอเพมประสทธภาพในการทางาน, ใหการทางานรวดเรวมากขน
ศกษาความเปนไปได Feasibility Study
ตองกาหนดใหไดวาปญหาคออะไร
ตดสนใจสรางระบบสารสนเทศใหม หรอแกไขระบบสารสนเทศเดม
ตองกาหนดวาการแกไขปญหาเปนทางเทคนคหรอบคลากร
ความเปนไปไดเรองคาใชจาย, ระยะเวลาในการพฒนาระบบ และทสาคญคอ ผลประโยชนทจะไดรบจากการลงทน
วเคราะห Analysis (1/3)
การศกษาระบบการทางานของธรกจนนๆ
กาหนดความตองการของระบบใหม ใชเทคนคในการเกบขอมล (Fact-Gathering Techniques)
นาขอมลทรวบรวมเขยนรายงานการทางานของระบบเปนตวหนงสอหรอแสดงแผนภาพ
วเคราะห Analysis (2/3)
เครองมอแสดงรายงานภาษาทพฒนาแบบ Structural language ไดแก
พจนานกรมขอมล (Data Dictionary)
แผนภาพการไหลของขอมล (Data Flow Diagram)
ขอมลเฉพาะการประมวลผล (Process Specification )
รปแบบขอมล (Data Model)
รปแบบระบบ (System Model)
วเคราะห Analysis (3/3)
เครองมอแสดงรายงานภาษาการโปรแกรมเชงวตถ(Object Oriented
Programming) ไดแก Unified Modeling Language(UML)
ผงงาน(Flowchart) เปนเครองมอทใชอธบายการท างานของโปรแกรมไดทงโปรแกรมทพฒนาดวยภาษา Structural language และภาษาการโปรแกรมเชงวตถ
ออกแบบ Design
ขนตอนการวเคราะห นกวเคราะหระบบตองหาวา "จะตองทาอะไร (What)" แตในขนตอนการออกแบบตองรวา " จะตองทาอยางไร(How)"
ไดแก ออกแบบฟอรมสาหรบนาขอมลเขา (Input
Format), ออกแบบรายงาน (Report Format) และการแสดงผลบนจอภาพ (Screen Format)
สรางหรอพฒนาระบบ Construction
เปนขนตอนของโปรแกรมเมอร
เขยนโปรแกรมตามขอมลทไดจากเอกสาร
ทดสอบโปรแกรมวา ทางานถกตองหรอไม
เตรยมคมอการใชและฝกอบรมผทจะใชงานระบบจรง
การปรบเปลยน Conversion
การนาระบบงานใหมมาใชแทนระบบงานเกาควรทาอยางคอยเปนคอยไปทละนอย
วธทดทสดคอ ใชระบบใหมควบคไปกบระบบเกาไปสกระยะหนง
บารงรกษา Maintenance
การแกไขโปรแกรมหลงจากการใชงานแลว
สาเหตทตองแกไขม 2 ขอ คอ มปญหาในโปรแกรม(Bug) และ การดาเนนงานในองคกรหรอธรกจเปลยนไป
Algorithm
คอการแบงขนตอนการทางานของโปรแกรมออกเปนขนตอนยอย ๆ ของการทางานเพอใหเขาใจงายขน
เชน Algorithm ของการคานวณภาษ 7 %ขนตอนท 1 รบจ านวนเงนทตองการค านวณ
ขนตอนท 2 ก าหนดสตรในการค านวณภาษ
(ภาษ = จ านวนเงน * 0.07)
ขนตอนท 3 ค านวณจากสตรทก าหนด
ขนตอนท 4 แสดงผลลพธของการค านวณ
Flow Chart
เปนเครองมอทโปรแกรมเมอรใชในการแปลง Algorithm หรอ ขนตอนการทางานใหเปนไปในลกษณะของแผนภาพเพอใหเขาใจงาย
จานแมเหลก (Magnetic disk) แสดงถงการ อนพท / เอาทพทดวยจานแมเหลก
การตดตอทางสาย (Communication link) แสดงถงการสงขาวสารไปตามสายสอสาร
แสดงเสนทางการไหล (Flow line) แสดงการเชอมตอระหวางสญลกษณ 2 สญลกษณ
Flow Chart Symbol
การท างานแบบขนาน (Parallel Mode) แสดงการเรมหรอสนสดของการท างานตงแตสองชนดทเกดขนพรอมกน
หมายเหต (Comment) แสดงถง ค าอธบายหมายเหตตางๆ เพอใหเขาใจยงขน
คอนเนคเตอร (Connector) แสดงการเชอมตอของโฟลวชารต ออกไปยงจดอนๆ
Flow Chart Symbol
จดปลาย (Terminal) แสดงการเรมหรอสนสดของการท างานของโปรแกรม
การประมวลผล (Process) ใชกบการประมวลผลทกชนด
การตดสนใจ (Decision) แสดงถงการตดสนเงอนไขวาเปนจรงหรอเทจ
Flow Chart Symbol
การเตรยม (Preparation) ใชในการก าหนดคาเรมตนของการท างาน
การประมวลผลทก าหนดไวกอน (Predefine Process) ใชแทนการท างานทก าหนดไวแลว ณ จดใดจดหนงในโปรแกรม เชนโปรแกรมยอยการควบคมดวยมอ (Manual Operation) เปนการแสดงถงการควบคมการท างานดวยมนษยเขาชวยบางครง
Flow Chart Symbol
การใชหนวยความจ าแบบออฟไลน (Off line storage) แสดงการเกบขาวสารในอปกรณความจ าแบบออฟไลนใด ๆ
การปอนขอมลดวยมอ (Manual Input) เปนการควบคมการปอนขอมลโดยผใช
เอกสาร (Document) แสดงถงการอนพท / เอาทพท ขอมลประเภทเอกสาร
Flow Chart Symbol
เทปกระดาษ (Punched Tape) แสดงถงการอนพท / เอาทพท ขอมลดวยเทปกระดาษ
อนพท / เอาทพท (Input / Output) แสดงถงการปอนขาวสารทประมวลผลไดหรอ แสดงผลทเกดจากการประมวลผล
เทปแมเหลก (Magnetic Tape) แสดงถงการอนพท / เอาทพท ขอมลดวยเทปแมเหลก
Flow Chart Symbol
การรวม (Merge) แสดงถงการน าเอาเซตของการบนทกรวมกนเปนชดเดยว
การแยก (Extract) แสดงการแยกเซตของการบนทกออกเปนชดทตองการ
Flow Chart Symbol
การเกบแบบออนไลน (Online storage) การใชอปกรณความจ าแบบออนไลนในการอนพท / เอาทพท เชน เทปแมเหลก หรอ จานแมเหลก
การแสดงผล (Display) การแสดงขาวสารขณะประมวลผลผานทางอปกรณตาง ๆ เชน จอภาพ
เชอมตอหนากระดาษ (Page Connector) แสดงการตอของผงงานทอยคนละหนา
Flow Chart Symbol
Flow Chart guidelines(1/2)
การทางานจะเรมจากบนลงลาง และ จากซายไปขวาของภาพ
กจกรรมทเกดใน Flow chart จะถกกาหนดไวอยางชดเจน
มการระบจดเรมตน และ สนสด เพยงแหงเดยว
Flow Chart guidelines(2/2)
ใชคาอธบายประเภท “one-verb” (verb-noun) เชน “prepare statement,” “file record”
กาหนดขนตอนไวตามลาดบใชสญลกษณมาตรฐาน เสนตรงทลากระหวางจดไมควรตดกน ในกรณทจาเปน
ใชสญลกษณของการครอมสายแทน
ประโยชนการเขยน Flow Chart(1/2)
ทาใหมองเหนภาพการทางานของตวโปรแกรมชดเจนขน
เปนตวกลางในการสอสารระหวางโปรแกรมเมอรดวยกน
แปลงความตองการของผใชใหอยในรปของการทางานทเปนขนตอนและงายตอการพฒนา
ใชในการทาความเขาใจเกยวกบโปรแกรมเมอมการแกไข ปรบปรงโปรแกรม
การหาพนทสามเหลยม รบคาความยาวฐานและ ความสง ค านวณพนท จากสตร
พนท = 0.5 * ฐาน * สง แสดงผลลพธทไดจากการค านวณ
ออกทางจอภาพ
เรม
รบคา ฐานและความสง
พนท = 0.5 * ฐาน * สง
พนท
สนสด
พนท , ฐาน , สง
คานวณหาผลรวมของการทาขอสอบวชา คพ200 ของนศ.คนหนง โดยมคะแนนดงตอไปน ขอสอบตวเลอก 45 ขอสอบอตนยขอ 1 ได 4 ขอสอบอตนยขอ 2 ได 3 ขอสอบอตนยขอ 3 ได 10 ขอสอบอตนยขอ 4 ได 4 ขอสอบอตนยขอ 5 ได 5
รหสเทยม(Pseudo code)
เปนเครองมอทใชในการออกแบบและแสดงอลกอรทม ประกอบดวยคาสงทไมใชคาสงในภาษาโปรแกรมคอมพวเตอรใด ๆ
คณสมบตของรหสเทยม(Pseudo code)
งายในการเขยน
งายสาหรบผอาน
ไมมกฎเกณฑทางไวยากรณ
มโครงสรางของประโยคคาสงทด
เขาสโปรแกรมคอมพวเตอรภาษาไหนกได เชน C, C++ หรอ Java
คาสงในรหสเทยม
START Stop END OF THE ALGORITHM If condition Then operations Else operations If condition Then operations Read valuesWrite values
คาสงในรหสเทยม
Set the value of x to expression หรอ xexpression
Add x to y หรอ y y + x Subtract x from y หรอ y y - xMultiply x by y หรอ y y * x Divide x into y หรอ y y / x Increment x หรอ x x + 1 Decrement x หรอ x x - 1
คาสงในรหสเทยม
While condition do::
End of the loop Repeat the following count times
::
End of the loop