Angularjs는 너무 강력하고 MVC 및 기타 기능이 프런트엔드에 구현되어 있습니다. 데이터를 얻으려면 보통 $http를 사용하여 백엔드에서 가져오는 방법이 있나요? 이 경우 백엔드는 API만 작성하면 되는 것 아닌가요?
PHP에서 API를 작성하기 위한 일반적인 프레임워크는 무엇입니까? Laravel은 매우 부정 행위를 하는 것 같지만 템플릿 엔진이 있는데 적합합니까?
틀 없이 직접 작성하는 것이 더 좋습니다
좋아할 만한 평판이 부족해서 죄송합니다! o(╯□╰)o
NG는 MVVM 프런트엔드 프레임워크로, 프런트엔드와 백엔드를 완전히 분리하고 백엔드에서만 API를 제공합니다. 프런트엔드와 백엔드의 분리가 이루어지면 독립적인 프런트엔드와 백엔드 애플리케이션을 개발할 수 있습니다. 브라우저의 백엔드 API 사용 방식은 Andoird iPhone과 같은 모바일 장치에도 적합합니다. 프런트엔드 애플리케이션을 개발할 때 백엔드 프로그래밍 언어는 더 이상 필요하지 않으며 HTML/CSS/JS만 있으면 됩니다. 이는 대부분의 프런트엔드 개발자에게 해방입니다.
이건 정말 좋은 일이에요. 그리고 개인적으로 저는 이것이 단지 Angular의 탓이 아니라 RESTful 스타일 인터페이스의 광범위한 수용과도 많은 관련이 있다고 생각합니다
모든 프레임워크, 디자인 및 프로젝트에는 궁극적으로 단 하나의 방향만 있습니다. 모든 사람이 자신의 분야에 집중하도록 하세요
Angular 이전에는 전체 뷰 레이어를 브라우저 측에 배치하는 extjs와 같은 SPA(Single Page Application)용 프런트 엔드 프레임워크도 있었습니다.
SPA의 개발 방식은 매우 중요한 유지 관리 문제점을 해결합니다. 프런트엔드와 백엔드 템플릿의 더러운 영역 과거에는 이 영역을 프런트엔드와 프런트엔드가 공동으로 유지해야 했지만 지금은 그렇지 않습니다. 더 이상 백엔드 엔지니어가 직접 프레젠테이션에 참여할 필요가 없습니다. 레이어가 작동 중입니다
그러나 널리 알려진 인터페이스 스타일이 없기 때문에 인터페이스를 디자인할 때 프리젠테이션 레이어를 고려해야 하는 것은 여전히 불가피하므로 재사용이 어렵습니다. 가장 일반적인 상황은 유사한 백엔드 리소스에 대해 여러 소켓을 반복적으로 개발하는 것인데, 이는 실제로 백엔드 엔지니어의 귀중한 시간을 낭비하는 것입니다.
엔지니어링 관점에서 백엔드 엔지니어 확보
只管写接口,只管把接口写好
는 백엔드 생산성의 엄청난 해방이라고 할 수 있습니다.이를 달성하려면 프런트엔드와 백엔드에서 일반적으로 허용되는 일련의 인터페이스 스타일이 필요합니다. 이는 크로스 페이지 및 크로스 플랫폼 리소스 액세스 요구 사항을 충족하는 동시에 우수한 성능을 제공할 수 있습니다. 의미론과 캐시 가능성
답은 RESTful입니다
RESTful 스타일 인터페이스가 널리 수용되면서 프런트 엔드는 RESTful 리소스에 액세스하는 한 프레임워크 수준에서 어떤 백엔드와 협력할지 고려할 필요가 없습니다. 클라이언트가 각도/백본을 사용하든 모바일을 사용하든 백엔드 엔지니어는 프레젠테이션 계층에서 완전히 분리됩니다. 그냥 인터페이스만 쓰시고 인터페이스 잘 쓰세요
모두가 자신의 분야에 집중할 때 가치가 극대화됩니다
이론적으로 그렇습니다,
애플리케이션이 SPA로 만들어진 경우 백엔드에는 페이지를 렌더링하는 데 루트 경로가 하나만 필요합니다. 나머지는 API 경로입니다.
그러나 실제 프로젝트에서는 SPA가 사용하기 쉬운지, 함정이 많은지 등을 고려하여 백엔드 하이브리드 라우팅과 프런트엔드 SPA를 결합하는 것이 필요합니다.
백엔드는 API를 작성하는데 거의 다음과 같습니다