31
ทททททททททททททททท 28 บบบบบ 3 : บบบบบบบบบบบบ บบบบบบบบบบบ 3.1 บบบบบบบบบบบบบบบบบบบบบ เเเเเเเเเ (Software) เ เ เ เ เ เเ เ เเ เ เ เเเ เเ เเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเ เเเเเเเเเเเเ เเเเเเเเเเเ เเเเเเเเเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเ เเเเเเเเเเเเเเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเ เเเเเเเเเเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเเเเ เเเเ เเเเเเเเเเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเเเเเเ เเเเเเเ เเเเเเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเ (Programmer) เเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเเเเเเเเเ เเเเเเเเเเเ เเเเเเเเเเเเเเ เเเเเเเเเเเเเเเเเเเเเเเเเเ เเเเ เเเเเเเเเ เเเเเเ เเเ เเเเเเเเเเ เเเเเเเ เเเเเเเเเเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเเเเเเเเเ เเเเ เเเเเเเเเเเเเเเเเเ เเเเเเ เเเเเเเเเเเเเเเเเ เเเเเเเเเเเเเเเเเเเ เเเเเเเ

บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยสารสนเทศ 28

บ ท ท 3 : เ ท ค โ น โ ล ย ท า ง ด า นซอฟแวร

3.1 ซอฟแวรของคอมพวเตอรซอฟตแวร (Software) หมายถง สวนทท ำาหนาท เป นค ำาส งท ใช

ควบคมการทำางานของเคร องคอมพวเตอร หรออาจเรยกวา “โปรแกรม” ก ได ซ งหมายถ ง ค ำาส งหรอช ดของค ำาส ง ซ งสามารถใช เพ อส ง ให คอมพวเตอรทำางาน เราตองการใหเครองคอมพวเตอรทำาอะไร กเขยนเปนคำาสง ซงจะตองสงเปนขนเปนตอน และแตละขนตอนตองทำาอยางละเอยดและครบถวน ซงจะเกดเปนงานชนหนงขนมามชอเรยกวา โปรแกรม ผทเขยนโปรแกรมดงกลาวกจะเรยกวา นกเขยนโปรแกรม (Programmer) สำาหรบการเขยนโปรแกรมนนจะตองใชภาษาทใชในการเขยนโปรแกรมโดยเฉพาะ ซงหมายถง ภาษาทเครองคอมพวเตอรสามารถเขาใจได เชน ภาษาเบสก ภาษาโคบอล ภาษาปาสคาล เปนตน โปรแกรมทเขยนขนมากจะนำาไปใชในงานเฉพาะอยาง เชน โปรแกรมสตอกสนคาคงคลง โปรแกรมคำานวณภาษ โปรแกรมคดเงนเดอนพนกงาน

ประเภทของซอฟแวร ซอฟแวรแบงเป น 2 ประเภท คอ ซอฟแวรระบบ (system

software) และ ซอฟแวรประยกต

Page 2: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยทางดานซอฟแวร 29(Application Software)

3.2 ซอฟแวรระบบ (System Software)ซอฟแวรระบบ หมายถง โปรแกรมหรอคำาสงททำาหนาทควบคมการ

ปฏบตงานของสวนประกอบตางๆ ของคอมพวเตอรฮารดแวร ตลอดจนควบคมการสอสารขอมลในระบบเครอขายคอมพวเตอร แบงเปน 2 ประเภท คอ ระบบปฏบตการ และตวแปลภาษาคอมพวเตอร

1) ระบบปฏบตการ (Operation System หรอ OS) เปนชดคำาสงททำาหนาทเปนสอกลางระหวางโปรแกรมประยกต

และอปกรณคอมพวเตอรใหสามารถทำางานรวมกนไดเชนการเชอมโยงขอมลคำาสงระหวางสวนประกอบภายในเครองคอมพวเตอร หรอสวนประกอบรอบขางอนๆ เขากบศนยกลางประมวลผล เชนการจดลำาดบการทำางานของเครองคอมพวเตอรเมอเร มเปดเครองใชงาน หรอการควบคมการหมนแผนจานเกบขอมลใหสมพนธก บการอาน/เขยนขอมล ควบคมหนวยรบและควบคมหนวยแสดงผล ตลอดจนแฟมขอมลตางๆ ใหมประสทธภาพในการทำางานสงทสด และสามารถใชอปกรณทกสวนของคอมพวเตอรมาทำางานไดอยางเตมท นอกจากนนยงเขามาชวยจดสรรการใชทรพยากรในเครองและชวยจดการกระบวนการพนฐานทส ำาคญๆ ภายในเคร องคอมพวเตอร เชน การเปดหรอปดไฟล การสอสารกนระหวางชนสวนตางๆ ภายในเครอง การสงขอมลออกสเคร องพมพหรอสจอภาพ เปนตน กอนทคอมพวเตอรแตละเครองจะสามารถอานไฟลตางๆ หรอสามารถใชซอฟตแวรอนๆได จะตองผานการดงระบบปฏบตการออกมาฝงตวอยในหนวยความจ ำากอน ปจจบนนมระบบปฏบตการอยหลายตวดวยกน ซงแตละตวจะมลกษณะการทำางานทไมเหมอนกน เปนตน ตวอยางระบบปฏบตการทใชในปจจบน เชน

ระบบปฏบตการ MS –DOS เปนระบบปฏบตการทท ำาหนาทดแลการทำางานตางๆ ของ

คอมพวเตอร เชน ควบคมหนวยความจำา จอภาพ เครองพมพ และอปกรณตอพวงอนๆ และยงทำาหนาทประสานงานใหโปรแกรมประยกตตางๆ ทำาหนาทไดเหมาะสมตามคณสมบตของโปรแกรมนนๆ

