11
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はーい、みんな聞いてー!🎉
今日はJulia言語について超絶わかりやすく説明しちゃうよ〜!💖
初心者さんも上級者さんも一緒に楽しんじゃおう!😘

Juliaって何よ?🤔💕

Julia(ジュリア)は、超イケてるプログラミング言語なの!👩‍💻✨ 2012年に登場した新しい子で、科学計算とかデータ分析が得意な天才肌なんだって!

Juliaの特徴💅🌟

  1. 超速い!🏃‍♀️💨: C言語並みのスピードで動くの!待ち時間にイライラしないでいいの!
  2. 柔軟すぎ〜!🤸‍♀️: 型付けが動的だから、コードを書くのがめっちゃ楽チン!
  3. 拡張性バツグン!🔧: パッケージで機能追加し放題!自分好みにカスタマイズできちゃう!
  4. 数式書くの得意!📝: 複雑な数式もサクッと書けちゃうの!数学オタクにはたまらないわ〜!
  5. みんなで作ってる!👥: オープンソースだから、みんなで改善し合えるの!仲間感すごい!

インストールしちゃお!💿🎵

Julia公式サイトからダウンロードするの!📥
MacやLinuxユーザーのみんなへ📱
最新のJuliaバージョン(v1.10.4 2024年6月4日)をインストールするには、ターミナルで以下のコマンドを実行するだけ!簡単すぎ〜!😍

curl -fsSL https://install.julialang.org | sh

これでJuliaupというインストールマネージャーも一緒に入るから、最新のJuliaを自動でインストール&アップデートできちゃうの!便利すぎ〜!✨

Windowsユーザーのみんなへ🖥️
最新のJuliaバージョン(v1.10.4 2024年6月4日)をMicrosoft Storeからインストールするには、コマンドプロンプトで以下のコマンドを実行してね!🎶

winget install julia -s msstore

これでJuliaupも一緒にインストールされるから、最新バージョンのJuliaを自動でゲットできるよ!最高〜!🌟

どちらの方法でも、インストール後はターミナルやコマンドプロンプトで julia コマンドが使えるようになるから、もう完璧だよ〜!💯

開発環境構築しちゃお!🛠️💖

Visual Studio Code(VS Code)がオススメ!😘 Julia拡張機能をインストールすれば、コード補完とかデバッグとか便利機能てんこ盛り!🍱

Jupyterノートブックも使えるよ!IJuliaパッケージをインストールすれば、インタラクティブな環境でJuliaが使えちゃう!👩‍🔬✨

サンプルコード見てみよう!👀💕

超初心者向け🐣

# Hello World!
println("ハロー、ギャルの皆さん!")

# 簡単な計算
a = 5
b = 3
println("足し算の結果: ", a + b)
println("掛け算の結果: ", a * b)

# 配列操作
arr = [1, 2, 3, 4, 5]
println("元の配列: ", arr)
println("配列の合計: ", sum(arr))
println("2乗した配列: ", arr .^ 2)

# 関数定義
function ギャル挨拶(名前)
    println(名前, "ちゃん、今日もめっちゃカワイイ〜!")
end

ギャル挨拶("ジュリア")

上級者向け🏆

using Plots
using LinearAlgebra
using Distributions

