こんにちは、DobokuLab 1期生のはたはたです。
今回は
【アプリ制作未経験が、液状化アプリを作ったら?】第5回
となります!
バックエンド担当のはたはたと、フロントエンド担当の水谷さんが交互に書いていきます。こちらで整理してありますのでご覧ください。
今回は液状化アプリで使用したプログラミング言語 Python について話そうと思います。
★液状化アプリはこちらから。
[blogcard url=”https://structuralengine.github.io/Liquefaction/”]
Python と Excel ってよく似ている?
早速、本題に入ろうと思うのですが皆さんはプログラミング言語についてどのように感じていますか?
プログラミングを学ぶ前は難しそうだと私も感じていましたが、しばらく Python を学んでいるとあることに気が付きました。
「やけに、Excel の機能と似ていないか?」
実は、プログラミングを書く上で全く分からない状態になったときは、Excelを用いて状況整理をしていました。
プログラムの構文もよく似たものもあります。例えば、if 文をPython, Excelで比較すると…
細かい部分で違う部分はあるもののよく似ていることが分かりますね!
この話を聞いて、皆さんはこんな風に感じたかもしれません。
「PythonよりもExcelのほうがいいんじゃない?」
今回は、Python とExcel を比較しながら、それぞれの良さを私なりに述べたいと思います。私は Python 以外のプログラミング言語に触ったことがない上、Pythonも1か月程度学習しただけです。初心者としての意見であることをご了承ください。
Excel は表を使って整理しやすい!
Excel の特徴と言えば何といってもマス目に情報を打ち込むという形式にあるでしょう。情報の整理自体は Excel のほうが断然やりやすいと思います。Pythonも似たような形で整理することは出来ますが集合や行列の整理は意外と難しいです。
グラフでは、特にデザインの部分について Excel のほうが便利な気がします。Pythonでもグラフを書くこと自体は難しくないですが、デザインの微調整では融通の利かない部分がある印象です。
まとめると、Excelは十分な計算機能を備ええつつ、情報の整理や見栄え等にも配慮したアプリと言えるでしょう。バックエンドとフロントエンドのバランスが取れた神アプリではないでしょうか! これ考えた人、天才だろと思ってしまいます。
Python の計算機能はやっぱりすごい!
ここまで、Excelをべた褒めしてきましたが、それでもPythonの優れてた点があります。それは、思い通りに計算が出来る点です。例えば、3次方程式の解を繰り返し計算(xに値を導入して、方程式が成立するか検証する方法)で解いてみます。今回は、0<x<1の範囲で0.001刻みで検証してみます。
すると、Excelでは表示されるデータが多くなってしまいます。x=0, 0.001, 0.002 … としたときのyの値を表示させてから、方程式を解く必要があるからです。
一方で、Pythonは非常にシンプルにまとめられます。プログラミングの仕組みについては今後触れる予定ですが、『x=x+0.001』のように変数xに入れる値を自由に変えることが出来ます!Excelの場合、変数の値を変えたときは別のセルに新たな値を書く必要があるため表示される情報量が増えてしまいます。
まとめると、Pythonは複雑な計算をシンプルにまとめることが出来るアプリと言えるでしょう。 特に専門性のより高い、複雑な処理をやるときには、Pythonの良さが大きく出ると思います!
Python が初心者にガチおすすめな訳
それでも、『プログラミングをやる気にならないなぁ』と思う方もいるかもしれません。それでも、Pythonがおすすめな理由があります。それは液状化解析のPythonファイルを開くと分かると思います。せっかくなので開けてみてください!
★ 液状化解析(バックエンド)
[blogcard url=”https://colab.research.google.com/drive/1DMBdEkqsfViOUMGC1-TSusrjsP1cBxh5?usp=sharing”]
G-mailやGoogle Driveを利用するときに必要な 『Googleアカウント』 さえ持っていれば見る事が出来ると思います!
これは『Google Colaboratory』というGoogleの無料アプリ!
インターネット環境下であれば使えますし、複数人で共有して編集することも可能です。
プログラミングにおいて少し面倒なのが、『環境構築(ソフトのインストール等)』。以前に、SpyderというPythonを動かすソフトを入れたことがあるのですが、準備に時間がかかりイライラした覚えがあります。『Google Colaboratory』なら環境構築を考えることなく、すぐ始められます!
Pythonは、環境構築のハードルが最も低いプログラミング言語と言えるでしょう。
★『Google Colaboratory』ここから始められます!
https://colab.research.google.com/notebooks/welcome.ipynb?hl=ja
まとめ
バックエンドのプログラミングと言っても、実際にはExcelとよく似ている部分も多いことがお分かりいただけたと思います。ただ、Excelと比較して、複雑な計算をよりシンプルに行うことが出来て、とても魅力的だと感じました。Pythonを学ぶことで描ける解析の幅が広がり、より楽しくなると思います!
ぜひ、私たちと一緒にプログラミングを勉強しましょう!
ご興味ありましたら、ぜひ私のTwitterのDMよりぜひご連絡ください!
次回は液状化について大まかな概要を話そうかと思います。お楽しみに~。