วันพุธที่ 24 มิถุนายน พ.ศ. 2558

Week 4 : ภาษาโปรแกรมคอมพิวเตอร์ (JAVA)

ภาษา JAVA
สวัสดีค่าาาทุกคนที่เข้ามาชมบล็อกทุกคน  นี่ก็เป็นบล็อกครั้งที่ 4 แล้วที่เข้ามาเขียนบล็อกและในครั้งนี้นะคะ เดี๊ยนจะมาทำความรู้จักกับภาษาจาวา ซึ่งพอพูดถึงจาวาเพื่อนๆก็จะคิดถึงเกมส์ต่างๆ แต่เพื่อนๆอาจจะพึ่งรู้ว่าจาวานั้นเป็นภาษาที่ไว้เขียนโปรแกรมไม่ได้เขียนเกมส์ และในครั้งนี้ผมจะพาทุกคนเข้ามารู้จักภาษาจาวากันนะคคะ
พร้อมกันรึยังงงคะ
ถ้าพร้อมแล้วก็ไปกันเลยยยยยยยยยยยยยยยยค่ะ

Java คืออะไรกันนะ ???
Java หรือ Java programming language คือภาษาโปรแกรมเชิงวัตถุ พัฒนาโดย เจมส์ กอสลิง และวิศวกรคนอื่นๆ ที่บริษัท ซัน ไมโครซิสเต็มส์ ภาษานี้มีจุดประสงค์เพื่อใช้แทนภาษาซีพลัสพลัส C++ โดยรูปแบบที่เพิ่มเติมขึ้นคล้ายกับภาษาอ็อบเจกต์ทีฟซี (Objective-C) แต่เดิมภาษานี้เรียกว่า ภาษาโอ๊ก (Oak) ซึ่งตั้งชื่อตามต้นโอ๊กใกล้ที่ทำงานของ เจมส์ กอสลิง แล้วภายหลังจึงเปลี่ยนไปใช้ชื่อ จาวาซึ่งเป็นชื่อกาแฟแทน จุดเด่นของภาษา Java อยู่ที่ผู้เขียนโปรแกรมสามารถใช้หลักการของ Object-Oriented Programming มาพัฒนาโปรแกรมของตนด้วย Java ได้
ภาษา Java เป็นภาษาสำหรับเขียนโปรแกรมที่สนับสนุนการเขียนโปรแกรมเชิงวัตถุ ( OOP : Object-Oriented Programming) โปรแกรมที่เขียนขึ้นถูกสร้างภายในคลาส ดังนั้นคลาสคือที่เก็บเมทอด (Method) หรือพฤติกรรม (Behavior) ซึ่งมีสถานะ (State) และรูปพรรณ (Identity) ประจำพฤติกรรม (Behavior)

 ดังนั้น Java  คือภาษาคอมพิวเตอร์ สำหรับเขียนโปรแกรมเชิงวัตถุ นั่นเองค่ะ


แล้วภาษา JAVA มีประวัติความเป็นมายังไงกัน ??
ภาษาจาวา เป็นภาษาโปรแกรมเชิงวัตถุที่พัฒนาขึ้นโดย  “เจมส์ กอสลิง”   และทีมวิศวกรของเขา ซึ่งบริษัทซันไมโครซิสเต็ม ต้องการนำภาษาจาวามาใช้แทนภาษา  C++  ชื่อของ จาวามาจากชื่อกาแฟที่ทีมวิศวกรของซันดื่มตอนที่ร่วมกันพัฒนาภาษาจาวาขึ้นมา  Java  ถูกคิดค้นและสร้างโดย บริษัท Sun Microsystems ซึ่งเป็นบริษัทผู้ขายระบบ Unix ที่มีชื่อว่า Solaris ซึ่งจุดเด่นของภาษา Java อยู่ที่ผู้เขียนโปรแกรมสามารถใช้หลักการของ Object-Oriented Programming มาพัฒนาโปรแกรมของตนด้วย Java ได้ พัฒนาขึ้นโดยทีมวิจัยของ บริษัท ซันไมโครซิสเต็ม (Sun Microsystems)พัฒนามาจากโครงการที่ต้องการพัฒนาระบบซอฟต์แวร์เพื่อควบคุมเครื่องใช้ไฟฟ้าขนาดเล็กภายในบ้านชื่อเดิมคือภาษา Oak ต่อมาเปลี่ยนชื่อเป็นภาษาจาวาภาษาจาวาเริ่มเป็นที่นิยมแพร่หลายในปี ค.ศ. 1995ภาษาจาวาเป็นภาษาที่ไม่ขึ้นกับแพลตฟอร์ม (platform independent)JDK 1.0 ประกาศใช้เมื่อปี1996JDK เวอร์ชันปัจจุบันคือ Java 2
นี่ก็คือ : เจมส์ กอสลิง  ผู้ให้กำเนิดภาษา JAVA


