alexa-tracking

Help, Metode untuk analisa source code pada java ?

Main Content

1024
1024
KASKUS
51
244
https://www.kaskus.co.id/thread/541781fec0cb178b798b4571/help-metode-untuk-analisa-source-code-pada-java
Breaking News! 
Help, Metode untuk analisa source code pada java ?
Maaf sebelumnya bila trit ane emoticon-Repost

Ceritanya ane mau bikin program transformasi dari souce code jadi flowchart.

dasar pemrograman ane pake java desktop.
jadi teknik dasarnya ialah menganalisa string-string supaya program dapat mengenal mana type data, mana variable, dan mana isi value variable dari souce code yang kita buat.

kira-kira metode apa yang tepat ya gan ???
Quote:Original Posted By uwong15
Maaf sebelumnya bila trit ane emoticon-Repost

Ceritanya ane mau bikin program transformasi dari souce code jadi flowchart.

dasar pemrograman ane pake java desktop.
jadi teknik dasarnya ialah menganalisa string-string supaya program dapat mengenal mana type data, mana variable, dan mana isi value variable dari souce code yang kita buat.

kira-kira metode apa yang tepat ya gan ???


kalo ane sih masih kurang mudeng maksud agan
cuman sekilas kayaknya ini macam reverse enginerring, kalo dari kode ke flowchart ya musti pake parser - dulu matkul-nya namanya teknik kompilasi - jadi musti tau grammar kode yg mau diparse

googling aja yg kaya gini ada kok open source-nya terus dipelajari, ane dah pernah make buat tugas dulu - yg program jadi jg ada bisa buat referensi

Quote:Original Posted By mnemonix
lexical analysis?


kalo contoh algoritmanya gan ???
ane kesulitan cari contoh algoritmanya.

Quote:Original Posted By haslime


kalo ane sih masih kurang mudeng maksud agan
cuman sekilas kayaknya ini macam reverse enginerring, kalo dari kode ke flowchart ya musti pake parser - dulu matkul-nya namanya teknik kompilasi - jadi musti tau grammar kode yg mau diparse

googling aja yg kaya gini ada kok open source-nya terus dipelajari, ane dah pernah make buat tugas dulu - yg program jadi jg ada bisa buat referensi



intinya gan, gmana program bisa ngebaca string-string dalam source code dan d pilah mana variable, tipe data, sama isi variable.
oh iya, ada lagi yang ane lupa, gmana caranya agar program yang bisa membaca statement2 yang ada dalam if, while, sama for gan ???

klo berkenan ane bisa minta algoritmanya gan ?
Quote:Original Posted By uwong15

kalo contoh algoritmanya gan ???
ane kesulitan cari contoh algoritmanya.



coba googling "lexical analysis algorithm", atau baca2 literatur tentang compiler design macam buku naga

lebih gampang cari lexer yg support java
Quote:Original Posted By uwong15


kalo contoh algoritmanya gan ???
ane kesulitan cari contoh algoritmanya.

intinya gan, gmana program bisa ngebaca string-string dalam source code dan d pilah mana variable, tipe data, sama isi variable.
oh iya, ada lagi yang ane lupa, gmana caranya agar program yang bisa membaca statement2 yang ada dalam if, while, sama for gan ???

klo berkenan ane bisa minta algoritmanya gan ?


untuk orang yg mau bikin app berdasarkan topik ginian menurut ane googling algo bukan suatu hal yg rumit - imho

ane dulu punya buku ttg parser (hardcopy) buat bantu ngerjain tugas ginian (tek kompilasi)
awalnya kumpulin dulu reserverd/keyword2 bhs target - terus susunan grammar bahasa (regex bisa membantu) - bikin token2 pake parser - trus pake juga struktur data stack/LIFO dan tree utk ngebangun blok2-nya

utk tampilan flowchart ane pake 3rd party - jadi output program ane musti nyesuaiin sama format input itu 3rd party buat nampilin hasilnya - jadi bahasa target Pascal - utk parser ane pake java - tapi ane batasi ga full implemented - yg basic2 doang utk sequence - looping standar - branching - soale kalo handle rescursif ane bakalan mencret

kalo saran dari agan momod dah pas itu referensi sama istilahnya, ente dah baca belum????

ini sebenernya ente buat apaan ya bikin2 kaya gini? buat TA/skripsi atau apa? udah sejauh apa ente buatnya?