# マジヤバイ!フラクタル描いちゃうよ〜!(マンデルブロ集合)💅✨
function mandelbrot(h, w, maxiter)
    y = range(-1.5, 1.5, length=h)
    x = range(-2.0, 1.0, length=w)
    z = (x' .+ y*im) * ones(1, w)
    c = copy(z)
    divtime = zeros(h, w)
    for i = 1:maxiter
        z = z.^2 .+ c
        diverge = abs.(z) .> 2
        div_now = diverge .& (divtime .== 0)
        divtime[div_now] .= i
        z[diverge] .= 2
    end
    return divtime
end

h, w = 1000, 1500
maxiter = 100
イケてる画像 = mandelbrot(h, w, maxiter)
heatmap(イケてる画像, color=:inferno, aspect_ratio=1)

# 行列計算とか確率分布とか、マジ頭使うやつ〜!🧠✨
A = randn(1000, 1000)
B = randn(1000, 1000)
@time C = A * B  # 行列かけ算の時間計っちゃう!⏱️

eigen_values = eigvals(C)
hist(real.(eigen_values), bins=50, title="固有値のヒストグラム超かわいい♡", label="Real part")

# モンテカルロでπ求めちゃうよ〜!🎲🥧
function monte_carlo_pi(n)
    inside_circle = sum(sum(rand(2, n).^2, dims=1) .<= 1)
    return 4 * inside_circle / n
end

n_samples = 1_000_000
ピッタリπ = monte_carlo_pi(n_samples)
println("πの推定値だよ〜 ($(n_samples)回試したよ): ", ピッタリπ)
println("ホンモノとの差: ", abs(ピッタリπ - π))

Juliaの良いところ👍✨

  1. 速さがヤバい!⚡: 大量のデータを扱うときも、サクサク処理できちゃうの!
  2. 書きやすさ最高!✍️: Pythonみたいに書けるけど、速度は桁違い!
  3. 数学好きにはたまらない!🧮: 複雑な数式もそのまま書けるから、理系の人には天国みたい!
  4. 他の言語とも仲良し!🤝: C言語やPythonのライブラリも使えちゃうの!欲張りさんにピッタリ!
  5. コミュニティが熱い!🔥: みんなで助け合って、言語をどんどん良くしていってるの!

まとめ🎀

Juliaは、スピード重視だけど書きやすい、という欲張りな子なの!😍
データ分析とか機械学習とか、計算たくさんする人にはマジでオススメ!💯
これからどんどん人気が出てくると思うから、今のうちに覚えておいて損はないわよ!😉✨

みんなも Julia で プログラミング ライフを エンジョイしちゃおう!🎉💖

最後に

Juliaの公式サイトにあるJuliaを何故作ったのかも紹介するよー🤓✨

なんでジュリア作っちゃったの?🤔💕
ぶっちゃけ、欲張りだったからなの~!🙈💖
私たち、マジでプログラミング大好き人間なわけ。😘 Matlab、Lisp、Python、Ruby、Perl、Mathematica、R、C言語...もう全部使いこなしちゃってるの!💅✨
でもね、それぞれいいとこあるけど、イマイチなとこもあるのよ。😕 科学計算とか機械学習とかデータマイニングとか、大規模な行列計算とか並列計算とか、やりたいことによって使い分けなきゃいけないの。めんどくさ~い!😫
だから私たち、欲張っちゃった!🤑 全部いいとこ取りの言語が欲しいって思っちゃったの!
私たちの欲しいもの、全部言っちゃう!🗣️💕

オープンソースで、ライセンスもゆるゆるな言語!🆓
Cみたいに速いけど、Rubyみたいに柔軟な言語!🏃‍♀️💨
Lispみたいなマクロが使えるけど、Matlabみたいに数式も書きやすい言語!🧮✨
汎用的にはPythonみたいで、統計はRみたいで、文字列処理はPerlみたいで、行列計算はMatlabみたいで、プログラムの連携はシェルみたいな言語!🦄
初心者でも簡単に覚えられるけど、ガチのハッカーも満足できる言語!😎
インタラクティブだけど、コンパイルもできる言語!💻

(あ、そうそう。Cと同じくらい速いのは絶対条件ね!⚡)
もっと欲張っちゃう!😈💖

Hadoopみたいな分散処理もできるけど、JavaとかXMLとかの面倒くさいのはナシ!📊
バグ探しでログファイル山盛りとかもうイヤ!簡単に見つけられる言語がいい!🔍
1つのCPUのレジスタだけで動く、超シンプルなループも書きたい!💪
でもA*Bって書いただけで、1000台のマシンで大規模な行列計算が始まるのも欲しい!🖥️🖥️🖥️
型?書きたくない時は書かなくていい言語!でも、ポリモーフィックな関数が必要な時は、ジェネリックプログラミングで無限の型に対応できる言語!🌈
多重ディスパッチで、引数の型に応じて最適なメソッドを選んでくれる言語!👌
こんな高機能なのに、シンプルでキレイな言語!✨

結論:ジュリア誕生!🎂🎉
「欲張りすぎじゃね?」って思った? でも私たち、全部欲しかったの!😤💕
そんなわけで、2年半くらい前から作り始めたのよ。😊 まだ完璧じゃないけど、もう90%くらいは実現できてるの!すごくない?🙌✨
これからはみんなの意見も聞きながら、もっともっと良くしていくつもり!💪 だからさ、あなたも欲張りで、無理難題ばっかり言うプログラマーなら、ぜひジュリアを試してみてね!😘🌟
ジュリアで、プログラミングライフをもっとハッピーに、もっとキラキラに✨しちゃおう!🎊💖

参考

Why We Created Julia

11
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?