Sassyブログ

好きなことで暮らしを豊かにするブログ

Scala入門 関数オブジェクトの変換のやり方

目次 目次 1.関数オブジェクトの変換 1.関数オブジェクトの変換 まず最初にdefで定義した関数を用意します。 scala> def func(x: String, y: String) = x + y func: (x: String, y: String)String それをfunc1変数に代入する際に「_」を後ろにつけてあげると…

Scala入門 プレイスホルダ構文について

目次 目次 1.プレイスホルダ構文とは 1.プレイスホルダ構文とは この構文を使用することで関数リテラルの記述を簡潔にすることが可能になります。 例えば普通にの関数リテラルを記述した場合 scala> val func: (String, String) => String = (x: String, y: …

Scala入門 パターンマッチについて

目次 目次 1.パターンマッチとは 1.パターンマッチとは scalaではmatch構文というのがある。 一見switch-case文のように見えるが、scalaのmatch構文は値のマッチングのみではなくクラスやコレクションなどもマッチングしてくれる。 構文は以下となる。 [targ…

Scala入門 クロージャについて

目次 目次 1.クロージャとは 1.クロージャとは 対象の関数のスコープにおける引数以外の変数の参照が可能な関数です。 以下のコードですね。 def sample() = { var cnt = 0 () => { cnt += 1 cnt } } まず初めにこれを動かしてみます。 scala> def sample() …

関数型プログラミングについて

目次 目次 1.関数型プログラミングとは? 1-1.手続き型の場合 1-2.関数型の場合 2.宣言型プログラミングって? 3.関数型プログラミングのメリットとデメリットについて 3-1.メリット 3-2.デメリット 4.関数型プログラミングを学ぶには? 5.さぁ始めよう関数…

Scala入門 多相関数定義で見かける[+A]とは?

目次 目次 1.多相関数定義で見かける[+A]とは? 2.共変とは 3.反変とは 4.非変とは 1.多相関数定義で見かける[+A]とは? 「+」記号は、型パラメータAが共変であることです。 そもそも共変とは何でしょうか? ちなみに共変のほかに反変や非変というものがあり…

Scala入門 tailrecアノテーションについて

目次 目次 1.tailrecアノテーションとは 2.末尾再帰関数とは 1.tailrecアノテーションとは 末尾再帰関数の最適化が想定される関数に対して使用。 もし、末尾再帰関数の最適化が行われなかった場合にコンパイルエラーを出してくれる。 この最適化とはコンパイ…

Scala入門 コレクション操作をしてみよう

目次 目次 1.コレクション操作 1-1.シーケンス型 1-2.マップ型 1-3.タプル型 1.コレクション操作 1-1.シーケンス型 シーケンスは要素を順番に並べて管理できるコレクションです。 今回はListを使用して使い方を試していきます。 Listはイミュータブルなコレ…

scala入門 varとvalの違い

目次 目次 1.環境 2.valとvarの違いについて 2-1.サンプルコード その1 2-2.サンプルコード その2 1.環境 Scala2.11.11 IntelliJ 2017.2.5 2.valとvarの違いについて varは変更可能な変数を宣言する際に使用します。 valは変更不可能な変数を宣言する際に…

Scala入門 Scalaの環境構築〜HelloWorldを表示

目次 目次 1.実行環境 2.Scalaとは? 3.Scalaの特徴 4.Scalaをインストールしてみよう 4-1.Java8のインストール 4-2.Scalaのダウンロード 4-3.Scalaの解凍 4-4.Scalaを任意のディレクトリに配置 4-5.Scalaへパスを通す 4-6.パスが通ったかの確認 4-7.Scalaの…

Windows10でシステムプロパティを簡単に表示させる方法

最近仕事ではWindows10を使用する機会が多くなってきました。 そしてWindows10は使い慣れたWindows7とはUIがだいぶ異なり、、、 Windows7ならすぐ表示できる画面もWindows10だと、 どこからクリックして表示させたらよいか悩む場合が多々あります。 そんなわ…

Python入門 Webスクレイピングをしてみよう

目次 目次 1.実行環境 2.スクレイピングとは 3.スクレイピング環境を準備しよう 3-1. BeautifulSoup 3-2. urllib2 4.ページを取得してみよう 4-1.サンプルコード 4-2.実行結果 5.取得したページから情報を取得しよう 5-1.サンプルコード 5-2.実行結果 6.参考…

Python入門 Seleniumを使ってブラウザを操作しよう

目次 目次 1.実行環境 2.Seleniumとは 3.Seleniumを利用する準備をしよう 3-1.Seleniumをインストールしよう 3-2.Chromeドライバーをダウンロードしよう 4.Seleniumを使用してブラウザから検索してみよう 4-1.サンプルコード 4-2.実行結果 5.Selenium Tips 5…

Python入門 JSONを扱ってみよう

目次 目次 1.実行環境 2.JSONとは 3.JSONをエンコードしてみる 3-1.サンプルコード 3-2.実行結果 4.JSONをデコードしてみる 4-1.サンプルコード 4-2.実行結果 5.最後に 1.実行環境 MacOS Sierra 10.12.16 Python2.7.13 2.JSONとは JSONはJavaScript Object N…

Python入門 hashlibを使ってパスワードの暗号化を行ってみよう

目次 目次 1.環境 2.hashlibとは 3.sha256関数を使ってパスワードの暗号化を行ってみる 3-1.サンプルコード 3-2.実行結果 1.環境 Debian7.11 Python2.7.3 2.hashlibとは pythonで提供されているデータをハッシュ化するための標準モジュールです。 SHA1、SHA2…