문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 Julia (문서 편집) [include(틀:다른 뜻1, other1=인피니트의 정규 1집 리패키지 《Paradise》의 수록곡, rd1=Julia(인피니트), other2=동음이의어, rd2=줄리아)] [include(틀:프로그래밍 언어)] ||<-2> {{{+1 '''Julia'''}}} || ||<-2> [[파일:Julia 로고.svg|width=90%]] || || 링크 ||[[http://julialang.org/|공식 홈페이지]][br][[https://juliakorea.github.io/|한글 홈페이지]] || [목차] [clearfix] == 개요 == {{{#!html println("Hello, World!") }}}[* {{{#!html using Printf @printf "Hello, world!" }}}도 가능하다.] [[프로그래밍 언어]]의 일종. [[매사추세츠 공과대학교|MIT]]에서 개발한 언어이다. 동적 프로그래밍 언어로, 주로 과학, 공학 분야에서 빠른 계산 성능을 내기 위해 개발되었다. 2012년에 처음 발표된 신생 언어이다. 병렬 컴퓨팅을 지원할 뿐만 아니라 이것으로 작성한 코드의 실행 속도는 [[C]]보다는 약간 느리지만 [[Python]]이나 [[MATLAB]]보다 훨씬 빠르다. 다음은 C의 수행속도가 1.00일 때 다른 언어의 상대적인 수행속도를 표시한 결과이다. [[파일:julia160413.png]] [[http://julialang.org/benchmarks/|줄리아 벤치마크]] 수치가 낮을수록 좋다. 기본 설치를 한 뒤 콘솔 창에서 사용할 수도 있고, [[http://jupyter.org/|Jupyter notebook]]이나 [[GitHub]]에서 제작한 에디터인 [[Atom(에디터)|Atom]] 기반의 [[http://junolab.org|Juno]] IDE를 이용하여 개발을 할 수도 있다. 2023년 현재는 Visual Studio Code의 Julia 확장팩을 활용한 개발이 대세. 웹상에 널리고 널린 [[C#s-2.1]]나 [[포트란]] 라이브러리들을 불러올 수 있다. 물론 자체적으로도 선형대수, FFT 등 많은 수학 라이브러리들을 탑재하고 있다. 2018년 8월 v1.0 배포를 시작으로 2022년 9월 29일을 기준으로 v1.8.2가 배포되었다. 수치해석을 많이 쓰는 분야에서 각광받고 있으며, 2022년 10월 현재 [[https://www.tiobe.com/tiobe-index/|인기 프로그래밍]] 언어 순위에서도 21위에 들어오면서 2020년에 31위에 비해 10등이 오르며 점차 인기를 얻고 있음을 알 수 있다. 국내에서는 줄리아 언어를 이용해 비압축성 유체역학 모델에서 발전된 [[http://jksocean.or.kr/articles/xml/zNvW/|JOM 모델]]이라는 비정수압 해양모델이 만들어져 [[GitHub]]에 공개되었다.[* 국내에서 최초로 개발된 해양모델은 [[https://www.koreascience.or.kr/article/JAKO200830265652484.pdf|ESCORT 모델]]이라고 하나, 소스코드 뿐만 아니라 실행파일 조차 공개되지 않아 모델의 실체는 확인이 어렵다. 이를 제외하면 JOM 모델은 국내 최초의 공개 해양모델이며, 세계에서 두 번째로 줄리아 언어를 이용해 만들어진 해양모델이 된다.] == 장점 == * 언급한 것처럼 속도가 C와 포트란에 비견될 정도로 빠르다. * 매뉴얼이 깔끔하다. [[http://docs.julialang.org/en/|줄리아 매뉴얼]]을 [[https://www.r-project.org/other-docs.html|R 매뉴얼]]이나 [[https://www.python.org/doc/|Python 매뉴얼]] 와 비교하면 명백히 확인할 수 있다. * 모든 패키지가 [[GitHub]]로 관리된다. 줄리아의 패키지저장소 = Github 이다. [[http://pkg.julialang.org/|줄리아 패키지]]를 [[https://cran.r-project.org/web/packages/crayon/index.html|R패키지]]와 비교해보면 정말 깔끔하고, [[https://pypi.python.org/pypi|Python 패키지]]의 경우 나쁘진 않지만 윈도우 사용자에게는 친숙하지 않다. * 최신 언어이기 때문에 모듈이 잘 정리되어 있고 현대적이고 함수형인 문법을 사용할 수 있으며 타입 시스템 또한 강력하다. == 단점 == * [[https://juliakorea.github.io/ko/latest/|공식 매뉴얼 번역]]을 시작했지만 아직 얼마 진행되지 않았다. 급한대로 블로그 [[https://freshrimpsushi.github.io/categories/%EC%A4%84%EB%A6%AC%EC%95%84/|1]], [[https://julialang.kr/|2]]가 도움이 될 수는 있다. * Python이나 R 등과 비교하였을때 아직 사용자가 적어 패키지가 적다. 다만 일반 개발목적의 경우가 아니라 자연과학에 관련된 분야로 한정 짓는 경우, 수상할정도로 많은 패키지가 잘 개발되어 있다. [* 또한 PyCall 등을 사용하여 Python을 비롯해 다른 언어의 패키지를 사용할 수 있다.] [[분류:프로그래밍 언어]]저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기