Angular와 함께 사용하기 좋은 백엔드는 무엇입니까?JS
Angular와 함께 사용할 수 있는 좋은 백엔드에 대한 당신의 제안을 알고 싶습니다.프런트 엔드로 JS를 사용합니다.
추천하는 백엔드가 좋은 이유는 무엇입니까?사용하기 쉽거나 배우기 쉽습니까?
이 질문에는 의견 기반 답변에 상당한 위험이 있으므로 보다 비판적인 평가를 제안합니다.
안정감 있는 서버 측
...각도로 작업하는 것이 상당히 쉽고 번거롭지 않을 뿐만 아니라 HTTP 사양에 충실할 수 있습니다.어떤 언어를 선택하든 프레임워크가 이 작업을 수행하는 데 필요한 최소한의 노력을 허용하는지 확인하십시오.
내 경험으로는:
PHP:
Vanilla PHP와 Codeigniter는 능력이 있지만, 이것을 하는데 서툴러서 피하는 것이 좋습니다.Symfony와 더 큰 ORM 기반 프레임워크에 대해서는 말할 수 없지만 학습 곡선은 단순하지 않은 것으로 알고 있습니다.워드프레스나 드루팔과 같은 CMS 어플리케이션에는 접근하지 말 것을 강력히 권장합니다.
Larabel은 상당히 낮은 학습 곡선을 제공할 수 있고 RESTFul 인터페이스를 이해하고 있는 것으로 알고 있습니다.
노드 JS
NodeJS는 Express를 사용하는 서버 측에 매우 많은 프레임워크를 제공하고 있으며, 그 변형은 그 대부분이 명백한 기반입니다.Express는 RESTful 인터페이스를 유연하게 작성할 수 있지만 기본적으로는 작성하지 않습니다.통사적인 설탕을 더 많이 넣으려면 보통 자신의 미들웨어를 배선하는 것이 필요하다.
Ruby on Rails 내가 알기로는 레일이 있는 RESTful apis에 대한 상당한 지원이 있다.
데이터베이스 지원
데이터베이스에 대한 PHP Vanilla PHP mysqli 지원은 작동하지만 사용하기에는 너무 낮은 수준입니다.CodeIgnight, Symfony, Label 및 기타 프레임워크는 모두 데이터베이스 작업에 필요한 추상화와 보안을 제공합니다.이 점에서 그들을 구별하는 것은 주로 취향의 문제이다.PHP 프레임워크는 NoSQL 타입의 새로운 데이터베이스를 지원하는 데 어려움을 겪을 수 있습니다.
NodeJS Express NPM 저장소에서 수천 개의 옵션을 제공하는 적절한 미들웨어를 통해 모든 주요 형태의 데이터베이스를 지원합니다.여느 때처럼, 다양한 난이도로 자신을 표현하기 위해 그것들을 배선해야 할 것이다.
Ruby on Rails는 개봉 즉시 보안과 사용 편의성을 모두 제공하는 액티브 레코드 패턴을 지원합니다.이는 널리 사용되는 표준 관계형 데이터베이스의 대부분을 지원합니다.그러나 NoSQL 데이터베이스와의 통합은 말할 수 없습니다.
학습 곡선
이것은 너무 주관적이어서 몇 가지 함정 이외에는 말할 수 없습니다: 노드JS 커뮤니티는 상당히 높은 수준의 기술이 시작되고 콜백 지옥 문제가 학습자 서버 측 개발에 심각한 장벽이 될 수 있을 만큼 충분히 클 것으로 기대하고 있습니다.
보안.
PHP Vanilla PHP는 보안을 거의 제공하지 않으므로 권장하지 않습니다.Codeigniter, Larabel 및 기타 프레임워크는 문자열 이스케이프를 통한 보호와 SQL 주입 공격에 대한 보호 기능을 제공합니다.
NodeJS Express는 개봉 즉시 사용할 수 있는 보안 기능을 많이 제공하지 않지만 헬멧 등의 모듈로 강화할 수 있습니다.이는 어플리케이션의 의견이 없는 성질을 반영하는 결점이라기 보다는 부족한 점이 많다.
Rails는 Active Record 및 CSRF 보호를 통해 기본 SQL 주입 보호 기능을 제공합니다.
개인:Angular에서 작업할 때 서버 측 개발에서 Koa(Express를 대체하는 응용 프로그램)를 사용합니다.기존 프로젝트에서는 CodeIgnighter를 사용합니다.
(파악기:저는 Ruby on Rails 개발자)
Ruby on Rails는 json 백엔드로 사용하기에는 꽤 좋다고 생각합니다.
많은 재료를 쉽게 찾을 수 있고 다음과 같이 앵귤러와 통합하기 위한 스크린캐스트를 볼 수 있습니다.
또한 Rails를 사용하여 적절한 JSON API를 구축하면 모바일 앱 작성 등에 도움이 될 수 있으며, 좋은 Rails RESTful API 작성에 관한 매우 좋은 자료도 있습니다.
백엔드는 사용자가 선택할 수 있습니다.모든 백엔드는 Angular JS와 동일하게 상호작용해야 합니다.사용자가 익숙하거나 경험이 많은 것에 더 가깝습니다.
다음과 같은 다양한 항목을 검토할 수중에 있습니다.
파이썬 : 플라스크와 장고
Javascript:노드 JS
루비: Ruby on Rails
PHP
각각의 학습 곡선과 함정이 있을 것이다.
나는 편견이 있어서 Go를 추천한다.Go는 대량의 동시 요청을 처리할 수 있고 리소스를 너무 많이 소비하지 않고도 신속하게(5000 이상) 처리할 수 있기 때문이다.
그러나 두 언어 사이에서 뛰어드는 것은 고통스러울 수 있지만 결국 프로그래밍에 대한 이해를 넓힐 수 있을 것입니다.언어를 익스프레스 프레임워크와 노드로 바꾸지 않으려면 MEAN 스택(mean.io 등)을 참조하십시오.
언급URL : https://stackoverflow.com/questions/26445342/what-is-a-good-back-end-to-use-with-angularjs
'programing' 카테고리의 다른 글
jeast.config.js와 create-react-app을 사용하는 방법 (0) | 2023.03.17 |
---|---|
Python에서 JSON을 SQLite로 변환 - json 키를 데이터베이스 열에 올바르게 매핑하는 방법 (0) | 2023.03.17 |
json.loads()는 임의의 코드 실행에 취약합니까? (0) | 2023.03.17 |
"NoClassDefFoundError: 클래스를 초기화할 수 없습니다" 오류 (0) | 2023.03.17 |
SQL Server의 IsNull() 함수와 동등한 Oracle은 무엇입니까? (0) | 2023.03.17 |