Re: [JUG-Indonesia] Re: Tanya Teknik Kompilasi Pada Play Framework
Kalo untuk dynamic compilation, dari java 1.4 juga dah bisa -:regards:- Kong Putra Samuel Franklyn wrote: agi_banget wrote: Thanks infonya, sangat membantu. Tapi menariknya, Play Framework mensyaratkan minimal Java 5 padahal Compiler API ada sejak Java 6 http://www.playframework.org/documentation/1.0/install http://www.playframework.org/documentation/1.0/install Kalau pakai Java 5 maka bisa pakai tehnik dynamic compilation seperti dalam artikel di JavaWorld. Satu-satunya drawback dari tehnik ini adalah akan generate banyak temporary file. Kalau mau keluar dari mailing list ini, caranya kirim sebuah email ke jug-indonesia-unsubscr...@yahoogroups.com. Jangan lupa, website JUG Indonesia adalah http://www.jug.or.id Yahoo! Groups Links * To visit your group on the web, go to: http://groups.yahoo.com/group/jug-indonesia/ * Your email settings: Individual Email | Traditional * To change settings online go to: http://groups.yahoo.com/group/jug-indonesia/join (Yahoo! ID required) * To change settings via email: jug-indonesia-dig...@yahoogroups.com jug-indonesia-fullfeatu...@yahoogroups.com * To unsubscribe from this group, send an email to: jug-indonesia-unsubscr...@yahoogroups.com * Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
Re: [JUG-Indonesia] Linux dan Eclipse
Kalo lihat dari errornya, karena embeded browser mozilla, membutuhkan lib libxpcom.so, dan file ini ada di package xulrunner. Dah diinstall belum pak? Frans Thamura wrote: ada yang tahu setup embeded browser di eclipse No more handles (java.lang.UnsatisfiedLinkError: /home/frans/mywork/aptana/configuration/org.eclipse.osgi/bundles/61/1/.cp/libswt-mozilla-gtk-3236.so: libxpcom.so: cannot open shared object file: No such file or directory) org.eclipse.swt.SWTError: No more handles (java.lang.UnsatisfiedLinkError: /home/frans/mywork/aptana/configuration/org.eclipse.osgi/bundles/61/1/.cp/libswt-mozilla-gtk-3236.so: libxpcom.so: cannot open shared object file: No such file or directory) at org.eclipse.swt.SWT.error(SWT.java:3400) at org.eclipse.swt.SWT.error(SWT.java:3297) at org.eclipse.swt.browser.Browser.init(Browser.java:168) at org.eclipse.ui.internal.browser.BrowserViewer.init(BrowserViewer.java:224) at org.eclipse.ui.internal.browser.WebBrowserEditor.createPartControl(WebBrowserEditor.java:78) at com.aptana.ide.intro.browser.CoreBrowserEditor.createPartControl(CoreBrowserEditor.java:138) at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:596) at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:372) at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:566) at org.eclipse.ui.internal.PartPane.setVisible(PartPane.java:290) at org.eclipse.ui.internal.presentations.PresentablePart.setVisible(PresentablePart.java:140) -- -- Frans Thamura Meruvian Group One Stop Java and Enterprise OSS Provider Technopreneurship, Training, Internship, Outsourcing and Competency Center Mobile: +62 855 7888 699 Blog Profile: http://frans.thamura.info http://frans.thamura.info Training JENI, Medallion (Alfresco, Liferay dan Compiere).. buruan... URL: http://nagasakti.mervpolis.com/roller/mervnews/entry/jeni_training_compiere_dan_alfresco http://nagasakti.mervpolis.com/roller/mervnews/entry/jeni_training_compiere_dan_alfresco
Re: [JUG-Indonesia] Linux dan Eclipse
ganymede?? maksudnya ini apa? Pake linux yang distronya apa? Harusnya tinggal diinstall pake package manager installer dari masing2 distro. Misalkan synaptic, yast, yum, dll, tergantung dari distro yang dipake. Frans Thamura wrote: On Thu, Sep 11, 2008 at 8:04 AM, Kong Putra [EMAIL PROTECTED] mailto:kongput%40softvation.com wrote: Kalo lihat dari errornya, karena embeded browser mozilla, membutuhkan lib libxpcom.so, dan file ini ada di package xulrunner. Dah diinstall belum pak? Frans Thamura wrote: installnya gimana yah kok yang ganymede gak error yah F
Re: [JUG-Indonesia] Do you apply Design Pattern?
Setuju..., IMHO, makanya dalam melakukan refactor dan penerapan design pattern harus digunakan dengan tepat sesuai dengan context problem yang hendak diselesaikan. Jangan pernah memaksakan penggunaan pattern untuk suatu problem yg telah keluar jalur dari maksud / tujuan dari pattern itu sendiri. Walaupun tujuan awal dari penggunaan pattern itu adalah agar code kita bisa di reuse, extend, maintain, dll, tapi kenyataannya penggunaan penerapan pattern yang keliru malah bisa membuat coding semakin terlihat seperti spaghetti code. Ada 3 tahap syndrom, dalam belajar penggunaan pattern (harus dihindari) : 1. Penggunaan pattern secara salah, bisa diakibatkan karena memang belum mengerti benar2 maksud pattern itu. Misalnya apa perbedaan dan persamaan dari abstract factory dengan factory method, adapter dengan facade, observer dan chain of responsibility, dll. 2. Penggunaan pattern yang terlalu berlebihan, sehingga keluar dari contextnya. 3. Akibat kedua hal tersebut, sehingga membuat orang tersebut berpikir, kok pake pattern bukan tambah bener, tapi tambah ribet..., dan akhirnya mengambil kesimpulan sendiri, bahwa pattern itu justru mempersulit dan dianggap sampah.. :) -:regards:- Kong Putra Adelwin Handoyo wrote: IMO... yang namanya over-use of anything itu tetep gak baik.. liat baik2.. pikirin baik2.. 5 hal serupa.. di refactor jadi 1.. lalu ternyata nanti salah satunya mau di rubah tanpa merubah yang lain.. ribet dah tuh.. musti liat keperluan bisnis juga.. ini nih likely to change in the near future gak.. kalo gak ya ok.. kalo very likely.. yaahhh pikir2 dah.. so the point is.. refactoring is ok.. tapi u must also count in the factor of change.. if it's very likely to change while the other is not.. i don't think it's wise to refactor juga.. Regards, Adelwin Handoyo [EMAIL PROTECTED] mailto:[EMAIL PROTECTED]
Re: [JUG-Indonesia] Do you apply Design Pattern?
Salah satu dari principle dalam OOAD adalah DRY (Don't Repeat Your Self). Dan dalam design code, memang hal ini harus dihindari. Bayangkan bila kita melakukan cut paste code dibeberapa tempat, dan suatu waktu bila ada perubahan dengan coding tersebut (mungkin masalah bugs, optimisasi, dll), maka kita akan pusing untuk membenahi coding2 yang kita copypaste itu dibanyak tempat. Dan kesalahan yang paling sering adalah kita gak update semua code itu semuanya, akibatnya akan menimbulkan masalah baru (umumnya bugs). Salah satu design pattern yang dapat digunakan untuk solusi tersebut, adalah menerapkan template pattern. Untuk detailnya dapat dilihat diinternet yang banyak membahas mengenai pattern ini. -:regards:- Kong Putra Dedy Alamsyah wrote: Dear bung Thomas .. Minta tolong bisa lebih spesifik dengan statemen (sampe harus copy-paste codingan itu dihitung masalah), thanks in advance ! - Original Message - *From:* Thomas Wiradikusuma mailto:[EMAIL PROTECTED] *To:* jug-indonesia@yahoogroups.com mailto:jug-indonesia@yahoogroups.com *Sent:* Thursday, September 04, 2008 11:39 PM *Subject:* Re: [JUG-Indonesia] Do you apply Design Pattern? sekedar menambahkan. cara paling mudah menerapkan design pattern tanpa repot2 adalah: 1. baca beberapa design pattern yg populer (kalo ada yg gak ngerti lewatin aja, gak usah serius banget bacanya) 2. coding seperti biasa 3. ketika menemukan suatu masalah (sampe harus copy-paste codingan itu dihitung masalah), ulangi poin satu over the time, lo akan menerapkan design pattern secara otomatis. ketika analyst/user cuap2, di otak lo akan otomatis beterbangan bermacam2 design pattern. salam hangat, Thomas Wiradikusuma http://wiradikusuma.blogspot.com/2008/08/kontrak-2-minggu.html http://wiradikusuma.blogspot.com/2008/08/kontrak-2-minggu.html On 02 Sep 08, at 16:26, siagianfaber wrote: Dear jugers, Di project2 yg jugers pernah tangani, seberapa sering kah Design Pattern di-apply?
Re: [JUG-Indonesia] Re: JRuby vs Groovy vs Scala
Josh, mau tanya nih, kalo DSL itu adalah language untuk memecahkan masalah tertentu. Kok gua check di wikipedia http://en.wikipedia.org/wiki/Domain-specific_programming_language, ada statement tertulis didalamnya seperti ini. The opposite is a general-purpose programming language, such as C or Java, or a general-purpose modeling language such as the UML. terus gua check di websitenya scala http://www.scala-lang.org, ada statementnya seperti ini: What is Scala? Scala is a general purpose programming language designed to express common programming patterns in a concise, elegant, and type-safe way. It smoothly integrates features of object-oriented and functional languages. It is also fully interoperable with Java. so, jadi scala itu general purpose programming seperti c / java, atau DSL. jadi binun nih. Joshua Jackson wrote: DSL itu adalah bahasa yang diperuntukkan memecahkan suatu masalah tertentu. - Untuk mendefinisikan sebuah business rules tentunya lebih mudah bila menggunakan Drools ketimbang Java. - Untuk mendefinisikan sebuah layout tentunya lebih mudah menggunakan HTML. Scala itu juga salah satu contoh DSL, dibuat untuk memecahkan masalah dalam matematika, sama kayak Haskell. ---
Re: [JUG-Indonesia] Re: JRuby vs Groovy vs Scala
Oh geto..., weleh-weleh.., maklum belum cobain seh, cuma baca doang. thanks alot. Joshua Jackson wrote: Itu marketing brow. Jangan mau kemakan marketing hype. Kekekek. Kalau lu dah pegang barangnya, then you'll know the purpose of the barang. Awalnya Scala itu dibikin ama si Martin Odersky di Lab EPFL. Munculnya dari universitas untuk memecahkan masalah dalam matematika. Scala itu kayak Haskell, functional programming language. Kalau lu pernah dapet Haskell waktu jaman kuliah dulu, nah scala itu tujuannya sama. Kalau dibilang Scala itu cuman buat matematika, bisa-bisa gak ada yang mau pake, Lift framework juga gak bakalan muncul deh. Bisa-bisa nasibnya sama kayak Haskell yang cuman segelintir orang yang tau. ---
Re: [JUG-Indonesia] Re: How do you do RIA?
Joshua Jackson wrote: Boss, I've got some questions about Flex: 1. Bagaimana issue dengan integrate ke Java backend-nya? Susah ndak? Pake BlazeDS atau GraniteDS enaknya? Menurut gua gak masalah mau pake framework yang mana untuk backendnya (belum sempat research sih, dari sisi performance dan stability-nya), tapi disisi flex sendiri dia bisa komunikasi dengan backend dengan beberapa cara. a. HTTPService, sama dengan buat aplikasi http biasa, bisa request dgn get / post. b. WebService, menggunakan rpc (soap base) dengan deskripsi wsdl document. c. RemoteObject (AMF, proprietary-nya Adobe). Untuk penggunaan relatif mudah, karena ketiga hal diatas merupakan builtin library dari flex framework. Contoh penggunaan untuk HTTPService (saya copy/paste dari sample). * File test.mxml mx:Application xmlns:mx=http://www.adobe.com/2006/mxml; backgroundColor=#FF mx:HTTPService id=srv destination=catalog useProxy=true/ mx:DataGrid dataProvider={srv.lastResult.catalog.product} width=100% height=100%/ mx:Button label=Get Data click=srv.send()/ /mx:Application * File catalog.jsp [EMAIL PROTECTED] import=flex.samples.product.ProductService, flex.samples.product.Product, java.util.List% ?xml version=1.0 encoding=utf-8? catalog % ProductService srv = new ProductService(); List list = null; list = srv.getProducts(); Product product; for (int i=0; ilist.size(); i++) { product = (Product) list.get(i); % product productId=%= product.getProductId()% name%= product.getName() %/name description%= product.getDescription() %/description price%= product.getPrice() %/price image%= product.getImage() %/image category%= product.getCategory() %/category qtyInStock%= product.getQtyInStock() %/qtyInStock /product % } % /catalog 2. Mengembednya ke aplikasi web kita bagaimana? Dengen menggunakan flex framework, setelah dicompile nanti output terakhir berupa file swf. Dan tinggal diembed di dalam html dengan tag object ...param.../object 3. You punya Flex studionya yah? Gampang gak kalau pake Flex studio? Flex builder bisa didownload,cuma emang gak gratis (trial version limited days). Sebenarnya gak perlu pake flex builder untuk menggunakan framework flex (sdknya sendiri free). Hanya emang kalo mau bikin visual dengan cepat, di flex builder terdapat visual design-nya. Many thanks
Re: [JUG-Indonesia] Re: How do you do RIA?
Joshua Jackson wrote: Boss, I've got some questions about Flex: 1. Bagaimana issue dengan integrate ke Java backend-nya? Susah ndak? Pake BlazeDS atau GraniteDS enaknya? Menurut gua gak masalah mau pake framework yang mana untuk backendnya (belum sempat research sih, dari sisi performance dan stability-nya), tapi disisi flex sendiri dia bisa komunikasi dengan backend dengan beberapa cara. a. HTTPService, sama dengan buat aplikasi http biasa, bisa request dgn get / post. b. WebService, menggunakan rpc (soap base) dengan deskripsi wsdl document. c. RemoteObject (AMF, proprietary-nya Adobe). Untuk penggunaan relatif mudah, karena ketiga hal diatas merupakan builtin library dari flex framework. Contoh penggunaan untuk HTTPService (saya copy/paste dari sample). * File test.mxml mx:Application xmlns:mx=http://www.adobe.com/2006/mxml; backgroundColor=#FF mx:HTTPService id=srv destination=catalog useProxy=true/ mx:DataGrid dataProvider={srv.lastResult.catalog.product} width=100% height=100%/ mx:Button label=Get Data click=srv.send()/ /mx:Application * File catalog.jsp [EMAIL PROTECTED] import=flex.samples.product.ProductService, flex.samples.product.Product, java.util.List% ?xml version=1.0 encoding=utf-8? catalog % ProductService srv = new ProductService(); List list = null; list = srv.getProducts(); Product product; for (int i=0; ilist.size(); i++) { product = (Product) list.get(i); % product productId=%= product.getProductId()% name%= product.getName() %/name description%= product.getDescription() %/description price%= product.getPrice() %/price image%= product.getImage() %/image category%= product.getCategory() %/category qtyInStock%= product.getQtyInStock() %/qtyInStock /product % } % /catalog 2. Mengembednya ke aplikasi web kita bagaimana? Dengen menggunakan flex framework, setelah dicompile nanti output terakhir berupa file swf. Dan tinggal diembed di dalam html dengan tag object ...param.../object 3. You punya Flex studionya yah? Gampang gak kalau pake Flex studio? Flex builder bisa didownload,cuma emang gak gratis (trial version limited days). Sebenarnya gak perlu pake flex builder untuk menggunakan framework flex (sdknya sendiri free). Hanya emang kalo mau bikin visual dengan cepat, di flex builder terdapat visual design-nya. Many thanks
Re: [JUG-Indonesia] How do you do RIA?
Kebetulan gua lagi coba2 flex, menurut gua development menggunakan flex sangat mudah. Sebenarnya flex lebih dibuat untuk developer, dimana macromedia flash lebih untuk designer. Walaupun untuk designer juga bisa menggunakan flex builder dalam membantu programmer untuk mendesign page. Yang menarik dari flex adalah concept dan architecturenya. Sebenarnya flex itu terdiri dari 2 bagian : mxml (ini merupakan taglib) dan action script. Mxml sendiri walaupun merupakan taglib, sebenarnya merepresentasikan suatu class dalam action script. Development yang dilakukan menjadi lebih flexible, mau dilakukan semua didalam action script (tanpa mxml) atau menggunakan kombinasi dengan mxml. Kecendrungan mxml biasanya digunakan hanya untuk merepresentasikan layout, sedangkan action script untuk menghandle event dan process. Pernah coba porting apilkasi simple yang pernah didevelop menggunakan swing ke dalam flash (menggunakan flex), ternyata 1 minggu banding 1 hariwakakakakaka. ini dimungkinkan karena emang builtin library dari flex dah lengkap banget untuk design layout, gak gak usah pusingin dragdrop, animation / transition, formatting data, dll. So, menurut gua, untuk develop RIA, mungkin flex emang bisa menjadi salah satu masukkan. -:regards:- Kong Putra Joshua Jackson wrote: Yang terakhir adalah Flex dan openlazslo yang berbasiskan Flash. Gw belum pernah pake Flex sampai production sih. Tapi emang bagus. Cuman setelah gw coba agak susah ngirimin data-nya ke backend menggunakan blazeds. Mungkin gw-nya aja yang belum punya waktu cukup untuk explore. Tapi komponennya ini banyak banget. Dan banyak yang aneh-aneh juga. Very sweet. Repotnya dia punya markup language sendiri namanya mxml. Nah di voting ada satu orang yang pake Flex nih. Share dong. Openlaszlo agak mirip dengan flex, walaupun sekarang udah kalah tenar dibandingkan Flex yah? Is it still recommended?
Re: [JUG-Indonesia] Kode menarik
Sekedar info.., dari hasil googling... :) http://www.topcoder.com/tc?module=Staticd1=tutorialsd2=lowestCommonAncestor Felix Halim wrote: 2008/6/10 Andrian Kurniady [EMAIL PROTECTED] mailto:andrian%40kurniady.net: Pake RMQ yang O(log N) bisa dapet segini : Preprocess Time: 0.372 100 Queries Time: 0.372 TOTAL Time: 0.744 Inilah sang jawara :D He eh, kalo pake bottom-up + plain-array DP bisa lebih kenceng daripada pake rekursi + tree structure. Pake RMQ yang O(1) dapet nya segituan juga. [Spoiler] http://andrian.kurniady.net/Minimum.java http://andrian.kurniady.net/Minimum.java [/Spoiler] Bener gak? :-D Congats!!! Sodara2, perkenalkan Andrian Kurniady, master DP + calon juara INC 2008 :D Sepertinya pertanyaan saya sudah setop sampai disini, karena udah gak ada yang lebih kenceng dari O( 1 ) query time :P Yang versi O(log N) nya bisa dibuat tergantung lebar sehingga kalau j-i+1 nya kecil, versi O( log N ) nya bisa finish hanya dalam beberapa steps, sehingga tidak jauh beda dengan versi O( 1 ) nya. However versi O( 1 ) nya guaranteed hanya butuh 1 step untuk lebar apapun. Soal gini2an cocoknya jadi interview questions nich. Karena di kuliah biasanya cuman diajarin dasar dari tree data structure dan itu tergantung kreativitas programmer untuk menggunakannya secara efficient. Untuk yang RMQ versi O( 1 ) nya biasanya terlalu susah untuk orang awam, karena butuh pengetahuan tentang Dynamic Programming yang kuat. Tapi kelihatannya bukan masalah bagi seorang Andrian Kurniady :P Menarik kan? Mau soal lagi? :D Felix Halim __
Re: [JUG-Indonesia] Javac Source Code
Sekarang Sun JVM sudah opensource kok, bisa dilihat di http://openjdk.java.net. http://download.java.net/openjdk/jdk6/ (untuk jdk 1.6) http://download.java.net/openjdk/jdk7/ (untuk jdk 1.7) http://www.sun.com/software/communitysource/j2se/java2/download.xml (untuk versi 1.3 - 1.5) Petunjuk instalasi ada di dalam sourcecode-nya. Selamat mencoba. :) -:regards:- Kong Putra Wilbert wrote: Hi Juggers.., Mau tanya nih, ada yang tau ngk source code pure nya Javac (compiler java) ada di mana? maksudku tempat untuk downloadnya? Kan waktu kita install jdk, javac itu sudah dalam bentuk binarynya.. Ada yang tau tempatnya? Thanks before... :) -- Wilbert : IT UKDW 2006 Java Blog : http://wilbertjava.wordpress.com http://wilbertjava.wordpress.com YM : inherit_c __._
Re: [JUG-Indonesia] Javac Source Code
Belum pernah cobain icetea sih, tapi beberapa opensource jvm yang lain pernah g cobain diantarnya gcj, jikes, kaffe, sablevm, jamvm. Kendala terbesar bagi g adalah stability dan compatibility dengan sun punya library (awt-swing, nio, dll). Terakhir yang g tahu, ada apache harmony (http://harmony.apache.org/index.html). Itu juga sangat menarik, tapi blm sempat coba. Mungkin teman2 ada yg pernah research ke sana? Mohon masukkannya. Thanks. -:regards:- Kong Putra Frans Thamura wrote: coba compare sama icetea dari redhat F
Re: [JUG-Indonesia] [Challenge] String to double conversion
Hi budi, dari hasil code yang gw lihat, mungkin ada sedikit yang bisa dioptimize. public class ConversionHelper { public static double stringToDouble(String s) { char[] cc = s.toCharArray(); int length = cc.length; if (length == 0) { return 0; } int i = 0; double negation = 1; if (cc[0] == '-') { negation = -1; i++; } int point = -1; int value = 0; for (; i length; i++) { if (cc[i] == '.') { point = i; } else { value = value * 10 + cc[i] - '0'; } } int divider = 1; if (point -1) { divider = pow10(length - point - 1); } return negation * value / divider; } public static double stringToDoubleModified(String s) { int length = s.length(); if (length == 0) { return 0; } int i = 0; double negation = 1; if (s.charAt(0) == '-'){ negation = -1; i++; } int point = -1; int value = 0; for (; i length; i++) { char c = s.charAt(i); if (c == '.') { point = i; } else { value = value * 10 + c - '0'; } } int divider = 1; if (point -1) { divider = pow10(length - point - 1); } return negation * value / divider; } private static int pow10(int n) { int result = 1; for (int i = 0; i n; i++) { result *= 10; } return result; } public static void main(String args[]) { long t1 = System.currentTimeMillis(); for (int i = 0; i 100; i++) { //Double.valueOf(-12.3456); //ConversionHelper.stringToDouble(-12.3456); ConversionHelper.stringToDoubleModified(-12.3456); } long t2 = System.currentTimeMillis(); System.out.println(Elapsed time = + (t2 - t1) + ms); } } Memang tidak ada perubahan logic, hanya menghindari penggunaan String.toCharArray(), karena method ini cukup boros, didalamnya terdapat proses melakukan pembuatan char array baru, dan peng-copy-an char array dari String ke char array baru. Hasilnya cukup signifikan, dari test gw sktr 30-45 persen lebih cepat dari yang terakhir. -:regards:- Kong Putra T Budi S wrote: Dear juggers, Mumpung lg hot2nya bahas thread puts vs System.out.println, gw ada 1 challenge utk optimize string to double conversion method dari class java.lang.Double: public static Double valueOf(double d) Kenapa gw butuh utk optimize ini? Krn di project yg sedang gw kerjakan skr, method valueOf memakan 90% ! process time dr keseluruhan process. FYI, data yg dibaca sekitar 10 ribu (nantinya akan jadi ratusan ribu), setiap row terdiri dari 8 column, di mana setiap column-nya berisi data seperti ini: 13.4375:17.1875:22.5:22.8125:23.4375:3:5:4:3:3:3:5:5:3:4:4:5:3:2:6:2:5:3:6:4:2:5:6:3:5:3:2:7:6:5:2:3:6:5:5:2:4:6:4:6:5:3:4:5:3:3:3:5:6:5:2:2:6:7:5:1:3:4:7:6:4:2:1:5:4:3:3:4:5:6:3:1:6:3:5:1:4:2:3:3:3.5:3.75:3.75:4:3.75:3:3.25:5.25:5:5:2.75:2.75:5.25:4.25:5.25:1.5:4:3.75:5:4.75:3:5:3.75:3.5:4.25:2.25:3.5:6.25:4.5:5.25:2.75:2.75:4.75:6.25:4.75:2.75:2.5:3.25:4:4.5:2.75:4.25:5.5:3.75:4.25:2.5:4.25:4.5:4.25:5.25:3.75:2.75:3.5 Waktu yg dibutuhkan utk meload semua data ini adalah 4547 ms. Kemudian saya mencoba utk menggantikan Double.valueOf method dgn method bikinan saya sendiri, mendapatkan hasil 3718 ms. Code-nya adalah sbb: == public class ConversionHelper { public static double stringToDouble(String s) { char[] cc = s.toCharArray(); int length = cc.length; if (length == 0) return 0; int i = 0; double negation = 1; if (cc[0] == '-') { negation = -1; i++; } int point = -1; int value = 0; for (; ilength; i++) { if (cc[i] == '.') point = i; else value = value * 10 + cc[i] - '0'; } int divider = 1; if (point -1) divider = pow10(length - point - 1); return negation * value / divider; } private static int pow10(int n) { int result = 1; for (int i=0; in; i++) { result *= 10; } return result; } } == Ditest dengan looping 1 juta kali: == @Test public void testPerformance() { long t1 = System.currentTimeMillis(); for (int i = 0; i 100; i++) { // Double.valueOf(-12.3456); ConversionHelper.stringToDouble(-12.3456); } long t2 = System.currentTimeMillis(); System.out.println(Elapsed time = + (t2 - t1) + ms); } == Hasilnya adalah: - Double.valueof(String): Elapsed time = 344 ms - ConversionHelper.stringToDouble: Elapsed time = 157 ms Sori panjang banget :D Thx kalo udah baca smp di sini