豆腐とコンソメ

豆腐とコンソメ

もろもろのプログラム勉強記録

OSXでローカルのPHPが実行できなくなった際のメモ

事象 homebrewでなにかしらのアップデートを行った後に、ふとphpを実行すると以下のエラーとなった。 > php -v dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicuio.67.dylib Referenced from: /Users/yamauchiryouji/.phpenv/versions/7.4.7/bin/…

webpackのメモ

webpackメモ まとめ webpackはESM形式をCJS形式にして、require/exportsはwebpackが実装する。 webpackはバンドル対象がCJS形式でも問題ない。 minipack minipackをもとに、実装を確認する。 大事な点 minipackはESModuleをCommonJS形式にトランスパイルして…

yumでPHPをインストールするメモ

PHP

ちょっとしたメモだったりを、gistで書くようになったらブログを書かなくなってしまったでござる。 せっかくなので転機。 yumでPHPをインストールするメモ AmazonLinux2環境でphpをインストールしたときに毎回迷うのでメモ。 基本的なこと 古くはソースコー…

VSCode の Prettier の設定を理解する

VSCode の Prettier の設定を理解する VSCode で prettier を使う際に、なんとなくで設定していてたまに困るので整理する。 prettier の vscode 用拡張機能のページをちゃんと読めば、いろいろと書いてあったのでメモ。 https://marketplace.visualstudio.co…

2019年の振り返り

www.tohuandkonsome.site 2019年できたこと Reactを少し使えるようになった React を業務で使うことができて、なんとなくこんな感じで作ってけばよさそうだなという感覚が得られた。 2019年に書いた記事もReactに関係するようなものが多かった。 www.tohuand…

ApacheでCGIを実行する仕組みをのぞいてみる

過去にPHPで以下のコードを実行した場合、このprintの結果はどこに吐かれるんだろう、と混乱したことがあった。

jestのmockを学ぶ

モックを学ぶ jestを使っていてモックで毎回あれ?ってなるので備忘録 関連 www.tohuandkonsome.site 前提 テスト対象のtarget.js import getName, { getAge } from "./service"; // 関数の場合 export default (id: string) => { const { name } = getName(…

ES2015 より前のクラスについてのメモ

