レビュー,書籍紹介・書評掲載情報

1から始める Juliaプログラミング

1から始める Juliaプログラミング

  • 進藤 裕之 奈良先端科学技術大学院大特任准教授・MatBrain(株)代表取締役
  • 佐藤 建太 理化学研究所

「Pythonのように書けて,Cのように動く」新しいプログラミング言語Juliaの基本的な文法や使い方から,実践的な内容として,標準ライブラリには含まれない数値計算やデータの可視化などのパッケージの活用まで解説する。

発行年月日
2020/04/17
定価
2,970(本体2,700円+税)
ISBN
978-4-339-02905-5
在庫あり

レビュー,書籍紹介・書評掲載情報

「電子情報通信学会誌」2021年4月号

掲載日:2021/04/02

amazonレビュー 978-4-339-02905-5 1から始める Juliaプログラミング

掲載日:2020/06/12

読者モニタレビュー【ceptree様(大学院生,専門:EMC,数値計算)】

掲載日:2020/04/24

本書には,Juliaの環境構築(1章)から,言語仕様の説明(2章),ライブラリの使い方(3章),そして高速化の方法(4章)に至るまでの幅広い内容が,200ページ弱にコンパクトにまとまっており, 本書を読むだけでJuliaについて一通り要領よく学ぶことができる。
特に,4章では,具体例とサンプルコードを交えながらJuliaの高速化の方法が紹介されており,Juliaで科学技術計算を行いたい人にとっては必見の内容になっている。例えば,行列演算のメモリプロファイリングと配列の再利用による改善方法や,型推論において型の不確実性が起こる要因の具体例(ルンゲ・クッタ!)における詳細な解説とその解決の仕方など,まさにこれが見たかった! という情報が載っている。
はじめてJuliaを学ぶ人はもちろんのこと,ある程度Juliaを触ったことのある人にもおすすめできる一冊となっている。

読者モニタレビュー【高橋一博様(自動車業界,先行開発)】

掲載日:2020/04/07

Pythonを使っていると時折Juliaを勧めてくるコメントを見ていたため気になっていました。Julia開発者のコメントにもあるようにかなり欲張りな言語だと思います。C言語だけでなくPythonのプログラムも呼び出せる(かつ計算速度が早い)のは大変な強みです。さらに高速化するためのプロファイリングが標準で備わっているのは非常に魅力的です。これからJuliaに切り替えようと思っていた自分にはちょうど良い内容の1冊でした。今後、Juliaで行う数値解析などのより実用的な書籍も期待しております。

読者モニターレビュー【 QuantDeveloper 様(大手金融機関,専門:金融工学)】

掲載日:2020/04/01

Juliaを初めて使う人から中級者まで幅広く役立つ本といえるだろう。

比較的薄い本だがカバーされているトピックは広く,説明の仕方に無駄がないという印象だ。初心者向けとしては,環境構築に始まり言語仕様が網羅的に書かれているので,入門書として使える。サンプルコードはシンプルなので初心者でもついてこられるだろう。Julia初心者とはいっても他言語の経験がある人がほとんどと思われるため,Pythonなど他言語との違いに適宜言及しながら説明されているので理解しやすい。また,オブジェクト指向やメタプログラミングなどの基礎についても,Juliaに限った話ではない一般的な内容が,それぞれ簡潔に説明されているので,理解を深められるだろう。

一方,Julia経験者にとっても,本の後半ではライブラリの使い方や高速化について詳しく解説されているため,多くの新しい発見があるだろう。特に高速化については型不確実性やメモリレイアウトなど,若干高度な内容も詳細に解説されている。Juliaを使おうとしている人の目的はたいてい,簡潔さと高速化の両立であるため,高速化の方法がこれだけ詳しく書かれているのはありがたい。個人的に特に役に立った箇所は,短絡評価を使った簡潔なコーディング,ファイル入出力(JSON, XML),C/Python/Rなど他言語の呼び出し,などである。

読者モニターレビュー【ヴィンティー 様(医学生,専門:医療データ処理)】

掲載日:2020/04/01

待望のJulia入門書です。Juliaは使うだけなら簡単な言語ですが,その多機能さ,若さゆえの周辺情報の少なさから,使いこなすとなるとハードルの高い部分がありました。本書は「とりあえず使える」のレベルから「効率的なコードを書ける」のレベルまで読者を案内してくれます。

特に有益だった項目を挙げます。『2.8 メタプログラミング』はメタプログラミングという通常のプログラミングとは少し異なる考え方が必要となる分野について丁寧に解説しています。Juliaのパッケージはマクロを使ったものが多く,初心者にとってブラックボックスとなりがちですから,この節はありがたかったです。『3.4 ドキュメンテーション』はパッケージ作成などの他人に見せるコードを書くための助けとなります。4章の『Juliaの高速化』はプログラミングにおける高速化というプロセスそのものを学ぶことができます。テストを用いた動作保証から書いてあります。

これからJuliaを始める人だけでなく,Juliaを使えはするけど細かいところはわからないという人にもおすすめです。

読者モニタレビュー【澁谷拓巳 様(ベネッセ教育総合研究所・研究員,ご専門:教育測定,心理統計)】

掲載日:2020/03/27

本書は日本語で書かれたJulia言語に関する書籍の中でも,Julia言語の幅広い機能とその特徴を,最もていねい,かつコンパクトに記述できている本である。200ページ弱で,Julia言語に備わる基本的機能からメタプログラミング,コードの高速化まで,幅広い内容を取り扱っている。特に優れている点は,(1)公式ドキュメントを意識しつつ,その内容をコンパクトにまとめている,(2)単なるパッケージや機能のTipsではない,(3)パフォーマンスを意識した解説,の3点であろう。

Julia言語を学ぶ上で最も重要な文書は公式ドキュメントであることはよく知られているが,その量は膨大であり,必ずしも入門時点では必要としないような高度な内容が含まれていることもある。本書は,そのうちの入門に必要な内容に限定し,発展的な内容は公式ドキュメントなどを促しており,Juliaのステップアップへの橋渡しをしてくれる。

Julia言語はまだまだ成長・拡大中の言語であり,非標準のパッケージなどは仕様変更やアプデが頻繁におこなわれている。そのため,Julia言語を学び始めるにあたっては,(一部の頻繁に利用される,比較的成熟したものを除けば)特定のパッケージに依存した内容よりも,どんなプログラムを書いても汎用的に通じる知識のほうが必要とされるだろう。その点において,2章における丁寧な基本機能の説明はとても重要であると感じた。

すでにJuliaを頻繁に使う読者にとっても,本書は有用である。4章の高速化の章を読めば,Julia言語のパフォーマンスを十分引き出すための工夫をいかにすればよいのかが,よく分かると思う。

本書は,多機能な可視化パッケージ(PlotsやMakie)や統計分析,アプリケーション開発などにはほとんど触れていないが,それらの発展的なJulia学習の基礎となる知識をもたらしてくれることは間違いない。