지금 배울 수있는 최고의 프로그래밍 언어

컴퓨터를 이해하고 우리의 의지에 따라 구부리는 가장 좋은 방법은 그들이 우리의 명령을 이해할 수 있도록 그들의 언어를 배우는 것입니다. 판타지 소설을 좋아하는 사람들은 때때로 마법의 주문과 주문을 배우고 있다고 상상합니다. 실질적으로 생각하는 사람들은 숫자와 데이터의 논리적 구조를 표현하기 위해 좀 더 기초적인 언어를 사용합니다. 어쨌든, 그것은 컴퓨터가 은유 적 고리를 뛰어 넘고 가상 춤을 실행하게 만드는 키 입력과 마우스 클릭의 순서를 이해하는 것입니다.

모든 학교, MOOC 및 교육 사이트는 어린 Padawans를위한 모국어를 수용해야합니다. Fusty Harvard와 같은 일부 장소는 여전히 70 년대 C 시대에 집착하지만 많은 학교가 JavaScript, Python 및 Java 사이를 오가고 있습니다. 하나는 모든 브라우저에 묻혀 있고, 하나는 사회 과학의 깨끗한 선택이며, 다른 하나는 수학적인 생각을 가진 사람들의 유형이 풍부한 선호도입니다.

하나가 최선의 선택입니까? 하나가 다른 것보다 분명히 낫습니까? 아니면 그들은 모두 똑같이 상당한 수의 학생들을 밤에 베개 속으로 비명을 지르도록 보낼 가능성이 있습니까? Java, Python 또는 JavaScript를 배우는 가장 좋은 이유를 살펴 보겠습니다.

자바는 고전적이다

Advanced Placement 테스트는 Java가 어렸을 때부터 폭발적으로 증가하고있을 때 Java를 선택했습니다. 아마도 자바는 모든 사람들이 완전히 지배적 일 것이라고 생각했을 때 초기 궤도의 정점에 도달하지 못했을 것입니다.하지만 여전히 많은 웹 사이트, 스마트 폰, 텔레비전 및 소형 장치의 중추입니다.

강력한 추종자를 가진 언어를 선택하면 학생은 이미 정교한 개발 도구로 가득 찬 악 대차에 뛰어들 수 있습니다. 또한 학생이 자신의 작업을 위해 연구, 수정 및 확장 할 수있는 수많은 오픈 소스 코드 라인이 있습니다. 그들은 큰 운동에 참여하고 있으며 쉽게 적응할 수 있습니다.

Python은 새로운

사실 Python은 그렇게 새로운 것은 아닙니다. 프로젝트는 30 년 전에 시작되었습니다.하지만 성공이 느리게 진행 되었기 때문에 새로운 느낌이 듭니다. 최근에야 비정상적인 프로그래머들에게 Python이 널리 채택되고 있음을 알게되었습니다. 참신함은 Python을 수용하는 학교가 새로운 수업 계획을 만들고, 새로운 시험을 작성하고, 새로운 슬라이드 데크를 개발하고 있음을 의미합니다. 그들은 Pets.com과 MySpace에 대한 언급과 함께 1990 년대의 먼지가 많은 오래된 질문을 파헤 치지 않습니다.

Computer Science Principles라고하는 최신 AP 과정은 교사가 컴퓨터 언어를 선택할 수 있도록하며 많은 사람들이 Python의 신선함 때문에 Python을 선택하고 있습니다. 새로움은 겉으로 드러나지 않을 수 있지만 모든 언어는 어셈블리 코드의 if-then-else 결정 구조를 숨기는 영리한 구문 일뿐입니다.

이 모든 성공은 긍정적 인 피드백 루프를 구축하는 것입니다. 2020 년 11 월 Tiobe 인덱스 버전은 Python이 처음으로 2 위 자리 (C 뒤)에 올랐으며, 언어가 Java보다 더 인기를 얻고 있음을 인식했습니다.

JavaScript는 어디에나 있습니다

브라우저에 있으며 브라우저는 데스크톱, 휴대폰 및 모든 곳에서 볼 수있는 모든 키오스크의 기반입니다. 지난 10 년 동안 JavaScript는 Node.js 웹 앱이 클라이언트와 서버 팜 모두에서 실행될 수있는 "동형 코드"를 작성하는 개발자에게 가장 인기있는 방법이되면서 웹 서버의 최전선을 점령했습니다. 자바 스크립트는 자바와 거의 같은 시대이지만 서버 측 사람들이 그 힘을 발견하는 데 몇 년이 걸렸습니다. 동시에 새롭고 오래된 것입니다.

