Belajar Functional Programming JavaScript
  • Introduction
  • Bab 01: Apa Yang Pernah Kita Lakukan?
  • Bab 02: Fungsi Kelas Satu (First Class Function)
  • Bab 03: Kebahagiaan Murni dengan Fungsi Murni (Pure Function)
  • Bab 04: Currying (Kari)
  • Bab 05: Coding dengan Composing
  • Bab 06: Contoh Aplikasi
  • Bab 07: Hindley-Milner dan Saya
  • Bab 08: Tupperware
  • Bab 09: Monadic Onions
  • Bab 10: Aplikatif Functors
  • Bab 11: Transformasi Lagi, Secara Alami
  • Bab 12: Melintasi Batu
  • Bab 13: Monoid Menyatukan Semuanya
  • Lampiran A: Dukungan Fungsi Esensial
  • Lampiran B: Dukungan Struktur Aljabar
  • Lampiran C: Utilitas Pointfree
Powered by GitBook
On this page
  • Tentang buku ini
  • Baca Online
  • Bermain-main dengan Kode
  • Unduh
  • Daftar Isi
  • Rencana untuk masa depan

Was this helpful?

Introduction

NextBab 01: Apa Yang Pernah Kita Lakukan?

Last updated 3 years ago

Was this helpful?

Sumber asli buku ini tersedia dalam bahasa Inggris:

Tentang buku ini

Ini adalah buku tentang paradigma fungsional secara umum.

Kami akan menggunakan bahasa pemrograman fungsional terpopuler di dunia: JavaScript.

Beberapa diantaranya mungkin merasa ini adalah pilihan yang buruk karena bertentangan dengan selera budaya saat ini, saat ini, terasa begitu penting.

Namun, saya percaya ini adalah cara terbaik untuk belajar FP karena beberapa alasan berikut:

  • Anda mungkin menggunakannya setiap hari di tempat kerja.

    Hal ini memungkinkan untuk berlatih dan menerapkan pengetahuan yang Anda peroleh setiap hari pada program dunia nyata daripada proyek hewan peliharaan pada malam hari dan akhir pekan dalam bahasa FP esoteris.

  • Kita tidak harus mempelajari semuanya terlebih dahulu untuk mulai menulis program.

    Dalam bahasa fungsional murni, Anda tidak dapat mencatat variabel atau membaca simpul DOM tanpa menggunakan monads.

    Di sini kita bisa sedikit curang saat kita belajar memurnikan basis kode kita.

    Juga lebih mudah untuk memulai dalam bahasa ini karena ini adalah paradigma campuran dan Anda dapat kembali ke praktik Anda saat ini sementara ada kesenjangan dalam pengetahuan Anda.

  • Bahasa ini sepenuhnya mampu menulis kode fungsional kedudukan tertinggi.

    Kami memiliki semua fitur yang kami butuhkan untuk meniru bahasa seperti Scala atau Haskell dengan bantuan satu atau dua perpustakaan kecil.

    Pemrograman berorientasi objek saat ini mendominasi industri, tetapi jelas canggung dalam JavaScript.

    Ini mirip dengan berkemah di jalan raya atau menari tap di sepatu karet.

    Kami harus melakukan bind ke mana-mana agar this tidak berubah dari bawah kami, kami memiliki berbagai solusi untuk perilaku unik ketika kata kunci new dilupakan, private members (anggota pribadi) hanya tersedia melalui closures (penutupan). Bagi banyak dari kita, FP terasa lebih alami.

Yang mengatakan, bahasa fungsional yang diketik (typed) akan, tanpa diragukan lagi, menjadi tempat terbaik untuk membuat kode dalam gaya yang disajikan oleh buku ini.

JavaScript akan menjadi sarana kami untuk mempelajari suatu paradigma, di mana Anda menerapkannya terserah Anda. Untungnya, antarmukanya matematis dan dengan demikian ada di mana-mana.

Anda akan merasa betah dengan Swiftz, Scalaz, Haskell, PureScript, dan lingkungan yang cenderung matematis lainnya.

Baca Online

  • Bilah samping akses cepat

  • Latihan dalam browser

  • Contoh mendalam

Bermain-main dengan Kode

Untuk membuat pelatihan menjadi efisien dan tidak terlalu bosan saat saya menceritakan kisah lain, pastikan untuk bermain-main dengan konsep yang diperkenalkan dalam buku ini.

Beberapa mungkin sulit ditangkap pada awalnya dan lebih mudah dipahami dengan mengotori tangan Anda. Semua fungsi dan struktur data aljabar yang disajikan dalam buku ini dikumpulkan dalam lampiran.

Kode yang sesuai juga tersedia sebagai modul npm:

$ npm i @mostly-adequate/support

Atau, latihan setiap bab dapat dijalankan dan diselesaikan di editor Anda! Misalnya, selesaikan exercise_*.js di exercises/ch04 lalu jalankan:

$ npm run ch04

Unduh

atau, buat sendiri.

⚠️ ️Penyiapan proyek ini sekarang agak lama dan karenanya, Anda mungkin mengalami berbagai masalah saat membangun ini secara lokal. Kami menyarankan untuk menggunakan node v10.22.1 dan Calibre versi terbaru jika memungkinkan.

git clone https://github.com/renomureza/mostly-adequate-guide.git
cd mostly-adequate-guide/
npm install
npm run setup
npm run generate-pdf
npm run generate-epub

Daftar Isi

Berkontribusi

Terjemahan

FAQ

Rencana untuk masa depan

  • Bagian 1 (Bab 1-7) adalah panduan untuk dasar-dasarnya. Saya memperbarui karena saya menemukan kesalahan karena ini adalah draf awal. Jangan ragu untuk membantu!

  • Bagian 2 (bab 8-13) membahas kelas tipe seperti functor dan monad hingga traversable. Saya berharap untuk memeras transformer dan aplikasi murni.

  • Bagian 3 (bab 14+) akan mulai menarik garis tipis antara pemrograman praktis dan absurditas akademis. Kita akan melihat comonads, f-algebras, free monads, yoneda, dan konstruksi kategorikal lainnya.

Untuk pengalaman membaca yang lebih baik, .

Temukan PDF dan EPUB yang telah dibuat sebelumnya sebagai .

Catatan! Untuk menghasilkan versi ebook, Anda harus menginstal ebook-convert. .

Lihat

Lihat

Lihat

Lihat

Karya ini dilisensikan di bawah .

baca secara online melalui Gitbook
build artifacts versi terbaru
Petunjuk pemasangan
SUMMARY-id.md
CONTRIBUTING-id.md
TRANSLATIONS.md
FAQ.md
Mostly adequate guide to FP (in javascript)
Creative Commons Attribution-ShareAlike 4.0 International License
Creative Commons License
cover