ES2015 より前のクラスについてのメモ github.com 基本 ES2015 より前の構文。 ブラウザで実行する場合は、Babel を使わなくても、IE11 で実行することができる形。 もちろん Node.js でも実行することができる。 function Member(firstName, lastName) { th…

useEffectでrace conditionとdebounceに対応する

useEffectでrace conditionとdebounceに対応する ReactのHooksに入門した。 useEffectのクリーンアップは再レンダー時に毎回行われるんだよ!という公式ドキュメントをみて、ほーんという感じだったけど race conditionとdebounceをhooksを使ってシンプルに…

Typescriptのtargetについて調べてみた

Typescriptでは、tsconfig.jsonでtargetを指定できる。 targetには、ES5だったり、ES6、ES2016と、ECMAScriptのバージョンを指定できる。 これは、TypescriptをコンパイルしてJavascriptに変換したときに、どのECMSScriptのバージョンにするかを指定できるオ…

ジェネレーターと非同期処理があんまりわかってなかったのでメモ

redux-saga に入る前に redux-sagaのサンプルを見ていて、function*をみた瞬間、これなんぞ!となったのでメモ。 ジェネレーター function*はジェネレータ関数。 他の言語でも、見たことはあったけど、ちゃんと使ったことがなかった。 こんな感じに使える。 …

jest + Vue.js でテストコード入門に至る道のり

jest + Vue.js でテストコード入門に至る道のり フロントエンドでもテストコード書いてったほうがよさそうだから、Vue.jsでもテストコード書いてみるか!ということでいざ始めてみると、書けはするんだけどなにやら設定やら必要なモジュールが多くってねぇ、…

Cコンパイラ作成に入門してみた

C言語のコンパイラを作成する以下の記事に入門してみたのだけれども、それがとてもよかったので夏休みの宿題のごとく感想文を書くことにするよ! www.sigbus.info 内容としては、C言語を使って、少しずつC言語のコンパイラを実装していく、というもの。 アセ…

webpackの設定を行う対話ツールをつくる

webpackの設定をちょっと変更して起動したいとき、webpack.config.jsを直接書き換えるか、それ用のwebpack.config.hoge.jsとかを用意したりすればいいよね。 なんだけど、yarn hogehogeってしたらCLIツールが立ち上がって、対話形式で設定を変更できたらすこ…

分割代入で少しハマった

しょうもない話。 Reactにだいぶ慣れて、最近はVueに戻ってVuexを久しぶりさわっていた。 Vuexのmutationsでnameステートを更新したい場合は、こんな書き方をすると思う。 state: { name: "" }, mutations: { changeName: (state, value) => { state.name = …

Gitで拡張子なしのファイルを対象外にする

最近、Reactばっかりなので、jsとは関係のないこちらの記事を写経している。 www.sigbus.info コンパイル後のバイナリファイルをgitで管理するのもあれなので、.gitignoreの設定をした。 .gitignore # 全部を一旦git管理対象外にしておいて * # !をつかって…

gitをコマンドラインで操作するときにブランチ名を補完できるようする

今までgitはGUIツールをメインで使ってきたけれども、もう少しちゃんと理解するためにコマンドで操作することにしている。 その中で、ブランチを切り替えたりする際に、ブランチ名が長いとコピペで面倒なので、補完できるように設定する。 設定に関しては、…

chrome-extensionをReactでさくっとつくる

Reactの公式ドキュメントが日本語化されて改めて読み直してる。 英語で読んだ時によくわからなかったりしていた部分もちゃんとわかるようになって、翻訳をしてくださった方には感謝でいっぱい。 とはいえ、英語でドキュメントを読めた方がなにかと便利なのは…

react-reduxを学ぶ

ReduxをReactで使うときは、react-reduxを使うんだよ!と講座で教わり、以降何も考えずにreact-reduxを使ってきた。 connect()の書き方がよくわかんねえよ!とか、Reduxの非同期処理がわかんないよ!とか、いろいろありつつも、今回はそもそもreact-reduxっ…

redux-thunkを学ぶ

Reduxに慣れ始めたのであらためてredux-thunkをちゃんと理解しようと思う。 redux-thunk まずは基本 非同期処理 middlewareを使う redux-thunk redux-thunk github.com redux-thunkは以下のように非常にシンプルなコードでつくられている。 魔法のようなredu…

jestで特定のモジュールのみmockにする

こっちでもmockの話を書いた。 www.tohuandkonsome.site 以下のように、1ファイル内に、複数の関数があり、loginのみmockにしたい場合。 firebase.js export const login = () => { // login用の何かしらの処理 }; export const logout = () => { // logout…

React.jsのテストコードWorkshopの内容まとめ(1)

UdemyのReact講座に学習が完了したので、この勢いでテストコードの書き方を学 ぶことにするよ。 今回は、こちらのReactテストコードのworkshopの視聴した内容から学んだことを書いていきます。 https://www.udemy.com/react-redux/learn/v4/overview worksho…

2018年の振り返り

あけましておめでとうございます。 過去に2018年に以下の目標を掲げていたのを思い出したので、ふりかえり。 時間が空いた時に、2019の目標をたてる。 2018年のやることリスト こちらの記事に書いてありました。 www.tohuandkonsome.site 目標 スキルセット…

年始だしReactに入門する(2)

日記 2019年になったので、どこかで去年の目標を見返してみようと思う。 本題 横道にずれたり、なにかしながらやったりとあんまり進んでない。 正月休みのうちにReactの講座を終わらせたい。 前回からの続き www.tohuandkonsome.site SECTION8 APIを呼び出す…

年末だしReactに入門する(1)

UdemyのReactの講座を受ける機会があったので、備忘録がてら感想をメモ。 https://www.udemy.com/react-redux/ 過去にも、UdemyのReact講習をやったんだけれども、せっかくなのでやってみる。 www.tohuandkonsome.site 受けた人のレベル的に Web開発経験2年…

HTTP/2をApacheで設定してみる

HTTP2まわりでの設定を行ったのでメモ。 本題 本題 HTTP2ってなに? わたしのHTTP/1.1 わたしのHTTP/2 HTTP/2を導入する クライアント側:curlの準備 サーバー側の準備: Apache リクエストの内容を確認する(HTTP) リクエストの内容を確認する(HTTPS)① 自己証…

受託案件のWeb系の納品物ってビルド後のソースとソース一式、どっちを渡してる?

前置き Web案件の受託開発をしていてふと思った疑問。 納品するときって、ソースコード一式 or Webpackでビルド後のソースのどっちを納品してますか? 大抵はソースコード一式を納品しているような気もするんだけれども、わりとビルド後のソースだけを納品し…

Vue.js + FIrebaseのEメール+パスワード認証をためす

日記 Nuxt.js + Firebaseで、お酒の写真とコメントを管理するWebアプリをつくってる。 作成中のWebアプリ 使用ユーザーは奥さんの1名だけ。 とりあえずなにかしらWebアプリを完成させたい、という目標を達成するために必要最低限の機能は一通り実装できた。 …

フロントエンドの開発にDockerを使ってたけれども、なんだかいらない気がしてきた

フロントエンドの開発環境にdockerを使うようにしていたんだけれども、Node.jsのバージョンだけ意識するんであれば、nodebrewなりなんなりで切り替えして、ホストOSにそのまんまNode.jsしかり、jsのパッケージをインストールしたほうがいいんじゃないかと思…

そろそろVue.jsでもテストコードを書いていこう

Vue.jsでわりといろいろつくっている今日このごろ。 そこそこ使ってるのに、未だにEsLintもいれてないし、テストコードも書いてないという状況に危機感を覚えた。 特にテストコード書いてないのはまずい気がする。ブラウザで毎回確認するのも時間かかるしね…