Page 3: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยสารสนเทศ 30

ไมโครซอฟตวนโดว (Microsoft Windows) เปนระบบปฏบตการทผลตโดยบรษท Microsoft การทำางานของระบบจะมลกษณะเดยวกบระบบ DOS แตตางกนตรงทระบบปฏบต Microsoft Windows จะตดตอกบผใชในลกษณะของกราฟกทสวยงาม ทเรยกวา graphical user interface หรอ GUI ผใชจะตดตอกบระบบวนโดวผานเมนคำาสง และรปภาพทเปนสญลกษณทใชแทนคำาสงทเรยกวา icon ปจจบนท ใ ช เ ช น Windows 98 , Windows 2000 , Windows XP, Windows Vista

ระบบปฏบตการแบบเปด เปนระบบทพฒนาจากแนวคดทตองการใชระบบปฏบตการกบเครองคอมพวเตอรตาง ๆ ได ในปจจบนแนวโนมการพฒนาใหระบบปฏบตการสามารถใชงานรวมกบฮารดแวรทแตกตางกนได แพรหลายมากข น ตวยางเชนระบบปฏบต การ UNIX , Linux เปนตน

2) ตวแปลภาษาคอมพวเตอร (Translator) การพฒนาโปรแกรมคอมพวเตอร ผเขยนโปรแกรมจะเลอกใช

ภาษาใหเหมาะสมกบลกษณะงานและความถนดของผเขยนโปรแกรม โปรแกรมทเขยนขนเรยก กวา source code จะมลกษณะโครงสรางของภาษาทแตกตางออกไป ในการทำางานของคอมพวเตอรนน คอมพวเตอรจะไมสามารถเขาใจภาษาทใกลเคยงกบภาษามนษยทเรยกวา ภาษาระดบสง เนองจากคอมพวเตอรจะรบขอมลทเปนสญญาณไฟฟาทแทนดวยเลขฐานสอง หรอทเรยกวา ภาษาเครองเทานน

ดงนนในการสงใหคอมพวเตอรท ำางาน จงจำาเปนตองมตวกลางททำาหนาทเสมอนเปนนกแปลภาษา ทเรยกวาโปรแกรมแปลภาษา

Page 4: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยทางดานซอฟแวร 31

คอมพวเตอร ซงทำาหนาทแปลภาษาระดบสงทเปน source code ใหอยในรปทคอมพวเตอรเขาใจและสามารถทำางานได ซงตวแปลภาษาสามารถแบงตามลกษณะการทำางานได 3 แบบ

คอมไพเลอร (Complier) เปนตวแปลภาษาระดบสง เชน ภาษาปาสคาล ภาษาโคบอล ภาษาฟอรแทรนใหเปนภาษาเครอง การทำางานจะใชหลกการแปลโปรแกรม source code ทงโปรแกรมใหเปนโปรแกรมเรยกใชงาน (executable program) ซงจะถกบนทกไวในลกษณะของแฟมขอมลหรอไฟล เมอตองการเรยกใชงานโปรแกรมกสามารถเรยกใชจากไฟลเรยกใชงานไดโดยไมต องท ำาการ Compile อก ขณะท Compile โปรแกรม source code คอมไพเลอรจะตรวจสอบโครงสรางไวยากรณของคำาสงและขอมลทใชในการคำานวณและเปรยบเทยบตอจากนนคอมไพเลอร จะสรางรายการขอผดพลาดของโปรแกรม เพอใชเกบโปรแกรม source code ทไมถกตองเพอประโยชนในการแกไขโปรแกรม

อนเตอรพรเตอร (Interpreter) เปนตวแปลภาษาระดบสงเชนเดยวกบคอมไพเลอรแตจะแปลพรอมกบทำางานตามคำาสงทละคำาสงตลอดไปทงโปรแกรม ทำาใหการแกโปรแกรมกระทำาไดงายและรวดเรว การแปลโดยใช Interpreter จะไมสรางโปรแกรมเรยกใชงาน ดงนนจะตองทำาการแปลใหมทกคร งท มการเรยกใชงาน ตวอยางภาษาทใชต วแปล Interpreter เชน ภาษา Basic

Execute Progra

m

Source code

Complier Output

Input

Source code

Interpreter Output

Input

Page 5: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยสารสนเทศ 32

แอสแซมเบลอ ( Assembler) เปนตวแปลภาษาแอสแซมบล (assembly) ซงเปนภาษาระดบตำาใหเปนภาษาเครอง

3.3 ซอฟแวรประยกต (Application Software) ซอฟแวรประยกตเปนโปรแกรมทพฒนาขนเพอใหคอมพวเตอร

ทำางานดานตางๆ ตามความตองการของผใช ซงถาโปรแกรมพฒนาขนเพอความตองการเฉพาะขององคการใดองคการหนง ซงเรยกวา ซอฟแวรเฉพาะงาน

ขอด คอ โปรแกรมสามารถใชงานไดอยางมประสทธภาพตามความประสงคของหนวยงาน

ขอเสยคอ ใชเวลาในการพฒนาและคาใชจายคอนขางสงซอฟแวรประยกตทนยมใชสำาหรบงานทวไป ไดแก

โปรแกรมประมวลคำา (Word Processor) โปรแกรมจดทำาเอกสาร เรยกวา Word ใชสำาหรบจดทำารายงาน จดหมาย หนงสอ สงพมพตางๆ