kalo buat iseng2 mending ga usah dah, bikin ginian ane 1 semester itu jg live version
Quote:Original Posted By haslime


untuk orang yg mau bikin app berdasarkan topik ginian menurut ane googling algo bukan suatu hal yg rumit - imho

ane dulu punya buku ttg parser (hardcopy) buat bantu ngerjain tugas ginian (tek kompilasi)
awalnya kumpulin dulu reserverd/keyword2 bhs target - terus susunan grammar bahasa (regex bisa membantu) - bikin token2 pake parser - trus pake juga struktur data stack/LIFO dan tree utk ngebangun blok2-nya

utk tampilan flowchart ane pake 3rd party - jadi output program ane musti nyesuaiin sama format input itu 3rd party buat nampilin hasilnya - jadi bahasa target Pascal - utk parser ane pake java - tapi ane batasi ga full implemented - yg basic2 doang utk sequence - looping standar - branching - soale kalo handle rescursif ane bakalan mencret

kalo saran dari agan momod dah pas itu referensi sama istilahnya, ente dah baca belum????

ini sebenernya ente buat apaan ya bikin2 kaya gini? buat TA/skripsi atau apa? udah sejauh apa ente buatnya?

kalo buat iseng2 mending ga usah dah, bikin ginian ane 1 semester itu jg live version


buat skripsi gan, maaf ane baru pertama d mari.
ane g dapat ide apa2 buat cari judul kecuali ginian.
ane belum ngerjain apa-apa gan, sejauh ane nyoba ane udah bikin pake regex, tapi langsung dari javanya gan, cuma make fungsinya aja.
itu pun g langsung jadi flow chart tp masih dalam bentuk text berupa keterangan mana input, proses, output, function, looping.

jadi ane cari algoritma yang pas klo buat kayak gini.

tool third party buat flowchartnya apa gan ???
Ini fungsinya apa ya emoticon-Gila
Udah jadi code kok malah dijadiin flow chart emoticon-Hammer
Quote:Original Posted By uwong15

jadi ane cari algoritma yang pas klo buat kayak gini.

algoritma itu (dalam hal ini) tergantung dari teori dasar yg berkenaan dgn permasalahan yg agan ini pecahkan - teori dasarnya teknik kompilasi - lalu dilanjutkan dgn lexical analysis spt agan momod sdh berikan

btw pertanyaan ane ane sebelumnya mengenai apakah agan udah baca link yg dikasih oleh agan momod belum dijawab - pdhal udah ane bold
akhirnya berulang-ulang agan tanya lagi mengenai algoritmanya pdhal dari links/keyword yg agan momod kasih udah bener untuk menuntun ke algoritma yg ente cari

Quote:Original Posted By uwong15

tool third party buat flowchartnya apa gan ???


ane dah lupa nama toolsnya, tapi barusan ane googling ketemu namanya graphviz - kayaknya ini yg ane pake dulu cuman dah ganti tampilan web-nya - ane pake yg model neato kalo ga salah

kalo ane boleh saranin ganti aja topiknya menjadi analisis menggunakan class diagram - bukan pake flowchart - selain (kayaknya) relatif lebih mudah (cmiiw) dibanding generate flowchart, jg lebih pas aja utk OOP

nah ada 2 cara :
1. pelajari dari link yg agan momod kasih
2. ubek2 itu source code dari program jadi yg open source

khusus yg no 2, ane dah dpt itu source code utk class diagram dr hasil googling

btw ene jurusannya apa ya gan?

Quote:Original Posted By haslime

algoritma itu (dalam hal ini) tergantung dari teori dasar yg berkenaan dgn permasalahan yg agan ini pecahkan - teori dasarnya teknik kompilasi - lalu dilanjutkan dgn lexical analysis spt agan momod sdh berikan

btw pertanyaan ane ane sebelumnya mengenai apakah agan udah baca link yg dikasih oleh agan momod belum dijawab - pdhal udah ane bold
akhirnya berulang-ulang agan tanya lagi mengenai algoritmanya pdhal dari links/keyword yg agan momod kasih udah bener untuk menuntun ke algoritma yg ente cari



ane dah lupa nama toolsnya, tapi barusan ane googling ketemu namanya graphviz - kayaknya ini yg ane pake dulu cuman dah ganti tampilan web-nya - ane pake yg model neato kalo ga salah

kalo ane boleh saranin ganti aja topiknya menjadi analisis menggunakan class diagram - bukan pake flowchart - selain (kayaknya) relatif lebih mudah (cmiiw) dibanding generate flowchart, jg lebih pas aja utk OOP

