@mizumotokのブログ

テクノロジー、投資、書評、映画、筋トレなどについて

アプリ開発

Gitの便利な使い方 13個+1

開発者にとってもっとも使われているツールはgitでしょう。Youtubeチャンネルのfireshipチャンネルに「13 Advanced (but useful) Git Techniques and Shortcuts」という動画でgitの便利なテクニックが紹介されています。知っておくと役立つことも多かったの…

JavaScript / ES2021の新機能とES2022で予定される機能

ECMAScriptはJavaScriptの標準規格で、2015年以降毎年改定されています。この記事を読むとECMAScriptの仕様策定プロセスが理解でき、ES2021に採用された仕様、ES2022に決まっている仕様、次に盛り込まれそうな仕様がわかります。 ECMAScriptとは ECMAScript…

graphql-rubyでページネーション(オフセットベースとカーソルベース)

GraphQLであるオブジェクトの配列をとってくるときにページネーションをしたいというユースケースはよくあります。GraphQLではページネーションのベストプラクティスとしてカーソルベースを取り上げています。この記事ではカーソルベースのページネーション…

GraphQLの要点が分かる!メリットとデメリット

GraphQLとはこれまでWeb APIの主流であったRESTの課題を克服するために生まれました。RESTの課題を克服したメリットは大きく徐々に広まってきています。一方で当然デメリットも存在します。この記事を読めばGraphQLの生まれた背景を知り、メリットとデメリッ…

Django+SPA(Nuxt.js)の環境をHerokuにデプロイしてみた

バックエンドはDjangoでフロントエンドはNuxt.jsのようなSPAで環境をheroku上で構築したいのですが、課題がいくつか出てきました。 Herokuデプロイ時にNuxt.jsのビルドはどうするのか(gitレポジトリにビルド生成物を置きたくない!) Nuxt.jsで生成された静…

GitHub ActionsとGitHub PagesでつくるWeb API(郵便番号検索)

GitHubが値下げと無料の「Free」プランの拡充を発表しました。昨年はCI/CD機能であるGitHub Actionsをリリースしたり、GitHub Pages(静的サイトホスティング)やPackages(パッケージホスティング)、Projects(プロジェクト管理)などがすでにあり、機能が…

DynamoDBのテーブルを1つだけにする設計のコツ(汎用的手法編)

DynamoDBではテーブルを1つだけにすることが推奨されています。前回の投稿ではDynamoDBのテーブルを1つだけにする設計のコツを具体例を元に考えてみました。今回はどんな場合にでも通用するような汎用的な手法を考えてみます。mizumotok.hatenablog.jp エン…

DynamoDBのテーブルを1つだけにする設計のコツ(考え方編)

DynamoDBは高速でスケーラブルでとても便利なデータベースです。便利なのですが、テーブル設計にはRDBMSのノウハウをそのまま使えません。例えば、DynamoDBではテーブルを1つだけにすることが推奨されています。テーブルを1つだけにする設計手法について考…

Windows XPの新元号(令和)対応

新元号が「令和」と発表され、世間もお祝いムードです。ITの世界では新元号対応で盛り上がっています。 Windows XPはサポートが終了しているので、当然新元号対応はされません。自力でWindows XPの新元号対応をやってみます。 Windows 7以降の新元号対応 loc…

React HooksでクラスをStateless Functional Componentsで書き換えよう

React 16.8の新機能フック (hook)を使えば、状態を持つようなクラスもStateless Functional Components(SFC)で表現できるようになりました。 これからはどんどんSFCで書いていきましょう。 mizumotok.hatenablog.jp ステート クラス SFC componentDidMount…

React Hooksが面白い

React 16.8から新機能フック (hook)が追加されました。ステートやcomponentDidMount等のでライフサイクルメソッドを使いたい場合でも、クラスを使わないStateless functional component(SFC)で表現できるようになりました。 ステートフック 副作用フック カ…

ReduxのExampleを徹底図解

ReduxはReactでデータを管理するのに非常に強力なツールです。Reduxの公式サイトにはいくつかのExampleが用意されていて、これらを見ることで設計パターンを理解することができます。設計パターンの理解を深めるために各Exampleを図解してみます。 Counter V…

React NativeでRSSリーダーをつくろう

Swift版に続き、React Native版のRSSリーダーを作ってみましょう。React Native版ならjavascriptで実装でき、iOSでもAndroidでも動きます。今回はシンプルにYahoo!トピックスの見出しのみを表示して、内容はSafariに飛ばして表示するようにしています。 プロ…

Swift4でRSSリーダーをつくろう

以前の、Swiftで作成したRSSリーダーの記事が好評でしたがSwiftのバージョンもあがって古くなったので作り直しました。RSSリーダーはTableViewを使いますし、データの通信もあるので、サンプルとしては手頃です。 今回はシンプルにYahoo!トピックスの見出し…