โปรแกรมดานการคำานวณ (Spreadsheet) เปนโปรแกรมทมลกษณะตารางทำาการ เหมาะสำาหรบคำานวณตวเลขในรปแบบตางๆ ตารางทำาการประกอบดวยชองตารางหรอเซลล สามารถปอนขอมลตวอกษร ตวเลข และสตรการคำานวณ สามารถจดทำากราฟ ลกษณะงานทใชซอฟแวร ประเภทน เชน การทำาบญชงบกำาไร – ขาดทน รายงานการขาย ซอฟแวรประเภทนไดแก Microsoft Excel, Lotus 123

โปรแกรมการนำาเสนอขอมล (Presentation) เปนประยกตทชวยงานดานการนำาเสนอขอมลดวยคอมพวเตอร ในการประชม สมมนา หรอการบรรยาย ในการเรยนการสอน โปรแกรมนำาเสนอขอมลจะมสไลด ใหเลอกใชไดหลายรปแบบ มแบบตวอกษรและรปภาพประกอบตางๆจำานวนมาก มลกเลนตางๆ โปรแกรมทนยมใชไดแก Microsoft PowerPoint

โ ป ร แ ก ร ม จ ด ก า ร ฐ า น ข อ ม ล (Database) เปนโปรแกรมทใชในการสรางฐาน

Page 6: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยทางดานซอฟแวร 33

ขอมล เพอ จดเกบและจดการฐานขอมลไดอยางสะดวกรวดเรว ไมวาจะเปนการเพม แกไข หรอลบขอมล ตลอดจนการคนหาขอมลตามเงอนไขทกำาหนด นอกจากนโปรแกรมยงสามารถพมพรายงานไดอยางสวยงามอกดวย โปรแกรมทนยมใชไดแก Microsoft Access , FoxPro

โปรแกรมดานงานพมพ (Desktop publishing) เปนโปรแกรมส ำาหรบจดท ำา แผนพบ หน งสอ นามบตร ใบป ร ะ ช า ส ม พ น ธ ต ว อ ย า ง โ ป ร แ ก ร ม เ ช น Adobe PageMaker

โปรแกรมกราฟก (Graphics) เปนโปรแกรมสำาหรบตกแตงภาพ ชวยในการวาดภาพและตกแตงภาพใหสวยงาม เชน Adobe Photoshop , CorelDraw เปนตน

นอกจากยงมโปรแกรมชวยออกแบบ เปนโปรแกรมทใชชวยในการออกแบบงานดานสถาปตยกรรม และวศวกรรม โปรแกรมทนยมใชไดแก AutoCAD ซงสามารถออกแบบงานตาง เชน บาน รถยนต ระบบไฟฟา แผงวงจร เปนตน

โปรแกรมคนหาขอมล เปนโปรแกรมทชวยในการคาหาขอมลจากแหลงขอมลตางๆ บน เครอขายอนเตอรเนต ตวอยางโปรแกรมดานน เชน World Wide Web ซงสามารถดภาพ อานขอความ ฟงเสยง และดวด โอ ภายในเวบไซต นอกจากน World Wide Web ยงมเครองมอทชวยในการคนหาขอมลทต องการได อยางรวดเรว เคร องมอน เรยกวาเคร องค นหา (search engine)

โ ป ร แ ก ร ม ด า น ต ด ต อ ส อ ส า ร (Communication Software) เปนโปรแกรมทใชในการตดตอสอสารกบผอนไดอยางสะดวก รวดเรว และชวยประหยดเวลาและคาใชจายไดดวย เชน ไปรษณยอเลคทรอนกส โปรแกรมในกลมดานการสอสาร ไดแก

- โปรแกรมทชวยในการโอนยายโปรแกรม หรอแฟมขอมลจากแหลงขอมลในเครอขายอนเตอรเนต มายงทเคร องตนเองไดดวย เชน FTP (file transfer protocol)

- โปรแกรมทใชพดคยโตตอบกน เชน ICQ , MS Chat

Page 7: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยสารสนเทศ 34

โปรแกรมอรรถประโยชน เปนโปรแกรมทเรยกใชงานเพอชวยเพมประสทธภาพของเครอง

คอมพวเตอรดแลรกษาความปลอดภ ยและเสถ ยรภาพของเคร องคอมพวเตอร เชนโปรแกรมทชวยในการจดระเบยบขอมลในฮารดดสก (disk defragmentater) โปรแกรมตรวจสอบไวรส (Virus Scan) โปรแกรมบบอดขอมล (Win zip) เปนตน

โปรแกรมดานสาระและบนเทง (edutainment Software) เปนการพฒนาโปรแกรมตางๆ ทบรรจลงในแผนซดรอม สวนใหญมกเปนโปรแกรมทเปนแหลงความรทนาสนใจ เชน โปรแกรมชวยในการเรยนการสอน โปรแกรมพจนานกรม

3.5 ภาษาคอมพวเตอรภาษาเปนตวแทนของการสอสารระหวางสองสงหรอหลาย ๆ สง เพอ

ใหเกดความหมายและความเขาใจตรงกน ในทางคอมพวเตอรนน กตองทำาการพฒนาภาษาทจะสอสารระหวางมนษยกบเครองคอมพวเตอร แตดวยเหตทเครองคอมพวเตอรเปนอปกรณอเลกทรอนกสซงมเฉพาะวงจรการเปดและปด ทำาใหเคร องคอมพวเตอรสอสารโดยใชเลขฐานสองเทานน เรยกภาษาทใชเฉพาะเลขฐานสองในคอมพวเตอรเรยกวา ภาษาเครอง (Machine Language) การทมนษยจะเรยนรภาษาเครองนนยากมาก เพราะนอกจากจะตองศกษาถงอปกรณคอมพวเตอรแลว ยงจะตองศกษาคำาสงและความหมายของคำาสงสำาหรบสงงานอปกรณนนอกดวย ซงจะทำาใหการใชงานคอมพวเตอรเปนเร องยงยาก จงมผคดคนภาษาคอมพวเตอรขนเพอท ำาหนาทในการตดตอสอสารระหวางเครองคอมพวเตอรกบมนษย โดยผใชจะสามารถตดตอกบเคร องคอมพวเตอรโดยผานทาง ภาษาคอมพวเตอร (Computer Programming Language)