nah ada 2 cara :
1. pelajari dari link yg agan momod kasih
2. ubek2 itu source code dari program jadi yg open source

khusus yg no 2, ane dah dpt itu source code utk class diagram dr hasil googling

btw ene jurusannya apa ya gan?



maaf gan, ane baru pertama d mari, jadi ane kagak tau, jadi belum baca gan. emoticon-Malu

ane jurusan informatika gan.
class diagram kan UML itu kan gan ???
oke gan, ane coba pertimbangin lagi buat bandingin flowchart sama class diagram, tapi untuk metodenya
metode lexical masih di pake kan ???

kklo linknya ada buat yang no. 2 ane bisa minta gan ???
Quote:Original Posted By neko
Ini fungsinya apa ya emoticon-Gila
Udah jadi code kok malah dijadiin flow chart emoticon-Hammer


Mungkin bisa untuk semacam analisis cara kerja virus biar bisa buat antivirusnya lebih gampang, gak tau juga sih ane gak bisa buat virus maupun antivirus emoticon-Ngakak

Atau mungkin berguna di dunia intelijen buat ngoprek program punya musuh emoticon-Ngakak
dia mo reverse engineering kayaknya
jadi dari sourcecode lalu dibikin class diagramnya
mungkin mirip2 featurenya RationalRose

cara susahnya pakek lexer semacem ANTLR
cara gampangnya modal regex doang bisa kayaknya
tinggal parsing itu class extends apa, implements siapa
Quote:Original Posted By uwong15
maaf gan, ane baru pertama d mari, jadi ane kagak tau, jadi belum baca gan. emoticon-Malu

lha itu kan tinggal klik aja link dari agan mnemonix, ada di page ini kok emoticon-Hammer (S)
Quote:Original Posted By uwong15
ane jurusan informatika gan.
class diagram kan UML itu kan gan ???
oke gan, ane coba pertimbangin lagi buat bandingin flowchart sama class diagram, tapi untuk metodenya
metode lexical masih di pake kan ???

yup, UML Class Diagram, untuk caranya pake reflection spt saran mod mnemonix - yang utamanya ente tinggal handle [package]class relationship macam inheritance - interface - abstract dll
and please jangan bilang "maaf gan, ane baru pertama d mari, jadi ane kagak tau, jadi belum baca" - itu tinggal di klik link-nya - ada di halaman ini
Quote:Original Posted By uwong15
kklo linknya ada buat yang no. 2 ane bisa minta gan ???

mending agan coba coding sendiri aja, ga sampai seminggu jg kelar kalo yg lite version
link? maap bukan ane ga mau bantu kasih link ya gan - demi kebaikan ente sendiri (ntar pas kerja ente bakalan sering googling utk bantu selesain kerjaan ente - kalo menurut ane ya gan) - tinggal googling aja cuman beberapa menit pasti dapet - ente udah tahap skrpsi jurusan informatika pula kan? - ente pasti bisa
kalau ada agan2 laen yg mau bantu kasih link silahkan aja

gud lak gan
Quote:Original Posted By pekoy154

cara susahnya pakek lexer semacem ANTLR


pakek ANTLR kayaknya "gak" susah2 amat
http://danielveselka.blogspot.com/20...ee-walker.html

AST nya langsung jadi
mana deklarasi method, mana parameternya, mana deklrasi variabel etc etc keliatan

emoticon-Ngacir
Quote:Original Posted By mnemonix


pakek ANTLR kayaknya "gak" susah2 amat
http://danielveselka.blogspot.com/20...ee-walker.html

AST nya langsung jadi
mana deklarasi method, mana parameternya, mana deklrasi variabel etc etc keliatan

emoticon-Ngacir


tentunya lebih susah jika dibandingkan sama parsing manual semacem regex emoticon-Malu (S)
Quote:Original Posted By mnemonix
Atau bisa juga pake reflection
http://www.ibm.com/developerworks/li...ary/j-dyn0603/

thnx gan, ane coba cari datanya y.

emoticon-linux2


Quote:Original Posted By arachis hypogea


Mungkin bisa untuk semacam analisis cara kerja virus biar bisa buat antivirusnya lebih gampang, gak tau juga sih ane gak bisa buat virus maupun antivirus emoticon-Ngakak

Atau mungkin berguna di dunia intelijen buat ngoprek program punya musuh emoticon-Ngakak


