Pengasingan kebimbangan & undang-undang Murphy

Mary-Kate Olsen
Lepaskan: 2024-10-07 06:17:02
asal
459 orang telah melayarinya

Separation of concern & Murphy

Apa-apa yang boleh menjadi salah akan menjadi salah itulah yang dinyatakan oleh undang-undang Murphy kepada kita. Ini datang sebagai prinsip dalam kejuruteraan perisian yang dikenali sebagai pengasingan kebimbangan.

Pengasingan kebimbangan ialah prinsip reka bentuk dalam pengaturcaraan yang digunakan untuk memecahkan aplikasi kepada bahagian atau modul.

SoC memastikan setiap bahagian bertanggungjawab untuk aspek fungsi atau tingkah laku tertentu. ini memastikan bahawa aplikasi mudah diselenggara dan mudah untuk skala.

Prinsip ini membolehkan kami mencipta komponen boleh guna semula yang boleh digunakan di seluruh aplikasi.

Undang-undang Murphy dalam Pengasingan Kebimbangan

Apabila pelbagai aspek atau fungsi bercampur atau berada dalam satu fail dalam kod anda, sesuatu akhirnya akan pecah.

Dengan mengasingkan kebimbangan contohnya dengan mengasingkan aplikasi ekspres dan pelayan web kemungkinan semuanya akan pecah Dikurangkan.

jika terdapat isu dalam apl ekspres anda, ia tidak akan menjejaskan logik aplikasi anda. Semakin anda membahagikan tingkah laku atau tanggungjawab aplikasi anda, kemungkinan satu kegagalan yang menjejaskan keseluruhan aplikasi anda menjadi lebih tipis.

contoh di mana tiada SoC digunakan:


const express = require('express');
const app = express();

// Application logic (handling routes)
app.get('/hello', (req, res) => {
  res.send('Hello, World!');
});

// Server logic (listening on a port)
app.listen(3000, () => {
  console.log('Server is running on port 3000');
});



Salin selepas log masuk

Begini cara hukum murphy berfungsi

  • jika kegagalan pelayan berlaku (port sudah digunakan), anda tidak akan dapat menguji laluan anda dan keseluruhan apl akan berfungsi.

Contoh di mana SoC telah digunakan


//app.js
const express = require('express');
const app = express();

// Application logic (handling routes)
app.get('/hello', (req, res) => {
  res.send('Hello, World!');
});

module.exports = app;


Salin selepas log masuk

//server.js
const app = require('./app'); 
// Server logic (listening on a port)
app.listen(3000, () => {
  console.log('Server is running on port 3000');
});


Salin selepas log masuk
  • jika pelayan gagal memulakan aplikasi masih boleh berfungsi kerana logik aplikasi anda selamat.

  • Anda masih boleh menguji logik aplikasi anda tanpa menjalankan pelayan secara langsung dengan menggunakan rangka kerja ujian seperti jest dan supertest


const request = require('supertest');  
const app = require('./app');          

// Test case for GET /hello
test('GET /hello should return "Hello, World!"', async () => {
  const response = await request(app).get('/hello');  
  expect(response.text).toBe('Hello, World!');        });



Salin selepas log masuk

Atas ialah kandungan terperinci Pengasingan kebimbangan & undang-undang Murphy. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!