SlideShare una empresa de Scribd logo
1 de 48
Descargar para leer sin conexión
การใช้เทคโนโลยี Open Source
    ในการพัฒนาซอฟต์แวร์




              อิสริยะ ไพรีพ่ายฤทธิ์
             isriya_pa@sipa.or.th
สำานักงานส่งเสริมอุตสาหกรรมซอฟต์แวร์แห่งชาติ
                (องค์การมหาชน)
   © 2005 อนุญาตให้เผยแพร่เอกสารนีต่อด้วยสัญญาอนุญาตแบบ Creative Commons Attribution License
                                  ้
Open Source คืออะไร?
    ซอฟต์แวร์เสรี
●


    ผู้ใช้มีสิทธิอย่างเสรีกับตัวซอฟต์แวร์
●

     – ใช้งาน
     – ปรับปรุงแก้ไข
     – พัฒนาต่อ
     – ขาย
    ปัจจุบันใช้งานอย่างแพร่หลาย
●
คุณใช้ Open Source อยู่หรือเปล่า?
    Google ใช้ Linux เป็นระบบปฏิบัติการ
●


    Hotmail ใช้ FreeBSD เป็นระบบปฏิบัติการ
●


    70% ของเว็บ ใช้ Apache เป็นเว็บเซิร์ฟเวอร์
●


    ADSL Router ใช้ Linux เป็นระบบปฏิบัติการ
●


    โทรศัพท์มือถือของ Motorola ใช้ Linux เป็นระบบปฎิบัติการ
●


    Yahoo! ใช้ MySQL เป็นระบบฐานข้อมูล
●
ทำาไมต้องสนใจ Open Source

    “Innovation Happens Elsewhere”
●

    ไม่ว่าองค์กรจะลงทุนด้านวิจัยแค่ไหน ปริมาณผลงานของคน
●


    นอกองค์กรย่อมมีมากกว่า
    ทางออก : นำาผลงานของคนนอกมาใช้งาน
●


    วิธการ : Open Source
       ี
●
ประวัติของ Open Source
    1983 : Richard Stallman ประกาศคำาว่า Free Software
●


    1991 : Linus Torvalds เริ่มทำา Linux
●


    1997 : Eric S. Raymond เขียน “The Cathedral and the
●


    bazaar”
    1998 : Netscape เปิดเผยซอร์สของ Mozilla
●


    1998 : Eric S. Raymond ประกาศคำาว่า Open Source
●


    2004 : Firefox 1.0 ออก
●
รูปแบบการพัฒนาซอฟต์แวร์แบบ
                      Open Source
    ผู้สร้างเปิดเผยซอร์สโค้ด
●


    ผู้สนใจมีสทธิแก้ไขซอร์สโค้ด
                ิ
●


    ผู้สนใจมีสทธิสงส่วนที่แก้ไขมาให้ผู้สร้าง
                  ิ่
●


    ผู้สร้างมีสิทธิผนวกส่วนแก้ไขไปกับโปรแกรมต้นฉบับ
●




    ก่อให้เกิดชุมชนของผูใช้-ผู้พัฒนา
                        ้
●
ข้อดีของการพัฒนาแบบ Open Source
    ผู้ใช้มีสวนร่วมในการกำาหนดทิศทางของโปรแกรม
             ่
●


    ผู้สร้างมีโอกาสรับฟังความคิดเห็นของผู้ใช้โดยตรง
●


    เพิมปริมาณผู้มีส่วนร่วม (contributor) ของโปรแกรม
        ่
●


    ลดระยะเวลาในการออกโปรแกรมรุ่นใหม่ (release cycle)
●


    ลดค่าใช้จ่ายในการพัฒนาโปรแกรม
●
โครงการ Open Source ที่มีชอเสียง
                                ื่
    ระบบปฏิบัติการ Linux, FreeBSD
●


    เว็บเซิร์ฟเวอร์ Apache
●


    ฐานข้อมูล MySQL, PostgreSQL
●


    เว็บเบราว์เซอร์ Mozilla Firefox
●


    อีเมล Mozilla Thunderbird
●


    ชุดออฟฟิศ OpenOffice.org
●


    โปรแกรมตกแต่งภาพ Gimp
●


    ภาษาโปรแกรม PHP, Python, Perl
●
การพัฒนาซอฟต์แวร์ด้วย Open Source
    Platform
●


    ส่วนที่รองรับการทำางานของซอฟต์แวร์ เช่น OS, server, library
    Programming
●


    ตัวโปรแกรมเอง, ภาษา, compiler, interpreter
    Tools
●


    เครื่องมือที่ชวยให้การพัฒนาโปรแกรมสะดวกและมีประสิทธิภาพ
                  ่
    เช่น debugger, version control
Platform : Normal Solutions
ใช้ Open Source ลดค่าใช้จายรวมของ Solution
                         ่

                      Applications
                       10,000 B

          Linux                        Windows
           0B                          4,900 B
ราคารวมของ Solution
       10,000 B                        14,900 B
Platform : Web Solutions

                        Applications

Web Server     Apache                    IIS

               MySQL                    Oracle
Database

   OS          Linux                   Windows
Platform : ลดค่าใช้จ่ายรวม
    ใช้ Open Source เพือลดค่าใช้จ่ายโดยรวมของ Solution
                          ่
●


    ผู้ซอ : ได้ Solution ในราคาที่ถูกลง
        ื้
●


    ผู้ขาย : มีโอกาสขายได้มากขึน้
●




    สามารถใช้ Open Source ร่วมกับซอฟต์แวร์อนได้ เช่น
                                           ื่
●

     – Windows + Apache + MySQL
     – Linux + Oracle
Programming
  C/C++
●

● Java

● .NET

● PHP

● Perl

● Python
Programming : C/C++
    C เป็นภาษาหลักในการพัฒนาโปรแกรมมายาวนาน
●

     – ประสิทธิภาพสูง
     – เหมาะกับงานเกี่ยวกับระบบ
    C++ เป็น superset ของ C
●

     – เพิมความสามารถด้าน Object-Oriented
          ่
     – เขียน C++ แบบ C ได้
     – ปัจจุบันโปรแกรมขนาดใหญ่ส่วนมากเขียนด้วย C++
Programming : C/C++ : GCC
    GCC (GNU Compiler Collection)
●


    เป็น compiler มาตรฐานในการทำา benchmark
●


    สนับสนุนภาษา C, C++, Fortran, Obj-C, Ada
●


    เวอร์ชันล่าสุด 4.0
