ในฐานะที่เป็นผู้หนึ่งที่ใช้นี้เครื่องมือ , startHttpServer
คุณควรจะพยายามที่จะทำให้มันง่ายที่สุดเนียนไร้รอยต่อที่จะใช้ ...
ตรรกะของฟังก์ชัน
ในทางเทคนิคโดยแยกstartHttpServer
's ตรรกะเป็น 2 ฟังก์ชั่นและเรียกพวกเขาแยกทุกสิ่งที่คุณทำคือการย้าย startHttpServer
' s Idempotencyเป็นรหัสเรียกฟังก์ชั่นทั้งสองแทน ... นอกจากนี้ถ้าคุณห่อทั้งตรรกะในฟังก์ชั่นที่สาม (ซึ่งเป็นสิ่งที่ไม่startHttpServer
ในสถานที่แรก) นี้บังคับให้คุณเขียนโค้ด unDRYed startHttpServer
ซ้ำมันชี้แจงทุกที่ที่คุณต้องการมีการโทร ในระยะสั้นstartHttpServer
ต้องเรียกตัวเองisHttpServerRunning
ฟังก์ชั่น
ดังนั้นประเด็นของฉันคือ:
- ใช้งาน
isHttpServerRunning
ฟังก์ชั่นเพราะอาจจำเป็นต้องใช้อย่างอิสระต่อไป ...
- นำไปใช้
startHttpServer
ทำให้สามารถใช้isHttpServerRunning
เพื่อกำหนดการกระทำถัดไปของมัน ...
ถึงกระนั้นคุณสามารถstartHttpServer
คืนค่าใด ๆ ที่ผู้ใช้ฟังก์ชันนี้อาจต้องการเช่น:
0
=> เซิร์ฟเวอร์เริ่มล้มเหลว
1
=> เซิร์ฟเวอร์เริ่มต้นสำเร็จ
2
=> เซิร์ฟเวอร์เริ่มต้นแล้ว
การตั้งชื่อฟังก์ชั่น
ก่อนอื่นเป้าหมายหลักของผู้ใช้คืออะไร หากต้องการเริ่มต้นเซิร์ฟเวอร์ HTTPใช่ไหม
1*1=1
พื้นฐานไม่มีปัญหาโดยตั้งใจที่จะเริ่มต้นสิ่งที่ได้รับการเริ่มต้นแล้วที่อาคา อย่างน้อยสำหรับฉันการเรียกว่า " ensureHttpServerIsRunning
" ดูเหมือนไม่จำเป็นอย่างยิ่งในช่วงวิกฤตฉันจะสนใจมากขึ้นว่าชื่อฟังก์ชั่นนั้นยาวเป็นธรรมชาติและน่าจดจำ
ตอนนี้ถ้าคุณต้องการทราบวิธีการทำงานอย่างละเอียดของฟังก์ชั่นภายใต้ประทุนมีเอกสารหรือซอร์สโค้ดสำหรับสิ่งนั้นฉันหมายความว่าสำหรับฟังก์ชั่นอื่น ๆ จาก library / framework / API / etc ...
คุณเรียนรู้ฟังก์ชั่นหนึ่งครั้งในขณะที่เขียนหลาย ๆ ครั้ง ...
ดังนั้นต่อไปผมจะติดกับที่สั้นง่ายและชัดเจนกว่าstartHttpServer
ensureHttpServerIsRunning