Download - Modern PHP Developer
Achmad Solichin | @achmatim
Semarang, 5 November 2016
@achmatim Achmad Solichin [email protected]
slideshare.net/achmatim http://achmatim.net
Universitas Budi Luhur, Jakarta
Apa itu PHP ?
Rasmus Lerdorf
• Lahir tahun 1968 di Greenland, Denmark
• Mahasiswa Universitas Waterloo
• Rilis PHP pertama tahun 1995 (27 tahun)
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
Open source Platform independent Extensions
High performance Reliable & secure Community support
Kelebihan PHP
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
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
Situs pertama HRIS & Payroll System
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
Belajar : Membangun Kemampuan Diri
Belajar : Lingkungan PHP
• Pahami konsep aplikasi berbasis web• Webserver• Browser
• Client Side:• HTML• CSS• Javascript• Jquery
• Server Side: PHP
• Database: MySQL
Belajar : Editor
• Front Page
• Notepad
• Dreamweaver
• NuShere PHP ED
• Zend Studio
• Gedit
• Geany
• Sublime Text
Belajar : Dasar PHP
• Hello World
• Variabel dan Konstanta
• Tipe Data
• Operator
• Komentar
• Single Quote (‘) vs Double Quote (“)
Belajar : Dasar PHP
• Hello World
• Variabel dan Konstanta
• Tipe Data
• Operator
• Komentar
• Variable of Variable
Belajar: Dasar PHP
• Predefined Variable• $_GET• $_POST• $_FILES• $_SERVER• $_COOKIE• $_SESSION• $_REQUEST• $GLOBALS• $_ENV• $HTTP_RAW_POST_DATA
Belajar : Struktur Kondisi dan Perulangan
• Struktur Kondisi:• IF• IF…ELSE…• (…)? : • SWITCH…CASE
• Struktur Perulangan• FOR• WHILE• DO…WHILE…• FOREACH
Belajar : Penanganan Form
• Metode:• POST
• GET
• Form Action• Halaman sama
• Halaman berbeda
• Jenis-jenis inputan
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
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
Spaceship operator <=>
Gunakan versi PHP terbaru
Magento dapat melayani dua kali lebih banyak dengan PHP7
Gunakan versi PHP terbaru
Drupal 72% lebih cepat dengan PHP7
Gunakan versi PHP terbaru
Wordpress lebih dari 50% lebih cepat dengan PHP7
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
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
Ikuti Prinsip Pengembangan Software
Lakukan Testing
Bekerja : Membangun Pengalaman
Bangun Portofolio
Berorientasi pada Hasil Terbaik
Kreatif dan Inovatif
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
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
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
#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
Berbagi : Membangun Jejaring
Berbagi melalui website
Berbagi social media
Berbagi melalui komunitas
Berbagi dengan berbagi coding
Berbagi melalui workshop dan seminar
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.
@achmatim Achmad Solichin [email protected]
slideshare.net/achmatim http://achmatim.net
Universitas Budi Luhur, Jakarta