최상의 답변
서버에서 실행되는 경향이있는 언어이지만 일종의 구성 용어입니다.
실제로 컴퓨팅에는 그러한 차이가 없습니다. 사람들은 서버와 데스크톱, 그리고 거의 모든 다른 언어에서도 Python을 실행합니다.
웹에 대해 이야기하고 있다면 클라이언트에서 사용할 수있는 유일한 언어는 JavaScript입니다. , 다른 모든 언어는 “서버 측”입니다.
하지만 실제로는 구성된 용어이며 “서버 측 언어”와 같은 것은 없습니다.
답변
아, 순진 하군요.
NodeJS가 출시 되었기 때문에 PHP가 무가치하다고 생각하는 이유는 무엇입니까?
아마 NodeJS에 대한 과대 광고 일 것입니다.
하지만 성숙한 사람들은 과대 광고에 사로 잡히지 않습니다. 설명해 드리겠습니다.
쉬움 : PHP는 20 년 이상 사용되었습니다. 지금까지 가장 인기있는 웹 사이트와 CMS를 구축하기 위해 수백만 명의 프로그래머가 사용하고 남용했습니다. 그들은 엄청난 양의 문제에 직면했고 PHP는 이러한 문제를 해결하도록 설계되었습니다 . 성공적인 템플릿 언어 이자 프로그래밍 언어 입니다. 개발자가 웹 사이트 (MySQL, APC, 심지어 FTP 기능까지)를 만들 수 있도록 모든 도구가 포함되어 있습니다. PHP의 가장 큰 장점은 쉽게 생성 할 수 있고 F5 키를 눌러 업데이트 된 결과를 얻을 수있는 아름다운 개발자 경험입니다.
NodeJS는 또 다른 문제를 해결하기 위해 왔습니다. 이벤트 지향 프로그래밍을 가져 왔고, 단일 스레드이며 상당히 빠른. NodeJS에는 많은 장단점이 있지만 JS의 주요주의 사항은 JS 자체가 짜증 난다는 것입니다 . 시작하려면 수많은 도구가 필요합니다. 일반적으로 Babel, TSLint 및 DT 다운로드를 의미하는 TS없이 NodeJS 앱을 빌드하지 않습니다.
그런 다음 HTTP 서버가 필요하므로 Express를 다운로드합니다.
그런 다음 필요합니다. MySQL / MongoDB에 연결하려면 ORM 또는 간단한 드라이버를 다운로드해야합니다.
일반적으로 빌드 시스템이 필요하며 Webpack, Gulp 및 Grunt (그리고 Rollup 및 Parcel 등의 다음 주 reddit의 첫 페이지로 이동합니다).
최소 구성으로 시작하는 것입니다.
성능 : 어느 쪽이 더 나은 성능을 가지고 있는지에 대한 증거가 많지 않습니다. PHP7은 많은 것을 가져 왔고 PHP8은 JIT 컴파일러의 향상으로 다시 더 나은 벤치 마크를 가질 것입니다. NodeJS는 V8로 구동되므로 기본적으로 엄청나게 빠릅니다.
학습 곡선 : JS를 통해서는 그 자체로 끔찍합니다. 언어를 익히려면 시간이 걸립니다. 프로토 타입 특성, 클로저, 유형 시스템에 대해 알아야 할 것이 너무 많습니다. PHP는 시작하기가 정말 쉽습니다 : 기본적으로 C이고 동적으로 입력되며 클래스가 있습니다.
접근성 : 오늘날 모든 호스트는 PHP 지원을 제공합니다. 점점 더 많은 NodeJS 지원을 제공하는 업체는 거의 없습니다.
인기 : PHP에는 수많은 개발자가 있습니다. 실제로 다른 도구와 유사한 몇 가지 도구 (Symfony, Laravel, CakePHP, WordPress, Joomla, Drupal…)가 있습니다. 아마도 이러한 프레임 워크 중 하나를 사용하여 프로젝트를 작성하고 도움을 줄 개발자를 쉽게 찾을 수 있습니다. NodeJS 개발자도 점점 더 많지만 하나의 백엔드는 말 그대로 다른 백엔드와 공통점이 없습니다. NodeJS 환경에서 다양한 도구를 선택할 수 있다는 것은 강점이자 재앙입니다.
저는 NodeJS를 전용 백엔드로 사용하지 않습니다. 차라리 PHP를 사용하고 싶습니다. 그러나 NodeJS는 마이크로 서비스 아키텍처에서 믿을 수 없을 정도로 강력합니다.
그래서 NodeJS는 요즘 과장되고 아마도 밝은 미래를 가지고 있지만 PHP는 죽지 않았습니다. 여전히 대부분의 웹은 PHP로 구동되며 WordPress가 아닌 Gatsby 또는 Ghost로 블로그를 구동하기를 원하는 고객은 없습니다.