Java가 입력 됨

각 변수의 유형을 지정하는 데 시간을 소비하는 것을 좋아하지 않을 수도 있지만, 코드에 "int"를 추가하기 위해 세 개의 키를 클릭하는 데는 많은 시간이 걸리지 않습니다. 그렇게하면 컴파일러가 코드를 즉시 재확인하고 배포하기 전에 어리석은 실수를 발견 할 수있는 모든 힘을 얻을 수 있습니다. 유형 검사 언어는 코드의 논리에 대해 더 엄격하게 생각하도록합니다. 이것은 새로운 프로그래머에게 필수적인 교훈입니다. Java의 유형 구조는 버그를 줄이고 더 나은 코드를 빌드합니다.

Python이 입력되지 않았습니다.

유형 언어 애호가는 똑똑하고 좋은 코드를 작성하지만, 각 변수의 데이터 유형에 대한 추가 정보 없이도 코드가 원활하게 실행될 수 있다고 생각한다면 Python이 준비되어 있습니다. 컴퓨터는 데이터를 변수에 저장할 때 데이터 유형을 파악할 수 있습니다. 왜 자신을 위해 추가 작업을해야합니까?

이 자유 회전 접근 방식은 느리지 만 변경 될 수 있습니다. Python 문서는 Python 런타임이 함수 및 변수 유형 주석을 적용하지 않지만 여전히 사용할 수 있다고 발표합니다. 아마도 시간이 지나면 유형을 추가하는 것이 해당 언어로 프로그래밍하는 지배적 인 방법이 될 것입니다.하지만 지금은 선택하는 것이 전부입니다.

JavaScript는 둘 다

JavaScript 자체는 유형이 지정되지 않았지만 최근 JavaScript 세계의 유명 멤버 중 일부가 원할 때 유형을 설정할 수있는 기능을 제공하는 원래 언어의 상위 집합 인 TypeScript로 전환했습니다. 그리고 원하지 않는 경우 일반 JavaScript도 잘 실행됩니다. 편안한 버전의 유형 검사입니다.

Java 규칙 장치

세계에서 가장 인기있는 휴대폰 플랫폼은 Java를 기반으로 구축 된 거대한 코드 스택 인 Android입니다. 그러나 그것은 가장 눈에 띄는 플랫폼 일뿐입니다. 셋톱 박스, 새 Chromebook, 심지어 일부 데스크톱에서도 스마트 폰처럼 Android 앱을 실행합니다. Java의 가까운 사촌 인 C #은 Windows 세계를 지배합니다. C #은 Java와 정확히 동일하지는 않지만 매우 유사합니다. 고정 된 하드웨어 용 애플리케이션을 작성하려는 경우 Java가 최선의 선택 일 가능성이 높습니다.

Python 규칙 데이터 과학

데이터 작업을위한 소프트웨어를 작성하는 경우 Python을 사용하고 싶을 가능성이 높습니다. 간단한 구문은 많은 과학자들을 매료 시켰고,이 언어는 전국의 실험실에서 강력한 추종자를 찾았습니다. 이제 데이터 과학이 비즈니스 세계의 모든 계층에서 자리를 잡고 있으므로 Python은 다음을 따르고 있습니다.

대화 형 문서를 만들고 공유하기위한 최고의 발명품 중 하나 인 Jupyter Notebook은 다른 언어를 채택하기 전에 Python 커뮤니티에서 시작되었습니다. 소프트웨어, 데이터 및 무슨 일이 일어나고 있는지 설명하는 텍스트를 함께 혼합하는 가장 좋은 방법 중 하나입니다. 독자는 단어를 흡수 한 다음 버튼을 눌러 데이터에서 소프트웨어를 실행할 수 있습니다.

웹을 지배하는 자바 스크립트

다른 플랫폼도 좋지만 웹 브라우저는 계속해서 거의 모든 사람들이 세상과 연결하는 데 사용하는 하나의 포털입니다. 일반적으로 데스크톱, 스마트 폰 및 태블릿에서 가장 많이 사용되는 소프트웨어입니다. JavaScript는이 로컬 클라이언트의 보스로 시작되었고 Node.js의 성장으로 개발자가 클라이언트와 서버에서 동일한 코드를 더 쉽게 실행할 수있게되면서 그 영향력이 전체 지배로 확대되었습니다.

