이 구현 된 것과 같은 도구를 , startHttpServer
당신은 가장 간단한 부드럽고 만들려고 노력한다 원활한 사용하는 ...
함수의 논리
기술적으로, 분할로 startHttpServer
의 로직 2 개 기능에 와 그들을 호출 별도로 , 모든 당신입니다 않는 것을 이동 startHttpServer
의 ' 멱등을 당신이하는 일이다 (제 기능을 모두 논리를 포장하지 않는 한, 또한 ... 대신 두 함수를 호출하는 코드로 startHttpServer
우선), 이것은 건조하지 않은 코드를 작성하여 호출 해야하는 모든 곳에서 기하 급수적으로 복제합니다 startHttpServer
. 간단히 말해서 함수 자체 startHttpServer
를 호출해야 isHttpServerRunning
합니다.
내 요점은 다음과 같습니다.
isHttpServerRunning
어쨌든 독립적으로 필요할 수 있기 때문에 기능을 구현하십시오 ...
- 그에 따라 다음 조치를 정의
startHttpServer
하는 데 사용 isHttpServerRunning
하도록 구현 하십시오 .
여전히이 startHttpServer
함수의 사용자에게 필요한 값 을 반환 할 수 있습니다 . 예 :
0
=> 서버 시작 실패
1
=> 서버 시작 성공
2
=> 서버가 이미 시작되었습니다
함수의 이름
우선 , 사용자 의 주요 목표 는 무엇입니까? HTTP 서버 를 시작 하려면 ?
기본적으로 이미 시작된 무언가 AKA를 시작하려고해도 아무런 문제가 없습니다 1*1=1
. 따라서 적어도 나에게 그것을 " ensureHttpServerIsRunning
" 라고 부르는 것은 중요하게 필요하지 않은 것 같습니다. 나는 함수의 이름이 얼마나 길고 자연스럽고 기억에 남는 지에 대해 더 관심이 있습니다.
이제 후드에서 함수가 어떻게 작동하는지 자세히 알고 싶다면 해당 문서 또는 코드 소스가 있습니다. 라이브러리 / 프레임 워크 / API 등의 다른 함수와 같습니다.
당신은 배울 당신이 동안 한 번 기능을 쓰기 그것을 여러 번 ...
어쨌든, 나는 startHttpServer
보다 짧고 간단하며 명시 적 ensureHttpServerIsRunning
입니다.