modern php developer

47
Achmad Solichin | @achmatim Semarang, 5 November 2016

Upload: achmad-solichin

Post on 13-Jan-2017

806 views

Category:

Education


1 download

TRANSCRIPT

Page 1: Modern PHP Developer

Achmad Solichin | @achmatim

Semarang, 5 November 2016

Page 2: Modern PHP Developer

@achmatim Achmad Solichin [email protected]

slideshare.net/achmatim http://achmatim.net

Universitas Budi Luhur, Jakarta

Page 3: Modern PHP Developer

Apa itu PHP ?

Page 4: Modern PHP Developer

Rasmus Lerdorf

• Lahir tahun 1968 di Greenland, Denmark

• Mahasiswa Universitas Waterloo

• Rilis PHP pertama tahun 1995 (27 tahun)

Page 5: Modern PHP Developer

Juni 1995 PHP 1.0 : Personal Home Page Tools (PHP Tools)

November 1997 PHP 2.0 : PHP/FI 2.0

Juni 1998 PHP 3.0 : PHP:Hypertext Preprocessor, oleh Zeev Suraski dan Andi Gutmans (Zend)

Mei 2000 PHP 4.0 : Dengan Zend Engine

Juli 2004 PHP 5.0 : Dengan Zend Engine 2

PHP 6.0 tidak dirilis *mengapa?

Desember 2015 PHP 7.0 : Zend Engine 3

Sumber: https://w3techs.com/technologies/details/pl-php/all/all

82% website menggunakan PHP

97% menggunakan PHP versi 5

Page 6: Modern PHP Developer

Open source Platform independent Extensions

High performance Reliable & secure Community support

Kelebihan PHP

Page 7: Modern PHP Developer

PHP Developer

Page 8: Modern PHP Developer

A web designer is the person in charge of the visual design and layout of the website

A web developer takes that design and vision from a static design to a fully working website that is online and available to the world.

PHP Developer = Web Developer + PHP

Page 9: Modern PHP Developer
Page 10: Modern PHP Developer

Sebuah Perjalanan…

2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016

Belajar Mengetikdg Mesin Tik

BelajarMengetik dg Komputer

Email Pertama, Website Pertama

Belajar HTML & PHP, AplikasiPertama

Webkom(Web Intranet Labkom)

Angket Web Dosen, Web Galeri Foto

Web FTI, IndoGreenGroup, RaySpeed, PutraFilter

Web SMAN Sumpiuh

HRIS & Payroll System

Web ElearningUBL, OricoTeam

Web ElearningD3 Unggulan

PolsekTanjungPriok, TeamBisnis

Web CintaPancasila

Page 11: Modern PHP Developer

Situs pertama HRIS & Payroll System

Page 12: Modern PHP Developer

Sebuah Proses…

2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016

BELAJAR : MEMBANGUN KEMAMPUAN DIRI

BEKERJA : MEMBANGUN PENGALAMAN

BERBAGI : MEMBANGUN JEJARING

Page 13: Modern PHP Developer

Belajar : Membangun Kemampuan Diri

Page 14: Modern PHP Developer

Belajar : Lingkungan PHP

• Pahami konsep aplikasi berbasis web• Webserver• Browser

• Client Side:• HTML• CSS• Javascript• Jquery

• Server Side: PHP

• Database: MySQL

Page 15: Modern PHP Developer

Belajar : Editor

• Front Page

• Notepad

• Dreamweaver

• NuShere PHP ED

• Zend Studio

• Gedit

• Geany

• Sublime Text

Page 16: Modern PHP Developer

Belajar : Dasar PHP

• Hello World

• Variabel dan Konstanta

• Tipe Data

• Operator

• Komentar

• Single Quote (‘) vs Double Quote (“)

Page 17: Modern PHP Developer

Belajar : Dasar PHP

• Hello World

• Variabel dan Konstanta

• Tipe Data

• Operator

• Komentar

• Variable of Variable

Page 18: Modern PHP Developer

Belajar: Dasar PHP

• Predefined Variable• $_GET• $_POST• $_FILES• $_SERVER• $_COOKIE• $_SESSION• $_REQUEST• $GLOBALS• $_ENV• $HTTP_RAW_POST_DATA

Page 19: Modern PHP Developer

Belajar : Struktur Kondisi dan Perulangan

• Struktur Kondisi:• IF• IF…ELSE…• (…)? : • SWITCH…CASE

• Struktur Perulangan• FOR• WHILE• DO…WHILE…• FOREACH

Page 20: Modern PHP Developer

Belajar : Penanganan Form

• Metode:• POST

• GET

• Form Action• Halaman sama

• Halaman berbeda

• Jenis-jenis inputan

Page 21: Modern PHP Developer

Belajar : Pemrograman Dasar di PHP

• Array • String

