いろいろ備忘録

雑記です。

Scala

Bootstrapとかをnpm installしてクライアントから参照させる

publicを参照させる時みたいに、node_modules内の当該ディレクトリのみ参照させる。 app.use('/bootstrap', express.static(__dirname + '/node_modules/bootstrap/dist'));

(implicit s: Show[A])

def log[A](a: A)(implicit s: Show[A]) = println(s.show(a)) この(implicit s: Show[A])はカリー化とimplicitを両方使った結果。 もしlog[Int](3)とすると、引数sが渡されていない、かつimplicitなので、Intが引数で、かつimplictなShowメソッドを探す。 i…

def f(s1: String): (String => String) = s2 => s1 + " " + s2

Scalaの省略記法について。 def func(s1: String): (String => String) = s2 => s1 + " " + s2 メソッドの名前はfunc引数:String型のs1返り値の型:引数、返り値が共にStringの関数返り値:イコール以降の関数 カリー化されている。 qiita.com

N Scala応用 型パラと変位

Javaでは全てのクラスがObject型のサブクラスだが、ScalaではAnyが最上位のクラスで、次にIntなどの値型はAnyValクラス、参照型はAnyRefクラスのサブクラスになる。図にすると、 引用元: Learning Scala part eight – Scala’s type hierarchy and object eq…

N Scala応用 関数 覚書

ScalaにはFunction0 ~ 22のトレイトがある。数字は引数の数で、0なら返り値のみ。関数の作り方をきちんと追うと、まずこれらのトレイトを継承した無名クラスを作り、その中でapplyメソッドを宣言する、という流れ。この辺が関数型言語の特徴なのか? applyメ…

N 実践HTTP 15~ 覚書

URL設計は基本的にモデルを基準にする。単独で操作するケースが少ないモデルは、そのモデルが従属するモデルのURLで行う。例を出すと、試験問題モデルは試験モデルのURLでよい。 passport.serializeUser( (obj,done) => {} )でユーザオブジェクトをどのよう…

N 実践HTTP ~14 覚書

PORT=8000 npm startはLinuxでの書式。Windowsではset PORT=8000 & npm start とする。このsetコマンドとは、実行中の環境(プロンプト)でのみ有効な環境変数を設定するコマンド。「&(アンパサンド)」はコマンドの区切り文字。複数のコマンドを連続で実行でき…

N HTTPサーバ 22~26 覚書

PostgresSQLのCLI psql -U ユーザ名 でログイン\c データベース名 で使用するDBを決定その後は普通にSQLを実行できる !! Visual Studio CodeにはIDEAのキーバインドにする拡張機能がある!! Number.MAX_SAFE_INTEGERによって、jsで正確に扱える範囲で最大…

N HTTPサーバ ~21 覚書

nodegrind -o app.cpuprofile ファイル名 でパフォーマンスの測定を行い、結果出力を行う。出力されたファイルはChromeのJavascript profileで読み込める。 echoのリダイレクト(閉じカッコ一つ)はファイルがない場合新規作成する。 git cloneで失敗する時 wi…

N サーバ 覚書

echo "文字列" >> ファイルパス によって、ファイルパスで指定したファイルに文字列を追記することができる。まずechoによって文字列が標準出力に向かうが、>>によってファイルにリダイレクトされるため。なお、>(閉じカッコ一つ)だと、上書きとなってしまう…

N 準備 覚書

Linux ファイル名がドットで始まるものは一時ファイルが多い 親ディレクトリへの移動は../でなくても..でよい ~はユーザごとのホームディレクトリであり、ユーザが自由に変更して良い場所。多くの場合/home/ユーザ名と等しい。 findコマンドでファイルやディ…