또한 웹 앱을 빌드하기위한 기반을 제공하는 수십 개의 훌륭한 JavaScript 프레임 워크 (Angular, React, Vue 등)가 있으며 일부는 필요에 따라 클라이언트와 서버간에 코드를 이동할 수있을만큼 영리합니다. 

다른 언어가 지배하는 세계에서도 JavaScript는 스택으로 작동합니다. 많은 스마트 폰 개발자들은 자바와 스위프트를 건너 뛰어 자바 스크립트로 크로스 플랫폼 앱을 만들고 있습니다. 결국 자바 스크립트는 브라우저의 사각형에서 일어나는 일을 결정하고 모든 곳에서 대부분의 클릭과 키 입력에 어떤 일이 발생하는지에 대한 결정을 내릴 것을 거의 보장합니다.

Java는 모든 것을 실행합니다

Python 코드를 작성하면 Java Virtual Machine의 편재성을 활용하기 위해 Java로 작성된 언어 구현 인 Jython에서 실행될 가능성이 높습니다. JavaScript를 실행해야하는 경우 JavaScript를 Java 바이트 코드로 변환하는 두 가지 도구 인 Rhino 및 Nashorn에이를 제공 할 수도 있습니다.

이 두 언어는 JVM의 견고한 성능에 의존하는 유일한 언어가 아닙니다. Scala, Clojure 및 Kotlin과 같은 많은 함수형 프로그래밍 언어도 동일한 기반에 의존합니다. 이는 동일한 프로젝트에서 사용하려는 경우 이러한 JVM 기반 언어를 함께 연결하는 것을 더 간단하게 만들어 모든 사람에게 도움이됩니다.

Python은 어디서나 실행됩니다.

Python은 다른 언어 용 에뮬레이터를 작성하는 사람들에게 첫 번째 선택 또는 마지막 선택이 아닙니다. 그럼에도 불구하고 많은 컴퓨터에서 Python을 쉽게 찾을 수 있습니다. 언어의 제작자는 항상 코드를 오픈 소스로 배포했으며 패키지는 거의 모든 곳에 있습니다. 실제로, MacOS와 대부분의 모든 기능을 갖춘 Linux 배포판에 Python이 포함되어 있습니다. Windows에는 포함되어 있지 않지만 설치가 간편합니다. 스마트 한 방식으로 설치하면됩니다.

브라우저에서 JavaScript 실행

브라우저에서 경고 상자를 만들기 위해 만들어진 장난감 언어가 이제 많은 언어의 기초라고 믿기 어렵습니다. 개발자는 사용자에게 도달하기를 원하며 사용자가 브라우저를 사용하는 경우 JavaScript에서 코드를 실행할 수있는 방법을 찾는 것이 모든 사람에게 도달하는 가장 빠른 방법입니다.

JavaScript로 변환되는 것은 CoffeeScript 및 LiveScript와 같은 JavaScript 사촌 만이 아닙니다. Lisp, OCaml 및 Pascal과 같은 언어도 JavaScript로 변환하여 브라우저에서 실행할 수 있습니다. Python은 Jupyter 노트북과 같은 프로젝트의 브라우저에서 널리 사용되며 Java도 Google Web Toolkit과 같은 도구를 사용하여 JavaScript로 번역 할 수 있습니다.

Java에는 강력한 IDE가 있습니다.

Eclipse, NetBeans 및 IntelliJ는 최고의 통합 개발 환경 중 하나입니다. Java 커뮤니티에서 만들어졌으며 코드 작성을위한 가장 지원적인 환경 중 하나를 만들기 위해 수년에 걸쳐 개발되었습니다. 코드 완성 및 코드 생성 알고리즘이 모든 소프트웨어를 작성하는 것은 아니지만 상당한 양을 입력 할 수 있습니다. 이 모든 손을 잡고 새로운 개발자가 올바른 구문을 얻는 데 도움이됩니다. 

이러한 IDE는 매우 인기가있어서 다른 언어의 개발자가 내부에서 코드를 실행할 수있는 방법을 찾았습니다. 전문적인 자바 프로그래머가된다면 그 중 하나를 사용하게 될 것입니다. 그 동안 더 간단하고 친숙한 Java 프로그래밍 경험을 원한다면 BlueJ 또는 Greenfoot을 사용해보십시오. 이러한 "초보 IDE"는 Java 학습을 위해 특별히 설계되었습니다.

