최근 수정 시각 : 2024-10-03 22:35:55

Julia


파일:나무위키+유도.png  
은(는) 여기로 연결됩니다.
인피니트의 정규 1집 리패키지 《Paradise》의 수록곡에 대한 내용은 Julia(인피니트) 문서
번 문단을
부분을
, 동음이의어에 대한 내용은 줄리아 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
, 에 대한 내용은 문서
번 문단을
번 문단을
부분을
부분을
참고하십시오.
프로그래밍 사이트 선정 프로그래밍 언어 순위 목록
{{{#!wiki style="margin: 0 -10px -5px; word-break: keep-all"
{{{#!wiki style="display: inline-table; min-width: 25%; min-height: 2em;"
{{{#!folding [ IEEE Spectrum 2024 ]
{{{#!wiki style="margin: -5px 0"
<rowcolor=#fff> 스펙트럼 부문 상위 10개 프로그래밍 언어 직업 부문 상위 10개 프로그래밍 언어
1 Python 1 SQL
2 Java 2 Python
3 JavaScript 3 Java
4 C++ 4 TypeScript
5 TypeScript 5 SAS
6 SQL 6 JavaScript
7 C# 7 C#
8 Go 8 HTML
9 C 9 Shell
10 HTML 10 C++
}}}
}}}
}}}
[ Stack Overflow 2024 ]
[ TIOBE 2024 ]
||<tablewidth=100%><width=9999><-4><bgcolor=deepskyblue><tablebgcolor=#fff,#222> 2024년 8월 기준 검색어 점유율 상위 20개 프로그래밍 언어 ||
1 Python 11 MATLAB
2 C++ 12 Delphi / Object Pascal
3 C 13 PHP
4 Java 14 Rust
5 C# 15 Ruby
6 JavaScript 16 Swift
7 SQL 17 Assembly language
8 Visual Basic 18 Kotlin
9 Go 19 R
10 Fortran 20 Scratch
{{{#!wiki style="margin: 0 -10px -5px; min-height: calc(1.5em + 5px);"
{{{#!folding [ 21위 ~ 50위 펼치기 · 접기 ]
{{{#!wiki style="margin: -5px -1px -11px"
21 COBOL 36 Scala
22 Classic Visual Basic 37 Transact-SQL
23 LISP 38 PL/SQL
24 Prolog 39 ABAP
25 Perl 40 Solidity
26 (Visual) FoxPro 41 GAMS
27 SAS 42 PowerShell
28 Haskell 43 TypeScript
29 Dart 44 Logo
30 Ada 45 Wolfram
31 D 46 Awk
32 Julia 47 RPG
33 Objective-C 48 ML
34 VBScript 49 Bash
35 Lua 50 Elixir
}}}}}}}}} ||
[ PYPL 2024 ]

}}} ||
프로그래밍 언어 목록 · 분류 · 문법

println("Hello, World!")

using Printf
@printf "Hello, world!"
줄리아
Julia
파일:Julia-logo-라이트테마.svg 파일:Julia-logo-다크테마.svg
링크 영어 웹사이트
파일:홈페이지 아이콘.svg | 파일:GitHub 아이콘.svg 파일:GitHub 아이콘 화이트.svg
한국어 웹사이트
파일:홈페이지 아이콘.svg | 파일:GitHub 아이콘.svg 파일:GitHub 아이콘 화이트.svg
1. 개요2. 장점3. 단점4. 학습
4.1. 강의4.2. 실습

[clearfix]

1. 개요


줄리아(Julia)는 프로그래밍 언어의 일종이다. MIT에서 개발한 언어이다. 동적 프로그래밍 언어로, JIT 컴파일과 AOT 컴파일을 지원한다. 주로 과학, 공학 분야에서 빠른 계산 성능을 내기 위해 사용되며, 2012년에 처음 발표된 신생 언어이다. 병렬 컴퓨팅을 지원할 뿐만 아니라 이것으로 작성한 코드의 실행 속도는 C보다는 약간 느리지만 Python이나 MATLAB보다 훨씬 빠르다.

다음은 C의 수행 속도가 1.00일 때 다른 언어의 상대적인 수행속도를 표시한 결과이다.[1] 수치가 낮을수록 수행 속도가 빠른 것이다.
파일:Julia-Micro-benchmarks.svg
기본 설치를 한 뒤 콘솔 창에서 사용할 수도 있고, Jupyter notebook이나 GitHub에서 제작한 에디터인 Atom 기반의 Juno IDE를 이용하여 개발을 할 수도 있다. 2023년 현재는 Visual Studio Code의 Julia 확장팩을 활용한 개발이 대세이다.

웹상에 널리고 널린 C 포트란 라이브러리들을 불러올 수 있다. 물론 자체적으로도 선형대수, FFT 등 많은 수학 라이브러리들을 탑재하고 있다.

2018년 8월 v1.0 배포를 시작으로 2022년 9월 29일을 기준으로 v1.8.2가 배포되었다.

수치해석을 많이 쓰는 분야에서 각광받고 있으며, 2022년 10월 현재 인기 프로그래밍 언어 순위에서도 21위에 들어오면서 2020년에 31위에 비해 10등이 오르며 점차 인기를 얻고 있음을 알 수 있다.

국내에서는 줄리아 언어를 이용해 비압축성 유체역학 모델에서 발전된 JOM 모델이라는 비정수압 해양모델이 만들어져 GitHub에 공개되었다.[2]

2. 장점

  • 언급한 것처럼 속도가 C와 포트란에 비견될 정도로 빠르다.
  • 매뉴얼이 깔끔하다. 줄리아 매뉴얼 R 매뉴얼이나 Python 매뉴얼과 비교하면 명백히 확인할 수 있다.
  • 모든 패키지가 GitHub로 관리된다. 줄리아의 패키지 저장소는 Github이다. 줄리아 패키지 R패키지와 비교해보면 정말 깔끔하고, Python 패키지의 경우 나쁘진 않지만 윈도우 사용자에게는 친숙하지 않다.
  • 최신 언어이기 때문에 모듈이 잘 정리되어 있고 현대적이고 함수형 문법을 사용할 수 있으며 타입 시스템 또한 강력하다.
  • ChatGPT와 같은 LLM에서의 퍼포먼스가 Python 수준으로, 또는 그 이상으로 좋다.[3]

3. 단점

  • 공식 매뉴얼 번역을 시작했지만 아직 얼마 진행되지 않았다. 급한대로 블로그 1, 2가 도움이 될 수는 있다.
  • Python이나 R 등과 비교하였을때 아직 사용자가 적어 패키지가 적다. 다만 일반 개발목적의 경우가 아니라 자연과학에 관련된 분야로 한정 짓는 경우, 수상할 정도로 많은 패키지가 잘 개발되어 있다. 또한 PyCall, RCall 등을 사용하여 Python, R을 비롯해 다른 언어의 패키지를 사용할 수 있다.

4. 학습

4.1. 강의

4.2. 실습



[1] http://julialang.org/benchmarks/ [2] 국내에서 최초로 개발된 해양모델은 ESCORT 모델이라고 하나, 소스코드 뿐만 아니라 실행파일 조차 공개되지 않아 모델의 실체는 확인이 어렵다. 이를 제외하면 JOM 모델은 국내 최초의 공개 해양모델이며, 세계에서 두 번째로 줄리아 언어를 이용해 만들어진 해양모델이 된다. [3] https://www.stochasticlifestyle.com/chatgpt-performs-better-on-julia-than-python-and-r-for-large-language-model-llm-code-generation-why/