이 게시물은 이번 주 기업에서 JS를 통해 목격한 일에서 영감을 받아 작성되었습니다. 10년 전만 해도 저는 JavaScript가 거의 어디에나 존재하게 될 것이라고는 상상도 하지 못했습니다. JavaScript에 관심을 가져야 하는 몇 가지 이유는 다음과 같습니다.
우선 JavaScript가 인기를 얻은 가장 큰 이유 중 하나는 접근성이 매우 높다는 점이라고 생각합니다. JavaScript를 배우는 것은 초보자에게는 상대적으로 쉽고 복잡하고 안정적인 시스템을 구축하는 데 사용할 수 있는 고급 사용자에게는 매우 강력합니다.
둘째, 우리가 자바스크립트에 주목해야 하는 이유는 오늘날 어디에나 자바스크립트가 있기 때문입니다.
JavaScript를 사용하면 클라이언트 측 애플리케이션, 서버 측 비즈니스 로직, 임베디드 칩/IoT 장치, 빌드 스크립트 및 종속성 관리 등 거의 모든 플랫폼에서 개발할 수 있습니다.
그러나 이는 모든 상황에서 완전히 동일한 코드를 사용할 수 있다는 의미는 아니지만 동일한 기술 세트(JavaScript 개발)를 사용하여 여러 패러다임에 걸쳐 솔루션을 제공할 수 있다는 의미입니다.
JavaScript는 클라이언트 애플리케이션/사용자 인터페이스는 물론 다양한 플랫폼과 장치에 걸친 사용자 상호 작용을 지원하는 데 사용될 수 있습니다.
물론 JavaScript가 웹을 지원하는 것은 확실합니다. JavaScript는 모든 웹 브라우저의 기본 스크립트 언어입니다.
JavaScript를 사용하여 기기에 로컬로 설치된 모바일 애플리케이션을 지원할 수도 있습니다.
Apache Cordovn/ PhoneGap - PhoneGap 또는 Cordovn을 사용하여 로컬에 설치된 웹 기술 앱을 구축할 수 있습니다. PhoneGap은 Adobe의 Cordovn 브랜드 파생물이지만 개발자의 관점에서는 기본적으로 동일합니다. 모바일 장치에서 실행되는 애플리케이션에는 웹 보기가 있으며 사용자 인터페이스는 동적 웹 애플리케이션과 동일한 방식으로 구축될 수 있습니다. 사용자 인터페이스는 HTML 및 CSS 스타일을 사용하여 구현되지만 모든 상호 작용은 JavaScript를 사용하여 생성됩니다.
React Native – JavaScript 기반 웹 애플리케이션은 내장된 웹 보기 이상의 기능을 가질 수 있습니다. 또한 React Native 프레임워크를 통해 개발자는 JavaScript 및 선언적 UI 요소를 사용하여 애플리케이션을 작성하고 모바일 장치에서 실행할 수 있는 기본 애플리케이션을 생성할 수 있습니다. 런타임 시 로직은 JavaScript로 해석되지만 사용자가 상호 작용하는 모든 것(모든 UI 요소)은 100% 기본이므로 매우 높은 품질의 사용자 경험을 제공하며 이제 iOS 및 Android 앱에서도 사용할 수 있습니다.
Unity 3D - Unity 3D 엔진을 사용하면 JavaScript가 모두 지원되는 경우에도 다채롭고 몰입도 높은 모바일 3D 시뮬레이션이나 게임 경험을 개발할 수 있습니다.
NativeScript - 크로스 플랫폼 네이티브 iOS, Android 및 Windows 모바일 애플리케이션을 구축하는 데 사용할 수 있는 JavaScript를 사용하는 프레임워크입니다.
데스크톱 애플리케이션도 JavaScript에서 제외되지 않습니다. 대부분의 데스크톱 솔루션은 Apache Cordovn과 유사한 범주에 속합니다. 최종 결과는 웹 보기에 하위 수준 API가 있고 콘텐츠 개발이 웹 기술을 기반으로 한다는 것입니다.
Electron - GitHub의 Node.js+Chromium 데스크톱 애플리케이션 컨테이너
app.js - Node+Chromium 데스크톱 애플리케이션 프로그램 컨테이너
nw.js - 또 다른 Node+Chromium 데스크톱 애플리케이션 컨테이너 프레임워크
CEF - Chromium Embedded Framework— — 데스크톱 애플리케이션에 내장된 Chrome 브라우저에 내장된 프레임 .
… 등등. 그건 그렇고, Microsoft는 이미 HTML/JS만으로 Windows 애플리케이션을 구축하는 방법에 대한 솔루션을 갖고 있었고 더 많은 솔루션이 있었지만 지금은 그것들을 모두 한꺼번에 기억할 수 없습니다.
사실 제가 가장 좋아하는 Slack, Atom, VS Code 등 일부 데스크톱 도구는 실제로 웹 기술과 HTML/JS를 기반으로 합니다.
특히 Chrome의 V8 JavaScript 엔진을 캡슐화하는 JavaScript 런타임인 Node.js는 서버 측 개발 및 기업 부문에서 큰 발전을 이루었습니다. express.js 및 loopback.io와 같은 프레임워크로 구동되는 Node.js를 사용하면 JavaScript로 서버측 및 복잡한 엔터프라이즈 애플리케이션을 개발할 수 있습니다.
JavaScript를 사용하여 Arduino, Raspberry Pi 또는 기타 소형 태블릿에서 실행할 수 있는 헤드리스 앱을 개발할 수 있습니다. JavaScript를 사용하여 인프라 및 IoT 센서를 관리할 수 있습니다. , JavaScript를 사용하여 임베디드 시스템용 칩 프로그램을 작성할 수도 있고 로봇을 제어하는 데 사용할 수도 있으며 JavaScript를 사용하여 미디어 센터 연결된 TV 경험을 지원할 수도 있습니다.
제가 말했듯이... JavaScript는 어디에나 있습니다.
어디서나 JavaScript 애플리케이션을 구축하고 실행할 수 있을 뿐만 아니라. JavaScript에는 또한 크고 번성하는 개발자 생태계가 있습니다.
JavaScript는 GitHub에서 가장 활동적인 언어입니다. 모든 코드 저장소 중에서 가장 활동적일 뿐만 아니라 모든 푸시/커밋 중에서 가장 활동적입니다.
데이터 시각화
Node.js/프로그래머는 왜 JavaScript에 관심을 가져야 합니까?.js가 얼마나 성장했는지 보여주는 통계는 다음과 같습니다.
NPM 통계
Node.js는 여전히 성장하고 있습니다.
이 차트는 IBM이 Node.js 및 Strongloop에 부여하는 중요성을 보여줍니다. 30일 만에 @프로그래머는 왜 JavaScript에 관심을 가져야 합니까?js 패키지 2억 4,200만 개! http://t.co/snDt88HQC5 pic.twitter.com/nRMwYyKmdo
— Rod Boothby(@rod11) 2015년 9월 10일
하지만 이것이 전부는 아닙니다. JavaScript가 최고라는 의미는 아닙니다. 모든 것에 대한 언어. 그렇다고 소스 코드 조각을 꺼내면 원하는 대로 모든 장치와 컨텍스트에서 실행된다는 의미는 아닙니다.
하지만 JavaScript 기술을 사용하면 거의 모든 유형의 장치/컨텍스트에 맞게 개발할 수 있습니다. 물론, React.js 팀의 말에 따르면 한 번 작성하면 어디서나 실행할 수 없습니다.
이상은 우리 프로그래머들이 자바스크립트에 주목해야 하는 이유입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 주목해주세요!