Python에는 클라우드가 있습니다.

Python 언어는 Unix 세계에서 첫 번째 고향을 찾았으므로 Linux 상자로 채워진 클라우드가 많은 Python 코드를 찾을 수있는 자연스러운 장소라는 것은 놀라운 일이 아닙니다. Jupyter와 같은 일부 최신 도구는 코드, 데이터 및 설명을 함께 제공하므로 사람들이 생생한 연구 논문으로 다른 사람들과 통찰력을 공유 할 수 있습니다. Jupyter 노트북은 정적 문서가 아니라 탐색을위한 대화 형 도구입니다.

다른 사람들은 연구를 향상시키기 위해 언어를 중심으로 정교한 도구를 만들고 있습니다. 예를 들어 PyTorch는 분석을위한 코드, 데이터 및 알고리즘으로 채워진 딥 러닝 툴킷입니다. 이와 같은 환경은 데이터 과학의 미래를 지배 할 것입니다.

또한 데이터를 공유하고 크고 집약적 인 컴퓨팅 데이터 분석 작업을 처리하기위한 추가 기능을 추가하는 노트북을위한 몇 가지 좋은 호스트가 있습니다. 예를 들어 Google은 데이터를 저장하고 더 빠른 계산을 위해 GPU에 대한 무료 액세스를 제공하는 Colaboratory를 실행합니다. Saturn Cloud는 데스크탑보다 100 배 빠른 성능을 자랑합니다.

JavaScript에는 JSFiddle이 있습니다.

각 브라우저는 IDE 역할을하기에 충분한 성능을 제공합니다. JSFiddle은 다른 개발자와 JavaScript 코드를 공유 할 수있는 12 개 이상의 웹 사이트 중에서 가장 눈에 띄는 웹 사이트입니다. 그러나 웹 페이지는 코드를 조작하고 동일한 웹 페이지에서 실행되는 것을 볼 수 있기 때문에 정적이 아닙니다. 이와 같은 도구를 사용하면 JavaScript의 모든 구문 적 재미를 간단하게 실험 할 수 있습니다.

하나 또는 세 가지 모두 배우기

프로그래밍 세계는 교차 수분을 좋아합니다. 서로 다른 언어간에 바운스하고 구문을 똑바로 유지하는 것은 혼란 스러울 수 있지만 너무 얽매이지 않고 프로젝트에서 세 가지 언어를 모두 사용할 수 있습니다. 데이터를 분석하는 Java 또는 JavaScript 프로젝트는 Python으로 작성된 데이터 과학 라이브러리에 연결할 수 있습니다. 또는 Python 프로젝트는 Java 또는 JavaScript 코드를 호출 할 수 있습니다.

똑똑한 개발자들은 서로 다른 언어를 자동으로 번역, 연결 및 통합하는 도구를 만들었습니다. 브라우저에서 Python 코드를 실행 하시겠습니까? 현재 여러 가지 옵션이 있으며 앞으로 더 많이 제공 될 것입니다. Java에는 JavaScript를 평가하는 ScriptEngine 클래스가 있습니다. 번역 또는 에뮬레이션을 통해 JavaScript로 실행되는 수백 가지 언어가 있습니다.

요컨대, 세 언어가 서로 격리 된 섬일 필요는 없습니다. 장기적으로 하나만 선택할 필요는 없습니다. 그러나 처음에는 하나부터 시작하십시오.

소프트웨어 개발에 대해 자세히 알아보십시오.

  • 잠금 기간 동안 최고의 무료 프로그래밍 과정
  • CI / CD 란 무엇입니까? 지속적 통합 및 지속적 전달 설명
  • 애자일 방법론이란 무엇입니까? 최신 소프트웨어 개발 설명
  • API 란 무엇입니까? 응용 프로그래밍 인터페이스 설명
  • 지금 배울 수있는 최고의 프로그래밍 언어
  • 2020 년 가장 가치있는 소프트웨어 개발자 기술
  • AI 개발을위한 6 가지 최고의 프로그래밍 언어
  • 2020 년에 가장 많이 지불하는 개발자 역할 24 개
  • 풀 스택 개발자 : 그것이 무엇이며 어떻게 하나가 될 수 있습니까?
  • 모든 소프트웨어 개발자가 피해야 할 9 가지 직업 함정