hihihi, gak sampe segitu lah gan,, emoticon-Ngakak

Quote:Original Posted By haslime

lha itu kan tinggal klik aja link dari agan mnemonix, ada di page ini kok emoticon-Hammer (S)

yup, UML Class Diagram, untuk caranya pake reflection spt saran mod mnemonix - yang utamanya ente tinggal handle [package]class relationship macam inheritance - interface - abstract dll
and please jangan bilang "maaf gan, ane baru pertama d mari, jadi ane kagak tau, jadi belum baca" - itu tinggal di klik link-nya - ada di halaman ini

mending agan coba coding sendiri aja, ga sampai seminggu jg kelar kalo yg lite version
link? maap bukan ane ga mau bantu kasih link ya gan - demi kebaikan ente sendiri (ntar pas kerja ente bakalan sering googling utk bantu selesain kerjaan ente - kalo menurut ane ya gan) - tinggal googling aja cuman beberapa menit pasti dapet - ente udah tahap skrpsi jurusan informatika pula kan? - ente pasti bisa
kalau ada agan2 laen yg mau bantu kasih link silahkan aja

gud lak gan


ya ampun gaaan, ane paham sekarang gan.
thx gan,
maaf jika ada yang kurang berkenan. emoticon-Malu

Quote:Original Posted By pekoy154


tentunya lebih susah jika dibandingkan sama parsing manual semacem regex emoticon-Malu (S)


regular expression juga bisa buat parsing gan ???
kalo berkenan ada contoh referensinya ???
gan, ane dapat saran dari dosen, pake regex aja dulu soalnya katanya yang paling mudah...

ane cari d google contoh2 regex, contoh2 string yang akan d manipulasi menggunakan bahasa formal gan, bukan bahasa program.
contoh :

Code:
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class regex2
{
public static void main( String args[] ){

// String to be scanned to find the pattern.
String line = "This order was placed for QT3000! OK?";
String pattern = "(.*)(\\d+)(.*)";

// Create a Pattern object
Pattern r = Pattern.compile(pattern);

// Now create matcher object.
Matcher m = r.matcher(line);
if (m.find( )) {
System.out.println("Found value: " + m.group(0) );
System.out.println("Found value: " + m.group(1) );
System.out.println("Found value: " + m.group(2) );
} else {
System.out.println("NO MATCH");
}
}
}


stringnya : "This order was placed for QT3000! OK?"

contoh lain :

Code:
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class RegexMatches
{
private static final String REGEX = "\\bcat\\b";
private static final String INPUT = "cat cat cat cattie cat";

public static void main( String args[] ){
Pattern p = Pattern.compile(REGEX);
Matcher m = p.matcher(INPUT); // get a matcher object
int count = 0;

while(m.find()) {
count++;
System.out.println("Match number "+count);
System.out.println("start(): "+m.start());
System.out.println("end(): "+m.end());
}
}
}


stringnya : "cat cat cat cattie cat"

klo yang ane mau manipulasi kayak gini stringnya ?

Code:

int a=1
String b="cek"
public static void main(String[] args){
System.out.print("saya sedang belajar");
int n=new Scanner(System.in).nextInt();


ane butuh contoh referensinya buat manipulasi string2 yang kyk gtu gan.
contoh aja gan.
Quote:Original Posted By uwong15
gan, ane dapat saran dari dosen, pake regex aja dulu soalnya katanya yang paling mudah...
---cut---
ane butuh contoh referensinya buat manipulasi string2 yang kyk gtu gan.
contoh aja gan.


coba agan download javadoc API aja dulu (yg utama), sama kalo bisa download java tutorial-nya, download di oracle.com ya gan
kalau keberatan utk download bisa ke sini

terus sebelum lanjut coding mungkin agan ada baiknya latihan googling
ini ane serius dan no offense lho gan - banyak hal2 yg ente tanyakan sebenernya bisa didapat (sebisa mungkin) dari googling dulu - SERP tersedia 7/24

gut lak gan

Quote:Original Posted By haslime


terus sebelum lanjut coding mungkin agan ada baiknya latihan googling
ini ane serius dan no offense lho gan - banyak hal2 yg ente tanyakan sebenernya bisa didapat (sebisa mungkin) dari googling dulu - SERP tersedia 7/24

gut lak gan



klo mau googling sesuatu yang mau kita cari, keyword2nya harus yg gmana gan ???