院卒新人サラリーマンのメモ代わり

備忘としてのメモを記載

2018-08-01から1ヶ月間の記事一覧

reduceって思ったより有能?

reuceの仕組みを理解したら予想以上に便利な関数な気がしてきた。mapやfilterもreduceでかけるよね。 書いてみよう。

ocaml入門

ocaml入門の中で評価が高かったらパラっと見てみた。 うーん、あんまし面白くないなー。 これがocamlの1冊目の本だったら学びたいとは思わないなー。パラっと見ただけなのでもう少ししっかり呼んでから感想書こう。

reasonと戯れる2

ひたすらreasonで練習問題を解く。 思ったよりも時間がかかるが楽しい。今月中に終わらせたい。

reasonと戯れる

let rec insert = (lst: list(int), n: int): list(int) => switch (lst) { | [] => [n] | [first, ...rest] => switch (first < n) { | true => [first, ...insert(rest, n)] | false => [n,...lst] }; }; let rec insSort = (lst: list(int)): list(int) =…

ocamlにはreturnがない

ocamlにもreasonにもreturnがない 最後に評価したのがそのまま帰る rubyと一緒

reasonというプログラミング言語

ocamlって面白いなー javascriptに若干似てるなー とか思ってたらocamlをjavascriptっぽくかけるreasonって言語があることを知った。ocamlの考え方のままjavascriptと同じようにかけるからいいと思う。 いくつか例 ocamlだと let add1 = func x -> x+1 {name…

プログラミングの基礎 ocaml

1周目、軽く読み終わり。概要 ocamlを用いて初心者に関数言語での考え方を教えるすごく面白い。 再帰関数って結構ややこしいなって思ってたけど、これ読むと再帰のほうがシンプルでわかりやすい気がしてくる。 mapやfilterの実装もあるから、理解が深まる。…

vuexの使い方

techblog.scouter.co.jpこんなふうに使うのか。 とても参考になった。

ドットインストール有料会員になってみた

先々週ぐらいからドットインストールの有料会員になってみた。 有料会員になって感じたメリットについて。・再生速度を変えられる これが一番大きい。 もともと、動画はタイピングしながら説明するため結構ゆっくり喋ってる。 そのため、1.6〜2倍でも支障が…

firebaseを使ってみた(リアルタイムに更新される)

firebaseの設定はまとめて外部ファイルに。 firestoreへのaddとかlistenerはvuexに。 コンポーネントではlistenerの起動と停止を付け加えた。こう分けるとわかりやすいし、前のwebストレージ版からそんなに変更せずにできた。 listenerとかはvuexのactionに…

vue webストレージへ保存

vueでデータを保存したいとき。 vuexのstateであればめっちゃ簡単に保存できる$ npm install vuex-persistedstate import createPersistedState from "vuex-persistedstate";const store = new Vuex.Store({ // ... plugins: [createPersistedState()] });こ…

vueでcrudアプリ

vueでcrudアプリを作ってみた。 railsのscaffoldでできるのとほぼ同じ感じをイメージ。 rails formのアクションをcontrollerで受け取る controllerでdbからデータ取り出す。 取り出したデータをviewに渡す。vue formのアクションを同じファイルのmethodsで受…

Webプログラミングが面白いほどわかる本

linuxのコマンドやgitの使い方から解説。 web開発を本格的に初めてみたいって人向け。 とてもわかり易いし、自分もここで躓いたなってとこが解説されててとても良い。 こんな感じの教材で授業が進めてもらえたら、誰でもまずまずのものが作れるようになると…

世界が変わるプログラム入門 読了

面白かった。 本のサイズは小さく、図も多いからとても読みやすい。 プログラマの頭の中を覗いてみようを軽くした感じ。 コーディングではなくその前の設計が大切だと述べ、そこを重点的に語ってる。三目並べを一緒に設計していく。 設計がしっかりしてるか…

vuexに慣れるために

//store.js //stateに変数、mustaitonsにstateのsetterを書く //exportにモジュール名を書く const countNum = { namespaced: true, state: { count: 0, }, mutations: { increment: state => state.count++, decrement: state => state.count--, }, } const…

ゲームを作りながら楽しく学べる

javascriptを学び始めたときに読み、最近ぱらっと読み返してみた。 初期の頃はとりあえず写経をしていた。 四角の図形はこう書くんだー、キーの入力はこう受け取るんだーとか知らないことをしれてよかった。でも、今読み返してみると初心者には難しい気がす…

dataの値をDOMへ再評価させる

vm.$forceUpdate()2次元配列とかはvm.$setでリアクティブに変更できなそう。 そんなときはvm.$forceUpdateでdataに基づいてdomを再描画させる。

参照渡しの副作用

javascriptのオブジェクトは参照渡しである。 直接オブジェクトを代入するとまずいんだろうと思ってたけどそんなもんじゃなかった。 function takePlace(arr) { arr[1] = 9 return arr } let arr = [1,2,3] let arr2 = takePlace(arr) console.log(arr); // …

Fonti Awesomeでのマスク機能

Font Awesome5のjavascript版だとマスク機能が使える。 2つのアイコンを重ねて切り抜ける。Font Awesomeはcss版とjs版があるけどjs版のほうが多機能だからとりあえずjs入れとけばおk

vue.js考え方

動的に変わる部分はdataを経由するクリックされたら画像が変わる →dataにsrc用のurlを用意特定の条件でclassを付け替える →dataにclass付け替え用のboolen値を用意data自体をいじり、v-bindや{{}}でdataを表示 target.srcとかclassList.removeとかは使うべき…

vue.js ちょっと気づき

今気づいたバッドプラクティスについてまとめv-forで要素作って、クリックされた要素の画像を変えるってものを作ろうとしたとき $event.target.srcを変えてたんだけどこれはDOMにアクセスしてるから良くないんだろうね。 実際読みづらいし。srcに入れるよう…

javascript配列の初期化

javascriptでの配列宣言において、大きさと初期値を指定したい場合 let arr = Array(10).fill(false) これで長さ10,初期値falseの配列ができる

vueでのカスタムデータの使い方

<div v-for="(card,idx) in cards"> <button @click="clicked($event)" :data-index="idx">ボタン</button> </div> methods:{ clicked(e){ console.log(e.target.dataset.index) }

vueでのDOMイベントの取得(target)

vue.jsでクリックされた"その要素"を知りたいってときjavascriptだと event.targetで取得できる vue.jsでもevent.targetで取得できる //javascript addEventListener('click', (event) => { console.log(event.target }) //vue.js <div @click="clicked($event)"> </div> //clickedだけでもいいん…

グリッドレイアウト よく使うものまとめ

グリッドシステムでのレイアウト #container { display: grid; grid: "areaA areaB areaC" 100px "areaD areaE areaF" 100px / 200px 200px 200px; grid-gap: 10px 20px; } //レスポンシブで1行のアイテム数が変わるとき #container { display: grid; grid: …

グリッドレイアウト ショートハンド

//grid-template //これはめっちゃ読みやすいから使うように #container { grid-template: "areaA areaB areaC" 100px "areaD areaE areaF" 100px / 200px 200px 200px; } // grid-gap // これも積極的に使うべし #container1 { grid-row-gap: 10px; grid-co…

グリッドレイアウト

読み終わり。 グリッドレイアウトの使い方の説明は薄い。 実現したいデザインをグリッドレイアウトで書く方法が載ってる。これから学びたいって人より、すぐ見栄えのいいものを作らないとって人向けかな。 flexbox使ったほうが楽そうな場面でもgridで押し通…

再帰関数

再帰関数には2種類ある。 先頭再起:関数の先頭で再起が起こる 末尾再帰:すべての処理を行ってから再起が起こるどちらも上から下までを往復する。 末尾再帰は上で処理したデータを下に渡した、下から処理したデータが返ってくる。 先頭再起は上では下を呼び…