정렬("노드") -->DENO

토론deno에서 가장 먼저 기억해야 할 것은 공룡은 더 멋진 이름이라는 것이다.농담으로, 우리가 반드시 기억해야 할 것은, 그것은 아직 초기 단계에 있고, 아직 생산에 적합하지 않다는 것이다.라이언 달(Ryan Dahl)이 지적한 바와 같이 광신자를 위한 것이다. 광신자가 아니거나 생산급 프로젝트에 대한 지원을 받고 있다면 Node 를 사용한다.

지금 우리는 이미 면책 성명을 완성했으니, 우리로 하여금 직접deno에 들어가게 한다.너무 좋아요!
  

데노가 뭐예요?


  

  
Deno는 서버 측의 Javascript 실행을 지원하는 Javascript 프레임워크입니다. 마치 NodeJS와 같습니다.그들은 심지어 자신의 이름의 자모까지 공유한다.이 두 개념은 시간이 다르지만 라이언 달(Ryan Dahl)이 제시한 것이다.

왜 데노야?


개발자로서 우리는 단일한 개발자가 있는데, 그 코드 구조와 집행은 항상 우리를 실망시킨다.바로 우리의 과거의 자아다.라이언 달도 예외는 아니야.NodeJS가 한 것처럼 기본 구조와 집행에 뿌리 깊은 문제가 존재하기 때문에 라이언은 후회한다.
그가 Node를 어떻게 처리하는지의 많은 문제를 해결하기 위해서, 많은 Node를 생산 서버로 사용하는 프로젝트를 붕괴시키지 않을 수 없다.라이언은 NodeJS와 Joyent를 떠났다. 그들은 NodeJS의 스폰서였지만 지금은 NodeJS의 관리자다.(약간?)Joyent는 나중에 삼성에 인수되었다.NodeJS는 여전히 시작이지만 많은 문제점이 있습니다.그 밖에 개발은 OpenJS기금회가 관리하고 OpenJS기금회는 NodeJS기금회와 JS기금회가 합병하여 이루어진다.
 

  

그럼, 뭐가 달라요?


JavaScript는 언어로서 이미 매우 큰 변화가 발생했는데 그 중 일부 변화는 2009년에 실현될 수 없었다.
 

시공


NodeJS는 GYP 자동 구축 도구를 사용하여 C++를 기반으로 합니다.주의해야 할 것은 JS를 실행하는 데 사용되는 V8 엔진이 GYP에서 GN으로 이동하면 불필요한 복잡성을 증가시킬 뿐이다.
한편, Deno는 비교적 새로운 프로그래밍 언어인 Rust를 바탕으로 매우 기본적인 측면에서 코드를 샌드박스 처리할 수 있다.Rust는 C++와 같은 효율과 속도를 약속하며 더욱 좋은 안전성을 제공했다.

타자 스크립트


Deno는 기본 TypeScript 지원을 도입하여 즉시 사용할 수 있습니다.Typescript도 노드에서 사용할 수 있지만, 통합된 지원은 새로운 활력을 가져왔고, 코드가 더욱 간단하고 디버깅하기 쉽도록 허용한다.

창 객체


안녕히 계세요.


deno는 전통적인 웹 브라우저 고유의 창 대상을 보존하기 때문에 제목은 소수의 변경 가능성 중 하나입니다.문서 대상도 창의 대상이기 때문에 모든 기본 자바스크립트 창 방법과 함수는 deno에서 지원됩니다.이것은 데노 사상을 감독하는 주제 중의 하나다.나는 당연히 데노가 약속에 대한 원생적인 지지를 가리킨다. 풍자적인 것은 이 약속들이 2009년에 노드JS에 가입했다가 2010년에 철회되었다는 것이다.Promises는 비동기적/대기 작업의 가장 좋은 추상입니다. Ryan은 일을 어느 정도 간소화하여 NodeJS를 더욱 좋아지게 할 것이라고 믿습니다.
  

중앙 집중식 포장 관리자(또는 부족)