• Tanggal dan Waktu• File dan Direktori• Membuat Fungsi

• Penyimpanan File • Session • Cookie

• Database • Prosedural• OOP-Style

• Koneksi Database • Abstraction Layer DB

• mysql* vs mysqli* • Laporan HTML • Laporan PDF

• Laporan Excel • Laporan Grafik• dll

Page 22: Modern PHP Developer

Modern PHP Developer

Page 23: Modern PHP Developer

Gunakan versi PHP terbaru

• Scalar type hints

• Return type declarations

• Anonymous classes

• The Closure::call() method

• Generator delegation

• Generator return expressions

• The null coalesce operator

• The space ship operator

• Throwables

• Level support for the dirname() function

• The Integer division function

• Uniform variable syntax

PHP 7

Page 24: Modern PHP Developer

Spaceship operator <=>

Page 25: Modern PHP Developer

Gunakan versi PHP terbaru

Magento dapat melayani dua kali lebih banyak dengan PHP7

Page 26: Modern PHP Developer

Gunakan versi PHP terbaru

Drupal 72% lebih cepat dengan PHP7

Page 27: Modern PHP Developer

Gunakan versi PHP terbaru

Wordpress lebih dari 50% lebih cepat dengan PHP7

Page 28: Modern PHP Developer

Gunakan Composer

Composer is a tool for dependency management in PHP. It allows you to declare the libraries your project depends on and it will manage (install/update) them for you

Page 29: Modern PHP Developer

Ikuti Prinsip Pengembangan Software

Single Responsibility Principle

Open Closed Principle

Liskov Substitution Principle

Interface Segregation Principle

Dependency Inversion Principle

Robert C. Martin

Object-oriented Design

Page 30: Modern PHP Developer

Ikuti Prinsip Pengembangan Software

Page 31: Modern PHP Developer

Lakukan Testing

Page 32: Modern PHP Developer

Bekerja : Membangun Pengalaman

Page 33: Modern PHP Developer

Bangun Portofolio

Page 34: Modern PHP Developer

Berorientasi pada Hasil Terbaik

Page 35: Modern PHP Developer

Kreatif dan Inovatif

Page 36: Modern PHP Developer

Tidak boleh egois

#WebDeveloper tidak boleh egois, tidak semua pekerjaan bisa dikerjakan sendiri. Bekerjalah dalam sebuah tim

Bekerja dalam tim artinya harus mau belajar bersama, saling berbagi ilmu, sharepengetahuan. Demi selesainya pekerjaan

Page 37: Modern PHP Developer

Bertanggung jawab denganpekerjaan yang dibebankan kepadanya. Bagaimana pun caranya, pekerjaan harus dihadapi & selesaikan

Jika ada bugs dengan program yang Anda tangani, berusahalah sekuat tenaga agar bugs tersebut bisa teratasi.

Bertanggung jawab

Page 38: Modern PHP Developer

Terbuka terhadap kritikan, karena tidak ada program ygsempurna. Software withoutbugs is impossible to write.

Terima kritik & masukan sebagai bahan baku memperbaiki pekerjaan kita, seringkali ide justru muncul dari orang lain.

Terbuka terhadap kritik dan masukan

Page 39: Modern PHP Developer

#WebDeveloper profesional memiliki etos kerja yang kuat. Tahan banting.

Jam kerja seorang #WebDeveloper tidak seperti karyawan kantoran yang bekerja hanya pada jam 8 pagi sampai 4 sore.Terkadang #WebDeveloper harus bekerja melebihi jam kantoran, terutama kalau udah dikejar deadline.

Kuncinya, hadapi dengan semangat kerja yang tinggi, jangan menunda pekerjaan yang bisa dikerjakan saat ini.

Memiliki etos kerja yang kuat

Page 40: Modern PHP Developer

Berbagi : Membangun Jejaring

Page 41: Modern PHP Developer

Berbagi melalui website

Page 42: Modern PHP Developer

Berbagi social media

Page 43: Modern PHP Developer

Berbagi melalui komunitas

Page 44: Modern PHP Developer

Berbagi dengan berbagi coding

Page 45: Modern PHP Developer

Berbagi melalui workshop dan seminar

Page 46: Modern PHP Developer

Referensi

• http://php.net

• https://www.airpair.com/php/posts/best-practices-for-modern-php-development

• http://www.zend.com/en/resources/php7_infographic

• https://blog.feryn.eu/php-7-is-now-available-new-features-improvements/

• https://www.airpair.com/php/posts/best-practices-for-modern-php-development

• Buku Pemrograman Web dengan PHP dan MySQL

• Beberapa gambar diambil melalui situs pencari Google.

Page 47: Modern PHP Developer

@achmatim Achmad Solichin [email protected]

slideshare.net/achmatim http://achmatim.net

Universitas Budi Luhur, Jakarta