●


    มีใน Unix แทบทุกตัว
●


    ใช้บนวินโดวส์ได้ผ่าน Cygwin (www.cygwin.com)
●


    การใช้งานเป็น command line
●
Programming : C/C++ : GCC (2)
    เขียนโปรแกรมภาษา C ชื่อ main.c
●


    gcc main.c
●

     – ได้ผลลัพธ์คือ a.out
     – ทดสอบโปรแกรมโดยสั่ง ./a.out
    gcc -o program main.c
●

     – ได้ผลลัพธ์คือ program
     – ทดสอบโปรแกรมโดยสั่ง ./program
Programming : C/C++ : Editor
    Text editor : vi, notepad, editplus, ultraedit
●


    IDE (Integrated Development Environment)
●


     – Windows : Dev-C++
     – Linux : Kdevelop, Anjunta
     – หรือ Eclipse กับ CDT (C/C++ Development Tools)
KDevelop
Programming : Java
    สร้างโดย Sun Microsystems ปี 1990
●


    เป็น Object-Oriented
●


    ใช้แนวคิดของ Virtual Machine
●


    ทำางานได้ขามแพลตฟอร์ม
                ้
●


    Java Runtime Environment แจกฟรีโดย Sun และมีครอบคลุม
●


    เกือบทุกแพลตฟอร์ม
    Java Development Kit ชุดพัฒนาพื้นฐาน แจกฟรีโดย Sun
●


    มี 3 edition : J2ME, J2SE, J2EE
●


    เวอร์ชันล่าสุด : 5.0
●
Programming : Java : Diagram
                             Java Code
                               (.java)
Java Development Kit (JDK)                 Java Compiler (javac.exe)
                             Byte Code
     Java Class
                              (.class)
                                         Java Virtual Machine (java.exe)
Java Runtime Environment (JRE)
                             Binary Code
Programming : Java : Open Source
                          Open Source
                        implementations
 Library   Java Class     Harmony
Compiler     java.exe       GCJ
   VM       javac.exe     GIJ, Kaffe
Programming : Java : IDE
    Eclipse (www.eclipse.org)
●


     – IBM/Oracle
     – เวอร์ชนล่าสุด : 3.1
             ั
    NetBeans (www.netbeans.org)
●

     – Sun (Forte, Sun ONE Studio, Java Studio)
     – เวอร์ชนล่าสุด : 4.1
               ั
Programming : Java : Other
    JBoss (www.jboss.org)
●

     – Open Source J2EE application server
    Jakarta Project (jarkata.apache.org)
●

     – Open Source software for Java platform
     – ดูแลโดย Apache Foundation
     – ตัวอย่าง : Tomcat, Ant
     – นำาไปใช้ใน IBM WebSphere
Programming : .NET
    Microsoft เขียนตาม Java
●


    Multi-Platform (ในทางทฤษฎี)
●


    Multi-Language
●

     – C#, VB.NET, Managed C++, JScript.NET, ASP.NET
     – Python, Ada, Cobol, Boo, Perl, Fortran
    .NET 2.0 Final : November 2005
●
Programming : .NET : Diagram

             C#                     VB.NET
                      compiler