3.5.1 ชนดของภาษาคอมพวเตอร จากการทมภาษาจำานวนมากมายนน ทำาใหตองกำาหนดระดบของภาษา

คอมพวเตอร เพอชวยในการแบงประเภทของภาษาเหลานน การกำาหนดวาเปนภาษาระดบตำาหรอภาษาระดบสงจะขนกบวาภาษานนใกลเคยงกบเครองคอมพวเตอร ( ใกลเคยงกบรหส 0 และ 1 เรยกวา ภาษาระดบตำา) หรอวา

Page 8: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยทางดานซอฟแวร 35

ใกลเคยงกบภาษาทมนษยใช (ใกลเคยงกบภาษาองกฤษ เรยกวา ภาษาระดบสง) ซงจะแบงระดบของภาษาคอมพวเตอรออกเปน 5 ระดบ คอ

1. ภาษาเครอง (Machine Language) กอนป ค.ศ. 1952 มภาษาคอมพวเตอรเพยงภาษาเดยวเทานน คอ

ภาษาเคร อง (Machine Language) ซงเปนภาษาทข นอยก บชนดของเครองคอมพวเตอร หรอหนวยประมวลผลทใช นนคอ แตละเครองจะมรปแบบของคำาสงเฉพาะของตนเอง ซงนกคำานวณและนกเขยนโปรแกรม ในสมยกอนตองรจกวธทจะรวมตวเลขเพอแทนคำาสงตาง ๆ ทำาใหการเขยนโปรแกรมยงยากมาก นกคอมพวเตอรจงไดพฒนาภาษาแอสเซมบลขนมาเพอใหสามารถเขยนโปรแกรมไดงายขน

การกำาหนดวาเปนภาษาระดบตำานนใกลเคยงกบเคร องคอมพวเตอร โดยใชรหส 0 และ 1

2. ภาษาแอสเซมบล (Assembly Language) ตอมาในป ค.ศ. 1952 ไดมการพฒนาโปรแกรมภาษาระดบตำาตวใหม

ชอภาษาแอสเซมบล (Assembly Language) โดยทภาษาแอสเซมบลใชรหสเปนคำาแทนคำาสงภาษาเคร อง ทำาใหนกเขยนโปรแกรมสามารถเขยนโปรแกรมไดงายขน ถงแมวาการเขยนโปรแกรมจะยงไมสะดวกเทากบการเขยนโปรแกรมภาษาอน ๆ ในสมยน แตถาเทยบในสมยนนกถอวา เปนการพฒนาไปสยคของการเขยนโปรแกรมแบบใหม คอใชสญลกษณแทนเลข 0 และ 1 ของภาษาเคร อง ซงสญลกษณทใชจะเปนคำาสงสน ๆ ทจำาไดงาย เรยกวา นวมอนกโคด (Mnemonic Code) เชน

สญลกษณนวมอนกโคด ความหมาย A การบวก (Add)

C การเปรยบเทยบ (Compare)MP การคณ (Multiply)STO ก า ร เ ก บ ข อ ม ล ใ น ห น ว ย ค ว า ม จ ำา

(Store)

3. ภาษาระดบสง (High - level Language) ในป ค.ศ. 1960 ไดมการพฒนา ภาษาระดบสง (High - level

Language) ขน ภาษาระดบสงจะใชคำาในภาษาองกฤษแทนคำาสงตาง ๆ รวมทงสามารถใชนพจนทางคณตศาสตรไดดวย ทำาใหนกเขยนโปรแกรม

Page 9: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยสารสนเทศ 36

สามารถใชเวลามงไปในการศกษาถงทางแกปญหาเทานน ไมตองเปนกงวลวาคอมพวเตอรจะทำางานอยางไรอกตอไป

ภาษาระด บสงน ถ อว า เป น ภาษาย คท 3 (Third-generation language) ซงทำาใหเกดการประมวลผลขอมลเพมมากขนอยางมหาศาล ระหวางป ค.ศ. 1960 – 1670 และมผหนมาใชคอมพวเตอรกนมากขน โดยสงเกตจากเคร องเมนเฟรมจากจำานวนรอยเคร องเพมขนเปนหมนเคร อง อยางไรกตาม ภาษาระดบสงกยงคงตองการตวแปลภาษาใหเปนภาษาเครองเพอสงใหเครองทำางานตอไป ตวแปลภาษาทนยมใชงานกนอยโดยทวไปจะเปนแบบคอมไพเลอร ซงแตละภาษากมคอมไพเลอรไมเหมอนกน รวมทงคอมไพเลอรแตละตวกจะตางกนไปบนเคร องแตละชนดดวย เชนถาเขยนโปรแกรมภาษา Cobol บนเครองไมโครคอมพวเตอร กจะตองเลอกใชคอมไพเลอร ซงการทำางานบนเครองไมโครคอมพวเตอร ซงการเขยนโปรแกรมภาษาใดภาษาหนงบนเครองทตางกนอาจจะแตกตางกนได เพราะคอมไพเลอรทใชตางกนนนเอง

ภาษาคอมพวเตอรบางภาษาไดถกออกแบบมาใหใชแกปญหางานเฉพาะบางอยาง เชน ควบคมหนยนต การสรางภาพกราฟฟก เปนตน แตภาษาคอมพว เตอร โดยมากจะมความยดหย น ให ใช ง านท ว ๆ ไป ได เชน ภาษา Basic , ภาษา Cobol หรอ ภาษา Fortran เปนตน นอกจากนยงมภาษา C ทไดรบความนยมมากเชนกน

