Paip najis

Susan Sarandon
Susan Sarandonasal
2024-12-08 01:40:11638semak imbas

Pipe the shit

Saya mempunyai banyak idea untuk artikel ini, tetapi saya tidak pasti dari mana hendak bermula. Jika anda berminat untuk menjadikan kod lebih mudah dibaca dan menggunakan goncangan pokok, anda pasti perlu menyemak artikel itu.

Jika anda pernah membangunkan dengan JavaScript, anda mungkin pernah menjumpai jenis kod ini.

const someInstance = new Class();
someInstance.do('jump').some().thing('dance').and().read();

Saya suka gaya ini kerana ia mungkin sangat mudah dibaca dan anda melihat apa yang disambungkan. Selain itu, anda tidak perlu mengalihkan data dari satu fungsi ke fungsi yang lain kerana semuanya disimpan dalam contoh.

Selain itu, ini hanya berfungsi jika fungsi tidak segerak, terdapat isu lain. Ia tidak akan mudah untuk menggegarkan pokok kandungan jika anda tidak menggunakannya. Jika anda menggunakan ini dalam klien, anda perlu mengalihkan seluruh perpustakaan dengan semua fungsi yang disambungkan, yang merupakan overhed yang besar.

Jadi, bagaimana kita boleh memastikan perkara boleh dibaca, menggunakan fungsi async dan membiarkan Vite dan rakan sebaya. goncang pokok semua kod yang tidak digunakan?

Jawapannya ada di tajuk utama: "paip."

Dari segi fungsi, melaksanakan paip adalah agak mudah. Walau bagaimanapun, jenis itu menimbulkan cabaran. Saya telah memasukkan segala-galanya ke dalam perpustakaan dan menerbitkannya di npm. paip-dan-gabungkan.

const inc = (by: number) => (x: number) => x + by;
const dec = (by: number) => (x: number) => x - by;
const multiplyBy = (by: number) => (x: number) => x * by;
const divideBy = (by: number) => (x: number) => x / by;
const toStr = () => (x: number) => x.toString();

// prepare the pipeline
const pipeline = pipe(inc(2), multiplyBy(7), dec(7), divideBy(3), toStr())

// Executing the pipeline
pipeline(7)

Satu kelebihan ialah ia tidak terikat pada mana-mana objek, jadi anda boleh menggunakan mana-mana fungsi asalkan input dan output sepadan dengan fungsi sebelum dan selepas.

Contoh yang saya berikan agak mudah, tetapi sekurang-kurangnya anda boleh paipkan semuanya. Anda akan mempunyai pilihan yang sama seperti rantaian dan kelas. Fungsi generik mungkin sedikit lebih rumit, tetapi ada penyelesaiannya. Saya akan membincangkan perkara ini dengan lebih terperinci dalam artikel lain.

Atas ialah kandungan terperinci Paip najis. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn