<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-502569790348708866</id><updated>2011-10-23T23:43:35.214-07:00</updated><category term='udp'/><category term='java platform'/><category term='JAVA'/><category term='ภาษาจาวา'/><category term='Java TCPEchoClient'/><category term='Java Echo Server'/><category term='การส่งไฟล์วีดิโอ'/><category term='โปรแกรมเมอร์มืออาชีพ'/><category term='การติดตั้ง JDK1.6'/><category term='จาวา'/><category term='ip'/><category term='โครงสร้างพื้นฐาน'/><category term='C++'/><category term='programmer'/><category term='TCP'/><category term='ตัวแปร'/><category term='Java SE'/><category term='class'/><category term='internet'/><category term='ภาษา java'/><category term='ตัวแปรในภาษาซี'/><category term='inet'/><category term='ตัวแปรภาษาซี'/><category term='ไอพีของเครื่องตัวเอง'/><category term='NetBean'/><category term='port'/><category term='ServerSocket'/><category term='โปรแกรมแรก'/><category term='ภาษา C'/><category term='jdk'/><category term='programming'/><category term='โปรแกรมภาษาซี'/><category term='getLocalHost'/><category term='streaming'/><category term='user datagram'/><category term='โปรแกรมเมอร์'/><category term='ประการตัวแปร'/><category term='ประวัติภาษาซี'/><category term='ซัน ไมโครซิสเต็มส์'/><category term='การตั้งชื่อตัวแปร'/><category term='complier'/><category term='java network'/><category term='Hello World'/><category term='netbeans'/><category term='c-free'/><category term='ภาษาซี'/><category term='dns'/><category term='network programming'/><category term='unix'/><category term='โปรแกรมเชิงวัตถุ'/><category term='OOP'/><category term='server'/><category term='design'/><category term='ide'/><title type='text'>ThaiCoding</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>27</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-1569106827026084442</id><published>2011-10-23T23:43:00.000-07:00</published><updated>2011-10-23T23:43:35.238-07:00</updated><title type='text'>ไว้อาลัยสตีฟ จ๊อบส์ เสียชีวิตแล้วอย่างสงบด้วยวัย 56 ปี</title><content type='html'>&amp;nbsp;สตีฟ จ๊อบส์ ผู้ก่อตั้งบริษัท apple  และเป็นผู้ที่มีส่วนรวมทำให้เกิดนวัฒกรรมใหม่ๆ อย่าง ipod, iphone, ipad  นั้นได้เสียชีวิตด้วยโรคมะเร็งตับเมื่อวันที่ 5 ตุลาคมหรือ 6 ตุลาคม 2554  ตามเวลาในประเทศไทย นับว่าเป็นการสูญเสียและผลกระทบต่อวงการไอทีทั้ง  วงการเลยที่เดียว&amp;nbsp;สตีฟ จ๊อบส์ นั้นสร้าง apple จนยิ่งใหญ่ในทุกวันนี้&lt;br /&gt;ท่านสามารถอ่านต่อได้ที่&amp;nbsp; &lt;a href="http://itnews.thaicoding.net/%e0%b9%84%e0%b8%a7%e0%b9%89%e0%b8%ad%e0%b8%b2%e0%b8%a5%e0%b8%b1%e0%b8%a2%e0%b8%aa%e0%b8%95%e0%b8%b5%e0%b8%9f-%e0%b8%88%e0%b9%8a%e0%b8%ad%e0%b8%9a%e0%b8%aa%e0%b9%8c-%e0%b9%80%e0%b8%aa%e0%b8%b5.html"&gt;&lt;b&gt;ไว้อาลัยสตีฟ จ๊อบส์ เสียชีวิตแล้วอย่างสงบด้วยวัย 56 ปี&lt;/b&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-1569106827026084442?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/1569106827026084442/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2011/10/56.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/1569106827026084442'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/1569106827026084442'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2011/10/56.html' title='ไว้อาลัยสตีฟ จ๊อบส์ เสียชีวิตแล้วอย่างสงบด้วยวัย 56 ปี'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-7660896713203060192</id><published>2011-10-21T12:17:00.001-07:00</published><updated>2011-10-21T12:17:47.454-07:00</updated><title type='text'>สารคดี ชีวประวัติ สตีฟ จ๊อบ จิตวิญญาณแห่ง apple</title><content type='html'>ถ้าผู้ถึงบุคคลในวงการไอทีแล้วละก่อน คนหนึ่งที่มีบทบาทสำคัญมากก็คือ สตีฟ จ๊อบ แห่ง apple นั้นเอง&lt;br /&gt;&lt;a href="http://itnews.thaicoding.net/wp-content/uploads/2011/05/steve-jobs-photomosaic.jpg"&gt;&lt;img alt="apple steve job" class="alignnone size-medium wp-image-79" height="288" src="http://itnews.thaicoding.net/wp-content/uploads/2011/05/steve-jobs-photomosaic-300x243.jpg" title="apple steve job" width="356" /&gt;&lt;/a&gt;&lt;br /&gt;เค้าเป็นผู้ที่ก่อตั้ง บริษัท apple ตั้งแต่แรกเริ่มจนยิ่งใหญ่ทุกวันนี้  และมีช่วงเวลาหนึ่งที่เขาได้ทะเลาะกับฝ่ายบริหารที่เขาทำการจ้างมาเอง  จนเป็นเห็นให้ สตีฟ จ๊อบ ต้องออกจาก apple ช่วงที่ขาด จ็อบในครั้งนั้น  apple เรียกได้ว่า ขาดทุกอย่างเลยทั้ง จิตวิญญาณ วิสัยทัศน์ เอกลักษณ์เฉพาะ&lt;br /&gt;&lt;br /&gt;อ่านต่อ&amp;nbsp;&lt;a href="http://itnews.thaicoding.net/%E0%B8%AA%E0%B8%B2%E0%B8%A3%E0%B8%84%E0%B8%94%E0%B8%B5-%E0%B8%8A%E0%B8%B5%E0%B8%A7%E0%B8%9B%E0%B8%A3%E0%B8%B0%E0%B8%A7%E0%B8%B1%E0%B8%95%E0%B8%B4-%E0%B8%AA%E0%B8%95%E0%B8%B5%E0%B8%9F-%E0%B8%88.html"&gt; สารคดี ชีวประวัติ สตีฟ จ๊อบ จิตวิญญาณแห่ง apple&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-7660896713203060192?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/7660896713203060192/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2011/10/apple.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/7660896713203060192'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/7660896713203060192'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2011/10/apple.html' title='สารคดี ชีวประวัติ สตีฟ จ๊อบ จิตวิญญาณแห่ง apple'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-648885827017932824</id><published>2009-12-23T05:31:00.000-08:00</published><updated>2009-12-23T05:38:37.193-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='network programming'/><category scheme='http://www.blogger.com/atom/ns#' term='ภาษาจาวา'/><category scheme='http://www.blogger.com/atom/ns#' term='Java TCPEchoClient'/><category scheme='http://www.blogger.com/atom/ns#' term='JAVA'/><title type='text'>Java TCPEchoClient</title><content type='html'>ในบทความตอนที่แล้วเกี่ยวกับ TCPEchoServer ซึ่งจะแสดงข้อความตอบกลับมาเมื่อเราเข้าใช้บริการผ่านทาง telnet ในตอนนี้ก็จะเป็นการเขียนโปรแกรมฝั่ง client ที่จะทำหน้าที่คุยกับโปรแกรมฝั่ง server ของตอนที่แล้ว ซึ่งขั้นตอนของฝ่าย client ก็ไม่มีอะไรมาก ขั้นแรกก็ทำการสร้าง socket ไปยัง server และ port ของ server โดยที่นี้มีการประกาศตัวแปร&lt;br /&gt;private static InetAddress host;&lt;br /&gt;ซึ่งเป็นตัวแปรแบบ InetAddress หลังจากนั้นทำการกำหนด IP ของเครื่องตัวเองซึ่งใช้คำสั่งนี้ครับ&lt;br /&gt;host = InetAddress.getLocalHost();&lt;br /&gt;หลังจากนั้นก็มีการสร้าง method เพื่อประมวลผลการทำงานกับ server ซึ่งมีชื่อว่า accessServer() ที่จะทำหน้าที่กำหนด inputStream และ OutputStream คล้ายๆกับโปรแกรมที่ผ่านมาแล้วทำการส่งข้อความไปมาระหว่าง server&lt;br /&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;ตัวอย่างโค้ดครับ&lt;br /&gt;&lt;pre name="code" class="java"&gt;&lt;br /&gt;import java.io.*;&lt;br /&gt;import java.net.*;&lt;br /&gt;import java.util.*;&lt;br /&gt;public class TCPEchoClient&lt;br /&gt;{&lt;br /&gt;       private static InetAddress host;&lt;br /&gt;       private static final int PORT = 1234;&lt;br /&gt;      public static void main(String[] args)&lt;br /&gt;{&lt;br /&gt;     try&lt;br /&gt;   {&lt;br /&gt;      host = InetAddress.getLocalHost();&lt;br /&gt;   }&lt;br /&gt;   catch(UnknownHostException uhEx)&lt;br /&gt;  {&lt;br /&gt;     System.out.println("Host ID not found!");&lt;br /&gt;     System.exit(1);&lt;br /&gt;  }&lt;br /&gt;  accessServer();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;private static void accessServer()&lt;br /&gt;{&lt;br /&gt;    Socket link = null; //Step 1.&lt;br /&gt;try&lt;br /&gt;{&lt;br /&gt;    link = new Socket(host,PORT); //Step 1.&lt;br /&gt;    Scanner input =new Scanner(link.getInputStream()); //Step 2.&lt;br /&gt;    PrintWriter output =new PrintWriter(link.getOutputStream(),true); //Step 2.&lt;br /&gt;   //Set up stream for keyboard entry...&lt;br /&gt;    Scanner userEntry = new Scanner(System.in);&lt;br /&gt;    String message, response;&lt;br /&gt;  do&lt;br /&gt;  {&lt;br /&gt;    System.out.print("Enter message: ");&lt;br /&gt;   message = userEntry.nextLine();&lt;br /&gt;   output.println(message); //Step 3.&lt;br /&gt;   response = input.nextLine(); //Step 3.&lt;br /&gt;   System.out.println("\nSERVER&gt; "+response);&lt;br /&gt;  }while (!message.equals("***CLOSE***"));&lt;br /&gt;}&lt;br /&gt;  catch(IOException ioEx)&lt;br /&gt;  {&lt;br /&gt;     ioEx.printStackTrace();&lt;br /&gt;  }&lt;br /&gt;  finally&lt;br /&gt;  {&lt;br /&gt;     try&lt;br /&gt;    {&lt;br /&gt;       System.out.println("\n* Closing connection... *");&lt;br /&gt;      link.close(); //Step 4.&lt;br /&gt;   }&lt;br /&gt;   catch(IOException ioEx)&lt;br /&gt;  {&lt;br /&gt;      System.out.println("Unable to disconnect!");&lt;br /&gt;     System.exit(1);&lt;br /&gt;   }&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-648885827017932824?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/648885827017932824/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/12/java-tcpechoclient.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/648885827017932824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/648885827017932824'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/12/java-tcpechoclient.html' title='Java TCPEchoClient'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-2221101880620398326</id><published>2009-12-21T09:17:00.000-08:00</published><updated>2009-12-21T09:20:23.894-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='server'/><category scheme='http://www.blogger.com/atom/ns#' term='Java Echo Server'/><category scheme='http://www.blogger.com/atom/ns#' term='network programming'/><category scheme='http://www.blogger.com/atom/ns#' term='java network'/><category scheme='http://www.blogger.com/atom/ns#' term='ภาษา java'/><title type='text'>Java Echo Server</title><content type='html'>Java Echo Server เป็นตัวอย่างง่ายๆ ที่ server จะรับข้อความจาก client และทำการเก็บและนับข้อความ หลังจากนั้นจะตอบข้อความกลับ โดยที่จะรับและแสดงข้อความตอบกลับไปเรื่อยๆจนกว่าจะพิมพ์ข้อความว่า protocol for this service is&lt;br /&gt;"***CLOSE***"  ถึงจะทำการปิดการเชื่อมต่อ ในโปรแกรมนี้อาจมีข้อผิดพลาดในการรับและส่งข้อความดังนั้นจึงต้องมี try catch IOException เพื่อทำงานในกรณีที่ผิดพลาดหลังจากนั้นก็จะต้องมี final เพื่อที่ไม่ว่ากรณีใดก็ตามจะต้องปิดการเชื่อมต่อหลังทำงานเสร็จสิ้นเพื่อที่จะได้ไม่ค้างการเชื่อมต่อไว้ ซึ่งในการเชื่อมต่อระหว่าง server กับ client จะเชื่อมต่อผ่าน socket และ server จะต้องทำงานซ้ำตลอดจึงต้องมี loop infinite เพื่อที่จะได้ให้บริการ client ตลอดเวลา โดยที่ทำการสร้าง method handleClient เพื่อจัดการให้บริการ client ที่เข้ามาใช้บริการ ดังโค้ดตัวอย่างบ้างส่วน&lt;br /&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;pre name="code" class="java"&gt;&lt;br /&gt;do{&lt;br /&gt;   handleClient();&lt;br /&gt;}while (true);&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;นี้เป็นโค้ดในส่วนของการทำซ้ำที่จะทำไปเรื่อยจนกว่าจะบริการเครื่อง client เสร็จสิ้น และโปรแกรมตัวอย่างนี้จะให้บริการผ่าน port  1234&lt;br /&gt;โค้ดของ program TCPEchoServer&lt;br /&gt;&lt;pre name="code" class="java"&gt;&lt;br /&gt;//Server that echoes back client's messages.&lt;br /&gt;//At end of dialogue, sends message indicating number of&lt;br /&gt;//messages received. Uses TCP.&lt;br /&gt;import java.io.*;&lt;br /&gt;import java.net.*;&lt;br /&gt;import java.util.*;&lt;br /&gt;public class TCPEchoServer&lt;br /&gt;{&lt;br /&gt; private static ServerSocket servSock;&lt;br /&gt; private static final int PORT = 1234;&lt;br /&gt; public static void main(String[] args){&lt;br /&gt;   System.out.println("Opening port...\n");&lt;br /&gt;   try&lt;br /&gt;   {&lt;br /&gt;     servSock = new ServerSocket(PORT); //Step 1.&lt;br /&gt;   }&lt;br /&gt;   catch(IOException ioEx)&lt;br /&gt;   {&lt;br /&gt;      System.out.println("Unable to attach to port!");&lt;br /&gt;      System.exit(1);&lt;br /&gt;   }&lt;br /&gt;  do{&lt;br /&gt;     handleClient();&lt;br /&gt;     }while (true);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;private static void handleClient()&lt;br /&gt;{&lt;br /&gt; Socket link = null; //Step 2.&lt;br /&gt; try&lt;br /&gt; {&lt;br /&gt;   link = servSock.accept(); //Step 2.&lt;br /&gt;   Scanner input = new Scanner(link.getInputStream());//Step 3.&lt;br /&gt;   PrintWriter output = new PrintWriter(link.getOutputStream(),true); //Step3.&lt;br /&gt; int numMessages = 0;&lt;br /&gt; String message = input.nextLine(); //Step 4.&lt;br /&gt; while (!message.equals("***CLOSE***"))&lt;br /&gt; {&lt;br /&gt;   System.out.println("Message received.");&lt;br /&gt;   numMessages++;&lt;br /&gt;  output.println("Message " + numMessages + ": " + message); //Step 4.&lt;br /&gt;  message = input.nextLine();&lt;br /&gt;}&lt;br /&gt;output.println(numMessages + " messages received.");//Step 4.&lt;br /&gt;}&lt;br /&gt;catch(IOException ioEx)&lt;br /&gt;{&lt;br /&gt;ioEx.printStackTrace();&lt;br /&gt;}&lt;br /&gt;finally&lt;br /&gt;{&lt;br /&gt;  try&lt;br /&gt; {&lt;br /&gt;  System.out.println("\n* Closing connection... *");&lt;br /&gt;  link.close(); //Step 5.&lt;br /&gt; }&lt;br /&gt; catch(IOException ioEx)&lt;br /&gt; {&lt;br /&gt;    System.out.println("Unable to disconnect!");&lt;br /&gt;    System.exit(1);&lt;br /&gt; }&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;ขั้นตอนในการทำงานมี 4 ขั้นตอน&lt;br /&gt;1. สร้างการเชื่อมต่อของ server&lt;br /&gt;เราได้สร้าง Socket object โดยใช้ค่า arguments 2 ค่า นั้นคือ&lt;br /&gt;• IP server (ชนิดแบบ InetAddress);&lt;br /&gt;• หมายเลข port ที่ให้บริการ&lt;br /&gt;ดังโค้ดนี้&lt;br /&gt; Socket link =  new Socket(InetAddress.getLocalHost(),1234);&lt;br /&gt;2.กำหนด input และ output stream&lt;br /&gt;ในการกำหนด ก็เหมือนกับบทความที่แล้วคือ getInputStream และ getOutputStream&lt;br /&gt;3. รับและส่งข้อมูล&lt;br /&gt;โดยการใช้ object ของ Scanner ในการอ่านและรับข้อมูล ส่วนการส่งข้อมูลนั้นใช้ PrintWriter&lt;br /&gt;4. ปิดการเชื่อมต่อโดย close Socket&lt;br /&gt;สามารถลองทดสอบรันโปรแกรมแล้ว ใช้เมนู run คำสั่ง cmd เพื่อ telnet 127.0.0.1 1234 แล้วพิมข้อความที่ต้องการ&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-2221101880620398326?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/2221101880620398326/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/12/java-echo-server.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/2221101880620398326'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/2221101880620398326'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/12/java-echo-server.html' title='Java Echo Server'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-1829039990081300208</id><published>2009-12-20T01:53:00.000-08:00</published><updated>2009-12-20T01:55:31.968-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TCP'/><category scheme='http://www.blogger.com/atom/ns#' term='ServerSocket'/><category scheme='http://www.blogger.com/atom/ns#' term='ip'/><category scheme='http://www.blogger.com/atom/ns#' term='network programming'/><category scheme='http://www.blogger.com/atom/ns#' term='port'/><title type='text'>Java TCP Sockets</title><content type='html'>&lt;img style="width: 288px; height: 356px;" alt="http://ecx.images-amazon.com/images/I/51tkvoGC8jL._SL500_.jpg" src="http://ecx.images-amazon.com/images/I/51tkvoGC8jL._SL500_.jpg" /&gt;&lt;br /&gt;การสร้างลิงค์ติดต่อสื่อสารแบบ TCP/IP ที่เป็น sockets เป็นการเชื่อมต่อแบบ connection-orientated&lt;br /&gt;ซึ่งนั้นก็หมายความว่าการสนทนาระหว่างเครื่อง client กับ server จะทำการเชื่อมต่อตลอดเวลาที่สนทนานอกเสียจากมันจะเสีย ซึ่งการสนทนากันหรือการแลกเปลี่ยนข้อมูลระหว่าง client กับ server นั้นจะต้องเป็นไปตามกฎของ protocol ซึ่งจะการกำหนดลักษณะการทำงานนั้น ทำให้สามารถแบ่งขั้นตอนการทำงานของ server ได้ 5ขั้นตอน ดังนี้&lt;br /&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;1. สร้าง object ของ  ServerSocket&lt;br /&gt; ServerSocket constructor ต้องการค่า หมายเลข port  (มีค่าตั้งแต่ 1024-65535 โดยไม่คิดรวมหมายเลข port สงวน ) เป็นค่า argument ตัวอย่างเช่น&lt;br /&gt;ServerSocket servSock = new ServerSocket(1234);&lt;br /&gt;จากตัวอย่างนี้จะทำให้ server ให้บริการ client ที่ทำการเชื่อมต่อมายัง port 1234&lt;br /&gt;2. ทำให้ server อยู่ในสถานะพร้อมบริการ&lt;br /&gt; Server จะอยู่ในสถานะที่รอให้บริการได้นั้นจะต้องมีการเรียกใช้ method accept ของ class ServerSocket ซึ่งจะreturn ค่าเป็น object ของ Socket class ตัวอย่างการใช้งานเช่น&lt;br /&gt;Socket link = servSock.accept();&lt;br /&gt;3. ตั้งค่า input และ output stream&lt;br /&gt;methods getInputStream และ getOutputStream เป็น method ที่ class Socket ใช้สำหรับ อ่านค่าที่ได้จาก stream ในการเชื่อมต่อกันใน 2 ขั้นตอน ในการเชื่อมต่อสื่อสาร client ได้สร้าง connection เราสามารถใช้ Scanner object ในการอ่านค่าจาก InputStream object โดย return ค่าโดน method getInputStream โดยอยู่ในรูป string – orientated input โดยถูกกำหนดจาก standard input stream,System.in&lt;br /&gt;ตัวอย่างเช่น&lt;br /&gt;Scanner input = new Scanner(link.getInputStream());&lt;br /&gt;ลักษณะคล้ายกัน เราก็สามารถส่ง output โดยใช้ PrintWriter object ในการส่งค่า output ไปยัง OutputStream object โดยใช้ method ที่ชื่อว่า getOutputStream  ซึ่งสามารถใช้ได้โดยการกำหนดค่า ใน constructor ของ PrintWriter โดยกำหนดค่า agument 2 ค่า&lt;br /&gt;ตัวอย่าง&lt;br /&gt;PrintWriter output = new PrintWriter(link.getOutputStream(),true);&lt;br /&gt;4. ส่งและรับข้อมูล&lt;br /&gt;หลังจากที่ทำการ set up Scanner และ PrintWrite ให้สามารถส่งและรับข้อมูลได้แล้วก็จะทำการรับและส่งข้อมูล โดยใช้ method nextLine สำหรับอ่านข้อมูลที่รับเข้ามา และใช้ method println สำหรับส่งข้อมูล&lt;br /&gt;ตัวอย่างการใช้งาน&lt;br /&gt;output.println("Awaiting data...");&lt;br /&gt;String input = input.nextLine();&lt;br /&gt;5. สุดท้ายเมื่อเสร็จสิ้นการเชื่อมต่อก็ต้องทำการปิดการเชื่อมต่อ&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-1829039990081300208?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/1829039990081300208/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/12/java-tcp-sockets.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/1829039990081300208'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/1829039990081300208'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/12/java-tcp-sockets.html' title='Java TCP Sockets'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-2236545641672186391</id><published>2009-12-12T08:12:00.000-08:00</published><updated>2009-12-12T08:15:21.168-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='java network'/><category scheme='http://www.blogger.com/atom/ns#' term='getLocalHost'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='ไอพีของเครื่องตัวเอง'/><category scheme='http://www.blogger.com/atom/ns#' term='JAVA'/><title type='text'>เขียนโปรแกรม Java หาไอพีของเครื่องตัว เอง</title><content type='html'>&lt;b&gt;&lt;span  lang="TH" style="font-size:16pt;"&gt;เขียนโปรแกรม &lt;/span&gt;&lt;/b&gt;&lt;b&gt;&lt;span style="font-size:16pt;"&gt;Java &lt;span lang="TH"&gt;หาไอพีของเครื่องตัว เอง&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span  lang="TH" style="font-size:16pt;"&gt;ในการเขียนโปรแกรมครั้งนี้จะเป็น การใช้ &lt;/span&gt;&lt;span class="GramE"&gt;&lt;span style=";font-family:&amp;quot;;font-size:16pt;"  &gt;method&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:16pt;"&gt; &lt;span lang="TH"&gt;ของ &lt;/span&gt;Class &lt;span class="SpellE"&gt;InetAddress&lt;/span&gt; &lt;span lang="TH"&gt;ที่ชื่อว่า &lt;/span&gt;&lt;span class="SpellE"&gt;getLocalHost&lt;/span&gt;() &lt;span lang="TH"&gt;ซึ่งต้องทำการ &lt;/span&gt;import java.net.*;  &lt;span lang="TH"&gt;เข้ามาด้วยโดยที่หลังจากเรียกใช้แล้วจะคืนค่าเป็น &lt;/span&gt;address &lt;span class="SpellE"&gt;ip&lt;/span&gt; &lt;span lang="TH"&gt;ของเราสามารถทำการโดยแสดง ผลได้เลยโดยใช้ &lt;/span&gt;&lt;span class="SpellE"&gt;System.out.println&lt;/span&gt; &lt;span lang="TH"&gt;ได้ เลยแต่อย่าลืม &lt;/span&gt;try catch &lt;span lang="TH"&gt;ด้วยนะครับ โดยใช้ &lt;/span&gt;&lt;span class="SpellE"&gt;Exeption&lt;/span&gt; &lt;span lang="TH"&gt;ที่มีชื่อว่า &lt;/span&gt;&lt;span class="SpellE"&gt;UnknowHostException&lt;/span&gt; &lt;span lang="TH"&gt;เพื่อไม่มี &lt;/span&gt;host &lt;span lang="TH"&gt;ดังกล่าว&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;span  lang="TH" style="font-size:16pt;"&gt;โค้ดโปรแกรม&lt;/span&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span class="GramE"&gt;&lt;span style=";font-family:&amp;quot;;font-size:16pt;"  &gt;import&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:16pt;"&gt; java.net.*;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span class="GramE"&gt;&lt;span style=";font-family:&amp;quot;;font-size:16pt;"  &gt;public&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:16pt;"&gt; class &lt;span class="SpellE"&gt;MyLocalIPAddress&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size:16pt;"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size:16pt;"&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span class="GramE"&gt;public&lt;/span&gt; static void main(String[] &lt;span class="SpellE"&gt;args&lt;/span&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size:16pt;"&gt;&lt;span style=""&gt; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size:16pt;"&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span class="GramE"&gt;try&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size:16pt;"&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size:16pt;"&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span class="SpellE"&gt;InetAddress&lt;/span&gt; address =&lt;span lang="TH"&gt; &lt;/span&gt;&lt;span class="SpellE"&gt;&lt;span class="GramE"&gt;InetAddress.getLocalHost&lt;/span&gt;&lt;/span&gt;&lt;span class="GramE"&gt;(&lt;/span&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size:16pt;"&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span class="SpellE"&gt;&lt;span class="GramE"&gt;System.out.println&lt;/span&gt;&lt;/span&gt;&lt;span class="GramE"&gt;(&lt;/span&gt;address);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size:16pt;"&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size:16pt;"&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span class="GramE"&gt;catch&lt;/span&gt; (&lt;span class="SpellE"&gt;UnknownHostException&lt;/span&gt; &lt;span class="SpellE"&gt;uhEx&lt;/span&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size:16pt;"&gt;&lt;span style=""&gt;  &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size:16pt;"&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span class="SpellE"&gt;&lt;span class="GramE"&gt;System.out.println&lt;/span&gt;&lt;/span&gt;&lt;span class="GramE"&gt;(&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size:16pt;"&gt;&lt;span style=""&gt;    &lt;/span&gt;"Could not find  local address!");&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size:16pt;"&gt;&lt;span style=""&gt;  &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size:16pt;"&gt;&lt;span style=""&gt; &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style="font-size:16pt;"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span  lang="TH" style="font-size:16pt;"&gt;ผลลัพธ์การรันโปรแกรม&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;span style="font-size:16pt;"&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;   &lt;v:stroke joinstyle="miter"&gt;   &lt;v:formulas&gt;    &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;    &lt;v:f eqn="sum @0 1 0"&gt;    &lt;v:f eqn="sum 0 0 @1"&gt;    &lt;v:f eqn="prod @2 1 2"&gt;    &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;    &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;    &lt;v:f eqn="sum @0 0 1"&gt;    &lt;v:f eqn="prod @6 1 2"&gt;    &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;    &lt;v:f eqn="sum @8 21600 0"&gt;    &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;    &lt;v:f eqn="sum @10 21600 0"&gt;   &lt;/v:formulas&gt;   &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;   &lt;o:lock ext="edit" aspectratio="t"&gt;  &lt;/v:shapetype&gt;&lt;v:shape id="Picture_x0020_2" spid="_x0000_i1025" type="#_x0000_t75" style="'width:234pt;height:73.5pt;visibility:visible;mso-wrap-style:square'"&gt;   &lt;v:imagedata src="เขียนโปรแกรม%20Java%20หาไอพีของเครื่องตัวเอง.files/image001.png" title=""&gt;  &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_tps13fpd8CQ/SyPBKwkLUXI/AAAAAAAAACk/Z51cLX5Zj-0/s1600-h/mylocal.JPG"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 312px; height: 98px;" src="http://4.bp.blogspot.com/_tps13fpd8CQ/SyPBKwkLUXI/AAAAAAAAACk/Z51cLX5Zj-0/s400/mylocal.JPG" alt="" id="BLOGGER_PHOTO_ID_5414383567608959346" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-2236545641672186391?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/2236545641672186391/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/12/java.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/2236545641672186391'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/2236545641672186391'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/12/java.html' title='เขียนโปรแกรม Java หาไอพีของเครื่องตัว เอง'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_tps13fpd8CQ/SyPBKwkLUXI/AAAAAAAAACk/Z51cLX5Zj-0/s72-c/mylocal.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-6658359997288957290</id><published>2009-12-09T07:02:00.000-08:00</published><updated>2009-12-09T07:15:38.788-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dns'/><category scheme='http://www.blogger.com/atom/ns#' term='ip'/><category scheme='http://www.blogger.com/atom/ns#' term='inet'/><category scheme='http://www.blogger.com/atom/ns#' term='class'/><category scheme='http://www.blogger.com/atom/ns#' term='java network'/><category scheme='http://www.blogger.com/atom/ns#' term='ภาษา java'/><category scheme='http://www.blogger.com/atom/ns#' term='JAVA'/><title type='text'>เริ่มต้นเขียน Java network Programming ด้วย Class InetAddress</title><content type='html'>Class หนึ่งใน  java.net ที่ชื่อว่า InetAddress ซึ่งสามารถจัดการ Internet addresses ทั้ง host names และ IP addresses. โดยใช้ Static method ที่มีชื่อว่า getByName ซึ่ง class จะไปถาม DNS (Domain Name System) ว่ามี ชื่อ host ที่ป้อนเข้าไปมีไอพีอะไร ซึ่งค่าที่ได้รับกลับมาจะอยู่ใน object InetAddress  โดยแสดงเป็นหมายเลขไอพี โดยที่เราจะสามารถแสดงผลได้อย่างง่ายโดยใช้ method println&lt;br /&gt;ตั้งแต่  method getByName จะต้องมีการ throws ตรวจสอบความผิดพลาดที่อาจเกิดขึ้นได้โดยใช้&lt;br /&gt;exception UnknownHostException ถ้า   host name ดังกล่าวไม่มี ซึ่งก็จำเป็นที่จะต้องทำการ catch เพื่อแสดงข้อผิดพลาดนี้&lt;br /&gt;โค้ดตัวอย่างการใช้&lt;br /&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;import java.net.*;&lt;br /&gt;import java.util.*;&lt;br /&gt;&lt;br /&gt;public class IPFinder&lt;br /&gt;{&lt;br /&gt;  public static void main(String[] args)&lt;br /&gt;  {&lt;br /&gt;      String host;&lt;br /&gt;      Scanner input =new Scanner(System.in);&lt;br /&gt;&lt;br /&gt;      System.out.print("\n\nEnter host name:");&lt;br /&gt;      host =input.next();&lt;br /&gt;      try&lt;br /&gt;      {&lt;br /&gt;          InetAddress address= InetAddress.getByName(host);&lt;br /&gt;          System.out.println("IP address:"+address.toString());&lt;br /&gt;&lt;br /&gt;      }&lt;br /&gt;      catch (UnknownHostException uhEX)&lt;br /&gt;      {&lt;br /&gt;          System.out.println("Could not find"+host);&lt;br /&gt;      }&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;ผลลัพธ์การรันโปรแกรม&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_tps13fpd8CQ/Sx-8nxwuFSI/AAAAAAAAACc/qAE4paMhBww/s1600-h/inet.JPG"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 400px; height: 155px;" src="http://3.bp.blogspot.com/_tps13fpd8CQ/Sx-8nxwuFSI/AAAAAAAAACc/qAE4paMhBww/s400/inet.JPG" alt="" id="BLOGGER_PHOTO_ID_5413252668681229602" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-6658359997288957290?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/6658359997288957290/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/12/java-network-programming-class.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/6658359997288957290'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/6658359997288957290'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/12/java-network-programming-class.html' title='เริ่มต้นเขียน Java network Programming ด้วย Class InetAddress'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_tps13fpd8CQ/Sx-8nxwuFSI/AAAAAAAAACc/qAE4paMhBww/s72-c/inet.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-8090561001132778940</id><published>2009-12-08T09:35:00.000-08:00</published><updated>2009-12-08T09:40:14.271-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TCP'/><category scheme='http://www.blogger.com/atom/ns#' term='streaming'/><category scheme='http://www.blogger.com/atom/ns#' term='user datagram'/><category scheme='http://www.blogger.com/atom/ns#' term='udp'/><category scheme='http://www.blogger.com/atom/ns#' term='internet'/><category scheme='http://www.blogger.com/atom/ns#' term='การส่งไฟล์วีดิโอ'/><title type='text'>UDP</title><content type='html'>&lt;meta name="ProgId" content="Word.Document"&gt;&lt;meta name="Generator" content="Microsoft Word 12"&gt;&lt;meta name="Originator" content="Microsoft Word 12"&gt;&lt;link rel="File-List" href="file:///C:%5CDOCUME%7E1%5Cseng%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml"&gt;&lt;link rel="themeData" href="file:///C:%5CDOCUME%7E1%5Cseng%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx"&gt;&lt;link rel="colorSchemeMapping" href="file:///C:%5CDOCUME%7E1%5Cseng%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml"&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:trackmoves/&gt;   &lt;w:trackformatting/&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:donotpromoteqf/&gt;   &lt;w:lidthemeother&gt;EN-US&lt;/w:LidThemeOther&gt;   &lt;w:lidthemeasian&gt;X-NONE&lt;/w:LidThemeAsian&gt;   &lt;w:lidthemecomplexscript&gt;TH&lt;/w:LidThemeComplexScript&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:applybreakingrules/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;    &lt;w:splitpgbreakandparamark/&gt;    &lt;w:dontvertaligncellwithsp/&gt;    &lt;w:dontbreakconstrainedforcedtables/&gt;    &lt;w:dontvertalignintxbx/&gt;    &lt;w:word11kerningpairs/&gt;    &lt;w:cachedcolbalance/&gt;   &lt;/w:Compatibility&gt;   &lt;w:browserlevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;   &lt;m:mathpr&gt;    &lt;m:mathfont val="Cambria Math"&gt;    &lt;m:brkbin val="before"&gt;    &lt;m:brkbinsub val="--"&gt;    &lt;m:smallfrac val="off"&gt;    &lt;m:dispdef/&gt;    &lt;m:lmargin val="0"&gt;    &lt;m:rmargin val="0"&gt;    &lt;m:defjc val="centerGroup"&gt;    &lt;m:wrapindent val="1440"&gt;    &lt;m:intlim val="subSup"&gt;    &lt;m:narylim val="undOvr"&gt;   &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" defunhidewhenused="true" defsemihidden="true" defqformat="false" defpriority="99" latentstylecount="267"&gt;   &lt;w:lsdexception locked="false" priority="0" semihidden="false" unhidewhenused="false" qformat="true" name="Normal"&gt;   &lt;w:lsdexception locked="false" priority="9" semihidden="false" unhidewhenused="false" qformat="true" name="heading 1"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 2"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 3"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 4"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 5"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 6"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 7"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 8"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 9"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 1"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 2"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 3"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 4"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 5"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 6"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 7"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 8"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 9"&gt;   &lt;w:lsdexception locked="false" priority="35" qformat="true" name="caption"&gt;   &lt;w:lsdexception locked="false" priority="10" semihidden="false" unhidewhenused="false" qformat="true" name="Title"&gt;   &lt;w:lsdexception locked="false" priority="1" name="Default Paragraph Font"&gt;   &lt;w:lsdexception locked="false" priority="11" semihidden="false" unhidewhenused="false" qformat="true" name="Subtitle"&gt;   &lt;w:lsdexception locked="false" priority="22" semihidden="false" unhidewhenused="false" qformat="true" name="Strong"&gt;   &lt;w:lsdexception locked="false" priority="20" semihidden="false" unhidewhenused="false" qformat="true" name="Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="59" semihidden="false" unhidewhenused="false" name="Table Grid"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Placeholder Text"&gt;   &lt;w:lsdexception locked="false" priority="1" semihidden="false" unhidewhenused="false" qformat="true" name="No Spacing"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Revision"&gt;   &lt;w:lsdexception locked="false" priority="34" semihidden="false" unhidewhenused="false" qformat="true" name="List Paragraph"&gt;   &lt;w:lsdexception locked="false" priority="29" semihidden="false" unhidewhenused="false" qformat="true" name="Quote"&gt;   &lt;w:lsdexception locked="false" priority="30" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Quote"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="19" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="21" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="31" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Reference"&gt;   &lt;w:lsdexception locked="false" priority="32" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Reference"&gt;   &lt;w:lsdexception locked="false" priority="33" semihidden="false" unhidewhenused="false" qformat="true" name="Book Title"&gt;   &lt;w:lsdexception locked="false" priority="37" name="Bibliography"&gt;   &lt;w:lsdexception locked="false" priority="39" qformat="true" name="TOC Heading"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;style&gt; &lt;!--  /* Font Definitions */  @font-face 	{font-family:"Angsana New"; 	panose-1:2 2 6 3 5 4 5 2 3 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:16777219 0 0 0 65537 0;} @font-face 	{font-family:"Cordia New"; 	panose-1:2 11 3 4 2 2 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:16777219 0 0 0 65537 0;} @font-face 	{font-family:"Cambria Math"; 	panose-1:2 4 5 3 5 4 6 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:-1610611985 1107304683 0 0 159 0;} @font-face 	{font-family:Calibri; 	panose-1:2 15 5 2 2 2 4 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:-1610611985 1073750139 0 0 159 0;}  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-unhide:no; 	mso-style-qformat:yes; 	mso-style-parent:""; 	margin-top:0in; 	margin-right:0in; 	margin-bottom:10.0pt; 	margin-left:0in; 	line-height:115%; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	mso-bidi-font-size:14.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:Calibri; 	mso-fareast-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Cordia New"; 	mso-bidi-theme-font:minor-bidi;} .MsoChpDefault 	{mso-style-type:export-only; 	mso-default-props:yes; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:Calibri; 	mso-fareast-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Cordia New"; 	mso-bidi-theme-font:minor-bidi;} .MsoPapDefault 	{mso-style-type:export-only; 	margin-bottom:10.0pt; 	line-height:115%;} @page Section1 	{size:8.5in 11.0in; 	margin:1.0in 1.0in 1.0in 1.0in; 	mso-header-margin:.5in; 	mso-footer-margin:.5in; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --&gt; &lt;/style&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:ตารางปกติ; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:""; 	mso-padding-alt:0in 5.4pt 0in 5.4pt; 	mso-para-margin-top:0in; 	mso-para-margin-right:0in; 	mso-para-margin-bottom:10.0pt; 	mso-para-margin-left:0in; 	line-height:115%; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	mso-bidi-font-size:14.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:"Times New Roman"; 	mso-fareast-theme-font:minor-fareast; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin;} &lt;/style&gt; &lt;![endif]--&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; text-indent: 0.5in; line-height: normal;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:16pt;"  &gt;Internet applications &lt;span lang="TH"&gt;ส่วนใหญ่ใช้ &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;TCP &lt;span lang="TH"&gt;แต่ก็มีข้อเสียเพราะการตรวจสอบความถูกต้องของข้อมูลของ &lt;/span&gt;TCP &lt;span lang="TH"&gt;นั้นทำให้เสียเวลาและประสิทธิภาพไป ซึ่งส่วนใหญ่จะสูญเสียไปกลับการยืนยันความถูกต้องและการส่งข้อมูลใหม่ทำให้ &lt;/span&gt;TCP &lt;span lang="TH"&gt;มีความช้า มี &lt;/span&gt;applications &lt;span lang="TH"&gt;มากมายต้องการส่งข้อมูลที่มีจำนวนมากที่ไม่ต้องการยืนยันความถูกต้องจึงทำให้ถ้าใช้ &lt;/span&gt;TCP &lt;span lang="TH"&gt;จะทำให้เกิดการช้าในการส่งข้อมูลที่มีจำนวนมาก ซึ่งบาง &lt;/span&gt;application &lt;span lang="TH"&gt;นั้นที่ให้บริการผ่าน &lt;/span&gt;TCP &lt;span lang="TH"&gt;ที่ทำงานช้าแต่ถูกต้องไม่ได้ เช่น &lt;/span&gt;application &lt;span lang="TH"&gt;จำพวก การส่งเสียงและวิดีโอเป็นต้น หรือการให้บริการพวก &lt;/span&gt;streaming &lt;span lang="TH"&gt;ต่างๆเพราะถ้าให้บริการผ่าน &lt;/span&gt;TCP &lt;span lang="TH"&gt;จะทำให้เกิดการช้าในการส่งข้อมูลทำให้เสียอารมณ์ในการรับชมและฟังได้&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; text-indent: 0.5in; line-height: normal;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://xilef325.files.wordpress.com/2009/07/tcp-versus-udp.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 420px; height: 317px;" src="http://xilef325.files.wordpress.com/2009/07/tcp-versus-udp.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:&amp;quot;;font-size:16pt;"  &gt;&lt;span lang="TH"&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;อ่านต่อ&lt;br /&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="Word.Document"&gt;&lt;meta name="Generator" content="Microsoft Word 12"&gt;&lt;meta name="Originator" content="Microsoft Word 12"&gt;&lt;link rel="File-List" href="file:///C:%5CDOCUME%7E1%5Cseng%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_filelist.xml"&gt;&lt;link rel="themeData" href="file:///C:%5CDOCUME%7E1%5Cseng%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_themedata.thmx"&gt;&lt;link rel="colorSchemeMapping" href="file:///C:%5CDOCUME%7E1%5Cseng%5CLOCALS%7E1%5CTemp%5Cmsohtmlclip1%5C01%5Cclip_colorschememapping.xml"&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:trackmoves/&gt;   &lt;w:trackformatting/&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:donotpromoteqf/&gt;   &lt;w:lidthemeother&gt;EN-US&lt;/w:LidThemeOther&gt;   &lt;w:lidthemeasian&gt;X-NONE&lt;/w:LidThemeAsian&gt;   &lt;w:lidthemecomplexscript&gt;TH&lt;/w:LidThemeComplexScript&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:applybreakingrules/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;    &lt;w:splitpgbreakandparamark/&gt;    &lt;w:dontvertaligncellwithsp/&gt;    &lt;w:dontbreakconstrainedforcedtables/&gt;    &lt;w:dontvertalignintxbx/&gt;    &lt;w:word11kerningpairs/&gt;    &lt;w:cachedcolbalance/&gt;   &lt;/w:Compatibility&gt;   &lt;w:browserlevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;   &lt;m:mathpr&gt;    &lt;m:mathfont val="Cambria Math"&gt;    &lt;m:brkbin val="before"&gt;    &lt;m:brkbinsub val="--"&gt;    &lt;m:smallfrac val="off"&gt;    &lt;m:dispdef/&gt;    &lt;m:lmargin val="0"&gt;    &lt;m:rmargin val="0"&gt;    &lt;m:defjc val="centerGroup"&gt;    &lt;m:wrapindent val="1440"&gt;    &lt;m:intlim val="subSup"&gt;    &lt;m:narylim val="undOvr"&gt;   &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" defunhidewhenused="true" defsemihidden="true" defqformat="false" defpriority="99" latentstylecount="267"&gt;   &lt;w:lsdexception locked="false" priority="0" semihidden="false" unhidewhenused="false" qformat="true" name="Normal"&gt;   &lt;w:lsdexception locked="false" priority="9" semihidden="false" unhidewhenused="false" qformat="true" name="heading 1"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 2"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 3"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 4"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 5"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 6"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 7"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 8"&gt;   &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 9"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 1"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 2"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 3"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 4"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 5"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 6"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 7"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 8"&gt;   &lt;w:lsdexception locked="false" priority="39" name="toc 9"&gt;   &lt;w:lsdexception locked="false" priority="35" qformat="true" name="caption"&gt;   &lt;w:lsdexception locked="false" priority="10" semihidden="false" unhidewhenused="false" qformat="true" name="Title"&gt;   &lt;w:lsdexception locked="false" priority="1" name="Default Paragraph Font"&gt;   &lt;w:lsdexception locked="false" priority="11" semihidden="false" unhidewhenused="false" qformat="true" name="Subtitle"&gt;   &lt;w:lsdexception locked="false" priority="22" semihidden="false" unhidewhenused="false" qformat="true" name="Strong"&gt;   &lt;w:lsdexception locked="false" priority="20" semihidden="false" unhidewhenused="false" qformat="true" name="Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="59" semihidden="false" unhidewhenused="false" name="Table Grid"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Placeholder Text"&gt;   &lt;w:lsdexception locked="false" priority="1" semihidden="false" unhidewhenused="false" qformat="true" name="No Spacing"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" unhidewhenused="false" name="Revision"&gt;   &lt;w:lsdexception locked="false" priority="34" semihidden="false" unhidewhenused="false" qformat="true" name="List Paragraph"&gt;   &lt;w:lsdexception locked="false" priority="29" semihidden="false" unhidewhenused="false" qformat="true" name="Quote"&gt;   &lt;w:lsdexception locked="false" priority="30" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Quote"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 1"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 2"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 3"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 4"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 5"&gt;   &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 6"&gt;   &lt;w:lsdexception locked="false" priority="19" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="21" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Emphasis"&gt;   &lt;w:lsdexception locked="false" priority="31" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Reference"&gt;   &lt;w:lsdexception locked="false" priority="32" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Reference"&gt;   &lt;w:lsdexception locked="false" priority="33" semihidden="false" unhidewhenused="false" qformat="true" name="Book Title"&gt;   &lt;w:lsdexception locked="false" priority="37" name="Bibliography"&gt;   &lt;w:lsdexception locked="false" priority="39" qformat="true" name="TOC Heading"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;style&gt; &lt;!--  /* Font Definitions */  @font-face 	{font-family:"Angsana New"; 	panose-1:2 2 6 3 5 4 5 2 3 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:16777219 0 0 0 65537 0;} @font-face 	{font-family:"Cordia New"; 	panose-1:2 11 3 4 2 2 2 2 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:16777219 0 0 0 65537 0;} @font-face 	{font-family:"Cambria Math"; 	panose-1:2 4 5 3 5 4 6 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:roman; 	mso-font-pitch:variable; 	mso-font-signature:-1610611985 1107304683 0 0 159 0;} @font-face 	{font-family:Calibri; 	panose-1:2 15 5 2 2 2 4 3 2 4; 	mso-font-charset:0; 	mso-generic-font-family:swiss; 	mso-font-pitch:variable; 	mso-font-signature:-1610611985 1073750139 0 0 159 0;}  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal 	{mso-style-unhide:no; 	mso-style-qformat:yes; 	mso-style-parent:""; 	margin-top:0in; 	margin-right:0in; 	margin-bottom:10.0pt; 	margin-left:0in; 	line-height:115%; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	mso-bidi-font-size:14.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:Calibri; 	mso-fareast-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Cordia New"; 	mso-bidi-theme-font:minor-bidi;} .MsoChpDefault 	{mso-style-type:export-only; 	mso-default-props:yes; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:Calibri; 	mso-fareast-theme-font:minor-latin; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin; 	mso-bidi-font-family:"Cordia New"; 	mso-bidi-theme-font:minor-bidi;} .MsoPapDefault 	{mso-style-type:export-only; 	margin-bottom:10.0pt; 	line-height:115%;} @page Section1 	{size:8.5in 11.0in; 	margin:1.0in 1.0in 1.0in 1.0in; 	mso-header-margin:.5in; 	mso-footer-margin:.5in; 	mso-paper-source:0;} div.Section1 	{page:Section1;} --&gt; &lt;/style&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable 	{mso-style-name:ตารางปกติ; 	mso-tstyle-rowband-size:0; 	mso-tstyle-colband-size:0; 	mso-style-noshow:yes; 	mso-style-priority:99; 	mso-style-qformat:yes; 	mso-style-parent:""; 	mso-padding-alt:0in 5.4pt 0in 5.4pt; 	mso-para-margin-top:0in; 	mso-para-margin-right:0in; 	mso-para-margin-bottom:10.0pt; 	mso-para-margin-left:0in; 	line-height:115%; 	mso-pagination:widow-orphan; 	font-size:11.0pt; 	mso-bidi-font-size:14.0pt; 	font-family:"Calibri","sans-serif"; 	mso-ascii-font-family:Calibri; 	mso-ascii-theme-font:minor-latin; 	mso-fareast-font-family:"Times New Roman"; 	mso-fareast-theme-font:minor-fareast; 	mso-hansi-font-family:Calibri; 	mso-hansi-theme-font:minor-latin;} &lt;/style&gt; &lt;![endif]--&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:16pt;"   lang="TH"&gt;เพราะการส่งข้อมูลที่มีขนาดใหญ่เหมาะที่จะส่งแบบ &lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:16pt;"  &gt;UDP &lt;span lang="TH"&gt;เพราะส่งข้อมูลเป็น &lt;/span&gt;User Datagram Protocol (UDP)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:16pt;"   lang="TH"&gt;ซึ่ง &lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:16pt;"  &gt;UDP &lt;span lang="TH"&gt;จะไม่ไว้วางใจในการส่งเพราะไม่รับรองว่าข้อมูลที่ส่งจะถึงผู้รับแน่นอน ไม่สามารถตรวจสอบหาข้อผิดพลาดได้และ &lt;/span&gt;UDP &lt;span lang="TH"&gt;ก็ดีกว่า &lt;/span&gt;TCP &lt;span lang="TH"&gt;ตรงที่สามารถส่งข้อมูลได้เร็วกว่าดังนั้นจึงเหมาะสำหรับ &lt;/span&gt;application &lt;span lang="TH"&gt;จำพวก &lt;/span&gt;streaming &lt;span lang="TH"&gt;เช่น เสียง และวิดีโอ นอกจากนี้ &lt;/span&gt;UDP &lt;span lang="TH"&gt;ยังสามารถเติมข้อมูลในส่วนที่สูญหายได้อีกด้วย&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-8090561001132778940?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/8090561001132778940/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/12/udp.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/8090561001132778940'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/8090561001132778940'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/12/udp.html' title='UDP'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-7867296530706932898</id><published>2009-12-03T05:29:00.000-08:00</published><updated>2009-12-03T05:41:00.436-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ide'/><category scheme='http://www.blogger.com/atom/ns#' term='ภาษาจาวา'/><category scheme='http://www.blogger.com/atom/ns#' term='NetBean'/><category scheme='http://www.blogger.com/atom/ns#' term='JAVA'/><title type='text'>สร้าง Project ใน IDE</title><content type='html'>ขั้นตอนในการสร้างโปรเจ็ค &lt;ol&gt;&lt;li&gt;ทำการเปิดโปรแกรม NetBeans IDE ขึ้นมา.&lt;/li&gt;&lt;/ol&gt; &lt;ul&gt;&lt;li&gt;ใน Microsoft Windows คุณสร้างเปิดมันได้โดยการเลือกใน Start menu.&lt;/li&gt;&lt;li&gt;ใน Solaris OS และ Linux คุณสามารถรันได้โดยการเข้าไปในไดเรกทอรี่ bin  แล้วพิมพ์ว่า  ./netbeans.&lt;/li&gt;&lt;li&gt;ใน Mac OS X ให้ทำการ icon NetBeans&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;2.หลังจากที่ทำการเปิด NetBeans IDE แล้วให้เลือก File | New Project.&lt;/p&gt; &lt;p align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_tps13fpd8CQ/Sxe92pBsC2I/AAAAAAAAAB0/hY0K9GM-E8Q/s1600-h/netbean1.JPG"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 430px; height: 181px;" src="http://4.bp.blogspot.com/_tps13fpd8CQ/Sxe92pBsC2I/AAAAAAAAAB0/hY0K9GM-E8Q/s200/netbean1.JPG" alt="" id="BLOGGER_PHOTO_ID_5411002223732460386" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;รูปการเลือก File | New Project&lt;br /&gt;&lt;span id="fullpost"&gt;&lt;br /&gt;อ่านต่อ&lt;br /&gt;&lt;div style="text-align: center;"&gt;3.ใน New Project wizard ให้ทำการเลือก General  แล้วเลือก  Java Application ตามรูปภาพ&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_tps13fpd8CQ/Sxe-DHesRgI/AAAAAAAAAB8/32_hQFz7avw/s1600-h/netbean2.JPG"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 436px; height: 296px;" src="http://2.bp.blogspot.com/_tps13fpd8CQ/Sxe-DHesRgI/AAAAAAAAAB8/32_hQFz7avw/s200/netbean2.JPG" alt="" id="BLOGGER_PHOTO_ID_5411002438065604098" border="0" /&gt;&lt;/a&gt;&lt;/div&gt; &lt;p&gt;&lt;br /&gt;&lt;/p&gt; &lt;p align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="center"&gt;รูปการเปิดNetBeans IDEแล้วเลือก New Project wizard&lt;/p&gt; &lt;p&gt;4.ในการกำหนดค่าในส่วน Name and Location ให้กำหนดค่าตามดังต่อไปนี้&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;ในช่อง  Project Name พิมพ์ว่า Hello World App.&lt;/li&gt;&lt;li&gt;ในช่อง  Create Main Class ให้พิมพ์ helloworldapp.HelloWorldApp.&lt;/li&gt;&lt;li&gt;เลือกถูกในช่อง Main Project&lt;/li&gt;&lt;/ul&gt; &lt;p align="center"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_tps13fpd8CQ/Sxe-UwOTfdI/AAAAAAAAACE/M0r1YPtvOVY/s1600-h/netbean3.JPG"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 420px; height: 285px;" src="http://4.bp.blogspot.com/_tps13fpd8CQ/Sxe-UwOTfdI/AAAAAAAAACE/M0r1YPtvOVY/s200/netbean3.JPG" alt="" id="BLOGGER_PHOTO_ID_5411002741060500946" border="0" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p align="center"&gt;รูปของการกำหนดค่าในส่วน Name and Location&lt;/p&gt; &lt;p&gt;5.จากนั้น Click ปุ่ม Finish.&lt;/p&gt; &lt;p&gt;project ได้ถูกสร้างขึ้นและเปิดใน IDE. ให้คุณสังเกตตามต่อไปนี้&lt;/p&gt; &lt;ul&gt;&lt;li&gt;หน้าต่าง Projects  ซึ่งเป็นหน้าต่างแบบโครงสร้างต้นไม้ในการเลือกส่วนต่างๆ มีทั้ง  source  files, libraries คุณสามารถเลือกโค้ดได้จากหน้าต่างนี้&lt;/li&gt;&lt;li&gt;หน้าต่าง Source Editor ใช้ในการแก้ไขโค้ดในที่นี้ได้เปิด file  HelloWorldApp&lt;/li&gt;&lt;li&gt; หน้าต่างNavigator คุณสามารถเลือกคุณสมบัติของ class ได้อย่างสะดวก&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_tps13fpd8CQ/Sxe-eDwBS4I/AAAAAAAAACM/KWKEvbyQJos/s1600-h/netbean4.JPG"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 432px; height: 250px;" src="http://3.bp.blogspot.com/_tps13fpd8CQ/Sxe-eDwBS4I/AAAAAAAAACM/KWKEvbyQJos/s200/netbean4.JPG" alt="" id="BLOGGER_PHOTO_ID_5411002900921011074" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt; &lt;p align="center"&gt;รูปหน้าต่างๆที่ได้เปิดขึ้น&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-7867296530706932898?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/7867296530706932898/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/12/project-ide_03.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/7867296530706932898'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/7867296530706932898'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/12/project-ide_03.html' title='สร้าง Project ใน IDE'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_tps13fpd8CQ/Sxe92pBsC2I/AAAAAAAAAB0/hY0K9GM-E8Q/s72-c/netbean1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-8834007521357540259</id><published>2009-11-30T07:21:00.000-08:00</published><updated>2009-11-30T07:24:28.389-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ide'/><category scheme='http://www.blogger.com/atom/ns#' term='จาวา'/><category scheme='http://www.blogger.com/atom/ns#' term='Hello World'/><title type='text'>สร้าง Application แรกของคุณ</title><content type='html'>&lt;p&gt;Application แรกของคุณชื่อว่า HelloWorldApp ซึ่งมันจะทำแสดงผลประโยคว่า  “Hello World!”. โดยที่เริ่มสร้างตามนี้:&lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;strong&gt;สร้าง&lt;/strong&gt;&lt;strong&gt; IDE project&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;เมื่อคุณได้สร้างโครงการ  IDE ,  คุณได้สร้างสภาพแวดล้อมสำหรับสร้างและรัน  applications ของคุณแล้ว. การใช้  IDE จะช่วยลดปัญหาที่เกี่ยวการตั้งค่าในการพัฒนา  คุณสามารถสร้างและรันภายในคำสั่งเดียวของ IDE  เท่านั้นซึ่งมันทำให้ง่ายมากสำหรับการพัฒนา&lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;strong&gt;เพิ่ม&lt;/strong&gt;&lt;strong&gt; code ในการสร้าง&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;p&gt;โค้ดที่เพิ่มนั้นจะเขียนโดยภาษา  Java,นั้นหมายความว่าคุณต้องเข้าใจมันนั้นเอง .ซึ่งสร้างใน IDE project  ,  โครงสร้างของโค้ดจะถูกสร้างโดยอัตโนมัติ.  คุณสามารถแก้ไขและเพิ่มข้อความประโยคว่า “Hello World!”&lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Compile source code เพื่อเปลี่ยนเป็นไฟล์  .class &lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;IDE จะทำการ complie โดยใช้คำสั่ง javac ซึ่งเป็น complier ของ Java   และมันจะทำการแปลงจากชุดคำสั่งภาษาจาวา ให้เป็นภาษาเครื่องซึ่งอยู่ในรูป &lt;em&gt;bytecodes&lt;/em&gt;.&lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Run โปรแกรม&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;IDE จะจัดการใช้คำสั่งในการรันเองคือคำสั่ง java เพื่อใช้รัน  application ของคุณนั้นเอง&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-8834007521357540259?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/8834007521357540259/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/application.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/8834007521357540259'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/8834007521357540259'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/application.html' title='สร้าง Application แรกของคุณ'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-2268874713696441443</id><published>2009-11-27T04:08:00.000-08:00</published><updated>2009-11-27T04:10:49.326-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ide'/><category scheme='http://www.blogger.com/atom/ns#' term='ภาษาจาวา'/><category scheme='http://www.blogger.com/atom/ns#' term='Java SE'/><category scheme='http://www.blogger.com/atom/ns#' term='NetBean'/><title type='text'>ตรวจสอบความพร้อมก่อน "Hello World!"</title><content type='html'>&lt;p&gt;ในการเขียนโปรแกรมแรกคุณจะต้องมีสิ่งต้องไปนี้:&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;1.Java SE Development Kit 6 (JDK 6) &lt;/strong&gt;&lt;/p&gt; &lt;ul&gt;&lt;li&gt;สำหรับ Microsoft Windows, Solaris OS, and Linux: &lt;a href="http://java.sun.com/javase/6/download.jsp"&gt;http://java.sun.com/javase/6/download.jsp&lt;/a&gt;&lt;/li&gt;&lt;li&gt;สำหรับ Mac OS X: &lt;a href="http://connect.apple.com/"&gt;http://connect.apple.com&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;p&gt;&lt;strong&gt;2.NetBeans IDE&lt;/strong&gt;&lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt; &lt;ul&gt;&lt;li&gt;สำหรับทุก  platform: &lt;a href="http://www.netbeans.info/downloads/index.php" target="_blank"&gt;http://www.netbeans.info/downloads/index.php&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-2268874713696441443?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/2268874713696441443/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/hello-world.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/2268874713696441443'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/2268874713696441443'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/hello-world.html' title='ตรวจสอบความพร้อมก่อน &quot;Hello World!&quot;'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-4859993887549504036</id><published>2009-11-26T12:45:00.000-08:00</published><updated>2009-11-26T12:57:10.526-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ภาษาจาวา'/><category scheme='http://www.blogger.com/atom/ns#' term='netbeans'/><category scheme='http://www.blogger.com/atom/ns#' term='Hello World'/><category scheme='http://www.blogger.com/atom/ns#' term='ภาษา java'/><category scheme='http://www.blogger.com/atom/ns#' term='JAVA'/><title type='text'>บทเรียน: Application "Hello World!"</title><content type='html'>&lt;p&gt;ในบทความนี้จะเป็นการรวมคำสั่งในการ complie และ run  อย่างง่ายโดยใช้โปรแกรมตัวอย่างคือ “Hello World!” ในบทเรียนแรกจะใช้  NetBeans IDE (integrated development environment)  ที่ดีและง่ายต่อการใช้งานในการพัฒนา software&lt;/p&gt; &lt;p&gt;NetBeans IDE run บนทุก platforms ซึ่งจะสอนการพัฒนาตามหัวข้อต่อไปนี้&lt;span id="more-59"&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;“Hello World!” โดยใช้ NetBeans IDE &lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;p&gt;คำแนะนำสำหรับผู้ใช้ NetBeans IDE. NetBeans IDE runs บน Java platform,  นั้นหมายความว่าคุณสามารถทำงานได้ทุก platform ที่มีการติดตั้ง JDK 6 .  ซึ่งได้แก่Microsoft Windows, Solaris OS, Linux, and Mac OS X.  เราขอแนะนำให้คุณใช้ NetBeans IDE ผ่านคำสั่ง command line&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;a href="http://java.sun.com/docs/books/tutorial/getStarted/cupojava/win32.html" target="_top"&gt;“Hello World!” สำหรับ Microsoft Windows&lt;/a&gt; &lt;/strong&gt;&lt;/p&gt; &lt;p&gt;การใช้คำสั่งสำหรับผู้ใช้ Windows XP Professional, Windows XP Home,  Windows Server 2003, Windows 2000 Professional, and Windows Vista.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;a href="http://java.sun.com/docs/books/tutorial/getStarted/cupojava/unix.html" target="_top"&gt;“Hello World!” สำหรับ Solaris OS and Linux&lt;/a&gt; &lt;/strong&gt;&lt;/p&gt; &lt;p&gt;การใช้คำสั่งสำหรับผู้ใช้ Solaris OS และ Linux.&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-4859993887549504036?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/4859993887549504036/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/application-hello-world.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/4859993887549504036'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/4859993887549504036'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/application-hello-world.html' title='บทเรียน: Application &quot;Hello World!&quot;'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-1401295039645267473</id><published>2009-11-25T03:58:00.000-08:00</published><updated>2009-11-25T04:00:27.134-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ภาษา java'/><category scheme='http://www.blogger.com/atom/ns#' term='java platform'/><category scheme='http://www.blogger.com/atom/ns#' term='JAVA'/><title type='text'>Java Technology ต้องการจะเปลี่ยนอะไรในชีวิตคุณ?</title><content type='html'>พวกเราไม่สามารถสัญญาอนาคตการงานของคุณได้ถ้าคุณเรียนรู้ภาษา Java ,  แต่มันทำให้การสร้างโปรแกรมของคุณดีขึ้นและมีความต้องการน้อยเหมือนภาษาอื่น  พวกเราเชื่อว่า Java Technology จะช่วยคุณในสิ่งต่อไปนี้&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;เริ่มต้นอย่างรวดเร็ว&lt;/strong&gt;: ภาษา Java  เป็นภาษาเชิงวัตถุที่ทรงพลัง, มันง่ายต่อการเรียนรู้  โดยเฉพาะโปรแกรมเมอร์ที่คุ้นเคยกับภาษา C หรือ C++&lt;/li&gt;&lt;li&gt;&lt;strong&gt;การเขียนโค้ดที่น้อยลง&lt;/strong&gt;:  ถ้าเปรียบเทียบโครงสร้างของโปรแกรม (นับจำนวน class จำนวนmethod  หรืออย่างอื่น) โปรแกรมที่เขียนด้วยภาษาJava จะเขียนน้อยลงถึง 4  เท่าเมื่อเขียนโปรแกรมเดียวกันที่เขียนในภาษา C++&lt;/li&gt;&lt;li&gt;&lt;strong&gt;เขียนโค้ดได้ดีกว่า&lt;/strong&gt;: ภาษา Java  มีหลักการเข้ารหัสที่ดีกว่า,  และมีการจัดการหน่วยความจำขยะอัตโนมัติซึ่งทำให้ไม่เกิดความเสียหายต่อหน่วย ความจำ มันเป็นภาษาเชิงวัตถุ, มี Java Beans เป็นองค์ประกอบของสถาปัตยกรรม,  มันมีความAPI มากมายที่ง่ายต่อการนำกลับมาใช้ใหม่,  ง่ายต่อการทดสอบและหาข้อผิดพลาด&lt;/li&gt;&lt;li&gt;&lt;strong&gt;พัฒนาโปรแกรมเร็วขึ้น&lt;/strong&gt;: ภาษา Java ง่ายกว่า C++  คุณจะประหยัดเวลาในการเขียนโปรแกรมเป็นสองเท่าเมื่อเขียนมัน  โปรแกรมของคุณจะมีจำนวนบรรทัดที่น้อยกว่า&lt;/li&gt;&lt;li&gt;&lt;strong&gt;หลีกเลี่ยงการยึดติด &lt;/strong&gt;&lt;strong&gt;platform&lt;/strong&gt;:คุณ สามารถเก็บโปรแกรมของคุณเป็น library ใช้กับภาษาอื่น&lt;/li&gt;&lt;li&gt;&lt;strong&gt;เขียนครั้งเดียวสามารถรันได้ทุกที&lt;/strong&gt;: เพราะ application  ที่เขียนโดย Java เมื่อ complie จะกลายเป็น bytecodes  ซึ่งสามารถรันได้ทุกที่ Java platform&lt;/li&gt;&lt;li&gt;&lt;strong&gt;ง่ายต่อการกระจาย &lt;/strong&gt;&lt;strong&gt;software&lt;/strong&gt;: Java  Web รันได้ง่ายเพียงคลิกเดียว มีการตรวจสอบเวอร์ชันแต่ติดตั้งอัตโนมัติ&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-1401295039645267473?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/1401295039645267473/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/java-technology.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/1401295039645267473'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/1401295039645267473'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/java-technology.html' title='Java Technology ต้องการจะเปลี่ยนอะไรในชีวิตคุณ?'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-1890520712228014951</id><published>2009-11-24T08:37:00.000-08:00</published><updated>2009-11-24T08:40:00.593-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='class'/><category scheme='http://www.blogger.com/atom/ns#' term='ภาษาจาวา'/><category scheme='http://www.blogger.com/atom/ns#' term='ภาษา java'/><category scheme='http://www.blogger.com/atom/ns#' term='jdk'/><category scheme='http://www.blogger.com/atom/ns#' term='java platform'/><title type='text'>The Java PlatForm</title><content type='html'>&lt;p&gt;&lt;em&gt;Platform&lt;/em&gt; เป็นซอฟต์แวร์หรือฮาร์ดแวร์ที่จะใช้ทำงานของโปรแกรม  ซึ่งดังที่กล่าวไปแล้ว platform ต่างๆที่นิยมเช่น Microsoft Windows,  Linux, Solaris OS, และ Mac OS. ซึ่งระบบปฏิบัติการต่างๆ จะทำงานระดับ  hardware แต่ Java Platform  จะทำงานในระดับซอฟต์แวร์ซึ่งอยู่เหนือระดับฮาร์ดแวร์&lt;span id="more-50"&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;Java platform 2 องค์ประกอบคือ:&lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;em&gt;Java Virtual Machine&lt;/em&gt;&lt;/li&gt;&lt;li&gt;&lt;em&gt;Java Application Programming Interface&lt;/em&gt; (API)&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;หลังจากที่ได้แนะนำ platform java ไปแล้วว่าทำงานอยู่ระดับ software  ที่มีการติดต่อกับระดับฮาร์ดแวร์&lt;/p&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;p&gt;API เป็นส่วนประกอบมากมายของซอฟต์แวร์ ที่ให้บริการที่ทำงานร่วมกัน  มันถูกจัดเป็นกลุ่ม class ที่สัมพันธ์กันอีกทั้งยังมี class interface ซึ่ง  libraries เหล่านี้ถูกรวมเป็น package ที่มีความสัมพันธ์กันอยู่ด้วยกัน  ในครั้งต่อไปจะเน้นบางฟังก์ชันที่ให้บริการใน API&lt;/p&gt; &lt;p align="center"&gt;&lt;img class="aligncenter size-full wp-image-51" title="javaplatform" src="http://www.thaicoding.co.cc/wp-content/uploads/2009/10/javaplatform.JPG" alt="javaplatform" height="110" width="243" /&gt;&lt;/p&gt; &lt;p align="center"&gt;&lt;strong&gt;API และ Java Virtual Machine  มีการป้องกันการเข้าถึงโดยตรงของฮาร์ดแวร์&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Platform ที่อิสระของ Java platform  มีทำงานช้ากว่าโค้ดทั่วไป,แต่ข้อดีข้อ compiler และ virtual machine  มีประสิทธิภาพสูงและไม่มีความอันตราย&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-1890520712228014951?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/1890520712228014951/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/java-platform.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/1890520712228014951'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/1890520712228014951'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/java-platform.html' title='The Java PlatForm'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-2309354416643746932</id><published>2009-11-23T09:33:00.000-08:00</published><updated>2009-11-23T09:34:52.677-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ภาษาจาวา'/><category scheme='http://www.blogger.com/atom/ns#' term='programming'/><category scheme='http://www.blogger.com/atom/ns#' term='ภาษา java'/><category scheme='http://www.blogger.com/atom/ns#' term='jdk'/><category scheme='http://www.blogger.com/atom/ns#' term='JAVA'/><title type='text'>The Java Programming Language</title><content type='html'>&lt;p&gt;ภาษา Java เป็นภาษาระดับสูงซึ่งมีความสามารถดังต่อไปนี้&lt;/p&gt; &lt;table border="0" cellpadding="0"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt;  Simple&lt;/td&gt; &lt;td&gt;  Architecture neutral&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;  Object oriented&lt;/td&gt; &lt;td&gt;  Portable&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;  Distributed&lt;/td&gt; &lt;td&gt;  High performance&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;  Multithreaded&lt;/td&gt; &lt;td&gt;  Robust&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;  Dynamic&lt;/td&gt; &lt;td&gt;  Secure&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; ในภาษา Java ,โค้ดทั้งหมดที่เขียนขึ้นจะเป็น plain text  หรือไฟล์ข้อความซึ่งมีนามสกุลไฟล์เป็น .java หลังจากที่ source code  ผ่านการคอมไพล์แล้วจะได้ .class โดยใช้คำสั่ง javac ไฟล์ .class  จะไม่มีคำสั่งที่เกี่ยวข้องกับกับ processor ของเครื่อง แต่จะเป็น bytecode  ซึ่งเป็นภาษาเครื่องรันโดย Java Virtual Machine&lt;sup&gt;&lt;a href="http://java.sun.com/docs/books/tutorial/getStarted/intro/definition.html#FOOT"&gt;1&lt;/a&gt;&lt;/sup&gt;  (Java VM) ซึ่งตัวคำสั่งหรือโปรแกรม java จะเป็นตัวรัน application  นี้ซึ่งเป็น .class นี้&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;p align="center"&gt;&lt;img class="aligncenter size-medium wp-image-47" title="anyway" src="http://www.thaicoding.co.cc/wp-content/uploads/2009/10/anyway-300x53.jpg" alt="anyway" height="80" width="370" /&gt;&lt;/p&gt; &lt;p align="center"&gt;&lt;strong&gt;ภาพรวมการประมวลผลในการพัฒนา&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;เพราะ Java VM ทำงานในระบบปฏิบัติการต่างๆที่ทำงานต่างกัน แต่ใช้ไฟล์  .class อันเดียวในการรันในระบบปฏิบัติการต่างๆ เช่น Microsoft windows,  Solaris, Linux เป็นต้น จึงต้องมี Java Hotspot virtual machine  เพิ่มเพื่อประสิทธิภาพแก้ปัญหาคอขวด การ recompiling&lt;/p&gt; &lt;p align="center"&gt;&lt;img class="aligncenter size-medium wp-image-48" title="platform" src="http://www.thaicoding.co.cc/wp-content/uploads/2009/10/platform-300x285.jpg" alt="platform" height="285" width="300" /&gt;&lt;/p&gt; &lt;strong&gt;รูปภาพการแสดงให้เห็นถึงการรันได้ในทุกระบบ ปฏิบัติการ&lt;/strong&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-2309354416643746932?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/2309354416643746932/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/java-programming-language.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/2309354416643746932'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/2309354416643746932'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/java-programming-language.html' title='The Java Programming Language'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-1783159425182013125</id><published>2009-11-17T10:35:00.000-08:00</published><updated>2009-11-17T10:37:12.339-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ภาษาจาวา'/><category scheme='http://www.blogger.com/atom/ns#' term='jdk'/><category scheme='http://www.blogger.com/atom/ns#' term='การติดตั้ง JDK1.6'/><category scheme='http://www.blogger.com/atom/ns#' term='JAVA'/><title type='text'>การติดตั้ง JDK1.6</title><content type='html'>&lt;ol&gt;&lt;li&gt;ดาวน์โหลดโปรแกรม JDK 1.6 จากเว็บไซต์  http://java.sun.com/javase/downloads/index.jsp&lt;/li&gt;&lt;li&gt;ดับเบิ้ลคลิกที่ตัวติดตั้งที่ดาวน์โหลดมาคือjdk-6-windows-i586.exe&lt;/li&gt;&lt;li&gt;จากนั้นจะมีหน้าต่างลิขสิทธิ์ให้กด Accept ดังรูป&lt;img class="aligncenter size-medium wp-image-40" title="1" src="http://www.thaicoding.co.cc/wp-content/uploads/2009/09/1-300x230.jpg" alt="1" height="304" width="343" /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;ol&gt;&lt;li&gt;หลังจากนั้นจะมีหน้าให้เลือกรูปแบบการติดตั้งให้กด next ได้เลย&lt;img class="aligncenter size-medium wp-image-41" title="2" src="http://www.thaicoding.co.cc/wp-content/uploads/2009/09/2-300x230.jpg" alt="2" height="300" width="392" /&gt;&lt;/li&gt;&lt;li&gt;หลังจากนั้นก็รอเวลาในการติดตั้งจนเสร็จ&lt;/li&gt;&lt;li&gt;หลังจากนั้นตั้งค่าตัวแปรระบบให้คลิกขวาที่ my computer แล้วคลิกที่tab  advance จากนั้นคลิกที่ Environment  Variables แล้วคลิก new ที่ User  variable ให้ตั้งชื่อเป็น JAVA_HOME แล้ว ใส่ค่า value เป็น C:\Program  Files\Java\jdk1.6.0 แล้วคลิก OK&lt;/li&gt;&lt;li&gt;จากนั้นก็สร้างตัวแปรระบบ ให้คลิกตัวแปร PATH ใน Systems variable  แล้วทำการใส่ ; C:\Program Files\Java\jdk1.6.0\bin ไว้หลังสุด แล้วคลิก OK  เป็นอันเสร็จสิ้น&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-1783159425182013125?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/1783159425182013125/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/jdk16.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/1783159425182013125'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/1783159425182013125'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/jdk16.html' title='การติดตั้ง JDK1.6'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-7670012721727565708</id><published>2009-11-16T07:37:00.000-08:00</published><updated>2009-11-16T07:43:27.373-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ซัน ไมโครซิสเต็มส์'/><category scheme='http://www.blogger.com/atom/ns#' term='ภาษาจาวา'/><category scheme='http://www.blogger.com/atom/ns#' term='OOP'/><category scheme='http://www.blogger.com/atom/ns#' term='JAVA'/><title type='text'>ภาษาจาวา</title><content type='html'>&lt;p style="text-align: center;"&gt;&lt;a href="http://images.google.co.th/imgres?imgurl=http://enterpriselinuxlog.blogs.techtarget.com/files/2007/11/java.jpg&amp;amp;imgrefurl=http://itknowledgeexchange.techtarget.com/enterprise-linux/tag/java/&amp;amp;usg=__URVMcyV-xelakPPQqnqNJnOEs_8=&amp;amp;h=349&amp;amp;w=460&amp;amp;sz=25&amp;amp;hl=th&amp;amp;start=4&amp;amp;sig2=7qthJ4xgm78TBtnCe1AQYA&amp;amp;um=1&amp;amp;tbnid=ivvR7nC0AM4qbM:&amp;amp;tbnh=97&amp;amp;tbnw=128&amp;amp;prev=/images%3Fq%3Djava%26hl%3Dth%26client%3Dfirefox-a%26rlz%3D1R1GGGL_en___TH333%26sa%3DN%26um%3D1&amp;amp;ei=_F6qSsnNGYnu7APC0a3MBw"&gt;&lt;img style="border: 1px solid;" src="http://t1.gstatic.com/images?q=tbn:ivvR7nC0AM4qbM:http://enterpriselinuxlog.blogs.techtarget.com/files/2007/11/java.jpg" alt="" height="202" width="266" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p style="text-align: center;"&gt;ภาษาจาวา (Java programming language)  เป็นภาษาโปรแกรมเชิงวัตถุ พัฒนาโดย เจมส์ กอสลิง และวิศวกรคนอื่นๆ ที่ ซัน  ไมโครซิสเต็มส์ ภาษาจาวาถูกพัฒนาขึ้นในปี พ.ศ. 2534 (ค.ศ. 1991)  โดยเป็นส่วนหนึ่งของ โครงการกรีน (the Green Project) และสำเร็จออกสู่&lt;span id="more-36"&gt;&lt;/span&gt;สาธารณะในปี พ.ศ. 2538 (ค.ศ. 1995)  ซึ่งภาษานี้มีจุดประสงค์เพื่อใช้แทนภาษาซีพลัสพลัส (C++)  โดยรูปแบบที่เพิ่มเติมขึ้นคล้ายกับภาษาอ็อบเจกต์ทีฟซี (Objective-C)  แต่เดิมภาษานี้เรียกว่า ภาษาโอ๊ก (Oak)  ซึ่งตั้งชื่อตามต้นโอ๊กใกล้ที่ทำงานของ เจมส์ กอสลิง  แต่ว่ามีปัญหาทางลิขสิทธิ์ จึงเปลี่ยนไปใช้ชื่อ “จาวา” ซึ่งเป็นชื่อกาแฟแทน&lt;/p&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;p&gt;และแม้ว่าจะมีชื่อคล้ายกัน แต่ภาษาจาวาไม่มีความเกี่ยวข้องใด ๆ  กับภาษาจาวาสคริปต์ (JavaScript) ปัจจุบันมาตรฐานของภาษาจาวาดูแลโดย Java  Community Process ซึ่งเป็นกระบวนการอย่างเป็นทางการ  ที่อนุญาตให้ผู้ที่สนใจเข้าร่วมกำหนดความสามารถในจาวาแพลตฟอร์มได้&lt;/p&gt; &lt;p&gt;&lt;strong&gt;จุดมุ่งหมายหลัก 4 ประการ ในการพัฒนาจาวา คือ&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;1. ใช้ภาษาโปรแกรมเชิงวัตถุ&lt;br /&gt;2. ไม่ขึ้นกับแพลตฟอร์ม (สถาปัตยกรรม และ ระบบปฏิบัติการ)&lt;br /&gt;3. เหมาะกับการใช้ในระบบเครือข่าย พร้อมมีไลบรารีสนับสนุน&lt;br /&gt;4. เรียกใช้งานจากระยะไกลได้อย่างปลอดภัย&lt;br /&gt;&lt;strong&gt;จาวาแพลตฟอร์ม และ ภาษาจาวา&lt;/strong&gt;&lt;br /&gt;เนื่องจากชื่อที่เหมือนกัน และการเรียกขานที่มักจะพูดถึงพร้อมกันบ่อยๆ  ทำให้คนทั่วไป มักสับสนว่า ภาษาจาวา และ จาวาแพลตฟอร์ม เป็นสิ่งเดียวกัน&lt;/p&gt;&lt;p&gt;ในความเป็นจริงนั้น ทั้งสองสิ่ง แม้จะทำงานเสริมกัน  แต่ก็เป็นสิ่งที่แยกออกจากกัน&lt;/p&gt; &lt;p&gt;โดย ภาษาจาวานั้น คือภาษาสำหรับใช้เขียนโปรแกรมภาษาหนึ่ง  ดังที่ได้อธิบายไปข้างต้น ส่วน จาวาแพลตฟอร์มนั้น  คือสภาพแวดล้อมสำหรับการใช้งานโปรแกรมจาวา โดยมีองค์ประกอบหลักคือ  จาวาเวอร์ชวลแมชีน (Java virtual machine) และ ไลบรารีมาตรฐานจาวา (Java  standard library)&lt;/p&gt; &lt;p&gt;โปรแกรมที่ทำงานบนจาวาแพลตฟอร์มนั้น ไม่จำเป็นจะต้องสร้างด้วยภาษาจาวา  เช่น อาจจะใช้ ภาษาไพธอน (Python) หรือ ภาษาอื่นๆ ก็ได้&lt;/p&gt; &lt;p&gt;ส่วนภาษาจาวานั้น  ก็สามารถนำไปใช้พัฒนาโปรแกรมสำหรับแพลตฟอร์มอื่นได้เช่นเดียวกัน เช่น  คอมไพเลอร์ gcj สามารถคอมไพล์โปรแกรมที่เขียนด้วยภาษาจาวา ให้ทำงานได้  โดยไม่ต้องใช้ จาวาเวอร์ชวลแมชีน&lt;br /&gt;&lt;strong&gt;ประวัติ&lt;/strong&gt;&lt;br /&gt;* 1.0 (ค.ศ. 1996) — ออกครั้งแรกสุด&lt;br /&gt;* 1.1 (ค.ศ. 1997) — ปรับปรุงครั้งใหญ่ โดยเพิ่ม inner class&lt;br /&gt;* 1.2 (4 ธันวาคม, ค.ศ. 1998) — รหัส Playground  ด้านจาวาแพลตฟอร์มได้รับการเปลี่ยนแปลงครั้งใหญ่ใน API และ JVM (API  สำคัญที่เพิ่มมาคือ Java Collections Framework และ Swing; ส่วนใน JVM  เพิ่ม JIT compiler) แต่ตัวภาษาจาวานั้น เปลี่ยนแปลงเพียงเล็กน้อย  (เพิ่มคีย์เวิร์ด strictfp) และทั้งหมดถูกเรียกชื่อใหม่ว่า “จาวา 2″  แต่ระบบเลขรุ่นยังไม่เปลี่ยนแปลง&lt;br /&gt;* 1.3 (8 พฤษภาคม, ค.ศ. 2000) — รหัส Kestrel แก้ไขเล็กน้อย&lt;br /&gt;* 1.4 (13 กุมภาพันธ์, ค.ศ. 2002) — รหัส Merlin  เป็นรุ่นที่ถูกใช้งานมากที่สุดในปัจจุบัน (ขณะที่เขียน ค.ศ. 2005)&lt;br /&gt;* 5.0 (29 กันยายน, ค.ศ. 2004) — รหัส Tiger (เดิมทีนับเป็น 1.5)  เพิ่มคุณสมบัติใหม่ในภาษาจาวา เช่น Annotations  ซึ่งเป็นที่ถกเถียงกันว่านำมาจากภาษาซีชาร์ป ของบริษัทไมโครซอฟท์,  Enumerations, Varargs, Enhanced for loop, Autoboxing, และที่สำคัญคือ  Generics&lt;br /&gt;* 6.0 (11 ธันวาคม, ค.ศ. 2006) [1] — รหัส Mustang เป็นรุ่นในการพัฒนาของ  Java SDK 6.0 ที่ออกมาให้ทดลองใช้ในเดือนพฤศจิกายน ค.ศ. 2004&lt;br /&gt;* 7.0 (กำลังพัฒนา กำหนดออก ค.ศ. 2008) — รหัส Dolphin กำลังพัฒนา&lt;/p&gt; &lt;p&gt;อ้างอิง  http://th.wikipedia.org/wiki/%E0%B8%A0%E0%B8%B2%E0%B8%A9%E0%B8%B2%E0%B8%88%E0%B8%B2%E0%B8%A7%E0%B8%B2&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-7670012721727565708?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/7670012721727565708/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/blog-post_16.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/7670012721727565708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/7670012721727565708'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/blog-post_16.html' title='ภาษาจาวา'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-2386021095991707900</id><published>2009-11-14T06:04:00.000-08:00</published><updated>2009-11-14T06:05:24.494-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ประการตัวแปร'/><category scheme='http://www.blogger.com/atom/ns#' term='ภาษาซี'/><category scheme='http://www.blogger.com/atom/ns#' term='ตัวแปรภาษาซี'/><title type='text'>การประกาศตัวแปรในภาษาซี</title><content type='html'>การประการตัวแปร ตัวแปร คือ ชื่อที่ตั้งขึ้นมาเพื่อใช้อ้างอิงข้อมูล  หรือกล่าวได้อีกอย่างว่า คือ ชื่อที่ใช้เรียกแทน  พื้นที่เก็บข้อมูลในหน่วยความจำ นั่นคือ  การที่เราประกาศตัวแปรเท่ากับเรากำลังจองพื้นที่ใน  หน่วยความจำส่วนหนึ่งไว้แทนตัวแปรนั้น  โดยที่ขนาดที่จองพื้นที่ในหน่วยความจำจะมีขนาดเท่าไร  ขึ้นอยู่กับชนิดของตัวแปร ชนิดของตัวแปร  หรือชนิดของข้อมูลที่จะเก็บไว้ในหน่วยความจำที่ตัวแปรจองไว้ มีหลาย  ชนิดด้วยกัน  แต่ละชนิดก็มีความต้องการพื้นที่ในการเก็บข้อมูลมากน้อยแตกต่างกัน  ดังแสดงใน ตาราง  &lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;p&gt;&lt;img class="aligncenter size-medium wp-image-66" title="variable" src="http://www.thaicoding.co.cc/wp-content/uploads/2009/10/variable-300x159.jpg" alt="variable" height="273" width="408" /&gt;&lt;/p&gt; &lt;p&gt;ตัวแปรทุกตัวจะต้องมีการประกาศชื่อตัวแปร (variable name)  และชนิดของตัวแปรก่อน (variable type) จึงจะสามารถนำตัวแปรนั้นมาใช้งานได้  รูปแบบการประกาศตัวแปร&lt;/p&gt; &lt;p&gt;&lt;img class="aligncenter size-medium wp-image-65" title="declare" src="http://www.thaicoding.co.cc/wp-content/uploads/2009/10/declare-300x19.jpg" alt="declare" height="77" width="426" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;ตัวอย่าง int a ; หมายความว่า ประกาศตัวแปร a  เป็นตัวแปรที่ใช้สำหรับเก็บค่าที่เป็นเลขจำนวน เต็มที่มีค่าอยู่ระหว่าง  -2147483648 ถึง 2147483649 char ch=’A’; หมายความว่า ประกาศตัวแปร ch  เป็นตัวแปรที่เก็บค่าตัวอักษรเพียง 1 ตัว คือ ตัวอักษร ‘A’  หากมีตัวแปรชนิดเดียวกันมากกว่า 1 ตัวแปร สามารถประกาศได้ดังนี้&lt;/p&gt; &lt;p&gt;&lt;img class="aligncenter size-medium wp-image-67" title="multideclare" src="http://www.thaicoding.co.cc/wp-content/uploads/2009/10/multideclare-300x23.jpg" alt="multideclare" height="80" width="417" /&gt;&lt;/p&gt; &lt;p&gt;ตัวอย่าง float money,price ; หมายความว่า money และ price  เป็นตัวแปรที่ใช้สำหรับเก็บค่าที่ เป็นเลขทศนิยม  โดยจะให้ตำแหน่งทศนิยมได้ไม่เกิน 6 หลัก หากต้องการประกาศตัวแปร  พร้อมทั้งกำหนดค่าเริ่มต้นให้กับตัวแปรด้วย สามารถ ประกาศได้ดังนี้&lt;/p&gt; &lt;p&gt;&lt;img class="aligncenter size-medium wp-image-68" title="initial" src="http://www.thaicoding.co.cc/wp-content/uploads/2009/10/initial-300x22.jpg" alt="initial" height="63" width="446" /&gt;&lt;/p&gt; &lt;p&gt;ตัวอย่าง int num1=8; หมายความว่า ประกาศตัวแปร num1  เป็นตัวแปรที่เก็บค่าตัวเลขจำนวน เต็ม โดยให้ค่าเริ่มต้นเท่ากับ 8&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-2386021095991707900?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/2386021095991707900/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/blog-post_14.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/2386021095991707900'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/2386021095991707900'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/blog-post_14.html' title='การประกาศตัวแปรในภาษาซี'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-8923570629965840266</id><published>2009-11-13T09:12:00.000-08:00</published><updated>2009-11-13T09:14:00.449-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='โปรแกรมภาษาซี'/><category scheme='http://www.blogger.com/atom/ns#' term='โครงสร้างพื้นฐาน'/><category scheme='http://www.blogger.com/atom/ns#' term='ภาษาซี'/><title type='text'>ส่วนประกอบพื้นฐานของโปรแกรมภาษาซี</title><content type='html'>โปรแกรมเกิดจากการผสมกันของคำสั่งและสัญลักษณ์ มีโครงสร้างพื้นฐานดังนี้&lt;br /&gt;&lt;img class="aligncenter" src="http://z.hubpages.com/u/1078459_f248.jpg" alt="" /&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;strong&gt;ฟังก์ชัน main (จุดเริ่มต้นของโปรแกรม) &lt;/strong&gt;ในภาษาซีโปรแกรมที่จะทำการรันนั้นจะต้องอยู่ในฟังก์ชัน main ซึ่งเป็นข้อบังคับของภาษาซี&lt;span id="more-44"&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Pre-processor&lt;/strong&gt; คำสั่งเริ่มต้นก่อนถึงคำสั่งหลักของโปรแกรมเพื่อเป็นการกำหนดไฟล์ที่จะนำมา ร่วมประมวลผลหรือที่เรียกว่า Header file และการกำหนดค่าคงที่ต่างๆ&lt;/li&gt;&lt;li&gt;&lt;strong&gt;คำสั่ง &lt;/strong&gt;คือชุดคำสั่งต่างๆในภาษาซีนั้นเอง&lt;/li&gt;&lt;li&gt;&lt;strong&gt;คำอธิบายโปรแกรม&lt;/strong&gt; ในการเขียนโปรแกรมบ้างครั้งเราก็จำเป็นต้องมีคำอธิบายเพื่อที่จะได้ไม่เกิดความสับสน&lt;/li&gt;&lt;li&gt;&lt;strong&gt;ฟังก์ชันต่างๆ&lt;/strong&gt; ที่โปรแกรมเมอร์เขียนขึ้นเอง&lt;/li&gt;&lt;li&gt;&lt;strong&gt;โครงสร้างต่างๆ&lt;/strong&gt; ที่โปรแกรมเมอร์เขียนขึ้นเอง&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-8923570629965840266?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/8923570629965840266/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/blog-post_13.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/8923570629965840266'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/8923570629965840266'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/blog-post_13.html' title='ส่วนประกอบพื้นฐานของโปรแกรมภาษาซี'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-7565879135083665970</id><published>2009-11-11T22:55:00.000-08:00</published><updated>2009-11-11T22:58:36.199-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ภาษาซี'/><category scheme='http://www.blogger.com/atom/ns#' term='ตัวแปรในภาษาซี'/><category scheme='http://www.blogger.com/atom/ns#' term='การตั้งชื่อตัวแปร'/><category scheme='http://www.blogger.com/atom/ns#' term='ตัวแปร'/><title type='text'>ตัวแปรในภาษาซี</title><content type='html'>&lt;p&gt;ใน การเขียนโปรแกรมภาษาซีนั้นจำเป็นต้องมีการเก็บข้อมูลซึ่งในการเก็บข้อมูล ก็ต้องมีตัวแปรเอาไว้เก็บข้อมูลซึ่งตัวแปรก็มีชนิดต่างๆ เอาไว้เก็บข้อมูลที่ต่างกันซึ่งตัวแปรในภาษาซีมีดังนี้&lt;span id="more-33"&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="text-align: center;"&gt;&lt;img class="aligncenter" src="http://static.howstuffworks.com/gif/c-compile.gif" alt="http://static.howstuffworks.com/gif/c-compile.gif" border="0" height="377" width="325" /&gt;&lt;/p&gt; &lt;p&gt;ชนิดของข้อมูลในภาษาซี&lt;/p&gt; &lt;p&gt;1. ตัวแปรแบบ char เป็นตัวแปรที่ใช้สำหรับเก็บข้อมูลที่เป็นตัวอักษรขนาด 1 ตัว โดยใช้เนื้อที่ในการเก็บ 1&lt;/p&gt; &lt;p&gt;ไบต์ ตัวอย่างตัวแปรชนิดนี้ เช่น ‘A’ , ‘b’ , ‘1’ , ‘?’&lt;/p&gt; &lt;p&gt;2. ตัวแปรแบบ int เป็นตัวแปรที่ใช้สำหรับการเก็บค่าตัวเลขที่เป็นจำนวนเต็มที่มีค่าระหว่าง&lt;/p&gt; &lt;p&gt;-2147483648 ถึง 2147483649 ใช้เนื้อที่ในการเก็บ 4 ไบต์ ตัวอย่างตัวแปรชนิดนี้ เช่น 5 ,-10, 2000&lt;/p&gt; &lt;p&gt;3. ตัวแปรแบบ long เป็นตัวแปรที่เก็บค่าเป็นจำนวนเต็มที่มีจำนวนไบต์เป็น 2 เท่าของจำนวนเดิม (มักจะใช้เป็นคำนำหน้าตัวแปร เช่น long int)&lt;/p&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;p&gt;4. ตัวแปรแบบ float เป็นตัวแปรที่ใช้เก็บข้อมูลที่เป็นเลขทศนิยม โดยจะเก็บอยู่ในรูป a.b x 10e ใช้พื้นที่ใน&lt;/p&gt; &lt;p&gt;การเก็บ 4 ไบต์ มีค่าระหว่าง 3.4E-38 ถึง 3.4E+38 หรือ แสดงเป็น เลขทศนิยมได้ไม่เกิน 6 ตำแหน่ง&lt;/p&gt; &lt;p&gt;ตัวอย่างตัวแปรชนิดนี้ เช่น 10.625, -6.67&lt;/p&gt; &lt;p&gt;5. ตัวแปรแบบ double เป็นตัวแปรที่เก็บข้อมูลที่เป็นเลขทศนิยมเหมือนกับ float แต่จะใช้พื้นที่ในการเก็บ&lt;/p&gt; &lt;p&gt;มากกว่าเดิม 2 เท่า คือมีขนาด 8 ไบต์ มีค่าระหว่าง 1.7E-308 ถึง 1.7E+308&lt;/p&gt; &lt;p&gt;6. ตัวแปรแบบ unsigned แสดงว่าเป็นตัวแปรที่เก็บค่าเป็นจำนวนเต็มแบบไม่คิดเครื่องหมาย (เป็นบวก&lt;/p&gt; &lt;p&gt;เท่านั้น) มักจะใช้เป็นคำนำหน้าตัวแปร ตัวอย่างการใช้งาน เช่น unsigned int&lt;/p&gt; &lt;p&gt;ซึ่งแต่ละชนิดก็เอาไว้เก็บตามรายละเอียดที่บอกไว้ส่วนการประกาศและการใช้งานไว้ในตอนหน้านะครับ&lt;/p&gt; &lt;p&gt;โดย Orochimaru&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-7565879135083665970?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/7565879135083665970/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/blog-post.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/7565879135083665970'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/7565879135083665970'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/blog-post.html' title='ตัวแปรในภาษาซี'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-9222780111832933098</id><published>2009-11-10T19:08:00.000-08:00</published><updated>2009-11-10T19:11:23.615-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ภาษา C'/><category scheme='http://www.blogger.com/atom/ns#' term='c-free'/><category scheme='http://www.blogger.com/atom/ns#' term='ภาษาซี'/><category scheme='http://www.blogger.com/atom/ns#' term='โปรแกรมแรก'/><title type='text'>โปรแกรมแรกของฉันด้วยภาษา C</title><content type='html'>&lt;p&gt;หลังจากที่เราหา complier หรือ  IDE มาลงในเครื่องเรียบร้อยแล้วหรือถ้าใครยังไม่ลงก็ดูในบทความ IDE สำหรับพัฒนาภาษาซี ได้ในเว็บนี้นะครับ&lt;span id="more-29"&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;เริ่มแรกที่จะทำการเขียนโปรแกรมภาษาซีนั้นต้องมีความเข้าใจภาษาซีก่อนนะ ครับ คำแรกที่อย่างให้รู้จักคือ Syntax คือรูปแบบคำสั่งที่บังคับให้ต้องเป็นไปตามที่กำหนดครับ ภาษาซีทุกครั้งที่เขียนคำสั่งแล้วต้องจบด้วยเครื่องหมาย ; แล้วถ้าจะให้ทำคำสั่งเป็นชุดก็ต้องอยู่ในเครื่องหมาย { }  ซึ่งการเขียนภาษาซีนั้นจะต้องอยู่ภายในฟังก์ชันที่ ชื่อว่า main นะครับ&lt;/p&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;p&gt;หลังจากที่รู้หลักการหลักๆแล้วก็มาเริ่มเขียนโปรแกรมกันเลยนะครับขั้นแรกเปิดโปรแกรม C-Free ขึ้นมา&lt;/p&gt; &lt;p&gt;แล้วเลือก new จากนั้นก็เขียนโปรแกรมตามนี้ครับ&lt;/p&gt; &lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;img src="http://www.yam4teen.com/images/stories/helloyam4teen.jpg" alt="" border="0" height="291" width="561" /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;เมื่อทำการเขียนโปรแกรมแล้วก็เซฟเป็นชื่อที่เราต้องการครับ แต่ต้องเซฟเป็นไฟล์นาสกุล .C นะครับ  หลังจากนั้นคลิกที่ปุ่ม RUN ที่เป็นลูกศรสีเขียวครับหรือจะกด F5 ก็ได้ เมื่อรันแล้วจะได้ผลตามรูปครับ&lt;/p&gt; &lt;p&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;img src="http://www.yam4teen.com/images/stories/runhelloyam4teen.jpg" alt="" border="0" height="238" width="472" /&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;อธิบายโค้ดครับ เรามีการเรียกใช้ฟังก์ชัน printf ซึ่งเอาไว้แสดงผลออกทางหน้าจอซึ่งการจะเรียกใช้ printf นั้นต้องทำการ นำเข้าไฟล์ hearder ซึ่งก็คือ stdio.h ครับโดยใช้คำสั่ง include &lt;stdio.h&gt;  ซึ่งการใช้ &lt;&gt; คือให้ไปหา header file จากไดเรกทอรี่ที่กำหนดครับถ้าไม่เช่นนั้นก็หาจากไดเรกทอรี่เดียวกับ source code เลยโดยใช่เครื่องหมาย “ ” แทนครับ&lt;/p&gt; &lt;p&gt;สังเกตว่าโค้ดที่เราเขียนจะต้องอยู่ใน main นะครับ ส่วน int ที่อยู่หน้า main กับ return 0; ค่อยบอกในบทความหน้าละกันเกือบลืมไปการใช้ printf นั้น ข้อความที่จะให้ออกทางหน้าจอนั้นจะอยู่ในเครื่องหมาย “ ” ครับสามารถเปลี่ยนข้อความตามที่เราต้องการครับ&lt;/p&gt; &lt;p&gt;โดย Oruchimaru&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;span style="font-family: verdana,geneva;"&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-9222780111832933098?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/9222780111832933098/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/c.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/9222780111832933098'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/9222780111832933098'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/c.html' title='โปรแกรมแรกของฉันด้วยภาษา C'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-6183092209382533787</id><published>2009-11-08T09:44:00.000-08:00</published><updated>2009-11-08T09:49:53.916-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ภาษา C'/><category scheme='http://www.blogger.com/atom/ns#' term='ide'/><category scheme='http://www.blogger.com/atom/ns#' term='c-free'/><category scheme='http://www.blogger.com/atom/ns#' term='complier'/><category scheme='http://www.blogger.com/atom/ns#' term='ภาษาซี'/><title type='text'>IDE ที่ง่ายต่อการพัฒนาภาษาซี</title><content type='html'>&lt;p&gt;เครื่องมือที่ใช้ในการพัฒนาโปรแกรมภาษา C โดยทั่วไป&lt;/p&gt; &lt;p&gt;แล้วการพัฒนาโปรแกรมภาษา C นั้น จำเป็นต้องอาศัยเครื่องมือ 2 ส่วนด้วยกัน คือ เครื่องมือในการ&lt;/p&gt; &lt;p&gt;แก้ไขซอร์สโค้ด และคอมไพเลอร์ในการคอมไพล์ซอร์สโค้ดออกมาเป็นโปรแกรมที่สามารถนำไปรันได้&lt;/p&gt; &lt;p&gt;จริง อย่างไรก็ตามมีเครื่องหมายหลายตัวที่ได้รวบรวมเครื่องมือทั้งสองเอาไว้ และเราจะเรียกเครื่องมือ&lt;/p&gt; &lt;p&gt;แบบรวมนี้ว่า IDE (Integrated Development Environments) ซึ่งจะเป็นตัวสร้างสิ่งแวดล้อมที่จำเป็นในการพัฒนาโปรแกรม ซึ่งในการใช้ IDE ที่แนะนำคือ C-Free&lt;span id="more-22"&gt;&lt;/span&gt;&lt;/p&gt; &lt;div class="mceTemp mceIEcenter"&gt; &lt;dl id="attachment_21" class="wp-caption aligncenter" style="width: 310px;"&gt;&lt;dt class="wp-caption-dt"&gt;&lt;img class="size-medium wp-image-21" title="obj" src="http://www.thaicoding.co.cc/wp-content/uploads/2009/09/obj-300x218.jpg" alt="ิ" height="218" width="300" /&gt;&lt;/dt&gt;&lt;/dl&gt; &lt;/div&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:16pt;"   lang="TH"&gt;ซึ่ง &lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:16pt;"  &gt;C-Free &lt;span lang="TH"&gt;ง่ายต่อการใช้งานกด &lt;/span&gt;F5 &lt;span lang="TH"&gt;ในการคอมไพล์และรันโปรแกรม แต่ในการเซฟไฟล์ของเราควรเซฟเป็น .&lt;/span&gt;c &lt;span lang="TH"&gt;เพราะ &lt;/span&gt;IDE &lt;span lang="TH"&gt;อาจมองเป็น &lt;/span&gt;C++ &lt;span lang="TH"&gt;ก็ได้&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:16pt;"  &gt;&lt;span lang="TH"&gt;&lt;img class="aligncenter size-medium wp-image-23" title="cfree" src="http://www.thaicoding.co.cc/wp-content/uploads/2009/09/cfree-300x276.jpg" alt="cfree" height="317" width="344" /&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt; &lt;w:worddocument&gt; &lt;w:view&gt;Normal&lt;/w:View&gt; &lt;w:zoom&gt;0&lt;/w:Zoom&gt; &lt;w:trackmoves&gt; &lt;w:trackformatting&gt; &lt;w:punctuationkerning&gt; &lt;w:validateagainstschemas&gt; &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt; &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt; &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt; &lt;w:donotpromoteqf&gt; &lt;w:lidthemeother&gt;EN-US&lt;/w:LidThemeOther&gt; &lt;w:lidthemeasian&gt;X-NONE&lt;/w:LidThemeAsian&gt; &lt;w:lidthemecomplexscript&gt;TH&lt;/w:LidThemeComplexScript&gt; &lt;w:compatibility&gt; &lt;w:breakwrappedtables&gt; &lt;w:snaptogridincell&gt; &lt;w:applybreakingrules&gt; &lt;w:wraptextwithpunct&gt; &lt;w:useasianbreakrules&gt; &lt;w:dontgrowautofit&gt; &lt;w:splitpgbreakandparamark&gt; &lt;w:dontvertaligncellwithsp&gt; &lt;w:dontbreakconstrainedforcedtables&gt; &lt;w:dontvertalignintxbx&gt; &lt;w:word11kerningpairs&gt; &lt;w:cachedcolbalance&gt; &lt;/w:Compatibility&gt; &lt;m:mathpr&gt; &lt;m:mathfont val="Cambria Math"&gt; &lt;m:brkbin val="before"&gt; &lt;m:brkbinsub val=" "&gt; &lt;m:smallfrac val="off"&gt; &lt;m:dispdef&gt; &lt;m:lmargin val="0"&gt; &lt;m:rmargin val="0"&gt; &lt;m:defjc val="centerGroup"&gt; &lt;m:wrapindent val="1440"&gt; &lt;m:intlim val="subSup"&gt; &lt;m:narylim val="undOvr"&gt; &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt; &lt;w:latentstyles deflockedstate="false" defunhidewhenused="true" defsemihidden="true" defqformat="false" defpriority="99" latentstylecount="267"&gt; &lt;w:lsdexception locked="false" priority="0" semihidden="false" unhidewhenused="false" qformat="true" name="Normal"&gt; &lt;w:lsdexception locked="false" priority="9" semihidden="false" unhidewhenused="false" qformat="true" name="heading 1"&gt; &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 2"&gt; &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 3"&gt; &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 4"&gt; &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 5"&gt; &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 6"&gt; &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 7"&gt; &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 8"&gt; &lt;w:lsdexception locked="false" priority="9" qformat="true" name="heading 9"&gt; &lt;w:lsdexception locked="false" priority="39" name="toc 1"&gt; &lt;w:lsdexception locked="false" priority="39" name="toc 2"&gt; &lt;w:lsdexception locked="false" priority="39" name="toc 3"&gt; &lt;w:lsdexception locked="false" priority="39" name="toc 4"&gt; &lt;w:lsdexception locked="false" priority="39" name="toc 5"&gt; &lt;w:lsdexception locked="false" priority="39" name="toc 6"&gt; &lt;w:lsdexception locked="false" priority="39" name="toc 7"&gt; &lt;w:lsdexception locked="false" priority="39" name="toc 8"&gt; &lt;w:lsdexception locked="false" priority="39" name="toc 9"&gt; &lt;w:lsdexception locked="false" priority="35" qformat="true" name="caption"&gt; &lt;w:lsdexception locked="false" priority="10" semihidden="false" unhidewhenused="false" qformat="true" name="Title"&gt; &lt;w:lsdexception locked="false" priority="1" name="Default Paragraph Font"&gt; &lt;w:lsdexception locked="false" priority="11" semihidden="false" unhidewhenused="false" qformat="true" name="Subtitle"&gt; &lt;w:lsdexception locked="false" priority="22" semihidden="false" unhidewhenused="false" qformat="true" name="Strong"&gt; &lt;w:lsdexception locked="false" priority="20" semihidden="false" unhidewhenused="false" qformat="true" name="Emphasis"&gt; &lt;w:lsdexception locked="false" priority="59" semihidden="false" unhidewhenused="false" name="Table Grid"&gt; &lt;w:lsdexception locked="false" unhidewhenused="false" name="Placeholder Text"&gt; &lt;w:lsdexception locked="false" priority="1" semihidden="false" unhidewhenused="false" qformat="true" name="No Spacing"&gt; &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading"&gt; &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List"&gt; &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid"&gt; &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1"&gt; &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2"&gt; &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1"&gt; &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2"&gt; &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1"&gt; &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2"&gt; &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3"&gt; &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List"&gt; &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading"&gt; &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List"&gt; &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid"&gt; &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 1"&gt; &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 1"&gt; &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 1"&gt; &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 1"&gt; &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 1"&gt; &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 1"&gt; &lt;w:lsdexception locked="false" unhidewhenused="false" name="Revision"&gt; &lt;w:lsdexception locked="false" priority="34" semihidden="false" unhidewhenused="false" qformat="true" name="List Paragraph"&gt; &lt;w:lsdexception locked="false" priority="29" semihidden="false" unhidewhenused="false" qformat="true" name="Quote"&gt; &lt;w:lsdexception locked="false" priority="30" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Quote"&gt; &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 1"&gt; &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 1"&gt; &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 1"&gt; &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 1"&gt; &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 1"&gt; &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 1"&gt; &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 1"&gt; &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 1"&gt; &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 2"&gt; &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 2"&gt; &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 2"&gt; &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 2"&gt; &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 2"&gt; &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 2"&gt; &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 2"&gt; &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 2"&gt; &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 2"&gt; &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 2"&gt; &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 2"&gt; &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 2"&gt; &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 2"&gt; &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 2"&gt; &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 3"&gt; &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 3"&gt; &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 3"&gt; &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 3"&gt; &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 3"&gt; &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 3"&gt; &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 3"&gt; &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 3"&gt; &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 3"&gt; &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 3"&gt; &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 3"&gt; &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 3"&gt; &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 3"&gt; &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 3"&gt; &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 4"&gt; &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 4"&gt; &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 4"&gt; &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 4"&gt; &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 4"&gt; &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 4"&gt; &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 4"&gt; &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 4"&gt; &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 4"&gt; &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 4"&gt; &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 4"&gt; &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 4"&gt; &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 4"&gt; &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 4"&gt; &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 5"&gt; &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 5"&gt; &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 5"&gt; &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 5"&gt; &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 5"&gt; &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 5"&gt; &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 5"&gt; &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 5"&gt; &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 5"&gt; &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 5"&gt; &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 5"&gt; &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 5"&gt; &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 5"&gt; &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 5"&gt; &lt;w:lsdexception locked="false" priority="60" semihidden="false" unhidewhenused="false" name="Light Shading Accent 6"&gt; &lt;w:lsdexception locked="false" priority="61" semihidden="false" unhidewhenused="false" name="Light List Accent 6"&gt; &lt;w:lsdexception locked="false" priority="62" semihidden="false" unhidewhenused="false" name="Light Grid Accent 6"&gt; &lt;w:lsdexception locked="false" priority="63" semihidden="false" unhidewhenused="false" name="Medium Shading 1 Accent 6"&gt; &lt;w:lsdexception locked="false" priority="64" semihidden="false" unhidewhenused="false" name="Medium Shading 2 Accent 6"&gt; &lt;w:lsdexception locked="false" priority="65" semihidden="false" unhidewhenused="false" name="Medium List 1 Accent 6"&gt; &lt;w:lsdexception locked="false" priority="66" semihidden="false" unhidewhenused="false" name="Medium List 2 Accent 6"&gt; &lt;w:lsdexception locked="false" priority="67" semihidden="false" unhidewhenused="false" name="Medium Grid 1 Accent 6"&gt; &lt;w:lsdexception locked="false" priority="68" semihidden="false" unhidewhenused="false" name="Medium Grid 2 Accent 6"&gt; &lt;w:lsdexception locked="false" priority="69" semihidden="false" unhidewhenused="false" name="Medium Grid 3 Accent 6"&gt; &lt;w:lsdexception locked="false" priority="70" semihidden="false" unhidewhenused="false" name="Dark List Accent 6"&gt; &lt;w:lsdexception locked="false" priority="71" semihidden="false" unhidewhenused="false" name="Colorful Shading Accent 6"&gt; &lt;w:lsdexception locked="false" priority="72" semihidden="false" unhidewhenused="false" name="Colorful List Accent 6"&gt; &lt;w:lsdexception locked="false" priority="73" semihidden="false" unhidewhenused="false" name="Colorful Grid Accent 6"&gt; &lt;w:lsdexception locked="false" priority="19" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Emphasis"&gt; &lt;w:lsdexception locked="false" priority="21" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Emphasis"&gt; &lt;w:lsdexception locked="false" priority="31" semihidden="false" unhidewhenused="false" qformat="true" name="Subtle Reference"&gt; &lt;w:lsdexception locked="false" priority="32" semihidden="false" unhidewhenused="false" qformat="true" name="Intense Reference"&gt; &lt;w:lsdexception locked="false" priority="33" semihidden="false" unhidewhenused="false" qformat="true" name="Book Title"&gt; &lt;w:lsdexception locked="false" priority="37" name="Bibliography"&gt; &lt;w:lsdexception locked="false" priority="39" qformat="true" name="TOC Heading"&gt; &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt; &lt;!--[if gte mso 10]&gt;&lt;br /&gt; &lt;mce:style&gt;&lt;!   /* Style Definitions */  table.MsoNormalTable  {mso-style-name:ตารางปกติ;  mso-tstyle-rowband-size:0;  mso-tstyle-colband-size:0;  mso-style-noshow:yes;  mso-style-priority:99;  mso-style-qformat:yes;  mso-style-parent:"";  mso-padding-alt:0in 5.4pt 0in 5.4pt;  mso-para-margin-top:0in;  mso-para-margin-right:0in;  mso-para-margin-bottom:10.0pt;  mso-para-margin-left:0in;  line-height:115%;  mso-pagination:widow-orphan;  font-size:11.0pt;  mso-bidi-font-size:14.0pt;  font-family:"Calibri","sans-serif";  mso-ascii-font-family:Calibri;  mso-ascii-theme-font:minor-latin;  mso-fareast-font-family:"Times New Roman";  mso-fareast-theme-font:minor-fareast;  mso-hansi-font-family:Calibri;  mso-hansi-theme-font:minor-latin;} --&gt;&lt;/p&gt; &lt;p&gt;&lt;!--[endif]--&gt;&lt;/p&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:16pt;"   lang="TH"&gt;ซึ่งตัว &lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:16pt;"  &gt;IDE &lt;span lang="TH"&gt;เองสามารถหาโหลดได้จากเว็บไซต์ ลองหาใน &lt;/span&gt;google &lt;span lang="TH"&gt;ดูนะครับแล้วก็ตัว &lt;/span&gt;crack &lt;span lang="TH"&gt;โปรแกรมด้วยนะครับลองหาใน &lt;/span&gt;google &lt;span lang="TH"&gt;ดูนะครับ&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-6183092209382533787?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/6183092209382533787/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/ide.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/6183092209382533787'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/6183092209382533787'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/ide.html' title='IDE ที่ง่ายต่อการพัฒนาภาษาซี'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-8188005952037741935</id><published>2009-11-06T09:45:00.000-08:00</published><updated>2009-11-06T09:56:32.976-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ภาษา C'/><category scheme='http://www.blogger.com/atom/ns#' term='ภาษาซี'/><category scheme='http://www.blogger.com/atom/ns#' term='OOP'/><category scheme='http://www.blogger.com/atom/ns#' term='C++'/><category scheme='http://www.blogger.com/atom/ns#' term='โปรแกรมเชิงวัตถุ'/><title type='text'>ภาษาซีตอนที่4</title><content type='html'>&lt;p&gt;C จะไปยังเป้าหมายที่ไหน (Whither C ?)&lt;/p&gt; &lt;p&gt;เมื่อปี ค.ศ. 1980 C ภาษาที่นำไปใช้ยังโลกมินิคอมพิวเตอร์ (minicomputer) ของระบบ UNIX แต่ในขณะนี้ C สามารถนำไปใช้กับไมโครคอมพิวเตอร์และคอมพิวเตอร์ขนาดใหญ่ (mainframe ) ภาษา C มีความมั่งคงและประสิทธิภาพสูง ภาษา C ช่วยให้ผู้อื่นใช้งานได้ง่าย&lt;span id="more-12"&gt;&lt;/span&gt;และ ได้รับประโยชน์มาก ผู้ใช้คอมพิวเตอร์ต่างๆ ทั่วไปหันไปใช้ภาษา C ดูแลความปลอดภัยของระบบ โดยท่านไม่จำเป็นต้องเป็นโปรแกรมเมอร์ระดับมืออาชีพ&lt;/p&gt; &lt;p&gt;ในปี ค.ศ. 1990บริษัทผลิตซอฟแวร์จำนวนมากได้เปลี่ยนไปใช้ภาษา C++ สำหรับ project ของโปรแกรมขนาดใหญ่ ซึ่งสามารถเขียนโปรแกรมในรูปแบบ OOP ( Object-Oriented Programming) ด้วย C++ ซึ่ง C++ เป็นภาษาที่พัฒนามาจาก C ภายหลังที่ท่านได้เรียนรู้ภาษา C แล้วจะต้องเรียนรู้ C++ เพิ่มขึ้นอีกเพื่อการประยุกต์ใช้งานได้อย่างกว้างขวางยิ่งขึ้น สรุปแล้ว C เป็นภาษาโปรแกรมที่สำคัญมากที่สุด และยังคงเป็นต่อไปเรื่อยๆ มันถูกนำไปใช้บนคอมพิวเตอร์ขนาดใหญ่ คอมพิวเตอร์ขนาดกลาง และคอมพิวเตอร์ส่วนบุคคล&lt;/p&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;p&gt;7 ขั้นตอนการใช้ภาษา C&lt;/p&gt; &lt;p&gt;C เป็นภาษาที่ต้องคอมไพล์ ถ้าท่านคุ้นเคยกับภาษาที่ต้องคอมไพล์ เช่น Pascal คุณก็จะคุ้นเคยกับภาษา c  ซึ่งคุณจะได้เรียนรู้การจัดทำโค้ดภาษาซี ทั้ง 7 ขั้นตอนนี้&lt;/p&gt; &lt;ol&gt;&lt;li&gt;กำหนดวัตถุประสงค์ต่างๆของโปรแกรม&lt;/li&gt;&lt;li&gt;ออกแบบโปรแกรม&lt;/li&gt;&lt;li&gt;เขียนโค้ด&lt;/li&gt;&lt;li&gt;คอมไพล์ (Compile)&lt;/li&gt;&lt;li&gt;รันโปรแกรม&lt;/li&gt;&lt;li&gt;ทดสอบและแก้ไขโปรแกรม&lt;/li&gt;&lt;li&gt;กำกับ ดูแลและปรับปรุงโปรแกรม&lt;/li&gt;&lt;/ol&gt; &lt;p&gt;จบเรื่องหาภาษาซี……End&lt;/p&gt; &lt;p&gt;ที่มา การเขียนโปรแกรมสำหรับ Application ด้วย C/C++&lt;/p&gt; &lt;p&gt;ถ้าหากท่านใดสนใจในเรื่องหาภาษาซีต่อนั้นก็ comment ไว้ได้เลยนะครับหรือสนใจเรื่องใดผมจะทำการค้นคว้าหามาให้นะครับ&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-8188005952037741935?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/8188005952037741935/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/4.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/8188005952037741935'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/8188005952037741935'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/4.html' title='ภาษาซีตอนที่4'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-279214487319762255</id><published>2009-11-05T08:40:00.000-08:00</published><updated>2009-11-05T08:42:34.429-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ภาษา C'/><category scheme='http://www.blogger.com/atom/ns#' term='ภาษาซี'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><category scheme='http://www.blogger.com/atom/ns#' term='programmer'/><title type='text'>ภาษาซีตอนที่3</title><content type='html'>&lt;p&gt;&lt;strong&gt;พลังอำนาจและความยืดหยุ่น (Power and Flexibility)&lt;/strong&gt;&lt;br /&gt;C  มีพลังอำนาจและมีความยืดหยุ่นมาก สำหรับตัวอย่าง ระบบปฏิบัติการ UNIX จะเขียนด้วยภาษา C ทำให้ใช้งานได้ดีมากและมีความยืดหยุ่นในการทำงานสูง มีคอมไพเลอร์ (complier) และตัวแปรภาษาที่ละคำสั่ง หรืออินเทอร์พรีเตอร์ (interpreter) ต่างๆมากมาย &lt;span id="more-8"&gt;&lt;/span&gt;สำหรับ ภาษาอื่นเช่น Fortran, APL, Pascal, LOGO, LISP, และ Basic ที่เขียนด้วย C เพราะฉะนั้น เมื่อใช้ Fortran บน Unix โปรแกรมภาษา C จะดำเนินการแปลงไฟล์ .EXE (executable file) นอกจากนี้โปรแกรมภาษา C ยังใช้แก้ปัญหาต่างๆเกี่ยวกับฟิสิกส์และวิศวกรรม รวมทั้งทำภาพเคลื่อนไหวชนิดพิเศษสำหรับภาพยนตร์&lt;/p&gt; &lt;img style="width: 215px; height: 215px;" class="aligncenter" src="http://www.yam4teen.com/images/stories/12644-productmain.jpg" alt="" border="0" /&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;strong&gt;ปรับตัวให้สอดคล้องกับโปรแกรมเมอร์ (Programmer Oriented)&lt;/strong&gt;&lt;br /&gt;C ได้ปรับตัวให้สอดคล้องกับความต้องการของโปรแกรมเมอร์ มันช่วยให้เข้าถึงฮาร์ดแวร์ (hardware) และยังช่วยจัดรูปแบบของแต่ละบิต (bit) ในหน่วยความจำ ภาษา C มีตัวดำเนินการมากมายให้เลือกใช้งาน  C มีกฎเกณฑ์ต่างเข้มงวดน้อยกว่าภาษา Pascal ความยืดหยุ่นนี้ทำให้ทั้งก้าวหน้าและอันตราย ความก้าวหน้าก็คือ ทำให้ได้งานต่างๆมากมายเช่น การแหลงรูปแบบต่างๆของข้อมูล ส่วนทีเป็นอันตรายก็คือ ภาษา C จะทำให้มีอิสระมาก แต่มันยังคงให้กาตอบสนองได้มากกว่า&lt;br /&gt;เครื่องมือต่างๆของภาษา C เกือบทั้งหมดจะมีไลบารี่ของฟังก์ชันภาษา C มีขนาดใหญ่ ฟังก์ชันต่างๆ เหล่านี้จะเกี่ยวข้องกับความต้องการมากมายของโปรแกรมเมอร์&lt;br /&gt;&lt;strong&gt;ข้อบกพร่องต่างๆ (Shortcomings)&lt;/strong&gt;&lt;br /&gt;ภาษา C มีข้อบกพร่องอยู่บ้าง บ่อยครั้งที่พบคุณลักษณะเดียวกัน อาจให้ทั้งผลดีและผลเสียสำหรับตัวอย่าง ความมีอิสระของนิพจน์ที่ต้องการเพิ่มความสามารถในการตอบสนอง การใช้พอยเตอร์ (Pointer) ของภาษา C ค่อนข้างยุ่งยากและทำให้เกิดข้อผิดพลาดได้ง่าย ความอิสระและความยืดหยุ่นในการใช้งาน ทำให้ต้องระมัดระวังในการเขียนโค้ดประยุกต์การใช้งานต่างๆ&lt;br /&gt;โค้ดภาษา C สั้น แต่มีตัวดำเนินการต่างๆ มากมาย ทำให้ยากที่จะติดตามข้อผิดพลาดที่เกิดขึ้นของโปรแกรม ในบางกรณีโค้ดที่เขียนในภาษา C อาจคลุมเครือ จะไม่ค่อยมีการเตือนเหมือนบางภาษา ถึงอย่างไรก็ตาม ข้อดีของภาษา C มีมากมาย มีข้อเสียบางเล็กน้อยเท่านั้น ในอนาคตภาษา C จะได้รับการปรับปรุงจนหาที่ติไม่ได้&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-279214487319762255?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/279214487319762255/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/3.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/279214487319762255'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/279214487319762255'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/3.html' title='ภาษาซีตอนที่3'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-5453325712379595875</id><published>2009-11-04T06:55:00.000-08:00</published><updated>2009-11-04T06:58:19.469-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ภาษา C'/><category scheme='http://www.blogger.com/atom/ns#' term='design'/><category scheme='http://www.blogger.com/atom/ns#' term='unix'/><title type='text'>ภาษา C ตอนที่2</title><content type='html'>&lt;p style="text-align: center;"&gt;&lt;img class="aligncenter" title="C Flowchart" src="http://www.yam4teen.com/images/stories/c_language_if_else.png" alt="" height="378" width="396" /&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;ออกแบบคุณลักษณะต่างๆ(Design Feature)&lt;/strong&gt;&lt;br /&gt;C เป็นภาษาสมัยใหม่ได้รวมคุณลักษณะต่างๆ ของการควบคุม ที่เกี่ยวข้องกับทฤษฎีและวิทยาการคอมพิวเตอร์ ออกแบบมาเพื่อผู้ใช้สามารถวางแผนเขียนโค้ดจากบนลงล่าง, โปรแกรมโครงสร้าง, และมีลักษณะเป็นโมดูลาร์ (modular) ผลลัพธ์ที่ได้มีความน่าเชื่อถือมากและโปรแกรมทำความเข้าใจง่าย&lt;span id="more-5"&gt;&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;ประสิทธิภาพ (Efficiency)&lt;/strong&gt;&lt;br /&gt;C เป็นภาษาที่มีประสิทธิภาพสูง มันออกแบบมาสำหรับความก้าวหน้าในการใช้งานคอมพิวเตอร์ขณะนี้ โปรแกรม C รันได้เร็วมาก ในบางกรณี ภาษา C จะใช้งานร่วมกับภาษาแอสเซมบลี(assembly)ซึ่งจะทำให้โปรแกรมของท่านรันได้ เร็วที่สุด รวมทั้งประสิทธิภาพสูงสุด ในการใช้งานหน่อยความจำ&lt;/p&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;/span&gt;&lt;strong&gt;ใช้ได้กับคอมพิวเตอร์ต่างๆ ทั่วไป (Portability)&lt;/strong&gt;&lt;br /&gt;C เป็นภาษาที่ใช้งานได้กับคอมพิวเตอร์ทั่วไป หมายความว่าโปรแกรม C ที่เขียนบนระบบหนึ่งสามารถรันและปรับปรุง แก้ไขบนระบบอื่น ถ้าหากยังจำเป็นต้องแก้ไขโค้ดก็ทำได้ง่าย เพียงแต่เปลี่ยนแปลงที่ไฟล์ส่วนหัว (header file) พร้อมกับโปรแกรมหลัก ท่านอาจคิดว่าภาษาโปรแกรมต่างๆ ก็ใช้งานกับคอมพิวเตอร์ทั่วไปได้เช่นกันกับ C เพื่อทดสอบคุณลักษณะนี้ ให้ลองแปลงโค้ดภาษา basic สำหรับเครื่อง IBM ไปเป็นโค้ด basic สำหรับเครื่องของ aplle หรือจะลองพยายามรันโปรแกรม Fortran บนระบบ Unix จะเกิดข้อผิดพลาดทันที ไม่สามารภทำงานต่อได้ ภาษา C สามารถใช้กับ PC ทุกประเภท คอมไพเลอร์ (complier) ของ ใช้ได้กับระบบต่างๆถึง 40 ระบบ และยังทำงานเข้ากับอุปกรณ์ฮาดแวร์ต่างๆได้&lt;br /&gt;เพราะ C ใช้ได้กับ PC ทั่วไป ท่านสามารถนำโปรแกรมของภาษา C ของ unix ไปพัฒนาต่อบนเครื่อง PC ของท่านเองได้ มีคอมไพเลอร์มากมายที่ช่วยในการดำเนินการต่อได้ง่าย และท่านยังสามารถนำโปรแกรมที่พัฒนา ไปใช้บนระบบ unix ได้อีกด้วย&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-5453325712379595875?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/5453325712379595875/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/c-2.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/5453325712379595875'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/5453325712379595875'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/c-2.html' title='ภาษา C ตอนที่2'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-8641067843021696869</id><published>2009-11-01T07:14:00.000-08:00</published><updated>2009-11-01T07:24:30.179-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ภาษาซี'/><category scheme='http://www.blogger.com/atom/ns#' term='ประวัติภาษาซี'/><title type='text'>ภาษาซี(ตอนที่1)</title><content type='html'>&lt;p&gt;&lt;strong&gt;C มาจากที่ไหน&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Dennis Ritchie&lt;/strong&gt; ของแลบเบล (&lt;strong&gt;Bell Labs&lt;/strong&gt;) ได้สร้างภาษาซี ในปี ค.ศ. 1972 ขณะที่เขาและ &lt;strong&gt;Ken Thompson &lt;/strong&gt;ทำงานออกแบบระบบปฏิบัติการ UNIX&lt;span id="more-3"&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;ภาษา C ได้พัฒนามาจากภาษา B ของ&lt;strong&gt; &lt;/strong&gt;&lt;strong&gt;Thompson &lt;/strong&gt;เพื่อสร้างเป็นเครื่องมือให้โปรแกรมเมอร์ทำงาน&lt;/p&gt; &lt;p&gt;&lt;strong&gt;ทำไมต้องภาษา C&lt;/strong&gt;&lt;/p&gt;ขณะนี้ภาษา C ได้คล้ายเป็นภาษาสำคัญที่สุดและนิยมมากที่สุด  มันก้าวหน้ามาก เนื่องจากบุคคลทั่วไปนิยมใช้ภาษา C ประยุกต์ใช้งานด้านต่างๆ ในอดีตที่ผ่านมาได้พยายามย้าย C ไปเป็นภาษา C ++ ที่มีสมรรถนะสูง แต่ภาษา C ก็ยังคงเป็นภาษาที่มีความสำคัญสำหรับซอฟแวร์และฮาร์ดแวร์ และยังช่วยให้ศึกษา C++ ได้อย่างรวดเร็ว เนื่องจาก C++ ได้สร้างและพัฒนาคุณลักษณะต่างๆ เพิ่มจากภาษา C ภาษา C มีคุณลักษณะที่ดีดังนี้&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt;&lt;ul&gt;&lt;li&gt;โครงสร้างของการควบคุมมีความยืดหยุ่น&lt;/li&gt;&lt;li&gt;C เป็นภาษาโครงสร้าง ง่ายๆต่อการสร้างโมดูลาร์ (modular)&lt;/li&gt;&lt;li&gt;โปรแกรมมีขนาดเล็ก&lt;/li&gt;&lt;li&gt;ใช้ได้กับคอมพิวเตอร์อื่นๆ ทั้งหมด&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;ที่มา การเขียนโปรแกรมสำหรับ Application ด้วย C/C++&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-8641067843021696869?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/8641067843021696869/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/11/1.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/8641067843021696869'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/8641067843021696869'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/11/1.html' title='ภาษาซี(ตอนที่1)'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-502569790348708866.post-6618873644076414242</id><published>2009-10-31T11:03:00.000-07:00</published><updated>2009-10-31T11:04:48.490-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='โปรแกรมเมอร์'/><category scheme='http://www.blogger.com/atom/ns#' term='โปรแกรมเมอร์มืออาชีพ'/><title type='text'>ทำอย่างไรถึงจะเป็นโปรแกรมเมอร์มืออาชีพ</title><content type='html'>ประเทศไทย กำลังก้าวเข้าสู่ยุค IT ยุคนี้ทุกคนจะต้องใช้อุปกร์ ทาง IT ไม่ว่าจะเป็น PDA โทรศัพท์มือถือ คอมพิวเตอร์ และอื่นๆ อีกมากมาย ตอนนี้ก็อยุ่ที่คุณเอง เลือกจะช่วยไห้ประเทศไทย เดินทางสุ่ยุคนี้ไปในทิศทางได มันก็มีอยู่ 2 ทิศทาง คือ ผู้ใช้ กับผู้สร้าง ถ้าเป็นผู้ใช้ นั่นก็หมาย ความว่า ประเทศไทย จะต้องจ่ายเงิน จากระเป๋า เพื่อซื้อ Software เงินก้จะใหลออกนอกประเทศ แต่ถ้าเป็นผู้สร้าง นี่หล่ะคือจุดสำคัญแห่งความยิ่งใหญ่ เราจะเป็นผู้รับเงินจากต่างประเทศ เอาหละตัสินใจว่าจะช่วยประเทศทางไหน ถ้าคุณเลือกเป็นผู้สร้าง คุณจะต้องเป็น Programmer และการที่คุณจะ ไปสู่จุดหมายนั้นคุณ จะต้องทำอย่างไรถึงจะเป็นโปรแกรมเมอร์มืออาชีพ ต้องทำให้ได้ 5 ข้อ ดังต่อ ไปนี้ครับ   &lt;p align="justify"&gt;        1. สำรวจดูว่า ตัวเองมีคุณสมบัติเป็นโปรแกรมเมอร์หรือไม่&lt;/p&gt;  &lt;p align="justify"&gt;        2. ฝึกเขียนโปรแกรม&lt;/p&gt;  &lt;p align="justify"&gt;        3. ค้นหาข้อมูลเพิ่มเติม&lt;/p&gt;  &lt;p align="justify"&gt;        4. เผยแพร่ผลงาน&lt;/p&gt;  &lt;p align="justify"&gt;        5. กระทำตามข้อ 1 - 4 อย่างสม่ำเสมอ&lt;/p&gt;&lt;br /&gt;&lt;span id="fullpost"&gt;อ่านต่อ&lt;br /&gt; นี่ คือ 5 ข้อหลักของโปรแกรมเมอร์ ถ้าหากคุณทำได้ทั้ง 5 ข้อนี้ คุณก็จะได้เป็น โปรแกรมเมอร์ มืออาชีพ เลยทีเดียว เรามาดูรายละเอียดของแต่ละข้อกันเลยดีกว่าครับ ว่ามีราบละเอียดอย่างไรบ้าง  &lt;h3&gt;สำรวจดูว่า ตัวเองมีคุณสมบัติเป็นโปรแกรมเมอร์หรือไม่&lt;/h3&gt;  &lt;p align="justify"&gt;        เรา มาสำรวจดูตัวเราก่อนว่า เหมาะสมกับการเป็น โปรแกรมเมอร์ หรือไม่ ลองถามตัวเองดูสิว่า คุณต้องการเป้นโปรแกรมเมอร์ อย่างจริงจังหรือไม่ แล้วถ้าเราไม่ได้จบ คอมพิวเตอร์มาหล่ะ เราเป็นโปแกรมเมอร์ได้หรือไม่ ตรงนี้ ผมเองก็ขอตอบจากความรู้สึก สวนตัวเลยว่า ไม่จำเป็นครับ เราลองทบทวนและ มองโลกให้กว้างครับ ว่าโปรแกรมเมอร์ ที่เก่งๆ หลายคน ไม่ได้จบคอมพิวเตอร์มาโดยตรง และอีกหลายคนก็จบคอมพิวเตอร์มาโดยตรง แต่บางคนจบคอมพิวเตอร์มาโดยตรง ก็เขียนโปรแกรมไม่เป็น เป็นแค่ งูงูปลาปลา ก็ถมไป สาเหตุมาจากอะไรหรือครับ ใจเขาไม่รักกับการเป็น โปรแกรมเมอร์ไงครับ ดังนั้นวุติการศึกษาไม่ใช่อุปสรรค ในการเป็นโปรแกรมเมอร์ครับ&lt;/p&gt;  &lt;p align="justify"&gt;        สาเหตุ ทีผมบอกว่า วุฒิการศึกษา ไม่ใช่อุปสรรคต่อการเป็นโปรแกรมเมอร์ ก็เนื่องจาก ตอนเรายังเด็ก เราไม่ได้เลือกเรียนสายการเรียน ที่เรารักครับ แต่เราเลือกเรียน ตามเพื่อนบ้าง ตามพ่อแม่ผู้ปกครองต้องการบ้าง เพราะในช่วงวัยนั้น เรากำลังอยู่ในช่วงหัวเลี้ยวหัวต่อ มักตามเพื่อน หรือบางคนเรียนเพื่อตามใจพ่อแม่ แต่พอมาถึงวัยหนึ่ง เราก็มารู้ตัวว่าเราไม่ได้ชอบมันเลย ก็ทำให้เราเสียเวลาไปมากแล้ว จะกลับไปเรียน หรือก็ เสียค่าใช้จ่ายมาก แล้วแต่เหตุผล ของแต่ละคนไป ดังนั้นผมจึงขอ แนะนำว่า จงอย่ายึดติดกับค่านิยมของ คำว่าวุติการศึกษา ปริญญา ต่างๆ ทั้งสิ้นหากเราอยากเป็นโปรแกรมเมอร์ มันอยูที่เราต้องการจะเป็นโปรแกรมเมอร์หรือไม่ต่างหาก รักการเป็นโปรแกรมเมอร์ มากแค่ไหน ก็ทุ่มเทให้กับมันเต็มที่&lt;/p&gt;  &lt;p align="justify"&gt;        คุณ มรความเพรียรพยายามหรือไม่ เพราะการเป็นโปรแกรมเมอร์ จพต้องมีความเพรียร ไม่ยอมแพ้ต่อปัญหา ต่างๆ เมื่อเขียนโปรแกรมแล้วติดปัญหา หากคุณเขียนโปรแกรมแล้วติดปัญหา คุณต้องพยายามแก้ไขปัญหาให้ได้ อย่ายอมแพ้เป็นอันขาด หากคุณยอมแพ้ คุณก็ไม่มีคุณสมบัติที่จะเป็นโปรแกรมเมอร์ ดังนั้น ความเพรียรพยายาม เป็นกติกาสำคัญข้อหนึ่งของโปรแกรมเมอร์เลยทีเดียว ต้องมีความคากเพียรไม่ย่อท้อต่อสิ่งได และจะยอมแพ้ก้ต่อเมื่อ หาหนทางจนสุดกู่แล้วก็ไม่พบ จึงจะยอมแพ้ แต่การยอมแพ้ ต้องยอมแพ้อย่าง โปรแกรมเมอร์ คือ ยอมแพ้ในเวลานั้น เท่านั้น แต่เก็บมันเอาไว้เป้นการบ้าน ค่อยคิดค่อยหาทางแก้ปัญหา มันอีกทีหลังไปเรื่อยๆ มันต้องทำได้สิ สักวันคุณก็จะแก้ปัญหาได้ หมายความว่า ถ้าแก้ปัญหาไม่ได้ ก็อย่าจมอยู่กับมัน แต่ พักมันเอาไว้ก่อนต่างหากหล่ะ สุดท้ายก็แปลว่า ไม่ยอมแพ้นั่นเอง&lt;/p&gt;  &lt;p align="justify"&gt;        โปรแกรมเมอร์จะต้องคิด อย่างที่คนอื่นเขาไม่คิด ทำในสิ่งที่ตนอื่นเขาไม่ทำ หมายความว่า เราต้องคิด ในสิ่งที่คนอื่น คิดไม่ถึง ทำในสิ่งที่คนอื่นเขาทำไม่ได้ เพราะโปรแกรมเมอร์ จะต้องสร้างสรรค์ผลงานใหม่ๆ ออกมาเสมอ ดังนั้น หากเราคิดแต่จะทำตามคนอื่น ลอกเรียนแบบคนอื่นๆ อยู่ เราก็ไม่สามารถพัฒนาโปรแกรมของเราให้คนอื่น เขารู้สึก ประทับใจ และต้องการได้ เพราะอะไรก็ตามที่ง่ายๆ หลายคนก็มักจะทำกัน หาที่ไหนก็ได้ ราคาและคุณค่าเลยไม่มี แต่ถ้าอะไรที่ยากๆ หายาก ไมาค่อยมีคนทำ หรือไม่มีใตรทำเลย นั่นแหละครับ ของสิ่งนั้นมันจะมีค่า น่าจดจำและประทับใจ&lt;/p&gt;  &lt;h3&gt;ฝึกเขียนโปรแกรม&lt;/h3&gt;  &lt;p align="justify"&gt;        เมื่อ คุณสำรวจตัวของคุณเองแล้วว่าคุณมีคุณสมบัติตามข้อ 1 คุณก็กระทำตามข้อ 2 ต่อไปนี้ แต่ถ้าคุณยังไม่มีคุณสมบัติตามข้อ 1 มีทางเลือกอยู่ 2 ทาง ครับ ทางที่ 1 คุณก็ควรจะเลิกลมความตั้งใจที่จะเป็นโปรแกรมเมอร์ ระดับมืออาชีพได้แล้วครับ เพราะคุณฝืนไปก็เสียเวลาเปล่า เพราะสิ่งที่คุณจะเจอเมื่อเป็นโปแกรมเมอร์ นั้นมันช่างเต้มไปด้วยสิ่งตื่นเต้น และปัญหามากมายเสียเหลือเกิน ล้มคเลิกความคิดเสียเถิด อย่าเป็นมันเลย โปแกรมเมอร์นี่ แต่ถ้าคุณยังมีคว่มต้องการที่จะเป็นโปรแกรมเมอร์มืออาชีพ อยู่หล่ะก็ ข้อที่ 2 ที่ปมจะแนะนำคือ กระทำตามข้อ 1 ให้สำเร็จครับ เมื่อคุณกระทำสำเร็จ ตุณก็มีคุณสมบัติ พร้อมที่จะเป็นโปรแกรมเมอร์ ดังนั้นเมื่อคุณ พร้อมตามคุณสมบัติแล้ว คุณจะต้องกระทำ ข้อนี้ครับ&lt;/p&gt;  &lt;p align="justify"&gt;        ฝึกฝน ตัวเองให้เก่งกล้าสามารถ ครับ โดยการฝึกเขียนโปแกรม แล้วจะเขียนโปแกรมภาษาอะไรดี นี่ไง ที่โปรแกรมเมอร์ หลายคนต่อหลายคนเจอปัญหา แล้วไปไม่ถึงฝัน เพราะทุดคนคิดแต่เพียงว่า อะไรที่ง่ายๆ นี่หล่ะ ทำตรงนี้หละ ถ้าคิอย่างนี้เหมะสมกับอาชีพอื่นครับไม่เหมาะสมอย่างยิ่งที่จเป็น โปรแกรมเมอร์ เพราะจะใช้คำว่า เริ่มต้นจากสิ่งที่ง่ายไปหายาก นั้นผิดครับ สำหรับการเป็นโปแกรมเมอร์ เพราะมันจะทำให้เรายึดติดและท้อถอยง่ายๆ เมือเจอปัญหา ดังนั้นคุณควรเลือกเรียนภาษา ที่ยากๆ ไว้ก่อน เพราะว่าภาษาคอมพิวเตอร์ อะไรก็ตามที่ยากๆ เขียนยาก ย่อมเข้าไกล้ภาษาเครื่องมากที่สุด เพราะการเขียนโปรแกรมนั้น เป็นการเขียนโปรแกรมเพื่อบอกให้คอมพิวเตอร์ ทำงานตามเรา ดังนั้น การเข้าถึงและเข้าไกล้ภาษาเครื่องมากเท่าไร ก็ยิ่งทำให้คอมพิวเตอร์ เข้าใจมากเท่านั้น&lt;/p&gt;  &lt;p align="justify"&gt;        แล้วจะใช้ภาษา อะไรดี ขอแนะนำดังนี้ครับ ภาษาที่ ทีเครื่องมือ แบบ Visual ช่วยเยอะแยะไปหมด ย่อมมีขีดจำกัดของมัน ภาษาที่มีเครื่องมือแบบ Visual น้อย ก็จะลดขีดจำกัดลงได้ครับ ดังนั้นขอแนะนำภาษา จากยากไปหาง่าย เพียงบางตัวดังนี้ครับ Assembly, C++, C++ Builder, C# Builder, Visual C++, Visual C#, Delphi7,Pascal, Delphi8 for .Net, Visual Basic.Net, Visual Basic เป็นต้น จะสังเกตุเห็นว่า Assembly เป็นภาษาที่เข้าไกล้ภาษาเครื่อง มากที่สุด เขียนยาก ไม่มี Tools ช่วย ต่อมา เป็น C++ เขียนง่ายขึ้นมาหน่อย แต่ไม่มี Tools ช่วย ต่อมา เป็น C++ Builder ก็เขียนว่าย ขึ้นมาอีกนิด มี Tools ช่วยพอประมาณ ต่อมาเป็น C# Builder ก็มี Tools ช่วยมากมาก เขียนง่ายเข้าไปอีกระดับ จนสุดท้าย Visual Basic โอ้พระเจ้า Tools เพียบ เขียนง่ายมากๆ แค่ เขี่ยๆ ก็เสร็จแล้วครับ งายจริงๆ ไม่ต้องใช้สมองในการคิดเลย ช่วยให้เราเบาสมองไปได้เยอะ และทำให้สมองเราไม่ได้ใช้งาน เป็นใงครับ เมือสมองไม่ได้ใช้งาน ก็สมองตื้อสิครับ&lt;/p&gt;  &lt;p align="justify"&gt;        ทีนี้ ก็เป็นอันว่า เลือกเอาภาษาที่คุณชอบ แต่ อย่าทิ้งภาษาอื่นนะครับ เพราะภาษา ง่ายๆ นี้ก็ยังช่วยเราได้เยอะเช่น ความต้องการของโปรแกรมแบบ ง่ายๆ ก็ใฝช้ภาษาง่ายๆ เขียน ทุ่นเวลาดี ดังนั้น ขอแนะนำให้ฝึกทุกตัว แต่ ยึดภาษายากๆ เป็นหลักไว้ 1 ตัว เพื่อสร้างผลงานที่ยิ่งใหญ่ คุณควรฝึกเขียนโปรแกรมอย่าง สม่ำเสมอ ครับ จะได้คล่อง และควรเริ่มฝึกจากถาษา ยากๆ เป็นอันดับแรก ฝึกฝนจนชำนาญ อย่าละทิ้งนะครับ&lt;/p&gt;  &lt;h3&gt;ค้นหาข้อมูลเพิ่มเติม&lt;/h3&gt;  &lt;p align="justify"&gt;        หลัง จากที่คุณผ่าน ข้อ 1 และข้อ 2 มาแล้ว ข้อ 3 นี้เป็นข้อที่คุณขาดไม่ได้เลยทีเดียว เนื่องจากการที่จะเป็นโปรแกรมเมอร์ ระดับมืออาชีพนั้น ก็คือการค้นหาข้อมูลเพิ่มเติม อยู่เสมอ โปรแกรมเมอร์ จะต้องเป็นคนที่ไม่หยุดนิ่ง จะต้องเพิ่มพูนความรู้ใหม่ๆ อยู่ตลอดเวลา ดังนั้นหากเราหยุดนิ่ง เราจะตามโลกไม่ทัน เพราะเทคโนโลยีทุกวันนี้ ก้าวไกลและรวดเร็ว เสียเหลือเกิน หากเราหยุดเดินเพียงก้าวเดียว เราอาจตามโลกไม่ทัน อีกหลายพันก้าว เลยทีเดียว ดังนั้นการค้นหาข้อมูลเพิ่มเติม จึงเป็นส่วนสำคัญอย่างยิ่ง เพราะในโลกนี้ ไม่มีใคร เก่งที่สุด และเก่งไปหมดทุกอย่าง ดังนั้น ความรู้ เปรียบดังอาวุธ เอาไว้ต่อสู้กับความไม่รู้ ข้อมูลคือมูลเหตุแห่งความรู้ เราจงค้นหาข้อมูล มาเพิ่มเติมความรู้ให้กับตัวเราเองเถิด&lt;/p&gt;  &lt;p align="justify"&gt;        การ ที่เราค้นหาข้อมูลเพิ่มเติมอยู่เสมอนั้น ไม่ใช่แค่เป็นการเพิ่มพูนความรุ้เท่านั้น แต่ยังช่วยแก้ไขปัญหา เกี่ยวกับการเขียนโปรแกรมของเราด้วย เนื่องจากการเขียนโปรแกรมทุกครั้ง เราขะต้องติดปัญหาเสมอ รับรองได้ ไม่มีโปรแกรมเมอร์คนใด ที่เขียนโปรแกรมโดยไม่มีติดปัญหาเลย จะต้องมี ดังนั้น เราจึงต้องค้นหาข้อมูลเข้ามาช่วยแก้ไข ดังที่ว่า ไม่มีใครเก่งไปทุกอย่าง เราเก่งจุดหนึ่ง อีกคนเก่งจุดหนึ่ง เมื่อนำมารวมกัน ก็จะขจัดความไม่เก่ง ของแต่ละคนได้ ก็จะขจัดปัญหาได้ โดยการแลกเปลี่ยน ความรู้ซึ่งกันและกัน ปัญหาต่างที่พบก็จะคลี่คลายลงได้ แต่ถ้ามัวแต่คิดอยู่คนเดียว หัวของคุณอาจระเบิดตูม ขึ้นมาก็ได้ จริงไหมครับ&lt;/p&gt;  &lt;p align="justify"&gt;        นอก จากเป็นการช่วยแก้ปัญหาในการเขียนโปรแกรมแล้ว การคนหาข้อมูลเพิ่มเติมอยู่เสมอ ยังช่วยให้เรารุ้ความต้องการของโลกปัจจบัน ว่าต้องการอะไร ขาดอะไร เราสามารถนำความต้องการเหล่านั้น มาพัฒนาเป็นโปรแกรมคอมพิวเตอร์ ด้วยฝีมือของเราเอง ออกสู่ท้องตลาดได้ หากเราผลิตผลงานที่ไม่ตรงกับความต้องการของมนุษย์ แน่นอน ผลงานนั้น ย่อมไม่มีค่า และไม่มีความหมายใดๆ เลย เพราะความรู้ จะนำเราไปสู่โลกแห่งความจริง และมองออกถึงโลกอนาคต เพราะคุณจะกลายเป้นคนที่รู้จักวิเคราะห์ หาเหตุ และ ผล แห่งความเป็นไป เราจึงรู้ได้ว่า จะเกิดอะไรขึ้น และ จะต้องทำอะไรต่อไป เมื่อเรารู้ เราก็ย่อมจะผลิต ผลงานการเขียนโปรแกรมที่มีคุณภาพ ออกสู่ท้องตลาด อย่างตรงจุดประสงค์ และกลุ่มเป้าหมายได้&lt;/p&gt;  &lt;p align="justify"&gt;        แล้ว... แหล่งค้นคว้าข้อมูลหล่ะ อยู่ที่ไหน ตรงนี้ มีเต็มไปหมดเลยครับ อันได้แก่ หนังสือวารสาร ต่างๆ หนังสือวิชาเฉพาะด้าน มากมายเต็มไปหมดเลย ทางรายการตาม สถาณีวิทยุ โทรทัศน์ ก็มี สารคดีต่างๆ แม้กระทั่งสื่อ CD-ROM ต่างๆ และที่ค้นหาข้อมูล ได้อย่างมหาศาล ก็คือ Web site ใงครับ เป็นแหล่งค้นหาข้อมูลที่ยิ่งใหญ่ เหมือนกัน และโดยมากแล้ว จะเป็นข้อมูลที่มีการ Update บ่อย และเป้นข้อมูล Share จากประสบการณ์ ของกลุ่ม โปรแกรมเมอร์ ด้วยกัน ดังนั้นเราก็รู้แล้วว่า แหล่งจ้อมูลมีมากมาย สุดแล้วแต่ที่เราจะหาได้ ใครชอบแบบใหน ก็เอาอย่างนั้นครับ แต่ผมว่า ค้นหาข้อมูลทุกรูปแบบ ครับดีกว่าหาข้อมูลจากแหล่งเดียว จะได้นำข้อมูลมาเปรียบเทียบกัน วิธีการเลือกซื้อหนังสือ ก็เหมือนกัน พยายาม เลือกซื้หนังสือที่เหมาะสม และน่าเชื่อถือ โดยเฉพาะ หนังสือแปล ที่แปลมาจากหนังสือภาษาต่างประเทศ ต้องดุให้แน่ใจว่า ผู้แปล หนังสือเล่มนั้น ต้องเป็น โปรแกรมเมอร์ ไม่ใช่นักแปลภาษาอังกฤษ เพราะ ศัพท์ บางคำ ที่เป็นภาษาของโปรแกรมเมอร์ ไม่ได้มีความหมาย ตรงกับความหมาย ของนักแปลภาษาทั่วไป ผมเห็นหลาย ต่อหลายเล่ม ที่แปลผิด น่าสงสาร แม้กระทั่ง ครูผู้สอนเองยังนำเอาสิ่งผิดๆ นั้นไปสอนนักเรียน ต่ออีก แล้วเมื่อไร เราจะได้โปรแกรมเมอร์ที่รุ้จริง อย่างที่ผมเห็นมา การแปล เรื่อง Object และ Class ดันไปแปลว่า Class คือพิมพ์เขียว พิมพ์เขียวอะไรกัน มั่วกันไปใหญ่ นักเรียน ตามมหาวิทยาลัย ก็นำเอาความรู้ที่ผิดๆ นัน มาใช้กัน จนชั่วลูกชั่วหลาน แล้วเมื่อไร คนไทยจะมีโปรแกรมเมอร์ระดับ มืออาชีพ เก่งๆ กับเขาสักที อย่างนี้แหละ ที่ผมจะบอกว่า อย่าเชื่อหนังสือมากนัก จงเชื่อโปรแกรมเมอร์ดีกว่า ครับ แล้วเราจะได้ไม่เสียดาย เงินที่ซื้อหนังสือ จะซื้อที ต้องได้หนังสือดีมีคุณค่า จริงใหมครับ &lt;/p&gt;  &lt;h3&gt;เผยแพร่ผลงาน&lt;/h3&gt;  &lt;p align="justify"&gt;        เมื่อ เรามีผลงานของเราออกมาแล้ว ขั้นตอนต่อไปก็คือ เผยแพร่ผลงาน ออกสู่ สาธานณะชน เพื่อให้คนอื่นได้เห็น ได้สัมผัสกับผลงานของเรา หากเราไม่นำผลานของเราออกเผยแพร่สู่สายตา ของคนอื่น แล้วเขาจะรู้ไหมครับว่าเราเขียนโปรแกรมเป็น มีฝีมือขนาดไหน การเผยแพร่ผลงานนี่แหละ มีประโยชน์ที่สุด เพราะการที่เรามีผลงานเผยแพร่ออกไป ให้หลายคนเห็น หลายคนรู้ ต่อไปคุณก็จะมีชื่อเสียง มีหลายคนรู้จัก อีกไม่นาน งานและเงิน จะมาหาคุณเองโดยที่คุณแทบตั้งตัวไม่ติดเลยทีเดียว เพราะอะไรหรือครับ ก็เขาเชื่อมั่นในตัวคุณแล้วใงครับ จากผลงานที่คุณได้ เผยแพร่ออกไป อย่างโบราณเขาว่า สวรรค์มีตา ฟ้ามีใจ ใงครับ&lt;/p&gt;  &lt;p align="justify"&gt;        แล้ว เราจะเผยแพร่ผลงานอย่างไร ไม่ยากครับ วิธีแรก ง่ายที่สุดเลยครับ ส่งตัวอย่างโปรแกรมให้กลุ่มเป้าหมายไปทดลองใช้ วิธีนีได้ผลดีทีเดียวครับ สำหรับคนที่กว้างขวาง รุ้จักคนเยอะแยะไปหมด ก็ทำได้ง่าย แล้วคนที่ไม่ค่อยรู้จักใครหล่ะ ก็มีวิธีเช่นกันครับ ก็โดยการเผยแพร่ผลงานผ่าน Web site ใงครับ เช่นเข้าไปช่วยตอบกระทู้คำถาม ของกลุ่ม โปรแกรมเมอร์ต่างๆ ตาม Web board หรือ Forum Board ต่างๆ เมื่อเราเข้าไปช่วยตอบ ช่วยแก้ไขปัญหาต่างๆ ได้ นั่นแหละครับ หมายความว่าคุณได้สร้างผลวานออกไปแล้ว และถ้าหาก อยากเผยแพร่ผลงานอะไรออกไป แต่ไม่มีใครถามสักที ก็ตังคำถามเองเสียเลย และคอยดูว่าจะมีคนสนใจคำถามนั้นหรือไม่ พอมีคนตอบ มา เราก็ไปเสริมสักหน่อย หรืออีกอย่าง เราก็ตังกระทู้เป็น เนื้อหาไปเลยไม่ใช้คำถาม เป็นบทความบทความหนึ่งไปเลย นี่ก็นับเป็นการเผยแพร่ ผลงานอีกวิธีหนึ่ง และค่อนข้างได้ผลดีทีเดียว ส่วนอีกวิธี ก็คือ เผยแพร่ตัวอย่าง Source Code ไปเลยครับ วิธีนี้ได้ผลดีเยี่ยมเลยทีเดียวครับ เพราะเป็นทั้ง บทความ และมี Source Code ตัวอย่างให้ Download อีกต่างหาก วิธีนี้รับรองประทับใจหลายคนเลยทีเดียวครับ&lt;/p&gt;  &lt;p align="justify"&gt;        หลาย คนก็บอกว่า จะลงเนื้อหา บทความได้ที่ไหน เพราะ Web board หรือ Forum board หลายที่ จำกัดจำนวนตัวอักษรในการลง ทำให้ลงเนื้อหาได้ไม่หมด เอาหล่ะตรงนี้ ผมก็เห็นใจ ผมเลยตัดสินใจเด็ดขาด เพื่อเป็นสื่อกลางนั้น โดยการปรับปรุง &lt;a href="http://www.thai-programmer.com/?DPage=3"&gt;Forum board&lt;/a&gt; ขึ้นหมาใหม่ ไม่จำกัดตัวอักษรใน และสามารแทรกรูปภาพในเนื้อหาได้ เป็นลักษณะ Visual HTML Editor เพื่อให้ทุกคนสามารถเผยแพรผลงานออกไป พร้อมทั้งไปนั้งหลังขดหลังงอ สร้าง &lt;a href="http://www.thai-programmer.com/?DPage=8"&gt;Code Develop&lt;/a&gt; ขึ้นมาเพื่อให้ทุกคนสามาถ ที่จะส่งบทความพร้อม Source Code เพื่อเผยแพร่เช่นกัน หน้าตาคล้ายกัน ที่นี่ จะให้ความสำคัญและ สนับสนุนทุกคนครับ&lt;/p&gt;  &lt;h3&gt;กระทำตามข้อ 1 - 4 อย่างสม่ำเสมอ&lt;/h3&gt;  &lt;p align="justify"&gt;        ทำไม เราต้องทำตามข้อ 1 - 4 อย่างสม่ำเสมอ ก็เพราะว่า เราจะได้ฝึกฝน อยุ่ตลอดเวลา เพราะการฝึก ทำให้เราแกร่ง และเราก็จะได้เป็นโปรแกรมเมอร์ ระดับมืออาชีพใงครับ ถ้าเราขาดการฝึกฝน เราก็จะอยู่กับที่ ก้าวไม่ทันโลก แล้วก็ไม่มีโอกาส ได้เป็นมืออาชีพดังใจหวังไว้ นะสิครับ&lt;/p&gt;&lt;p align="justify"&gt;ที่มา http://www.thai-programmer.com/?DPage=14&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/502569790348708866-6618873644076414242?l=thaicoding.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://thaicoding.blogspot.com/feeds/6618873644076414242/comments/default' title='ส่งความคิดเห็น'/><link rel='replies' type='text/html' href='http://thaicoding.blogspot.com/2009/10/blog-post.html#comment-form' title='0 ความคิดเห็น'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/6618873644076414242'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/502569790348708866/posts/default/6618873644076414242'/><link rel='alternate' type='text/html' href='http://thaicoding.blogspot.com/2009/10/blog-post.html' title='ทำอย่างไรถึงจะเป็นโปรแกรมเมอร์มืออาชีพ'/><author><name>yam4teen</name><uri>http://www.blogger.com/profile/14512903278470156602</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