4. ภาษาระดบสงมาก (Very high-level Language) เปนภาษายคทส (Fourth-generation Language) หรอ 4GLs

จะเปนภาษาทใชเขยนโปรแกรมไดสนกวาภาษาในยคกอน ๆ การทำางานบางอยางสามารถใชเพยง หา ถง สบบรรทดเทานน ในขณะทถาเขยนดวยภาษา Cobol อาจตองใชถ งรอยบรรทด โดยพนฐานแลว ภาษาในยคทส น ม คณสมบตทแยกจากภาษาในยคกอน ๆ อยางชดเจน กลาวคอ ภาษาในยคกอนนนใชหลกการของ การเขยนโปรแกรมแบบโพรซเยอร (Procedural Language) ใ น ข ณ ะ ท ภ า ษ า ย ค ท ส จ ะ เ ป น แ บ บ ไ ม ใ ช โ พ ร ซ เ ย อ ร (Nonprocedural Language) ผเขยนโปรแกรมเพยงแตกำาหนดวาตองกำาหนดวาตองการใหโปรแกรมทำาอะไรบางกสามารถเขยนโปรแกรมไดทนท

Page 10: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยทางดานซอฟแวร 37

โดยไมตองทราบวาทำาไดอยางไร ทำาใหการเขยนโปรแกรมสามารถทำาไดงายและรวดเรวขอดของภาษาในยคทส

4.1 การเขยนโปรแกรมจะเนนทของงานวาตองการอะไร ไมสนใจวาจะทำาไดอยางไร4.2 ชวยพฒนาเนองาน เพราะเขยนและแกไขโปรแกรมไดงาย4.3 ไมตองเสยเวลาอบรมผเขยนโปรแกรมมากนก ไมวาผทจะเขยน

โปรแกรมนนมความรดานการเขยนโปรแกรมหรอไม4.4 ผเขยนโปรแกรมไมตองทราบถงฮารดแวรของเคร องและโครงสรางโปรแกรม

ภาษาในยคทสน ยงมภาษาทใชส ำาหรบเรยกดขอมลจากฐานขอมลได เรยกวา ภาษาเรยกคนขอมล (Query Language) โดยปกตแลวการเกบขอมลลงในฐานขอมล และการแสดงรายงานจากฐานขอมล จะตองมการวางแผนไวลวงหนา แตบางคร งอาจมการเรยกดขอมลพเศษทไมไดมการวางแผนไว ถาผใชเรยนรภาษาเรยกคนขอมลกจะขอดรายงานตาง ๆ นอกเหนอจากทไดมการวางแผนไวไดโดยใชเวลาไมมากนก ภาษาเรยกคนขอมลทเป นมาตรฐานเรยกวา SQL (Structured Query Language) และนอกจากนยงมภาษา Query By Example หรอ QBE ทไดรบความนยมในการใชงานมากเชนกน

5. ภาษาธรรมชาต (Natural Language) เป นภาษายคทหา (Fifth generation language) หรอ 5GLs

ธรรมชาตหมายถง ธรรมชาตของมนษย คอไมตองสนใจถงคำาสงหรอลำาดบของขอมลทถกตอง ผใชเพยงแตพมพสงทตองการลงในเครองคอมพวเตอรเปนคำาหรอประโยคตามทผใชเขาใจ ซงจะทำาใหมรปแบบของคำาสงหรอประโยคทแตกตางกนออกไปไดมากมาย เพราะผใชแตละคนอาจจะใชประโยคทตางกน ใช ค ำาศ พท ต างก น หรอแมกระท งบางคนอาจจะ ใช ศ พท แสลงก ได คอมพวเตอรจะพยายามแปลคำาหรอประโยคเหลานนเพอทำาตามคำาสง แตถาไมสามารถแปลใหเขาใจได กจะมคำาถามกลบมาถามผใชเพอยนยนความถกตอง ภาษาธรรมชาตจะใชระบบ ฐานความร(Knowledge base system) ชวยในการแปลความหมายของคำาสงตาง ๆ

Page 11: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยสารสนเทศ 38

3.5.2 การเลอกใชภาษาคอมพวเตอรเนองจากในปจจบนทก ๆ ปจะมภาษาคอมพวเตอรเกดขนมากมาย และ

ภาษาตาง ๆ จะมจดดและจดดอยแตกตางกนไป ผใชจงจำาเปนตองทำาการคดเลอกภาษาทจะนำามาใชงานอยางระมดระวง เนองจากเมอมการศกษาและพฒนาซอฟตแวรดวยภาษาใดภาษาหนงแลว การเปลยนไปใชภาษาอนในภายหลงจะเปนเรองทยากลำาบากอยางยง ทงในเรองของคาใชจายและเวลาทตองสญเสยไปรวมทงปญหาของบคลากรทจะตองศกษาหาความชำานาญใหมอกดวย

ในการเลอกภาษาคอมพวเตอรทจะนำามาใช สงทควรพจารณาคอ1. ในหนวยงานหนง ๆ ควรจะใชภาษาคอมพวเตอรภาษาเดยวกน เพราะ

การดแลรกษาซอฟตแวรทพฒนาขน ตลอดจนการจดหาบคลากรจะกระทำาไดงายกวา

2. ในการเลอกภาษาควรเลอกโดยดจากคณสมบตหรอขอดของภาษานน ๆ เปนหลก

3. ถาโปรแกรมทเขยนขนนนตองนำาไปทำางานบนเครองตาง ๆ กน ควรเลอกภาษาทสามารถใชงานไดบนเคร องทกเคร อง เพราะจะทำาใหเขยนโปรแกรมเพยงครงเดยวเทานน