วิวัฒนาการของภาษาจาวาจากรุ่นแรกถึงจาวา1.5
1.  (ค.ศ. 1996) — ออกครั้งแรกสุด
2.  (ค.ศ. 1997) — ปรับปรุงครั้งใหญ่ โดยเพิ่ม Inner Class
3.  (4 ธันวาคม ค.ศ. 1998) — รหัส Playground ด้านจาวาแพลตฟอร์มได้รับการเปลี่ยนแปลงครั้งใหญ่ใน API และ JVM (API สำคัญที่เพิ่มมาคือ Java Collections Framework และ Swing; ส่วนใน JVM เพิ่ม JIT Compiler) แต่ตัวภาษาจาวานั้น เปลี่ยนแปลงเพียงเล็กน้อย (เพิ่มคีย์เวิร์ด strictfp) และทั้งหมดถูกเรียกชื่อใหม่ว่า จาวา 2″ แต่ระบบเลขรุ่นยังไม่เปลี่ยนแปลง
4.  (8 พฤษภาคม ค.ศ. 2000) — รหัส Kestrel แก้ไขเล็กน้อย
5.  (13 กุมภาพันธ์ ค.ศ. 2002) — รหัส Merlin เป็นรุ่นที่ถูกใช้งานมากที่สุดในปัจจุบัน (ขณะที่เขียน ค.ศ. 2005)
6.  (29 กันยายน ค.ศ. 2004) — รหัส Tiger (เดิมทีนับเป็น 1.5) เพิ่มคุณสมบัติใหม่ในภาษาจาวา เช่น Annotations ซึ่งเป็นที่ถกเถียงกันว่านำมาจากภาษาซีชาร์ป ของบริษัทไมโครซอฟท์, Enumerations, Varargs, Enhanced for loop, Autoboxing, และที่สำคัญคือ Generics

การพัฒนาการในช่วงเวลาต่าง ๆ
ถูกพัฒนาตั้งแต่ปี 1991 โดยบริษัท Sun Microsystems ซึ่งเป็น ส่วนหนึ่งของ Green Project
Write Once Run Anywhere
ค.ศ.1991
บริษัท ซันไมโครซิสเต็ม (Sun Microsystems) ได้ทำการวิจัยเพื่อพัฒนาซอฟต์แวร์ที่ใช้ควบคุมอุปกรณ์เล็กทรอนิคส์ขนาดเล็ก ซึ่งได้ผลลัพธ์ที่สำคัญคือ ภาษาโอ๊ค (Oak)
ค.ศ.1993
ภาษาโอ๊คได้ถูกปรับปรุงใหม่เพื่อใช้ในการสร้างเว็บแอพพลิเคชั่น (Web Application) พร้อมกับสร้างเว็บเบราว์เซอร์ (Web Browser) ที่รองรับ ชื่อว่าเว็บรันเนอร์ (Web Runner)
ค.ศ.1995
บริษัทซันได้เปิดตัวภาษาจาวา (Java) (ภาษาโอ๊คเดิม) พร้อมกับเว็บเบราว์เซอร์ ที่รองรับภาษานี้ ชื่อว่า ฮอตจาวา (HotJava) (WebRunner เดิม)
ได้รับการสนับสนุนจากบริษัทใหญ่ทั้งเน็ตสเคบ (Netscape), ไมโครซอฟต์ (Microsoft), และ ไอบีเอ็ม (IBM)
บริษัทซัน ได้เริ่มแจกจ่าย Java development Kit (JDK) ซึ่งเป็นชุดพัฒนาโปรแกรมภาษาจาวาในอินเทอร์เน็ต



