ในฐานะที่เป็นผู้หนึ่งที่ใช้นี้เครื่องมือ , 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 ...
คุณเรียนรู้ฟังก์ชั่นหนึ่งครั้งในขณะที่เขียนหลาย ๆ ครั้ง ...
ดังนั้นต่อไปผมจะติดกับที่สั้นง่ายและชัดเจนกว่าstartHttpServerensureHttpServerIsRunning