링크의 내용을 공부하며 제멋대로 번역한 내용입니다.
WHY 왜 줄리아 인가?
줄리아는 고성능이고, 범용 오픈소스 언어다.
JIT(just in time) 컴파일러로 C/Fortran 급 속도를 지니며, Matlab/Python 마냥 쉽다.
그러니까 줄리아를 사용해야한다.
FEATURES 몇 가지 특징
줄리아 특징은 많은데, 공학/과학 분야에서 관심가질만한 내용은 아래와 같다.
JIT 컴파일 가능!
컴파일러/인터프리터/JIT 개념을 공부해보자(아직부족) 아무튼 한행씩 분석하지 않고 java/C# 마냥 중간언어로 바꿔 준다. 이 특징은 특히 크로스 플랫폼이라는 강점이 있는데, 아직 사용 안해봐서 잘 모르겠다. 배우다보면 알겠지. 컴파일된 프로그램마냥 빠르단다.
선택적 입력?
이건 사용하기 전에는 잘 모를거같긴한데.. 뭔가 대화형식을 제공해준다는 것인지..? 잘모르겠다. 아무튼 뭔가 테스트하고 최적화 할 수 있단다.
깔쌈한 수학적 구문
포트란, 매트랩, 매스매티카 처럼 수학 언어를 기반으로 한다! (이 이유로 프로젝트를 줄리아로 작성하기로 했다.)
범용적임
패키지 관리자로 데이터베이스/시각화/HTTP서버 실행 등 다양한 작업 삽-가능하단다.
HOW TO LEARN 그럼 어떻게 배울까
위 링크랑 포럼으로 오란다. 여러분은 제가 올리는 포스트를 봐도 되실...거에요..!아마도. 그리고 포럼은 후에 다루겠습니다.
PACKAGES 패키지
REPL로 아래와 같이 쉽게 다운로드 받을 수 있다(티스토리는 아직 julia를 지원안한다.. 추가해야겠다..!)
import Pkg; Pkg.add("LinearAlgebra:)
사용하는 것도 쉽다.
using LinearAlgebra
여타 페키지는 온라인에서 찾을 수 있다.
- Julia Observer. Most popular and trending packages.
- Julia Packages. Search packages by category.
FAST 근데 진짜 빠를까?
먼저 의심이 들긴 했다. 파이썬으로 최적화 작업을 하느니 일단 줄리아로 넘어왔는데 말이다. 본래 링크의 글쓴이도 의심이 가서 벤치마크 문제로 테스트 해봤다는데 이것도 어느정도는 최적화가 이뤄져야 포트란 만큼빨라진다고 한다. 대신 highly-optimized 된 포트란 코드라고 했으니, 일단 이 튜토리얼을 마친 다음에 파이썬으로 계속 개발을 할지, 줄리아로 개발을 할지 선택할 것이다.
여튼 본래 링크 글쓴이가 2가지를 테스트 했다고 하는데 첫째는 기본적인 문법을 사용했을때 뭐가 더 빠른지이고, 둘째는 코드 최적화에 얼마나 공을 들여야 하는가를 평가했단다. 결과적으로 C나 포트란을 최적화하는 것보다는 훨신 쉽게 최적화가 가능하므로 꽤 괜찮다고 한다.
CONCLUSION 나의 결론
1. 일단 튜토리얼을 마치고, 파이썬과 비교할 것이다.
2. 객체 지향이 가능한가? 클레스를 만들수 있는가? 궁금해졌다.(아직 지식이 짧다)
3. 기대된다.
'Engineer > Juila' 카테고리의 다른 글
[Julia] 기본1 - 5. 행렬 가지고 놀기! (0) | 2021.10.11 |
---|---|
[Julia] 기본1 - 4. 함수 사용하기 (0) | 2021.10.11 |
[Julia] 기본1 - 3. 반복문(Loop 문) 사용하기 (0) | 2021.10.11 |
[Julia] 기본 - 2. VSCode로 줄리아 시작하기 (0) | 2021.10.07 |
[Julia] 파이썬 마냥 가상환경 구축해서 사용하기 (0) | 2021.10.05 |
댓글