การโปรแกรมเชิงวัตถุ (OOP = Object-Oriented Programming)
การเขียนโปรแกรมที่ประกอบด้วยกลุ่มของวัตถุ(Objects) แต่ละวัตถุจะจัดเป็นกลุ่มในรูปของคลาส ซึ่งแต่ละคลาสอาจมีคุณสมบัติ การปกป้อง (Encapsulation) การสืบทอด (Inheritance) การพ้องรูป (Polymorphism)

แนวคิดของการโปรแกรมเชิงวัตถุ (OOP Concepts)
1. การปกป้อง (Encapsulation)
การรวมกลุ่มของข้อมูล และกลุ่มของโปรแกรม เพื่อการปกป้อง และเลือกตอบสนอง
2. การสืบทอด (Inheritance)
ยอมให้นำไปใช้ หรือเขียนขึ้นมาทดแทนของเดิม
3. การพ้องรูป (Polymorphism) = Many Shapes
– Overloading มีชื่อโปรแกรมเดียวกัน แต่รายการตัวแปร (Parameter List) ต่างกัน
– Overriding มีชื่อโปรแกรม และตัวแปรเหมือนกัน เพื่อเขียน behavior ขึ้นมาใหม่

คุณลักษณะเด่นของภาษา Java
–  ภาษา Java เป็นภาษาที่สนับสนุนการเขียนโปรแกรมเชิงวัตถุแบบสมบูรณ์
–  โปรแกรมที่เขียนขึ้นโดยใช้ภาษา Java จะมีความสามารถทำงานได้ในระบบปฏิบัติการที่แตกต่างกัน ไม่จําเป็นต้องดัดแปลงแก้ไขโปรแกรม เช่น หากเขียนโปรแกรมบนเครื่อง Sun โปรแกรมนั้นก็สามารถถูก compile และ run บนเครื่องพีซีธรรมดาได้
–  เมื่อเปรียบเทียบ code ของโปรแกรมที่เขียนขึ้นโดยภาษา Java กับ C++ พบว่า โปรแกรมที่เขียนโดยภาษา Java จะมีจํานวน code น้อยกว่าโปรแกรมที่เขียนโดยภาษา C++ ถึง 4 เท่า และใช้เวลาในการเขียนโปรแกรม น้อยกว่าประมาณ 2 เท่า
–  Java มี security ทั้ง low level และ high level ได้แก่ electronic signature, public andprivate key management, access control และ certificatesของภาษาจาวา


