2021-01-01から1ヶ月間の記事一覧
別に仕事で必要とかじゃないんだけどもしかしたら個人開発で面白い物作れるかな。。と気になってたのでUdemyでIotの講義視聴してみた。一旦手は動かさず。 オンラインコース - いろんなことを、あなたのペースで | Udemy | Udemy 軽く内容メモ ArduinoとRasp…
React Native触ってみたかったのでUdemyで講座買って受講してみた。 【2023年最新版】React Native入門:ニュースアプリを作りながら覚えよう | Udemy 感想 ほぼWeb開発のReactのコードと変わらなそう。Reactが書ければ割とすぐ開発できそう。 見た目の調整…
ポートフォリオとしてVueとGo言語で作ったカレンダーサービスの開発が進んだので振り返ってみる。 GitHub - ikeyu0806/vue-calendar: Vue.js/GraphQLで開発した自作カレンダー 最近実装したもの GraphQLで予定の登録、更新、削除をできるようにした。 ユーザ…
コンテナ 仮想化は、使いたいサービスだけでなくOSも含めてまるごと動かすことが前提の仕組みです。そのため、たとえばゲストOSとホストOSが同じLinuxであればカーネルやシステムのデーモンを重複してロードすることになり、無駄にメモリを消費してしまいま…
OSが使う時間の仕組みは歴史的経緯などもあって少し複雑な構成をしており、たくさんの種類のタイマーやカウンターがあります。 リアルタイムクロック(RTC) システムクロック タイムスタンプカウンター(TSC) 各種タイマーデバイス 時間に関するシステムコ…
「Goならわかるシステムプログラミング」を前章に続いて気になったところ抜粋+コード写経しつつ、15章を読んだ 物理メモリと仮想メモリ 今、メモリが8GBのマシンがあり、そのうちの1GBをOSが消費しているとします。 残り7GBを使って、1GBずつのメモリを消費…
並行・並列処理の手法のパターン まず、複数のコアを使って重い処理・ブロックする処理を効率よくさばく方法につ いて、Go言語に限らない一般的な基礎知識を解説しておきます。 並行・並列処理の実現手法には、おおまかに区分すると、マルチプロセス、イベン…
複数の仕事を行うことを表す言葉には並行(Concurrent)と並列(Parallel)の2つがあります。 並行:CPU数、コア数の限界を超えて複数の仕事を同時に行う ほんの少し前まで、コンピューターに搭載されているCPUはコア数が1つしかないものが普通でした。その…
シグナルには、大きく2つの用途があります。 プロセス間通信:カーネルが仲介して、あるプロセスから、別のプロセスに対してシグナルを送ることができる。自分自身に対してシグナルを送ることも可能 ソフトウェア割り込み:システムで発生したイベントは、シ…
前章に続いて写経しつつ「Goならわかるシステムプログラミング」の11章を読む。 現在起動中のプログラムの絶対パスを表示 package main import ( "fmt" "os" ) func main() { path, _ := os.Executable() fmt.Printf(" 実行ファイル名 : %s\n", os.Args[0]) …
前章に続いて「Goならわかるシステムプログラミング」の10章を写経しつつ読んだ。 ファイルの変更監視 開発言語や環境によらず、プログラムでファイルを監視する方法には、次の2種類があります。 監視したいファイルを OS 側に通知しておいて、変更があった…
「Goならわかるシステムプログラミング」の9章(ファイルシステムの基礎と Go言語の標準パッケージ)を写経しつつ読んだのでメモ。 ファイルシステムとは コンピューターにはさまざまなストレージが接続されています。ハードディスクやSSD、取り外し可能なSDカ…
「Goならわかるシステムプログラミング」の8章を読んだ。8章はUnixドメインソケットについて。 TCPとUDPによるソケット通信は、外部のネットワークにつながるインタフェースに接続します。 これに対し、Unixドメインソケットでは外部インタフェースへの接続…
引き続き「Goならわかるシステムプログラミング」の7章を写経しつつ読んでみる。 前章はTCPだったけどこの章はUDP。TCPより機能が少なくシンプルなプロトコル UDPはTCPと同じトランスポート層プロトコルですが、TCPと違ってコネクションレスであり、誰とつな…
6章 ソケット通信について 6章からソケット通信についての内容で6章はTCP。前章までに比べてサンプルコード多め。 写経して動作確認しながら読んでみた。 ソケットとは プロセス間通信の一種です。ソケットが他のプロセス間通信と少し違うのは、アドレスとポ…
「Goならわかるシステムプログラミング」の4章を読んだのでメモ。4章はチャネル、5章はシステムコールについて 4章 チャネルとは何か 本文から引用 ソフトウェアの世界には、キュー(queue)と呼ばれるデータ構造があります。 キューは、最初に投入したデー…
「Goならわかるシステムプログラミング」読み始めた。とりあえず1-3章まで読んだのでメモ。 Goならわかるシステムプログラミング(PDF版のみ) – 技術書出版と販売のラムダノート Kindleで欲しかったんだけどなかったんで公式サイトからPDF形式を購入してみ…
Vue.jsで作ったカレンダーアプリのバックエンドをGoとGraphQLで実装してみた。 github.com 以前に個人開発でGo、gorm、ginを使ってRESTのAPIサーバを作ったことがありkonnkaimoORマッパーにはgormを使ったので前回との差分はGraphQLくらい。 github.com Goで…
Vue.jsでカレンダーライブラリを使わず自作のカレンダーを作り始めてみた。create-nuxt-appでプロジェクト作って、とりあえず 月単位で日付表示 月選択 まで実装できたので実装内容書いてみる。 見た目 ソースコード全体 GitHub - ikeyu0806/vue-calendar: V…