View
253
Download
0
Category
Preview:
Citation preview
8/7/2019 Java di Dunia Kerja
1/40
Java di Dunia KerjaEndy Muhardin
endy@artivisi.com
mailto:endy@artivisi.commailto:endy@artivisi.com8/7/2019 Java di Dunia Kerja
2/40
Who Am I
Founder ArtiVisi Intermedia (2008 - now)
SEPG BaliCamp (2005 2008)
Programmer (2002 now)
Dosen STIKOM Surabaya (2003 - 2004)
8/7/2019 Java di Dunia Kerja
3/40
Contact
endy@artivisi.com
Y! : endymuhardin
Twitter : endymuhardin
http://endy.artivisi.com
mailto:endy@artivisi.comhttp://endy.artivisi.com/http://endy.artivisi.com/mailto:endy@artivisi.com8/7/2019 Java di Dunia Kerja
4/40
Anda bisa Java ???
8/7/2019 Java di Dunia Kerja
5/40
public class Hello {public static void main(String[] args){
System.out.println("Hello World");
}}
8/7/2019 Java di Dunia Kerja
6/40
Java,bukan sekedar bahasa pemrograman
8/7/2019 Java di Dunia Kerja
7/40
Java Ecosystem
Bahasa Pemrograman
Framework & Library
Arsitektur & Design Pattern
Tools
Deployment Target
Standar kualitas
8/7/2019 Java di Dunia Kerja
8/40
Bahasa Pemrograman
8/7/2019 Java di Dunia Kerja
9/40
Bahasa yang bisa dijalankan di
JVM Java
Scala
Groovy
Javascript
Python (Jython)
Ruby (JRuby)
8/7/2019 Java di Dunia Kerja
10/40
Apakah menguasai bahasa pemrogramansaja cukup untuk membuat aplikasi ??
8/7/2019 Java di Dunia Kerja
11/40
Bisa, tapi akan butuh waktu lama.Tidak Efisien !!!
8/7/2019 Java di Dunia Kerja
12/40
Framework & Library
8/7/2019 Java di Dunia Kerja
13/40
Plain JDBC
String sql = "insert into t_customer (nama,alamat, .... )";sql += " values (?,?, ... )";PreparedStatement ps = conn.prepareStatement(sql);ps.setString(1, customer.getNama());ps.setString(2, customer.getAlamat());...ps.executeUpdate();
8/7/2019 Java di Dunia Kerja
14/40
JPA
entityManager.persist(customer);
8/7/2019 Java di Dunia Kerja
15/40
Framework dan Library
Official Framework
Spesifikasi dibuat oleh JCP
Alternative Framework Tanpa spesifikasi, biasanya open source
8/7/2019 Java di Dunia Kerja
16/40
Official Framework
Java Persistence API
Data Access Layer
Enterprise Java Beans Service Layer
Java Server Faces
User Interface Layer
8/7/2019 Java di Dunia Kerja
17/40
Alternative Framework
Hibernate
Data Access Layer
Spring Framework Service Layer
> 100 web framework
User Interface Layer Mis: Struts, Wicket, GWT, SpringMVC
8/7/2019 Java di Dunia Kerja
18/40
Library & Add-Ons Joda Time
Operasi tanggal dan waktu
SLF4J, Log4J
Logging JPos
Financial transaction
Velocity
Template engine
dsb
8/7/2019 Java di Dunia Kerja
19/40
Arsitektur
Menghindari duplikasi kode
Membuat aplikasi lebih mudah dimengerti
Memudahkan maintenance Bug fixing
Tambah fitur
8/7/2019 Java di Dunia Kerja
20/40
Design Pattern
Solusi untuk masalah yang sering terjadi
3 layer aplikasi
User Interface layer Business Service layer
Data Access layer
8/7/2019 Java di Dunia Kerja
21/40
Menguasai bahasa, framework, library..Cukupkah ???
8/7/2019 Java di Dunia Kerja
22/40
Kita butuh ToolsSupaya produktif
8/7/2019 Java di Dunia Kerja
23/40
Programming Tools [1]
IDE
Eclipse
Netbeans Intellij IDEA
Build Tools
Maven Ant + Ivy
Gradle
8/7/2019 Java di Dunia Kerja
24/40
Programming Tools [2]
Testing Tools
JUnit
JMeter Selenium
Script buatan sendiri
8/7/2019 Java di Dunia Kerja
25/40
Sekarang kita sudah bisa membuat aplikasi
sendirian
8/7/2019 Java di Dunia Kerja
26/40
Butuh tools tambahan untuk kerja tim
8/7/2019 Java di Dunia Kerja
27/40
Collaboration Tools Issue Tracker
Bugzilla
Trac
Redmine
Version Control
Subversion
Git
Mercurial
8/7/2019 Java di Dunia Kerja
28/40
Aplikasi sudah selesaiMau dideploy ke mana ???
8/7/2019 Java di Dunia Kerja
29/40
Deployment Target [1]
Application Server
Glassfish
Oracle iAS Oracle Weblogic
IBM Websphere
JBoss AS
Apache Tomcat
8/7/2019 Java di Dunia Kerja
30/40
Deployment Target [2]
Gadgets
Java ME
Blackberry Android
Desktop
Windows Linux
8/7/2019 Java di Dunia Kerja
31/40
8/7/2019 Java di Dunia Kerja
32/40
Kualitas Aplikasi
Prakarya
Hanya bisa dipakai untuk tugas kuliah
Production Dipakai untuk menjalankan bisnis
8/7/2019 Java di Dunia Kerja
33/40
8/7/2019 Java di Dunia Kerja
34/40
Usability
8/7/2019 Java di Dunia Kerja
35/40
Usability
8/7/2019 Java di Dunia Kerja
36/40
Validasi
8/7/2019 Java di Dunia Kerja
37/40
Error Handling
8/7/2019 Java di Dunia Kerja
38/40
Maintainability
14:07:54 ERROR [PooledThread 1 running]
i.c.a.p.g.h.receiver.impl.ReceiverPrepaidImpl :
String index out of range: 47
java.lang.StringIndexOutOfBoundsException: Stringindex out of range: 47
at java.lang.String.substring(String.java:1934)
~[na:1.6.0]
at
i.c.a.p.g.h.i.ReceiverPrepaidImpl.handleInquiryReques
t(HilirReceiverPrepaidImpl.java:549)
8/7/2019 Java di Dunia Kerja
39/40
Pertanyaan dan Diskusi
8/7/2019 Java di Dunia Kerja
40/40
Recommended