จุดเด่นของภาษาจาวาครับ
–  ความง่าย (simple)
–  ภาษาเชิงออปเจ็ค (object oriented)
–  การกระจาย (distributed)
–  การป้อ้องกันการผิดพลาด (robust)
–  ความปลอดภัย (secure)
–  สถาปัตัตยกรรมกลาง (architecture neutral)
–  เคลื่อนย้ายง่าย (portable)
–  อินเตอร์พ์พรีต (interpreted)
–  ประสิทธิภาพสูง (high performance)
–  มัลติเธรด (multithreaded)
–  พลวัต (dynamic)
ข้อดีข้อเสียของภาษา JAVA มีอะไรบ้าง???
ข้อดีของ ภาษา Java
ภาษา Java เป็นภาษาที่สนับสนุนการเขียนโปรแกรมเชิงวัตถุแบบสมบูรณ์ ซึ่งเหมาะสำหรับพัฒนาระบบที่มีความซับซ้อน การพัฒนาโปรแกรมแบบวัตถุจะช่วยให้เราสามารถใช้คำหรือชื่อ ต่าง ๆ ที่มีอยู่ในระบบงานนั้นมาใช้ในการออกแบบโปรแกรมได้ ทำให้เข้าใจได้ง่ายขึ้น
โปรแกรมที่เขียนขึ้นโดยใช้ภาษา Java จะมีความสามารถทำงานได้ในระบบปฏิบัติการที่แตกต่างกัน ไม่จําเป็นต้องดัดแปลงแก้ไขโปรแกรม เช่น หากเขียนโปรแกรมบนเครื่อง Sun โปรแกรมนั้นก็สามารถถูก compile และ run บนเครื่องพีซีธรรมดาได้
-ภาษาจาวามีการตรวจสอบข้อผิดพลาดทั้งตอน compile time และ runtime ทำให้ลดข้อผิดพลาดที่อาจเกิดขึ้นในโปรแกรม และช่วยให้ debug โปรแกรมได้ง่าย
ภาษาจาวามีความซับซ้อนน้อยกว่าภาษา C++ เมื่อเปรียบเทียบ code ของโปรแกรมที่เขียนขึ้นโดยภาษา Java กับ C++ พบว่า โปรแกรมที่เขียนโดยภาษา Java จะมีจํานวน code น้อยกว่าโปรแกรมที่เขียนโดยภาษา C++ ทำให้ใช้งานได้ง่ายกว่าและลดความผิดพลาดได้มากขึ้น
ภาษาจาวาถูกออกแบบมาให้มีความปลอดภัยสูงตั้งแต่แรก ทำให้โปรแกรมที่เขียนขึ้นด้วยจาวามีความปลอดภัยมากกว่าโปรแกรมที่เขียนขึ้น ด้วยภาษาอื่น เพราะ Java มี security ทั้ง low level และ high level ได้แก่ electronic signature, public andprivate key management, access control และ certificatesของ
-มี IDE, application server, และ library ต่าง ๆ มากมายสำหรับจาวาที่เราสามารถใช้งานได้โดยไม่ต้องเสียค่าใช้จ่าย ทำให้เราสามารถลดค่าใช้จ่ายที่ต้องเสียไปกับการซื้อ tool และ s/w ต่าง ๆ

ข้อเสียของ ภาษา Java
-ทำงานได้ช้ากว่า native code (โปรแกรมที่ compile ให้อยู่ในรูปของภาษาเครื่อง) หรือโปรแกรมที่เขียนขึ้นด้วยภาษาอื่น อย่างเช่น C หรือ C++ ทั้งนี้ก็เพราะว่าโปรแกรมที่เขียนขึ้นด้วยภาษาจาวาจะถูกแปลงเป็นภาษากลาง ก่อน แล้วเมื่อโปรแกรมทำงานคำสั่งของภาษากลางนี้จะถูกเปลี่ยนเป็นภาษาเครื่องอีก ทีหนึ่ง ทีล่ะคำสั่ง (หรือกลุ่มของคำสั่ง) ณ runtime ทำให้ทำงานช้ากว่า native code ซึ่งอยู่ในรูปของภาษาเครื่องแล้วตั้งแต่ compile โปรแกรมที่ต้องการความเร็วในการทำงานจึงไม่นิยมเขียนด้วยจาวา
-tool ที่มีในการใช้พัฒนาโปรแกรมจาวามักไม่ค่อยเก่ง ทำให้หลายอย่างโปรแกรมเมอร์จะต้องเป็นคนทำเอง ทำให้ต้องเสียเวลาทำงานในส่วนที่ tool ทำไม่ได้ ถ้าเราดู tool ของ MS จะใช้งานได้ง่ายกว่า และพัฒนาได้เร็วกว่า (แต่เราต้องซื้อ tool ของ MS และก็ต้องรันบน platform ของ MS)