.NET Class                                      .NET Class
                          CIL
   (C#)                                          (VB.NET)
             (Common Intermediate Language)

                                CLR (Common Language Runtime)
                    Binary Code
Programming : .NET : Mono
    Mono (www.mono-project.com)
●


    เป็นการสร้าง .NET Framework แบบ Open Source
●


    บริษัท Ximian (ปัจจุบันเป็นของ Novell)
●


    ส่งเสริมให้ .NET สามารถรันข้ามแพลทฟอร์มได้อย่างแท้จริง
●


    มีโอกาสเกิดปัญหาด้านกฎหมายในอนาคต
●


    รวมอยูใน : SuSE, Ubuntu, Debian
            ่
●


    ไม่รวมอยู่ใน : Red Hat, Fedora
●
Programming : .NET : Mono (2)



Library                    .NET Library
            .NET Library                  Mono Library

Compiler .NET compiler         Mono compiler
  VM       .NET CLR               Mono CLR
Programming : .NET : IDE
    SharpDevelop (www.icsharpcode.net/OpenSource/SD)
●

     – Microsoft .NET
     – Windows
    MonoDevelop (http://www.monodevelop.com)
●

     – Mono implement of SharpDevelop
     – Microsoft .NET & Mono
     – Linux, MacOSX
SharpDevelop
Programming : PHP
    เดิม : Personal Home Page
●


    ปัจจุบัน : PHP Hypertext Processor
●


    scripting language, server side
●


    เทียบได้กับ Microsoft ASP, Sun JSP
●


    ได้รับความนิยมสูงมาก เช่น Pantip, phpBB, phpMyAdmin
●
Programming : PHP : Solution
    มักใช้ร่วมกับ Linux, Apache, MySQL
●


    LAMP/LAMPS
●


     – Linux, Apache, MySQL, PHP / SSL
     – (อาจใช้ PostgreSQL แทน MySQL และ Perl/Python แทน
       PHP ได้)
    สำาหรับวินโดวส์แนะนำาให้ใช้ AppServ (www.appserv.net)
●
Programming : Perl
    เป็น scripting language
●


    เหมาะสำาหรับทำางานบน Unix shell
●


    เขียนได้งาย แต่อ่านได้ยาก เพราะเป็นภาษาที่เน้นสัญลักษณ์
             ่
●


    แนะนำาให้ใช้ PHP หรือ Python
●
Programming : Python
    เป็น scripting language
●


    มีประสิทธิภาพสูง เขียนได้ง่าย
●


    ทำางานได้ขามแพลทฟอร์ม
                ้
●


    มี library สำาคัญๆ ให้ครบ
●


    กำาลังได้รบความนิยมเพิมขึ้นเรื่อยๆ เช่น
              ั             ่
●

     – Google
     – Red Hat
     – BitTorrent
Programming : Python : Example
       Python                         C
if (a > b):              int a;
  print “A is greater”   int b;
else:                    if (a>b) {
  print “B is greater”     printf(“A is greater”);
                         } else {
                           printf(“B is greater”);
                         }
Programming : Others
    ภาษาโปรแกรมมิ่งอื่นๆ ที่น่าสนใจ
●

     – Ruby
     – Boo
     – Eiffel
     – Objective-C
Tools
    Debugger
●


    Packaging
●


    Version Control
●


    Bug Tracker
●


    GUI Designer
●
Tools : Debugger
    GDB – GNU Debugger
●


     – เป็น command line debugger
     – ใช้คู่กับ GCC
     – สนับสนุน C, C++, Fortran, Pascal, Obj-C
     – ทำางานได้บน Unix และ Windows
     – มี GUI เลือกใช้ได้หลายตัว เช่น DDD
    สำาหรับภาษาอื่นๆ สามารถใช้ debugger ของ IDE
●
Tools : Packaging
    ขันตอนการติดตั้งโปรแกรมบน Unix ใช้โปรแกรมเหล่านี้เข้าช่วย
      ้
●

     – autoconfig
     – autobuild
     – make
    วิธการติดตั้งพื้นฐาน
        ี
●

     – ./configure
     – make
     – make install
Tools : Packaging (2)
    นิยมรวมไฟล์เป็นก้อน แล้วบีบอัดแบบ tar.gz หรือ tarball เพือ
                                                             ่
●


    สะดวกในการดาวน์โหลด
    การบีบไฟล์
●

     – tar cxvf filename.tar.gz file1 file2 file3
    การขยายไฟล์
●

     – tar xvfz filename.tar.gz
    ไฟล์แบบ tar.gz เปิดได้ดวยโปรแกรม ZIP ทั่วไป เช่น WinZIP,
                            ้
●


    WinRAR
Tools : Packaging (3)
    ต่อมามีระบบแพกเกจที่ก้าวหน้าขึน สามารถติดตั้งได้อัตโนมัติ
                                  ้
●


    Red Hat
●


     – RPM – Red Hat Package Management
    Debian
●


     – DPKG – Debian Package
Tools : Packaging (4)
    ระบบ RPM และ DPKG มีปญหาด้าน dependency
                             ั
●


    มีระบบแพกเกจอีกชั้นที่คอยแก้ปญหา dependency
                                 ั
●


    Red Hat
●


     – YUM
    Debian
●


     – APT (Advance Package Tool)
Tools : Version Control
    Version Control
●

    – จัดการเวอร์ชันของซอร์สโค้ด
    – เก็บโค้ดไว้ที่เซิรฟเวอร์กลาง แล้วเรียกใช้เมื่อต้องการ
                        ์
    – สนับสนุนการทำางานร่วมกันเป็นทีม
    – สามารถย้อนการแก้ไขกลับได้
    – ใช้งานอย่างจริงจังในการพัฒนาระดับอุตสาหกรรม
Tools : Version Control (2)
    CVS – Concurrent Versions System
●


     – มีใน Unix เกือบทุกรุน
                           ่
     – มีขอจำากัดหลายอย่าง เช่น ไม่สามารถเปลียนชื่อไฟล์ได้
          ้                                  ่
     – ยังใช้กันอย่างแพร่หลายในโครงการ Open Source สำาคัญ
       หลายแห่ง
    SVN – Subversion
●


     – ปรับปรุงจาก CVS แนวคิดใกล้เคียงกัน
     – แนะนำาให้เริมที่ SVN เลย
                   ่
Tools : Version Control (3)
    คำาสั่งพื้นฐานของ CVS/SVN
●


    svn checkout
●


    ดึงซอร์สส่วนที่ต้องการจากเซิรฟเวอร์มาที่เครื่อง
                                  ์
    svn add
●


    เพิมไฟล์ใหม่ในเครื่องไปยังเซิร์ฟเวอร์
       ่
    svn update
●


    ปรับปรุงการเปลียนแปลงล่าสุดกับเวอร์ชันของเซิรฟเวอร์
                     ่                              ์
    svn commit
●


    ยืนยันการเปลี่ยนแปลงไปยังเซิร์ฟเวอร์ (สั่งหลัง add/update)
Tools : Bug Tracker
    ระบบจัดการบั๊กผ่านเว็บ
●


    Bugzilla
●


    ประสิทธิภาพสูง ใช้งานอย่างแพร่หลาย ติดตั้งยาก
    IssueZilla
●


    เป็น Bugzilla ที่โครงการ OpenOffice นำามาปรับแต่ง
    Trac
●


    ใช้งานและติดตั้งได้งาย ความสามารถครบ ออกแบบมาเพื่อการ
                         ่
    พัฒนาโปรแกรม
Tools : GUI Designer
    Glade (http://glade.gnome.org/)
●

     – เป็น user interface designer
     – Export เป็น XML
     – ใช้ได้กับภาษา C, C++, Java, Perl, Python, C#, Ruby
    Stetic
●

     – เป็น user interface designer สำาหรับ Mono
    หรือใช้ GUI designer ที่มากับ IDE เช่น Eclipse, NetBeans,
●


    KDevelop
Glade
More information
    Open Source at SIPA
●


    http://www.thaiopensource.org
    Open Source Software Project
●


    http://www.sourceforge.net

Más contenido relacionado

La actualidad más candente

【13-B-3】 企業システムをマッシュアップ型に変えるには
【13-B-3】 企業システムをマッシュアップ型に変えるには【13-B-3】 企業システムをマッシュアップ型に変えるには
【13-B-3】 企業システムをマッシュアップ型に変えるにはdevsumi2009
 
ウェブ開発の次なる主戦場、Open Social
ウェブ開発の次なる主戦場、Open Socialウェブ開発の次なる主戦場、Open Social
ウェブ開発の次なる主戦場、Open SocialFITEA
 
Fmrms Whitepaper.Cnaa
Fmrms Whitepaper.CnaaFmrms Whitepaper.Cnaa
Fmrms Whitepaper.Cnaajijiegg
 
ระบบคอมพิวเตอร์
ระบบคอมพิวเตอร์ระบบคอมพิวเตอร์
ระบบคอมพิวเตอร์minimonkey
 

La actualidad más candente (9)

Asr
AsrAsr
Asr
 
【13-B-3】 企業システムをマッシュアップ型に変えるには
【13-B-3】 企業システムをマッシュアップ型に変えるには【13-B-3】 企業システムをマッシュアップ型に変えるには
【13-B-3】 企業システムをマッシュアップ型に変えるには
 
ウェブ開発の次なる主戦場、Open Social
ウェブ開発の次なる主戦場、Open Socialウェブ開発の次なる主戦場、Open Social
ウェブ開発の次なる主戦場、Open Social
 
Firefox Thai L10n
Firefox Thai L10nFirefox Thai L10n
Firefox Thai L10n
 
Fmrms Whitepaper.Cnaa
Fmrms Whitepaper.CnaaFmrms Whitepaper.Cnaa
Fmrms Whitepaper.Cnaa
 
ระบบคอมพิวเตอร์
ระบบคอมพิวเตอร์ระบบคอมพิวเตอร์
ระบบคอมพิวเตอร์
 
Fukuoka Emacs #X02
Fukuoka Emacs #X02Fukuoka Emacs #X02
Fukuoka Emacs #X02
 
Joomla Jugth01
Joomla Jugth01Joomla Jugth01
Joomla Jugth01
 
GIMP
GIMPGIMP
GIMP
 

Más de Isriya Paireepairit

ทิศทางอุตสาหกรรมโทรทัศน์ ปี 2559
ทิศทางอุตสาหกรรมโทรทัศน์ ปี 2559ทิศทางอุตสาหกรรมโทรทัศน์ ปี 2559
ทิศทางอุตสาหกรรมโทรทัศน์ ปี 2559Isriya Paireepairit
 
20160208 เอกสารรายละเอียด (ร่าง) แผนพัฒนาดิจิทัลฯ
20160208  เอกสารรายละเอียด (ร่าง) แผนพัฒนาดิจิทัลฯ20160208  เอกสารรายละเอียด (ร่าง) แผนพัฒนาดิจิทัลฯ
20160208 เอกสารรายละเอียด (ร่าง) แผนพัฒนาดิจิทัลฯIsriya Paireepairit
 
Wearable Computing: Fad or For Real?
Wearable Computing: Fad or For Real?Wearable Computing: Fad or For Real?
Wearable Computing: Fad or For Real?Isriya Paireepairit
 
ความเห็น กสทช. ต่อ ร่าง พ.ร.บ.ดิจิทัล
ความเห็น กสทช. ต่อ ร่าง พ.ร.บ.ดิจิทัลความเห็น กสทช. ต่อ ร่าง พ.ร.บ.ดิจิทัล
ความเห็น กสทช. ต่อ ร่าง พ.ร.บ.ดิจิทัลIsriya Paireepairit
 
แนวคิดและสาระสำคัญของร่างกฎหมายในชุดเศรษฐกิจดิจิทัล
แนวคิดและสาระสำคัญของร่างกฎหมายในชุดเศรษฐกิจดิจิทัลแนวคิดและสาระสำคัญของร่างกฎหมายในชุดเศรษฐกิจดิจิทัล
แนวคิดและสาระสำคัญของร่างกฎหมายในชุดเศรษฐกิจดิจิทัลIsriya Paireepairit
 
จะสร้างเศรษฐกิจดิจิทัล ต้องคิดแบบดิจิทัล
จะสร้างเศรษฐกิจดิจิทัล ต้องคิดแบบดิจิทัลจะสร้างเศรษฐกิจดิจิทัล ต้องคิดแบบดิจิทัล
จะสร้างเศรษฐกิจดิจิทัล ต้องคิดแบบดิจิทัลIsriya Paireepairit
 
อนาคตของการจัดสรรและใช้ทรัพยากรคลื่น
อนาคตของการจัดสรรและใช้ทรัพยากรคลื่นอนาคตของการจัดสรรและใช้ทรัพยากรคลื่น
อนาคตของการจัดสรรและใช้ทรัพยากรคลื่นIsriya Paireepairit
 
กฎหมาย กสทช. ของอเมริกาเพื่อแก้ปัญหาไทย
กฎหมาย กสทช. ของอเมริกาเพื่อแก้ปัญหาไทยกฎหมาย กสทช. ของอเมริกาเพื่อแก้ปัญหาไทย
กฎหมาย กสทช. ของอเมริกาเพื่อแก้ปัญหาไทยIsriya Paireepairit
 
ร่างพระราชบัญญัติคณะกรรมการดิจิทัลเพื่อเศรษฐกิจและสังคมแห่งชาติ
ร่างพระราชบัญญัติคณะกรรมการดิจิทัลเพื่อเศรษฐกิจและสังคมแห่งชาติร่างพระราชบัญญัติคณะกรรมการดิจิทัลเพื่อเศรษฐกิจและสังคมแห่งชาติ
ร่างพระราชบัญญัติคณะกรรมการดิจิทัลเพื่อเศรษฐกิจและสังคมแห่งชาติIsriya Paireepairit
 
ขยายระยะเวลาคืนคลื่น 1800 MHz: เยียวยาผู้บริโภคหรือผู้ประกอบการ?
ขยายระยะเวลาคืนคลื่น 1800 MHz: เยียวยาผู้บริโภคหรือผู้ประกอบการ?ขยายระยะเวลาคืนคลื่น 1800 MHz: เยียวยาผู้บริโภคหรือผู้ประกอบการ?
ขยายระยะเวลาคืนคลื่น 1800 MHz: เยียวยาผู้บริโภคหรือผู้ประกอบการ?Isriya Paireepairit
 
ทางออกผู้บริโภค กรณีซิมดับ จากการหมดอายุสัมปทานคลื่นความถี่ 1800MHz
ทางออกผู้บริโภค กรณีซิมดับ จากการหมดอายุสัมปทานคลื่นความถี่ 1800MHzทางออกผู้บริโภค กรณีซิมดับ จากการหมดอายุสัมปทานคลื่นความถี่ 1800MHz
ทางออกผู้บริโภค กรณีซิมดับ จากการหมดอายุสัมปทานคลื่นความถี่ 1800MHzIsriya Paireepairit
 
โครงการ 2 ล้านล้าน กับอนาคตประเทศไทย ดร. เศรษฐพุฒิ สุทธิวาทนฤพุฒิ
โครงการ 2 ล้านล้าน กับอนาคตประเทศไทย ดร. เศรษฐพุฒิ สุทธิวาทนฤพุฒิโครงการ 2 ล้านล้าน กับอนาคตประเทศไทย ดร. เศรษฐพุฒิ สุทธิวาทนฤพุฒิ
โครงการ 2 ล้านล้าน กับอนาคตประเทศไทย ดร. เศรษฐพุฒิ สุทธิวาทนฤพุฒิIsriya Paireepairit
 
ร่าง พ.ร.บ. กู้เงินเพื่อพัฒนาโครงสร้างพื้นฐาน TDRI
ร่าง พ.ร.บ. กู้เงินเพื่อพัฒนาโครงสร้างพื้นฐาน TDRIร่าง พ.ร.บ. กู้เงินเพื่อพัฒนาโครงสร้างพื้นฐาน TDRI
ร่าง พ.ร.บ. กู้เงินเพื่อพัฒนาโครงสร้างพื้นฐาน TDRIIsriya Paireepairit
 
พรบ. 2 ล้านล้านบาท ดร.นิตินัย ศิริสมรรถการ
พรบ. 2 ล้านล้านบาท ดร.นิตินัย ศิริสมรรถการพรบ. 2 ล้านล้านบาท ดร.นิตินัย ศิริสมรรถการ
พรบ. 2 ล้านล้านบาท ดร.นิตินัย ศิริสมรรถการIsriya Paireepairit
 
การกำกับดูแลการเปลี่ยนผ่านสู่ทีวีดิจิทัล
การกำกับดูแลการเปลี่ยนผ่านสู่ทีวีดิจิทัลการกำกับดูแลการเปลี่ยนผ่านสู่ทีวีดิจิทัล
การกำกับดูแลการเปลี่ยนผ่านสู่ทีวีดิจิทัลIsriya Paireepairit
 
สไลด์ข้อเสนอร่างรัฐธรรมนูญว่าด้วยนิรโทษกรรม และการขจัดความขัดแย้ง
สไลด์ข้อเสนอร่างรัฐธรรมนูญว่าด้วยนิรโทษกรรม และการขจัดความขัดแย้งสไลด์ข้อเสนอร่างรัฐธรรมนูญว่าด้วยนิรโทษกรรม และการขจัดความขัดแย้ง
สไลด์ข้อเสนอร่างรัฐธรรมนูญว่าด้วยนิรโทษกรรม และการขจัดความขัดแย้งIsriya Paireepairit
 
Thailand 1800MHz Frequency Management
Thailand 1800MHz Frequency ManagementThailand 1800MHz Frequency Management
Thailand 1800MHz Frequency ManagementIsriya Paireepairit
 
IPTV and Internet TV - Thailand Case
IPTV and Internet TV - Thailand CaseIPTV and Internet TV - Thailand Case
IPTV and Internet TV - Thailand CaseIsriya Paireepairit
 

Más de Isriya Paireepairit (20)

ทิศทางอุตสาหกรรมโทรทัศน์ ปี 2559
ทิศทางอุตสาหกรรมโทรทัศน์ ปี 2559ทิศทางอุตสาหกรรมโทรทัศน์ ปี 2559
ทิศทางอุตสาหกรรมโทรทัศน์ ปี 2559
 
20160208 เอกสารรายละเอียด (ร่าง) แผนพัฒนาดิจิทัลฯ
20160208  เอกสารรายละเอียด (ร่าง) แผนพัฒนาดิจิทัลฯ20160208  เอกสารรายละเอียด (ร่าง) แผนพัฒนาดิจิทัลฯ
20160208 เอกสารรายละเอียด (ร่าง) แผนพัฒนาดิจิทัลฯ
 
Wearable Computing: Fad or For Real?
Wearable Computing: Fad or For Real?Wearable Computing: Fad or For Real?
Wearable Computing: Fad or For Real?
 
ความเห็น กสทช. ต่อ ร่าง พ.ร.บ.ดิจิทัล
ความเห็น กสทช. ต่อ ร่าง พ.ร.บ.ดิจิทัลความเห็น กสทช. ต่อ ร่าง พ.ร.บ.ดิจิทัล
ความเห็น กสทช. ต่อ ร่าง พ.ร.บ.ดิจิทัล
 
แนวคิดและสาระสำคัญของร่างกฎหมายในชุดเศรษฐกิจดิจิทัล
แนวคิดและสาระสำคัญของร่างกฎหมายในชุดเศรษฐกิจดิจิทัลแนวคิดและสาระสำคัญของร่างกฎหมายในชุดเศรษฐกิจดิจิทัล
แนวคิดและสาระสำคัญของร่างกฎหมายในชุดเศรษฐกิจดิจิทัล
 
จะสร้างเศรษฐกิจดิจิทัล ต้องคิดแบบดิจิทัล
จะสร้างเศรษฐกิจดิจิทัล ต้องคิดแบบดิจิทัลจะสร้างเศรษฐกิจดิจิทัล ต้องคิดแบบดิจิทัล
จะสร้างเศรษฐกิจดิจิทัล ต้องคิดแบบดิจิทัล
 
อนาคตของการจัดสรรและใช้ทรัพยากรคลื่น
อนาคตของการจัดสรรและใช้ทรัพยากรคลื่นอนาคตของการจัดสรรและใช้ทรัพยากรคลื่น
อนาคตของการจัดสรรและใช้ทรัพยากรคลื่น
 
กฎหมาย กสทช. ของอเมริกาเพื่อแก้ปัญหาไทย
กฎหมาย กสทช. ของอเมริกาเพื่อแก้ปัญหาไทยกฎหมาย กสทช. ของอเมริกาเพื่อแก้ปัญหาไทย
กฎหมาย กสทช. ของอเมริกาเพื่อแก้ปัญหาไทย
 
ร่างพระราชบัญญัติคณะกรรมการดิจิทัลเพื่อเศรษฐกิจและสังคมแห่งชาติ
ร่างพระราชบัญญัติคณะกรรมการดิจิทัลเพื่อเศรษฐกิจและสังคมแห่งชาติร่างพระราชบัญญัติคณะกรรมการดิจิทัลเพื่อเศรษฐกิจและสังคมแห่งชาติ
ร่างพระราชบัญญัติคณะกรรมการดิจิทัลเพื่อเศรษฐกิจและสังคมแห่งชาติ
 
ขยายระยะเวลาคืนคลื่น 1800 MHz: เยียวยาผู้บริโภคหรือผู้ประกอบการ?
ขยายระยะเวลาคืนคลื่น 1800 MHz: เยียวยาผู้บริโภคหรือผู้ประกอบการ?ขยายระยะเวลาคืนคลื่น 1800 MHz: เยียวยาผู้บริโภคหรือผู้ประกอบการ?
ขยายระยะเวลาคืนคลื่น 1800 MHz: เยียวยาผู้บริโภคหรือผู้ประกอบการ?
 
ทางออกผู้บริโภค กรณีซิมดับ จากการหมดอายุสัมปทานคลื่นความถี่ 1800MHz
ทางออกผู้บริโภค กรณีซิมดับ จากการหมดอายุสัมปทานคลื่นความถี่ 1800MHzทางออกผู้บริโภค กรณีซิมดับ จากการหมดอายุสัมปทานคลื่นความถี่ 1800MHz
ทางออกผู้บริโภค กรณีซิมดับ จากการหมดอายุสัมปทานคลื่นความถี่ 1800MHz
 
โครงการ 2 ล้านล้าน กับอนาคตประเทศไทย ดร. เศรษฐพุฒิ สุทธิวาทนฤพุฒิ
โครงการ 2 ล้านล้าน กับอนาคตประเทศไทย ดร. เศรษฐพุฒิ สุทธิวาทนฤพุฒิโครงการ 2 ล้านล้าน กับอนาคตประเทศไทย ดร. เศรษฐพุฒิ สุทธิวาทนฤพุฒิ
โครงการ 2 ล้านล้าน กับอนาคตประเทศไทย ดร. เศรษฐพุฒิ สุทธิวาทนฤพุฒิ
 
ร่าง พ.ร.บ. กู้เงินเพื่อพัฒนาโครงสร้างพื้นฐาน TDRI
ร่าง พ.ร.บ. กู้เงินเพื่อพัฒนาโครงสร้างพื้นฐาน TDRIร่าง พ.ร.บ. กู้เงินเพื่อพัฒนาโครงสร้างพื้นฐาน TDRI
ร่าง พ.ร.บ. กู้เงินเพื่อพัฒนาโครงสร้างพื้นฐาน TDRI
 
พรบ. 2 ล้านล้านบาท ดร.นิตินัย ศิริสมรรถการ
พรบ. 2 ล้านล้านบาท ดร.นิตินัย ศิริสมรรถการพรบ. 2 ล้านล้านบาท ดร.นิตินัย ศิริสมรรถการ
พรบ. 2 ล้านล้านบาท ดร.นิตินัย ศิริสมรรถการ
 
การกำกับดูแลการเปลี่ยนผ่านสู่ทีวีดิจิทัล
การกำกับดูแลการเปลี่ยนผ่านสู่ทีวีดิจิทัลการกำกับดูแลการเปลี่ยนผ่านสู่ทีวีดิจิทัล
การกำกับดูแลการเปลี่ยนผ่านสู่ทีวีดิจิทัล
 
สไลด์ข้อเสนอร่างรัฐธรรมนูญว่าด้วยนิรโทษกรรม และการขจัดความขัดแย้ง
สไลด์ข้อเสนอร่างรัฐธรรมนูญว่าด้วยนิรโทษกรรม และการขจัดความขัดแย้งสไลด์ข้อเสนอร่างรัฐธรรมนูญว่าด้วยนิรโทษกรรม และการขจัดความขัดแย้ง
สไลด์ข้อเสนอร่างรัฐธรรมนูญว่าด้วยนิรโทษกรรม และการขจัดความขัดแย้ง
 
Agenda Bangkok
Agenda BangkokAgenda Bangkok
Agenda Bangkok
 
Mobile Trends 2012
Mobile Trends 2012Mobile Trends 2012
Mobile Trends 2012
 
Thailand 1800MHz Frequency Management
Thailand 1800MHz Frequency ManagementThailand 1800MHz Frequency Management
Thailand 1800MHz Frequency Management
 
IPTV and Internet TV - Thailand Case
IPTV and Internet TV - Thailand CaseIPTV and Internet TV - Thailand Case
IPTV and Internet TV - Thailand Case
 

How to use Open Source in Software Development

  • 1. การใช้เทคโนโลยี Open Source ในการพัฒนาซอฟต์แวร์ อิสริยะ ไพรีพ่ายฤทธิ์ isriya_pa@sipa.or.th สำานักงานส่งเสริมอุตสาหกรรมซอฟต์แวร์แห่งชาติ (องค์การมหาชน) © 2005 อนุญาตให้เผยแพร่เอกสารนีต่อด้วยสัญญาอนุญาตแบบ Creative Commons Attribution License ้
  • 2. Open Source คืออะไร? ซอฟต์แวร์เสรี ● ผู้ใช้มีสิทธิอย่างเสรีกับตัวซอฟต์แวร์ ● – ใช้งาน – ปรับปรุงแก้ไข – พัฒนาต่อ – ขาย ปัจจุบันใช้งานอย่างแพร่หลาย ●
  • 3. คุณใช้ Open Source อยู่หรือเปล่า? Google ใช้ Linux เป็นระบบปฏิบัติการ ● Hotmail ใช้ FreeBSD เป็นระบบปฏิบัติการ ● 70% ของเว็บ ใช้ Apache เป็นเว็บเซิร์ฟเวอร์ ● ADSL Router ใช้ Linux เป็นระบบปฏิบัติการ ● โทรศัพท์มือถือของ Motorola ใช้ Linux เป็นระบบปฎิบัติการ ● Yahoo! ใช้ MySQL เป็นระบบฐานข้อมูล ●
  • 4. ทำาไมต้องสนใจ Open Source “Innovation Happens Elsewhere” ● ไม่ว่าองค์กรจะลงทุนด้านวิจัยแค่ไหน ปริมาณผลงานของคน ● นอกองค์กรย่อมมีมากกว่า ทางออก : นำาผลงานของคนนอกมาใช้งาน ● วิธการ : Open Source ี ●
  • 5. ประวัติของ Open Source 1983 : Richard Stallman ประกาศคำาว่า Free Software ● 1991 : Linus Torvalds เริ่มทำา Linux ● 1997 : Eric S. Raymond เขียน “The Cathedral and the ● bazaar” 1998 : Netscape เปิดเผยซอร์สของ Mozilla ● 1998 : Eric S. Raymond ประกาศคำาว่า Open Source ● 2004 : Firefox 1.0 ออก ●
  • 6. รูปแบบการพัฒนาซอฟต์แวร์แบบ Open Source ผู้สร้างเปิดเผยซอร์สโค้ด ● ผู้สนใจมีสทธิแก้ไขซอร์สโค้ด ิ ● ผู้สนใจมีสทธิสงส่วนที่แก้ไขมาให้ผู้สร้าง ิ่ ● ผู้สร้างมีสิทธิผนวกส่วนแก้ไขไปกับโปรแกรมต้นฉบับ ● ก่อให้เกิดชุมชนของผูใช้-ผู้พัฒนา ้ ●
  • 7. ข้อดีของการพัฒนาแบบ Open Source ผู้ใช้มีสวนร่วมในการกำาหนดทิศทางของโปรแกรม ่ ● ผู้สร้างมีโอกาสรับฟังความคิดเห็นของผู้ใช้โดยตรง ● เพิมปริมาณผู้มีส่วนร่วม (contributor) ของโปรแกรม ่ ● ลดระยะเวลาในการออกโปรแกรมรุ่นใหม่ (release cycle) ● ลดค่าใช้จ่ายในการพัฒนาโปรแกรม ●
  • 8. โครงการ Open Source ที่มีชอเสียง ื่ ระบบปฏิบัติการ Linux, FreeBSD ● เว็บเซิร์ฟเวอร์ Apache ● ฐานข้อมูล MySQL, PostgreSQL ● เว็บเบราว์เซอร์ Mozilla Firefox ● อีเมล Mozilla Thunderbird ● ชุดออฟฟิศ OpenOffice.org ● โปรแกรมตกแต่งภาพ Gimp ● ภาษาโปรแกรม PHP, Python, Perl ●
  • 9. การพัฒนาซอฟต์แวร์ด้วย Open Source Platform ● ส่วนที่รองรับการทำางานของซอฟต์แวร์ เช่น OS, server, library Programming ● ตัวโปรแกรมเอง, ภาษา, compiler, interpreter Tools ● เครื่องมือที่ชวยให้การพัฒนาโปรแกรมสะดวกและมีประสิทธิภาพ ่ เช่น debugger, version control
  • 10. Platform : Normal Solutions ใช้ Open Source ลดค่าใช้จายรวมของ Solution ่ Applications 10,000 B Linux Windows 0B 4,900 B ราคารวมของ Solution 10,000 B 14,900 B
  • 11. Platform : Web Solutions Applications Web Server Apache IIS MySQL Oracle Database OS Linux Windows
  • 12. Platform : ลดค่าใช้จ่ายรวม ใช้ Open Source เพือลดค่าใช้จ่ายโดยรวมของ Solution ่ ● ผู้ซอ : ได้ Solution ในราคาที่ถูกลง ื้ ● ผู้ขาย : มีโอกาสขายได้มากขึน้ ● สามารถใช้ Open Source ร่วมกับซอฟต์แวร์อนได้ เช่น ื่ ● – Windows + Apache + MySQL – Linux + Oracle
  • 13. Programming C/C++ ● ● Java ● .NET ● PHP ● Perl ● Python
  • 14. Programming : C/C++ C เป็นภาษาหลักในการพัฒนาโปรแกรมมายาวนาน ● – ประสิทธิภาพสูง – เหมาะกับงานเกี่ยวกับระบบ C++ เป็น superset ของ C ● – เพิมความสามารถด้าน Object-Oriented ่ – เขียน C++ แบบ C ได้ – ปัจจุบันโปรแกรมขนาดใหญ่ส่วนมากเขียนด้วย C++
  • 15. Programming : C/C++ : GCC GCC (GNU Compiler Collection) ● เป็น compiler มาตรฐานในการทำา benchmark ● สนับสนุนภาษา C, C++, Fortran, Obj-C, Ada ● เวอร์ชันล่าสุด 4.0 ● มีใน Unix แทบทุกตัว ● ใช้บนวินโดวส์ได้ผ่าน Cygwin (www.cygwin.com) ● การใช้งานเป็น command line ●
  • 16. Programming : C/C++ : GCC (2) เขียนโปรแกรมภาษา C ชื่อ main.c ● gcc main.c ● – ได้ผลลัพธ์คือ a.out – ทดสอบโปรแกรมโดยสั่ง ./a.out gcc -o program main.c ● – ได้ผลลัพธ์คือ program – ทดสอบโปรแกรมโดยสั่ง ./program
  • 17. Programming : C/C++ : Editor Text editor : vi, notepad, editplus, ultraedit ● IDE (Integrated Development Environment) ● – Windows : Dev-C++ – Linux : Kdevelop, Anjunta – หรือ Eclipse กับ CDT (C/C++ Development Tools)
  • 19. Programming : Java สร้างโดย Sun Microsystems ปี 1990 ● เป็น Object-Oriented ● ใช้แนวคิดของ Virtual Machine ● ทำางานได้ขามแพลตฟอร์ม ้ ● Java Runtime Environment แจกฟรีโดย Sun และมีครอบคลุม ● เกือบทุกแพลตฟอร์ม Java Development Kit ชุดพัฒนาพื้นฐาน แจกฟรีโดย Sun ● มี 3 edition : J2ME, J2SE, J2EE ● เวอร์ชันล่าสุด : 5.0 ●
  • 20. Programming : Java : Diagram Java Code (.java) Java Development Kit (JDK) Java Compiler (javac.exe) Byte Code Java Class (.class) Java Virtual Machine (java.exe) Java Runtime Environment (JRE) Binary Code
  • 21. Programming : Java : Open Source Open Source implementations Library Java Class Harmony Compiler java.exe GCJ VM javac.exe GIJ, Kaffe
  • 22. Programming : Java : IDE Eclipse (www.eclipse.org) ● – IBM/Oracle – เวอร์ชนล่าสุด : 3.1 ั NetBeans (www.netbeans.org) ● – Sun (Forte, Sun ONE Studio, Java Studio) – เวอร์ชนล่าสุด : 4.1 ั
  • 23. Programming : Java : Other JBoss (www.jboss.org) ● – Open Source J2EE application server Jakarta Project (jarkata.apache.org) ● – Open Source software for Java platform – ดูแลโดย Apache Foundation – ตัวอย่าง : Tomcat, Ant – นำาไปใช้ใน IBM WebSphere
  • 24. Programming : .NET Microsoft เขียนตาม Java ● Multi-Platform (ในทางทฤษฎี) ● Multi-Language ● – C#, VB.NET, Managed C++, JScript.NET, ASP.NET – Python, Ada, Cobol, Boo, Perl, Fortran .NET 2.0 Final : November 2005 ●
  • 25. Programming : .NET : Diagram C# VB.NET compiler .NET Class .NET Class CIL (C#) (VB.NET) (Common Intermediate Language) CLR (Common Language Runtime) Binary Code
  • 26. Programming : .NET : Mono Mono (www.mono-project.com) ● เป็นการสร้าง .NET Framework แบบ Open Source ● บริษัท Ximian (ปัจจุบันเป็นของ Novell) ● ส่งเสริมให้ .NET สามารถรันข้ามแพลทฟอร์มได้อย่างแท้จริง ● มีโอกาสเกิดปัญหาด้านกฎหมายในอนาคต ● รวมอยูใน : SuSE, Ubuntu, Debian ่ ● ไม่รวมอยู่ใน : Red Hat, Fedora ●
  • 27. Programming : .NET : Mono (2) Library .NET Library .NET Library Mono Library Compiler .NET compiler Mono compiler VM .NET CLR Mono CLR
  • 28. Programming : .NET : IDE SharpDevelop (www.icsharpcode.net/OpenSource/SD) ● – Microsoft .NET – Windows MonoDevelop (http://www.monodevelop.com) ● – Mono implement of SharpDevelop – Microsoft .NET & Mono – Linux, MacOSX
  • 30. Programming : PHP เดิม : Personal Home Page ● ปัจจุบัน : PHP Hypertext Processor ● scripting language, server side ● เทียบได้กับ Microsoft ASP, Sun JSP ● ได้รับความนิยมสูงมาก เช่น Pantip, phpBB, phpMyAdmin ●
  • 31. Programming : PHP : Solution มักใช้ร่วมกับ Linux, Apache, MySQL ● LAMP/LAMPS ● – Linux, Apache, MySQL, PHP / SSL – (อาจใช้ PostgreSQL แทน MySQL และ Perl/Python แทน PHP ได้) สำาหรับวินโดวส์แนะนำาให้ใช้ AppServ (www.appserv.net) ●
  • 32. Programming : Perl เป็น scripting language ● เหมาะสำาหรับทำางานบน Unix shell ● เขียนได้งาย แต่อ่านได้ยาก เพราะเป็นภาษาที่เน้นสัญลักษณ์ ่ ● แนะนำาให้ใช้ PHP หรือ Python ●
  • 33. Programming : Python เป็น scripting language ● มีประสิทธิภาพสูง เขียนได้ง่าย ● ทำางานได้ขามแพลทฟอร์ม ้ ● มี library สำาคัญๆ ให้ครบ ● กำาลังได้รบความนิยมเพิมขึ้นเรื่อยๆ เช่น ั ่ ● – Google – Red Hat – BitTorrent
  • 34. Programming : Python : Example Python C if (a > b): int a; print “A is greater” int b; else: if (a>b) { print “B is greater” printf(“A is greater”); } else { printf(“B is greater”); }
  • 35. Programming : Others ภาษาโปรแกรมมิ่งอื่นๆ ที่น่าสนใจ ● – Ruby – Boo – Eiffel – Objective-C
  • 36. Tools Debugger ● Packaging ● Version Control ● Bug Tracker ● GUI Designer ●
  • 37. Tools : Debugger GDB – GNU Debugger ● – เป็น command line debugger – ใช้คู่กับ GCC – สนับสนุน C, C++, Fortran, Pascal, Obj-C – ทำางานได้บน Unix และ Windows – มี GUI เลือกใช้ได้หลายตัว เช่น DDD สำาหรับภาษาอื่นๆ สามารถใช้ debugger ของ IDE ●
  • 38. Tools : Packaging ขันตอนการติดตั้งโปรแกรมบน Unix ใช้โปรแกรมเหล่านี้เข้าช่วย ้ ● – autoconfig – autobuild – make วิธการติดตั้งพื้นฐาน ี ● – ./configure – make – make install
  • 39. Tools : Packaging (2) นิยมรวมไฟล์เป็นก้อน แล้วบีบอัดแบบ tar.gz หรือ tarball เพือ ่ ● สะดวกในการดาวน์โหลด การบีบไฟล์ ● – tar cxvf filename.tar.gz file1 file2 file3 การขยายไฟล์ ● – tar xvfz filename.tar.gz ไฟล์แบบ tar.gz เปิดได้ดวยโปรแกรม ZIP ทั่วไป เช่น WinZIP, ้ ● WinRAR
  • 40. Tools : Packaging (3) ต่อมามีระบบแพกเกจที่ก้าวหน้าขึน สามารถติดตั้งได้อัตโนมัติ ้ ● Red Hat ● – RPM – Red Hat Package Management Debian ● – DPKG – Debian Package
  • 41. Tools : Packaging (4) ระบบ RPM และ DPKG มีปญหาด้าน dependency ั ● มีระบบแพกเกจอีกชั้นที่คอยแก้ปญหา dependency ั ● Red Hat ● – YUM Debian ● – APT (Advance Package Tool)
  • 42. Tools : Version Control Version Control ● – จัดการเวอร์ชันของซอร์สโค้ด – เก็บโค้ดไว้ที่เซิรฟเวอร์กลาง แล้วเรียกใช้เมื่อต้องการ ์ – สนับสนุนการทำางานร่วมกันเป็นทีม – สามารถย้อนการแก้ไขกลับได้ – ใช้งานอย่างจริงจังในการพัฒนาระดับอุตสาหกรรม
  • 43. Tools : Version Control (2) CVS – Concurrent Versions System ● – มีใน Unix เกือบทุกรุน ่ – มีขอจำากัดหลายอย่าง เช่น ไม่สามารถเปลียนชื่อไฟล์ได้ ้ ่ – ยังใช้กันอย่างแพร่หลายในโครงการ Open Source สำาคัญ หลายแห่ง SVN – Subversion ● – ปรับปรุงจาก CVS แนวคิดใกล้เคียงกัน – แนะนำาให้เริมที่ SVN เลย ่
  • 44. Tools : Version Control (3) คำาสั่งพื้นฐานของ CVS/SVN ● svn checkout ● ดึงซอร์สส่วนที่ต้องการจากเซิรฟเวอร์มาที่เครื่อง ์ svn add ● เพิมไฟล์ใหม่ในเครื่องไปยังเซิร์ฟเวอร์ ่ svn update ● ปรับปรุงการเปลียนแปลงล่าสุดกับเวอร์ชันของเซิรฟเวอร์ ่ ์ svn commit ● ยืนยันการเปลี่ยนแปลงไปยังเซิร์ฟเวอร์ (สั่งหลัง add/update)
  • 45. Tools : Bug Tracker ระบบจัดการบั๊กผ่านเว็บ ● Bugzilla ● ประสิทธิภาพสูง ใช้งานอย่างแพร่หลาย ติดตั้งยาก IssueZilla ● เป็น Bugzilla ที่โครงการ OpenOffice นำามาปรับแต่ง Trac ● ใช้งานและติดตั้งได้งาย ความสามารถครบ ออกแบบมาเพื่อการ ่ พัฒนาโปรแกรม
  • 46. Tools : GUI Designer Glade (http://glade.gnome.org/) ● – เป็น user interface designer – Export เป็น XML – ใช้ได้กับภาษา C, C++, Java, Perl, Python, C#, Ruby Stetic ● – เป็น user interface designer สำาหรับ Mono หรือใช้ GUI designer ที่มากับ IDE เช่น Eclipse, NetBeans, ● KDevelop
  • 47. Glade
  • 48. More information Open Source at SIPA ● http://www.thaiopensource.org Open Source Software Project ● http://www.sourceforge.net