4. ผใชควรจำากดภาษาคอมพวเตอรทจะใช ไมควรตดตงตวแปลภาษาคอมพวเตอรทกภาษาบนเครองทกเครอง

5. ภาษาคอมพวเตอรทเลอกใช จะถกจำากดโดยนกเขยนโปรแกรมทมอย เพราะควรใชภาษาทมผรอยบาง

6. บางครงในงานทไมยงยากนก อาจใชภาษาคอมพวเตอรพนฐาน เชน ภาษา Basic เพราะเขยนโปรแกรมไดงายและรวดเรว รวมทงมตดตงอยบนเครองไมโครคอมพวเตอรสวนมากอยแลว

3.5.3 ตวอยางภาษาคอมพวเตอรปจจบนนมภาษาคอมพวเตอรใหเลอกใชมากมายหลายภาษา แตละ

ภาษากถกออกแบบมาใหใชกบงานดานตาง ๆ กน ตวอยางเชน บางภาษากออกแบบมาใหใชแกปญหาทางธรกจ บางภาษากใชในการคำานวณทซบซอน

Page 12: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยทางดานซอฟแวร 39

ตวอยางการเลอกใชภาษาคอมพวเตอรใหเหมาะสมกบการใชงานนะครบ

ภาษาคอมพวเตอร การใชงาน