ต่อไปเราก็จะนำเสนอรูปแบบภาษาของ JAVA ครับบ
รูปแบบของภาษา Java
ภาษา Java เป็นภาษาที่ไม่กำหนดแบบการเขียนโปรแกรม ในแต่ละบรรทัด แต่ละบรรทัดสามารถเขียนคำสั่งได้หลายคำสั่งสามารถแทรกคำอธิบาย (comment) Java เป็นภาษาที่บังคับอักขระตัวพิมพ์ใหญ่ ตัวพิมพ์เล็ก (Case Sensitiv) Java มีตัวดำเนินการ(operators) หลายชนิด ให้ใช้งานนอกจากคำสั่งนั้นเป็นคำสั่งที่ผู้ใช้สร้างขึ้นมาใหม่ อาจกำหนดเป็นตัวพิมพ์ใหญ่หรือตัวเล็กก็ได้ และสามารถเขียนชุดคำสั่งที่ประกอบด้วยตัวดำเนินการหลายตัวที่ต่างชนิดกันในชุดคำสั่งหนึ่งๆได้ โดยภาษา Java จะจัดลำดับการประมวลผลตามลำดับการทำงานของตัวดำเนินการ
รูปแบบคำสั่ง(statements) Java คือ ส่วนประมวลผล(Execute) เพื่อให้ได้ผลลัพธ์ออกมา ทุกคำสั่งจะต้องจบด้วยเครื่องหมาย เซมิโคลอน( ; )
รูปแบบของ script
ในการเขียน script สามารถเขียน โดยในรูปแบบที่ 1 ได้โดยไม่ต้องระบุภาษาก็ได้ แต่ต้องเขียน tag ของ script ดังรูป
<Script>
JavaScript statements;
</Script>
<Script>
document.write(‘kittisak’);
</Script>
ในการเขียน script ตามรูปแบบที่ 2 โดยระบุภาษาเป็น javascript และเขียนใน tag ของ script ดังรูป
<Script Language=”JavaScript”>
JavaScript statements;
</Script>
การคำสั่งแสดงผล single quote (‘ ‘)
ในการเขียนการแสดงผลข้อมูลที่อยู่หลังคำสั่ง document นั้นสามารถเขียนใช้เครื่องหมายในแบบ single quote (‘ ‘) ก็ได้ดังรูป
<Script Language=”JavaScript”>
document.write(‘kittisak’);
</Script>
การใช้ HTML ร่วมกับ script ขึ้นบรรทัดใหม่ โดยใช้ <br>
การกำหนดให้ขึ้นบรรทัดใหม่ ส่วนใหญ่จะใช้รูปแบบของ tag HTML คือ <br> โดยการใส่ไว้หลังคำสั่ง document อาจจะเป็นข้างหน้า หรือข้างหลังก็ได้
<Script Language=”JavaScript”>
document.write(‘kittisak<br;
document.write(‘<fontlor=”red”>khampud</font>’);
</Script>
Source Code
ใน Java จะมี Source Code เป็น File ที่มีนามสกุล เป็น *.java เมื่อ ผ่านการ Compile แล้วจะมี File เพิ่มมาเป็น File ที่มีนามสกุลเป็น *.class  System.out.println  (“….” ); เป็นคำสั่งที่ใช้การแสดงตัวอักษรซอร์สโค้ดโปรแกรมจาวาอยู่ในแฟ้มที่มีนามสกุล  java


และนี่ก็คือ blog ครั้งที่ 4 ของเดี๊ยนคงเป็นความรู้ให้กับทุกคนมากเลยนะคะ  ถ้าหากผิดพลาดตรงไหน อยากให้แก้ไขยังไงไหน หรือจะให้กำลังใจเดี๊ยน ก็สามารถมาเม้นท์กันได้นะคะ และจะเป็นไปไม่ได้เลยนะคะถ้าไม่มีเว็บที่ให้ความรู้ เดี๊ยนต้องขอขอบคุณ https://nongtha57.wordpress.com/%e0%b8%84%e0%b8%a7%e0%b8%b2%e0%b8%a1%e0%b9%80%e0%b8%9b%e0%b9%87%e0%b8%99%e0%b8%a1%e0%b8%b2-java/  มากๆที่ให้ความรู้ค่ะ

ไม่มีความคิดเห็น:

แสดงความคิดเห็น