NPM 또는 노드 패키지 관리자는 NodeJ의 기본 패키지 관리자입니다.NPM은 개인 실체이지만 개원 프레임워크는 그것에 의존한다.따라서 원본 프레임워크의 주요 패키지 관리자는 GitHub에 직접 귀속됩니다.(Microsoft 참조).이것은 세계 각지의 NodeJS 프로젝트의 전체 미래를 위태롭게 할 것이며, 결국 마이크로소프트는 그것을 폐쇄하기로 결정했다.설령 그것이 독립된 조직이라 할지라도, 집중적인 의존적인 곳이라고 할지라도, 그 중의 항목이 서로 의존하는 존재는 좋은 생각일 것이다.또한 ES6에서는 네이티브 가져오기 문과 웹 CDN을 사용할 수 있습니다.
데노에서ts 또는 a.js 파일,
import { serve } from https://deno.land/[email protected]/http/server.ts";
이것이 바로 필요한 것이다.
Deno는 처음에 의존 항목을 로컬 저장소에 캐시한 다음 이 캐시를 후속 작업에 사용합니다.
Deno는 외부 의존성이 없고 Deno 핵심 팀에서 심사하는 표준 모듈의 집중 집합이 있습니다.그것은 데노 강에 산다.육상 서버.deno_std 모듈 컬렉션은 Go 표준 라이브러리의 느슨한 포트입니다.
이게 더 고목 같아.
 

안전하지 않은 파일 시스템 및 네트워크 방식 (또는 부족)


언제든지 네가 타자를 쳐라
node index.js
터미널에서는 인덱스에 대한 파일 시스템 및 네트워크 액세스 권한이 즉시 부여됩니다.js 파일과 응용 프로그램'필요'의 모든 node_ 모듈 의존 항목입니다.
이것은 정확하게 차단하면 npm 패키지의 설정 방식이 최종 사용자나 서버의 안전성에 해를 끼칠 수 있음을 의미한다.응용 프로그램을 컨테이너화할 수 있지만 이것은 여전히 설계 결함이다.
Deno는 응용 프로그램을 실행하는 동안 이러한 기본 결함을 수정하기 위해 플래그를 간단하게 추가합니다.사용자가 실행할 때 명확한 접근 권한을 제공하지 않으면 코드는 파일 구조 접근이나 네트워크 명령을 어떤 방식으로도 실행할 수 없습니다.
deno run --allow-net app.ts
이것은 네트워크 권한만 부여합니다
deno run --alow-write app.ts
이것은 파일 시스템에만 접근할 수 있습니다.
스크립트에 부여할 권한을 명확하게 선택할 수 있습니다.
  

Deno에 기본 서버 설정

  • IDE/Text Editor/Terminal을 열고 새로운 TypeScript 또는 JavaScript 파일
  • 을 만듭니다.
  • 에 다음을 입력합니다.
  • import { serve } from 'https://deno.land/std/http/server.ts'
    const s = serve({ port: 3000 })
    for await (const req of s) {
    req.respond({ body: 'Hola, DEV.to' })
    }
    
  • 터미널 및 유형을 저장하고 엽니다.
  • deno run {name of file}.extension
    
    다음과 같은 오류가 발생합니다.

    우리는 처음에 데노가 네트워크를 사용하는 것을 허락하지 않았다.
    반환 및 입력:
    deno run --allow-net {name of file}.extension
    
    이제 브라우저에서 지정한 로컬 호스트 포트로 완벽하게 작동합니다. annndvoila!

    이것은 데노의 새로운 얼굴이다.최신 버전은 2020년 8월 1일, v1.2.2
    보기here
    여러분, 이것이 바로 데노입니다.매우 유행하는 기술을 다시 생각해서 거의 모든 상상할 수 있는 방면에서 더욱 좋아지게 하다.라이언은 노드를 교체하는 것이 목적이 아니라고 주장하지만, 이곳의 잠재력을 보지 못하기는 어렵다.
    단, (*TnC 적용)
    사람들이 보편적으로 생각하는 것과는 반대로 데노는 사실상 작은 새와 같다. (이것은 매우 좋다. 왜냐하면 조류는 공룡에서 온 것이다.) 데노는 우리가 모두 희망하는 전투 시련을 거친 패왕룡이 될 수 있는 시간이 필요하다.
     
    우리는 네가 이 점을 발견할 수 있기를 바란다.
    저희의 website를 방문하여 저희에 대한 더 많은 정보를 알고 저희에게 관심을 가져 주십시오.
  • Facebook



  • 좋아하고 평론하는 것도 잊지 마세요.
    그 전에,
    안전을 유지하고 원천이 당신과 함께 있기를 바랍니다!

    좋은 웹페이지 즐겨찾기