Post

2017-12-29 20:44:23

モダンなJSの話──Promise

※この記事はInnovator Japan Engineers’ Blogで掲載されている記事を転載したものです。 PromiseとはPromiseとは・・ The Promise object represents the eventual completion (or failure) of an asynchronous operation, and its resulting value. MDN - Promise だそうです。 ざっくりまとめると、Promiseとは、非同期処理やその結果をいい感じにしてくれるオブジェクトのことです Promiseを使うと主に以下のようなメリ...

プログラミング

es5 es6 javascript

2017-12-25 23:24:08

Reactでマークダウンエディタをシャッ...

※この記事はInnovator Japan Engineers’ Blogで掲載されている記事を転載したものです。 準備ビルド環境のセットアップが面倒なので、今回はFacebook公式のcreate-react-appというツールを使います。 npm install -g create-react-app md-editorというアプリ名で環境を用意することにします。 create-react-app md-editor 次に、今回使うライブラリのインストールをしておきます。 cd ./md-editor npm install --save marked npm install 最後にサーバ...

プログラミング

es5 es6 javascript react

2017-12-25 23:23:27

モダンなJSの話──Destructur...

※この記事はInnovator Japan Engineers’ Blogで掲載されている記事を転載したものです。 分割代入とは分割代入とは、配列またはオブジェクトのデータをそれぞれ別個の変数に代入する式のことです。文章ではイメージがつきにくいかと思います。それぞれの例を見て確認してみましょう。 配列の分割代入let a, b, c; [a, b, c] = [1, 2, 3] console.log(a, b, c) // 1 2 3 let color = [1, 2, 3] const [red, green, yellow] = color console.log(red, gree...

プログラミング

es5 es6 javascript

2017-12-25 23:22:37

モダンなJSの話──importとexp...

※この記事はInnovator Japan Engineers’ Blogで掲載されている記事を転載したものです。 exportとはexportは、指定のファイルから関数、変数、オブジェクト、クラス(クラスはプロトタイプベース継承の糖衣構文であり、関数の一種。詳しくは モダンなJSの話──クラス)などを受け取り、任意のファイルでそれらを使えるようにするための文です。 exportには主に2種類の使い方があります。 Named exportsexportしたい要素の名前を付けてexportする方法です。 export { fooFunction }; export { fooFunction,...

プログラミング

es5 es6 javascript

2017-12-25 23:21:32

モダンなJSの話──クラス

※この記事はInnovator Japan Engineers’ Blogで掲載されている記事を転載したものです。 ECMAScript6からのクラス定義ECMAScript6以前ではnew演算子やprototypeプロパティを使ってクラスに近い機能を実現していましたが、ECMAScript6からはclassキーワードでクラスを定義できるようになりました。<br>classキーワードはこれまでのnew演算子やprototypeプロパティによるクラス定義のシンタックスシュガーです。 classキーワードを使ったクラス定義の方法には、クラス宣言とクラス式の2種類があります。 クラス宣言...

プログラミング

es5 es6 javascript

2017-12-25 23:20:27

モダンなJSの話──var/let/co...

※この記事はInnovator Japan Engineers’ Blogで掲載されている記事を転載したものです。 スコープとは本題に入る前に、スコープの定義について確認しておきましょう。 スコープとは、変数名や関数名が参照可能な範囲のことです。 スコープの種類は色々ありますが、ここでは主に3つのスコープについて表で説明します。 スコープ名 範囲 備考 グローバル 関数の外側 どこからでもアクセスできる。 ローカル(関数) 関数の内側 ローカルスコープ内からでしかアクセスできない。 ブロック ブロック({ })の内側 if, for, switchなど ブロックスコ...

プログラミング

es5 es6 javascript

2017-12-25 23:19:03

モダンなJSの話──アロー関数

※この記事はInnovator Japan Engineers’ Blogで掲載されている記事を転載したものです。 アロー関数ってなに?ざっとまとめると、 ES2015から追加された新しい構文 通常のfunction式よりも短くかける thisの値を語彙的に束縛することができる(=文脈からthisの値を把握しやすい) 常に匿名関数 アロー(=>)を使ってかく関数式で、"thisの値を語彙的に束縛することができる"という点が大きなポイントです。 アロー関数を使うと、今までこう書いていたものが・・・ const foo = function() { console...

プログラミング

es5 es6 javascript

2017-10-11 21:49:26

PHPカンファレンス2017で、「3年目...

初登壇!2017年10月8日、PHPカンファレンス2017にて、LT初登壇してきました。 初めてのLTでPHPカンファレンスという舞台に立てて、自分としてはとても良い経験になりました。 スライドSpeaker Deck - 3年目エンジニアOSSをはじめる by bmf_san 「3年目エンジニアOSSをはじめる」というテーマで、自分のOSSプロダクトを紹介しつつ、OSSに取り組んだ背景や学び得たことなどについてお話しました。 動画Japan PHP Conference Track1 (LT) - LT, クロージング 内容をもっとブラッシュしておくべきだったと反省しています。。。 Rube...

ポエム

oss php LT phpカンファレンス

2017-07-17 16:44:38

単一テーブル継承・クラステーブル継承...

概要リレーショナルなデータベースは継承をサポートをしていないので、オブジェクトの継承関係をデータベースにどのように表現するのか考慮する必要があります。それを表現する3つのパターン、単一テーブル継承・クラステーブル継承・具象クラス継承とはについて説明します。  ※各パターンの実装におけるメリット・デメリット等には触れません。 前提今回想定する登場するクラスは4つです。 Rarty PeopleがRich Peopleを継承するという構造はちょっとわかりづらいかもしれませんが、イメージが伝われば良しとします。 People(人々)全クラスに共通する属性を持っています。 idは一意なキーです。...

プログラミング

PofEAA

2017-10-12 16:34:53

さくらVPS+CentOS7.3+Ans...

概要AnsibleでさくらVPSの初期セットアップを自動化します。 環境 さくらVPS CentOS7.3 Ansible2.2.1.0 前提知識 さくらVPSをの初期設定の流れを理解していること。 さくらVPSの初期設定 さくらVPSにCentOS7をインストールさくらVPSのコンソール画面からOSインストール>カスタムOSインストールを選択してCentOS7をインストールしておきます。インストールが開始されると、CentOS7のインストール用コンソール画面(VNCコンソールのHTML5版かJava Applet版)を開くことができるので、環境に合わせて好きな方を選びます。 C...

インフラ

ansible centos sakuravps Iaas