BASIC (Beginner's All-purpose Symbolic Instruction Code)

ภาษานเหมาะสำาหรบผเรมศกษา การเขยนโปรแกรมคอมพวเตอร

COBOL (Common Business Oriented Language)

นยมใชในงานธรกจบนเครองขนาดใหญ

FORTRAN (FORmula TRANslator)

ใชสำาหรบงานดานคณตศาสตร วทยาศาสตร วศวกรรมศาสตร

Pascal ( ชอของ Blaise Pascal) ใชในวทยาลย และมหาวทยาลย

C เหมาะสำาหรบนกเขยนโปรแกรม และใชในวทยาลย มหาวทยาลย

C++ ภาษานใชสำาหรบผผลตซอฟตแวร

ALGOL (ALGOrithmic Language)

ภาษานเปนภาษาสำาหรบงานทางวทยาศาสตร และตอมามการพฒนาตอเปนภาษา PL/I และ Pascal

APL (A Programming Language)

ภาษานใชออกแบบโดยบรษท IBM ใน

Page 13: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยสารสนเทศ 40

ป ค.ศ. 1968 เปนภาษาทโตตอบกบผใชทนท เหมาะสำาหรบจดการกบกลมของขอมลทสมพนธกนในรปแบบตาราง

LISP (LIST Processing) ภาษานถกออกแบบมาใหใชกบขอมลทไมใชตวเลขซงอาจเปนสญลกษณพเศษหรอตวอกษรกไดดวย

LOGO ภาษานนยมใชในโรงเรยน เพอสอนทกษะการแกปญหาใหกบนกเรยน

PL/I (Programming Language One)

ภาษานถกออกแบบมาใหใช กบงานทงทางดานวทยาศาสตร และธรกจดวยครบ

PROLOG (PROgramming LOGIC)

ภาษาน นยมใชมากในงานดานปญญาประดษฐ จดเปนภาษาธรรมชาตภาษาหนงดวย

RPG (Report Program Generator)

ภาษาน ถกออกแบบมาใหใชกบงานทางธรกจ จะมคณสมบตในการสรางโปรแกรม สำาหรบพมพรายงานทยดหยนมากทเดยว

Page 14: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยทางดานซอฟแวร 41

ซงจะกลาวโดยสรปถงการใชงานของแตละภาษาดงน

ภาษา BASIC เปนภาษาทใชงาย และตดตงอยบนเคร องไมโครคอมพวเตอรสวนมาก ใชสำาหรบผเร มตนศกษาการเขยนโปรแกรมและผทเขยนโปรแกรมเปนงานอดเรก นยมใชในการเขยนโปรแกรมสน ๆ

ภาษา BASIC รนแรกใช Interpreter เปนตวแปลภาษา ทำาใหเขยนโปรแกรม ทดสอบ และแกไขโปรแกรมไดอยางงายดาย แตกทำางานไดชา ทำาใหผทเขยนโปรแกรมเชยวชาญแลวไมนยมใชงาน แตปจจบนนมภาษา BASIC รนใหมออกมาซงใช Compiler เปนตวแปลภาษา ทำาใหทำางานไดคล องต วข น เช น Microsoft’s Quick Basic และ Visual Basic เปนตน

ภาษา COBOL เป นภาษาระด บสงท ออกแบบมาตงแตป ค.ศ. 1960 นยมใชสำาหรบการแกปญหาทางดานธรกจ เชน การจดเกบ เรยกใช และประมวลผลทางดานบญช ตลอดจนทำางานดวยการควบคมสนคาคงคลง การรบจายเงนเปนตน

คำาสงของ COBOL จะคลายกบภาษาองกฤษทำาใหสามารถอานและเขยนโปรแกรมไดไมยากนก ในยคแรก ๆ ภาษา COBOL จะไดรบความนยมบนเครองระดบ เมนเฟรม แตปจจบนนจะมตวแปลภาษา COBOL ทใชบนเครองไมโครคอมพวเตอรดวย รวมทงมภาษา COBOL ทไดรบการออกแบบตามแนวทางเชงวตถ (Object Oriented) เรยกวา Visual COBOL ซงจะชวยใหการเขยนโปรแกรมสามารถทำาไดงายขน และสามารถนำาโปรแกรมทเขยนไวมาใชในการพฒนางานอน ๆ อก

ภาษา FORTRAN เป นภาษาระดบสงท ได รบการพฒนาโดยบ ร ษ ท IBM ต ง แ ต ป ค .ศ . 1957 ย อ ม า จ า ก ค ำา ว า FORmula TRANslator ซงถอวาเปนการกำาเนดของภาษาระดบสงภาษาแรก นยมใชส ำาหรบงานท มการค ำานวณมาก ๆ เชน งานทางด านคณตศาสตร , วทยาศาสตร และวศวกรรมศาสตร เปนตน

ภาษา Pascal เปนภาษาระดบสงทเอออำานวยใหผเขยนโปรแกรมไดอยางมโครงสราง และเขยนโปรแกรมไดงายกวาภาษาอน นยมใชบนเครองไมโครคอมพวเตอร เปนภาษาส ำาหรบการเรยนการสอน และการเขยนโปรแกรมประยกต ตาง ๆ

Page 15: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยสารสนเทศ 42

ภาษาปาสคาลมต วแปลภาษาท งท เป นแบบ Interpreter และ Compiler โดยจะมโปรแกรมเทอรโบปาสคาล (Turbo Pascal) ทไดรบความนยมอยางสงทงในวงการศกษาและธรกจ เนองจากไดรบการปรบปรงใหตดขอเสยของภาษาปาสคาลรนแรก ๆ ออกไป

ภาษา C และ C++ ภาษา C ถกพฒนาขนโดย Dennis Ritchie ในป ค.ศ. 1972 ทหองปฏบตการเบลลของบรษท AT&T เปนภาษาทใชเขยนระบบปฏบตการ UNIX ซงเปนระบบปฏบตการทไดรบความนยมคกบ ภาษาซ และมการใชงานอยในเครองทกระดบ

ภาษา C เปนภาษาระดบสงทไดรบความนยมในหมนกเขยนโปรแกรมเปนอยางมาก เนองจากภาษา C เปนภาษาทรวมเอาขอดของภาษาระดบสงในเรองของความยดหยนและไวยากรณทงายตอการเขาใจ กบขอดของภาษาแอสเซมบล ในเร องของประสทธภาพและความเรวในการท ำางาน ทำาให โปรแกรมทพฒนาดวยภาษาซ ทำางานไดรวดเรวกวาโปรแกรมทเขยนดวยภาษาระดบสงอน ๆ ในขณะทการพฒนาและแกไขโปรแกรมสามารถทำาไดงายเชนเดยวกบภาษาระดบสง ทว ๆไป นอกจากน ภาษา C ยงไดมการพฒนากาวหนาขนไปอก โดยทำาการประยกตแนวความคดของโปรแกรมเชงวตถเขามาใชในภาษา ทำาใหเกดเปนภาษาใหมคอ C++ (++ ในความหมายของภาษาซ คอ การเพมขนอกหนงนนเอง) ซงเปนภาษาทไดรบความนยมใชในงานพฒนาโปรแกรมอยางมาก

3.5.4 ภ า ษ า โ ป ร แ ก ร ม เ ช ง ว ต ถ (Object-Oriented Programming Language)

ภา ษ า โ ป ร แ ก ร ม เ ช ง ว ต ถ (Object-Oriented Programming Language) ตางจากการเขยนโปรแกรมโดยทว ๆ ไป โดยการเขยนโปรแกรมตามปกตนน ผเขยนโปรแกรมจะพจารณาถงขนตอนการแกปญหาของโปรแกรมเหลานน แตเทคนค ของ OOP จะมองเปน วตถ (Object) เชน กลองโตตอบ (Dialog box) หรอไอคอนบนจอภาพ เปนตน โดยออบเจคใดออกเจคหนงจะทำางานเฉพาะทแนนอน ถาผใชตองการทำางานชนดนนกสามารถคดลอกไปใชในโปรแกรมทตองการไดทนท

หลกการของการโปรแกรมเชงวตถเชงวตถไดรบการพฒนามาเปนเวลานานแลว โดยภาษาเร มแรก คอ Simula-67 ไดรบการพฒนาขนตงแตป 1967 และตอมากมภาษา Smalltalk ซงเปนภาษาเชงวตถเตมรปแบบ

Page 16: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยทางดานซอฟแวร 43

นอกจากน หลกการของ OOP ยงไดรบการนำาไปเสรมเขากบภาษาโปรแกรมในยคท 3 คอ C จนเกดเปนภาษาใหมคอ C++ รวมทงมการเสรมเขากบ การโปรแกรมแบบภาพ (Visual programming) ทำาใหเก ด Visual Basic ซ งมรากฐานมาจาก Basic และ Delphi ซ งมรากฐานมาจาก Pascal นอกจากน ในปจจบนจะมภาษาทใชหลกการโปรแกรมเชงวตถตวใหมลาสด ซงกำาลงมาแรงและมแนวโนมวาจะไดรบความนยมอยางสงคกบอนเตอรเนต นนกคอ ภาษา JAVA

ภาษาทออกแบบมาสำาหรบ OOP ก า ร พ ฒ น า โ ป ร แ ก ร มประยกตทม การตดตอกบผใชแบบกราฟฟก (Graphic User Interface หรอ GUI) เชน Microsoft Windows และ World Wide Web จะสามารถทำาไดงาย รวดเรวและเสยคาใชจายไมมากนก ดวยเครองมอในการพฒนาทใชหลกการเของ OOP ซงในปจจบนจะมเครองมอประเภทนทไดรบความนยมอยางมากอย 2 ภาษา คอ Visual Basic และ JAVA

Visual Basic ภาษา BASIC พฒนาโดย Prof. Kemeny และ Kutz ทเมอง Dartmouth ในป ค.ศ. 1960 โดยมจดประสงคสำาหรบใชสอนในหองคอมพวเตอร เมอมการพฒนาเครองไมโครคอมพวเตอรขนในยคแรก ๆ จะมหนวยความจำาไมเพยงพอทจะทำางานกบโปรแกรมภาษาอน ๆ เชน FORTRAN และ COBOL เพราะขนาดของตวแปลภาษาซ งตองใชหนวยความจำาสงมาก แตเครองเหลานนสามารถใชภาษา BASIC ได เพราะภาษา BASIC ใชตวแปลภาษาทมขนาดเลก และตวแปลภาษานนไมตองเกบอยในหนวยความจำาทงหมดกสามารถทำางานได เปนเหตใหภาษา BASIC ไดรบความนยมบนเครองไมโครคอมพวเตอร ไมวาเครองไมโครคอมพวเตอรจะไดรบการพฒนาสงขนในเรองของความเรวและหนวยความจำาเทาใดกตาม แตภาษา Visual Basic จะแตกตางจากภาษา BASIC โดยสนเชง ทงในแงของหนวยความจำาทตองการ และวธการพฒนาโปรแกรม

ภาษา Visual Basic ได รบการออกแบบและพฒนาโดย บรษ ท Microsoft มจดประสงคในการใชเปนเคร องมอพฒนาโปรแกรมทมการตดตอกบผใชเปนแบบกราฟก โดยจะมเครองมอตาง ๆทชวยในการพฒนาโปรแกรมอยางรวดเรว หรอนยมเรยกวา RAD (Rapid Application Development) ปจจบนนมผใชงานภาษา Visual Basic เปนจำานวนมาก โดยภาษา Visual Basic ได รบการออกแบบใหท ำางานบนระบบวนโดว

Page 17: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยสารสนเทศ 44

เวอรชนตาง ๆ จากไมโครซอฟต เชน Visual Basic 3 ทำางานบนระบบวนโดว 3.11 สวน Visual Basic 4 และ 5 ทำางานบนระบบวนโดว 95 เปนตน

ตอมาในป ค.ศ. 2000 บรษทไมโครซอฟทไดปรบกระบวนทศนของ องคกร ใหมงไปยงเครอขายอนเตอรเนต ไมโครซอฟทไดประดษฐ .NET

Framework และภาษาตางๆ หลายภาษาเชน VB.NET, C# และ J# โดย ทง .NET Framework เองและภาษาสำาหรบ .NET มความเปน OOP

อยางสดโตงจากทกลาวมาจะวาเหนแนวโนมในการสรางซอฟทแวรกำาลงมงไปยง

OOP มากขนเรอย จงนบเปนการดหากนกเขยนโปรแกรมจะเรยนรวธคด แบบ OOP จนสามารถเขยนโปรแกรมภาษาใดภาษาหนงทสนบสนน OOP

อยางเตมรปแบบ เนองจากระบบปฏบตการวนโดวสของบรษทไมโครซอฟท ถกใชอยางกวางขวางมาก

ภาษาทเปนภาษาหลกของ .NET Framework คอภาษา C# ซง บดนไดกลายเปนภาษาตามมาตรฐานของ ISO และ ECMA แลว ดงนนการ

เรยนรหลกการ OOP โดยใชภาษา C# เปนเครองมอจงนาจะเปนประโยชน ไมเฉพาะแตในระบบปฏบตการ Windows หรอ .NET เทานน แตอาจนำาไป ใชไดกบระบบปฏบตการอนดวย ( เชน Linux) อกทงยงเปนวธฝกฝนการคด

แบบ OOP ทดวธหนงJAVA ภาษาใหมทมาแรงทสดในปจจบน คงจะไมมภาษาไหนท

เทยบไดกบภาษา จาวาซงไดรบการพฒนาขนโดยบรษท ซนไมโครซสเตมส ในป 1991 โดยมเปาหมายทจะสรางผลตภณฑอเลกทรอนกสส ำาหรบผบรโภคทงายตอการใชงาน มคาใชจายตำา ไมมขอผดพลาด และสามารถใชกบเครองใด ๆ กได ซงสงเหลานกไดกลายเปนขอดของจาวาทเหนอกวาภาษาอน ๆโดยเฉพาะอยางยง การทโปรแกรมซงเขยนขนดวยจาวาสามารถนำาไปใชกบเครองตาง ๆ โดยไมตองทำาการคอมไพลโปรแกรมใหม ทำาใหไมจำากดอยกบเครองหรอโอเอสตวใดตวหนง แมวาการใชงานจาวาในชวงแรกจะจำากดอยก บ World Wide Web (WWW) และ Internet แตในป จจ บนได ม การนำาจาวาไปประยกตใชกบงานดานซอฟตแวรตาง ๆ อยางมากมาย ตงแตซอฟตแวรอรรถประโยชน (Utility) จนกระทงซอฟตแวรขนาดใหญ เชนโปรแกรมชดจากบรษ ท Corel ซ งประกอบด วยโปรแกรมหล ก คอ โปรแกรมเวรดโปรเซสซง สเปรดชต พรเซนเตชน ทเขยนขนดวยจาวาทงหมด

Page 18: บทที่ 3 : เทคโนโลยีทางด้านซอฟแวร์lms.mju.ac.th/courses/302/locker/คพ 203/บท... · Web viewภาษา BASIC พ ฒนาโดย

เทคโนโลยทางดานซอฟแวร 45

จาวายงสามารถนำาไปใชเปนภาษาสำาหรบอปกรณแบบผงตาง ๆ เชน โทรศพท และอปกรณขนาดมอถอแบบตาง ๆ เปนตน รวมทงยงไดรบความน ยมน ำาไปใชก บอปกรณท ใชส ำาหรบ เข าส อ นเตอร เน ตโดยไมต องใช คอมพวเตอร