-
Java graph/network libraries
เผื่อใครอยากจะเขียนโปรแกรม วาดผัง ร่องรอย blog tag (ตัวอย่าง โดย keng) ลอง Java libraries for open source graph/network visualization technorati tags: information visualization, graph, network, Java
-
Using dictionary with ICU4J BreakIterator
การสร้างและเรียกใข้พจนานุกรมสำหรับตัดคำ ใน ICU4J จดวิธีการตัดคำด้วย DictionaryBasedBreakIterator ของ ICU4J และการสร้างพจนานุกรมตัดคำเอง (เฮ้! นี่คือ “จาวา” ขวัญอ่อน? รักสวยรักงาม? .. ระวังถูกงับมือ! เราเตือนคุณแล้วนะ :P) การสร้างไฟล์พจนานุกรมสำหรับตัดคำ ใช้โปรแกรม BuildDictionaryFile สร้างไฟล์พจนานุกรม, วิธีใช้คือ: BuildDictionaryFile input [encoding] [output] [list] input = ข้อมูลเข้า ไฟล์พจนานุกรม เป็นไฟล์ชนิดข้อความ หนึ่งคำต่อหนึ่งบรรทัด encoding = รหัสตัวอักษรของไฟล์พจนานุกรม เช่น TIS-620, UTF-8 (ถ้าไม่ใส่จะใช้ค่าปริยาย คือ UTF-8) output = ข้อมูลออก ผลลัพธ์ เป็นไฟล์ชนิดไบนารี (จะใช้เป็นอินพุตของคอนสตรัคเตอร์ของคลาส DictionaryBasedBreakIterator ต่อไป) list = ข้อมูลออก รายการคำที่ถูกบรรจุในพจนานุกรม (output)…
-
JRuby 0.9.2
มากันใหญ่ สงสัยกะทิ้งท้าย แล้วไปเที่ยวปีใหม่กัน JRuby 0.9.2 ออกแล้ว (release notes) มันคือ Ruby บน JVM นั่นเอง openssl และ readline ใช้งานได้แล้ว iconv และ bigdecimal ใช้งานได้บางส่วนแล้ว มีคอนโซล irb (interactive ruby) แบบกราฟิก (สีสันสดใส พร้อมเติมโค้ดให้ได้ด้วย) แก้ไขบั๊กเกี่ยวกับ block และ scope ทั้งหมด (เท่าที่รู้) ใช้งานกับ Rails ได้ดีขึ้น ปรับปรุงประสิทธิภาพของ parser และคอมไพเลอร์ ฯลฯ ดาวน์โหลด tags: JRuby | Ruby | Java
-
OpenOffice.org 2.1 + Java SE 6
ออกแล้ว Java SE 6 และ OpenOffice.org 2.1 Java SE 6 นี่ ความสามารถใหม่ ๆ เน้นไปที่เดสก์ทอป หน้าตาที่ดูดีขึ้น และทำงานได้แนบสนิทกับตัวโอเอสพื้นถิ่นมากขึ้น นอกจากนี้สำหรับนักพัฒนาก็มีเรื่องการใช้งานภาษาแบบสคริปต์ (มีตัวแปลภาษา JavaScript มาในตัว) เรื่องเว็บเซอร์วิส และบน Solaris ก็ใช้กับ dTrace ได้ ส่วน OpenOffice.org 2.1 ก็พัฒนาเรื่องการใช้ Access จาก Base, Impress ต่อหลายจอได้, Calc ส่งออกไฟล์ HTML ได้ดีขึ้น, มีภาษาเพิ่มขึ้น, และการปรับปรุงโปรแกรมอัตโนมัติ Picasa 2 ก็ออก update: OpenOffice.org มีแม่แบบเอกสารกับคลิปอาร์ตใหม่ ๆ ให้ดาวน์โหลดด้วย tags: OpenOffice.org, JDK, Java
-
Solaris device drivers in Java
Writing Solaris Device Drivers in Java — ฝ่ายวิจัยของซัน พอร์ต Java VM ขนาดเล็กที่ชื่อ Squawk เข้าไปใน kernel ของ Solaris จากนั้นก็ทดลองพอร์ตดีไวซ์ไดรเวอร์ง่าย ๆ ตัวนึง จากภาษาซี ไปเป็นภาษาจาวา เป็นการทดสอบอย่างนึงว่า ภาษาในระดับจาวานั้น ก็สามารถใช้ในงานที่โดยมากจะใช้แต่ซีได้ สำหรับ Squawk เองนี่ เป็น JVM ที่ออกแบบมาสำหรับอุปกรณ์ขนาดเล็ก ตัว VM เกือบทั้งหมดเขียนด้วยภาษาจาวา (ดูภาพประกอบ) เพื่อความสะดวกในการพอร์ต VM (มีรันบน Java Card 3.0 และ Sun SPOT ซึ่งเป็น “ชุดคิท” embedded device จาก Sun Labs) ตัว VM นี่ compat…
-
Official – Sun to Open-Source Java
“ Yes, we really are going to open-source the JDK ” คราวนี้ของจริง ประกาศเองเลย ไม่ใช่ข่าวลือ พร้อมกำหนดเดือนเรียบร้อย สัญญาอนุญาตยังไม่ประกาศว่าจะเอาแบบไหน แต่เป็น OSI-approved แน่ (และถ้าเกิดสงสัย, สัญญาแบบ CDDL ก็เป็น OSI-approved — วิกิพีเดีย: “The CDDL is one of the 9 preferred licenses listed by the OSI.”) Hotspot VM (เวอร์ชวลแมชชีน/รันไทม์) กับ javac (คอมไพเลอร์) จะเปิดเดือนตุลาคมนี้ ส่วนที่เหลือจะตามมาต้น ๆ ปีหน้า ข้างบนนั่นคือ Java SE แต่ไม่ได้มีแค่นั้น ยังมี Java…
-
Dynamicism
พอคอมพิวเตอร์มีประสิทธิภาพมาถึงจุดนึง เราก็สามารถ “ฟุ่มเฟือย” พลังประมวลผล ไปกับคำสั่งที่อาจจะไม่จำเป็นบางอย่าง ยกหน้าที่เรื่องการเขียนภาษาเครื่องให้กับตัวคอมไพเลอร์ แล้วเราก็ไปเขียนภาษาในระดับที่สูงกว่านั้นแทน เพื่อแลกกับความสะดวกในการเขียนโปรแกรม .. ลดเวลาในการเขียน และเพิ่มความง่ายในการ port พอคอมพิวเตอร์มีประสิทธิภาพมาถึงอีกจุดนึง เราก็สามารถ “ฟุ่มเฟือย” พลังประมวลผล ไปกับการแปลงโค้ดทุกครั้งที่รันได้ (โดยแปลงเป็นภาษากลางล่วงหน้าก่อน แล้วค่อยเป็นภาษาเครื่อง) เพื่อแลกกับความสะดวกเรื่องการใช้งานข้ามแพลตฟอร์ม .. ลดจำนวนโปรแกรมที่ต้องเขียน และถึงตอนนี้ก็ไม่ต้อง port แล้ว รันได้เลย แล้วพอจะไปถึงอีกจุดนึง เราก็สามารถ “ฟุ่มเฟือย” พลังประมวลผล ไปกับการแปลงโค้ดทุกครั้งที่รัน (จริง ๆ – จากภาษาโปรแกรม ไปเป็นภาษาเครื่องเลย) เพื่อแลกกับความง่ายในการเขียนโปรแกรม (บางอย่างที่อาจจะยาก ถ้าต้องเขียนแบบ static) .. ลดจำนวนบรรทัดที่ต้องเขียน/ความซับซ้อนของโปรแกรม เพิ่มผลิตภาพ แล้วถึงตอนนั้น ก็อาจจะไม่ต้องเขียนโปรแกรมบางอย่างเองล่วงหน้าแล้ว ปล่อยให้โปรแกรมมันไปเขียนโปรแกรมตอนรันเอาเอง คาดว่าหลังจากนั้น ก็คงจะถึงยุคของ การไม่ต้องเขียนโปรแกรม แต่เปลี่ยนเป็นบอกว่า เราอยากได้อะไร (declarative) (จากเมื่อก่อนเป็นการบอกขั้นตอนว่าทำอย่างไร) คงจะเป็นทำนอง Prolog…
-
JVM 5.0 GC Tuning
ต่อเนื่องจาก JVM -X, XX options เมื่อครั้งกระโน้น วันนี้ไปเจอลิงก์วิธีการปรับ gc (ตัวเก็บขยะ) ใน Java VM 5.0 Tuning Garbage Collection with the 5.0 Java Virtual Machine tags: JVM, Java, gc, garbage collection
-
Elastic tabstops
โปรแกรมเมอร์ทั้งหลาย ลองเล่นเอดิเตอร์นี้ แล้วคุณจะชอบ (ไฟล์ jar ถ้ามี Java runtime อยู่ ก็รันได้เลย) ไม่รู้จะอธิบายยังไงน่ะ ต้องลองพิมพ์ดูเอง เล่นแล้วรู้สึกว่า น่าจะช่วยลดปัญหาปวดหัวเรื่อง tab และ comment ไปได้เยอะ 😛 Elastic tabstops – the solution to the tabs-versus-spaces issue via osnews tags: Elastic tabstops editor programming
-
JVM -X, XX options
Let’s together make a list of JVM non-standard -X and -XX options ! We like to have all aspects of these options, including but not limited to syntax (how), best practices (when/how), and theoretical background (why). The main interest is the Sun JVM 5.0 (and later), but other JVMs are welcome. While these options are,…