【前置き】
今週のアウトプット、Python環境を作ろう。
現在生きてるシステムは2.x系と3.x系らしいが、2.xはサポート終了宣言もあり、今から手を付けるには3.x系を習得するのに重きを置くほうがよろしいかと思います。
で、なんで開発環境を作ろうとしているかというと、AWSのcloud9でぽちぽちしていたのだが、初期設定が2.x系、参考書が3.x系で何かと互換性が切れて捗らない!!一応3.x系に切り替えては見たものの、やはり専属のIDEを使った方が間違いなく捗るので作りましょう。
って事でまずはpythonをインストール・・・、
と見せかけてAnacondaのインストールをしましょう。
https://www.anaconda.com/download/
インストール方法は先人達がいろいろ残して頂けてるのでQiitaで調べてみましょう。
このAnacondaってそもそも何者なんだって話からで。
若干表現しにくい所もあるんですが、JAVAでいうjavaEEみたいなもので、通常のpythonによく使われる機能がデフォで投入されているパッケージらしい。必要になったときプロジェクトとかで認識あわせつつ使うようにして下さい。
IDEはPyCharmを使用します。
https://www.jetbrains.com/pycharm/
javaってる人ならintelliJという名前を一度は聞いた事があると思うが、jetbrain製のIDEでコード補完機能とか素晴らしいらしい。community版(無料)とpro版(有料)がある。一度intellijのcommunity版を使ってみたが流石に機能制限がきつくてeclipseの方がいいね、ってなった以来、久々のjetbrain製品。
日本語化については先人のお知恵を拝借して行いましょう。
https://qiita.com/suecharo/items/4d8774b43b0213527f9f
【pythonメモ】
最近いろんな言語に触れる機会があり、マスターとは言わないが大体の傾向は見えてきた。
言語の中で動的型付けと静的型付けという分類があり、両方ともなんとなく使えれば同じ系統の言語ならそこまで苦労せずとも取得出来ると思われる。各言語主要の処理は大体同じで、後は微妙な書き方の違い、方言のようなものだと思う。変数用意してループして条件によって足し算して合計を出力って処理が思いつくプログラマーなら後は書き方の問題だけだという話。世の中いろんな言語が乱立しており、転職とかしてる(フリーランスしてる人とか)とジャストミートな経験値を求められたりするけどもそんなパーフェクトマッチャーはいないと思う。だからこそ両者とも意識をあわせる必要ある所かなぁと。
【主要な処理】
・変数の型桁
・条件分岐
・ループ
・リスト・マップ・配列
・関数
・クラス
・継承
・カプセル化
・例外処理
私が大体こういうのあるよねってのをざらっと書き出したもの。
どの言語も書き方は違うとはいえ大体こういう感じのはある。
そこに各言語の書き方を当てはめればいい。今回使用した教材はこちら。
みんなのPython 第4版
https://www.amazon.co.jp/%E3%81%BF%E3%82%93%E3%81%AA%E3%81%AEPython-%E7%AC%AC4%E7%89%88-%E6%9F%B4%E7%94%B0-%E6%B7%B3/dp/479738946X
まだ読みきってないが西住みほとか作者の趣味丸出しで、悪くない、悪くないが万人受けするかって言われるとどうかと思う。私は一向に構わん(キリッ
レビューとかを見るとpythonだけならAnacondaじゃなくてもいいとか言われてて若干涙目、、、そういう所は言語の初心者にはわからない所ですね。
上記法則にしたがってまとめていこうかと思いましたが、読み切ってないので少しためます。
大きい特徴と言えば。インデントがネストを表すって所でしょうか。
他の言語だと{}で括れば中身は結構自由に記載出来る感じですが。pythonだとインデントすら意味をもつので適当にやると間違いなくバグります。逆にいうとインデントは誰がどうかいても同じになるので読みやすくはなると思います。
今回はここまで
【後書き】
最近Azureを聞いて調べたんですが機能的にAWSの上位互換ぽい?です。
とある企業様でインフラエンジニアいらないんですよという話があり(そもそもAWSやasureを使いこなすにはインフラ要るんじゃないかなぁと思ったり)ターゲットにいれてなかったのでまた覚えるもの増えるなぁって。最終的にフルスタックになるには覚えるしかにぃ。
あとWEB系エンジニアは自主勉そんなにしないという記事をどこぞかで見て、なんでだろうって思ったら業務でみっちりするので帰ってからまたやるってほどもないらしい。ただ土日でやったりする人ももちろんいるって感じなまとめだった。環境って人を育てるんだなぁって感想でした。