m_shige1979のささやかな抵抗と欲望の日々

プログラムの勉強をしながら学習したことや経験したことをぼそぼそと書いていきます

Github(変なおっさんの顔でるので気をつけてね)

https://github.com/mshige1979

Rustのhelloworldを試す。

プログラミング言語 Rust スクリプト言語のような書き方でC++のような高速化ができるらしいよ 詳しくはわからんがとりあえずやってみる 環境 Mac Book Air(もう古いかも…5年以上前のものだし) インストール curl https://sh.rustup.rs -sSf | sh 環境設定 …

javascriptのPromiseとasync / awaitについて少し試す

Promiseは 並列処理でちょっと前に学習したやつで function sampleTask1() { return new Promise(function(resolve, reject) { setTimeout(function () { console.log('sample1'); resolve("sample1"); }, 3000); }); } って定義したら ↓ sampleTask1() .the…

javascriptのfetchを使ってAPIより結果を取得

概要 fetch使ってみたい APIはgo言語で作成した適当なやつ サーバ側 package main import ( "encoding/json" "log" "math/rand" "net/http" "time" ) func main() { http.HandleFunc("/sample_api1", sampleAPI1) http.HandleFunc("/sample_api2", sampleAPI…

javascriptのPromiseとかいうのを今更少しだけ学習する

なんか 知らんうちにfetchとか出てるんだけどPromiseとかいうやつ返すんですけど この辺の使い方とか知らないとjqueryのajaxしか使えなくなってくるのは恥ずかしい Promise 非同期処理するやつ Promiseで実行した結果はresolveが正常時、rejectが異常時に設…

golangのpanic発生しても処理を続行したい

golangでのエラーとかって 基本的にはエラーオブジェクトのチェックしかしていない panic発生したら 落ちます package main import ( "log" ) func main() { log.Println("start") // 意図的にpanicを起こす panic("aaaa") //var a *interface{} //*a = 0 //…

golangでUUIDの生成をライブラリでお試し

仕事でコード書くより 設計の仕事ばっかり、スケジュール管理とかめんどくさいので 他の人やってくんないかな… UUIDって? UUID(Universally Unique Identifier)とは、ソフトウェア上でオブジェクトを一意に識別するための識別子である。 *1ざっくりいうと…

PlantUMLをVisualStudioCodeで書く

UML

PlantUMLって なんかUMLをテキストで書いて絵にするツールらしい 参考 PlantUMLをMac OS Xで使う - Qiita Visual Studio Code で UML を描こう! - Qiita 環境 今回はMacでやります インストール graphvizをインストール brew install graphviz visual studi…

curlを最新版へソースインストール

ruby関連の勉強を始めてみようとしたけど なんか出る /tmp/ruby-build.20181006035131.5059 ~/.rbenv/plugins/ruby-build curl: (35) Peer reports incompatible or unsupported protocol version. ~ 環境 vangrant上のcentos7(64bit) なんかcurlが古いらし…

go言語の学習:websocketで画像を送信し、webで表示

できたの なにこれ? websocketサーバより1秒単位で画像をバイナリ形式で送信したもの ソース(サーバ側) package main import ( "log" "net/http" "golang.org/x/net/websocket" "time" "io/ioutil" "image" "gocv.io/x/gocv" "image/color" "bytes" "ima…

go言語の学習:画像を読み込み、文字を追加

日本語ができない 時間は気にしないでwww 前のソースを一部回収 package main import ( "gocv.io/x/gocv" "log" "os/user" "time" "io/ioutil" "image/color" "image" ) var ( // サイズ w = 640 h = 480 // 色定義 black = color.RGBA{0, 0, 0, 0} blue …

go言語の学習:gocvで画像を作成して出力

gocv Home :: GoCV - Golang Computer Vision Using OpenCV 3 opencvでなんかいろいろやってくれるライブラリ インストールするまでくっそ面倒 macの場合はbrew installで簡単そうですけど なんかいろいろエラーでて大変でした ・pythonいれたり、クリーンア…

go言語の学習:構造体よりタグ情報を取得

構造体にあるjsonなどのタグより取得 package main import ( "fmt" "reflect" ) type Sample struct { no int `sampletag:"aaaaa"` name string `sampletag:"bbbbb"` age int `sampletag:"ccccc"` } func main() { fmt.Println("start") // Sample1インター…

go言語の学習:ポリモーフィズムのパターン

Javaとかではクラスにinterfaceとか定義して使用する goの場合は構造体自体はメソッドを実装するが、定義されているインターフェースは定義しない サンプル package main import ( "fmt" ) // Sample1インターフェース、メソッドを定義 type Sample1 interfa…

go言語の学習:interface型の値設定について

interface型は基本的にはどんな値も設定できる package main import ( "fmt" ) func main() { fmt.Println("start") var a interface{} a = int(10) a = int64(10) a = string(65) fmt.Printf("%+v\n", a) fmt.Println("end") } 設定はできる…しかし、そのま…

go言語の学習:typeでインターフェースを定義

概要 interface自体はstructを利用してする感じと認識している 構造体とかとなんかごっちゃになっていてJavaのクラスとかと勝手が異なるので混乱している そもそもstringやintにメソッドは付与できるのか? type data1 string type data2 int こんな感じで定…

Google Homeアプリを作成

AIスピーカー こんなやつ やること FirebaseでAPIを作成 Actions on Googleでプロジェクトを作成し、APIを紐づけ APIを作成 プロジェクト作成 firebase init functions npm install firebase-functions@latest firebase-admin@latest --save npm install --s…

firebaseのfunctionsを作成してみた

firebase Google用のサービスのBaasみたいのようです。 無料プランもあるので簡単にお試ししてみました。 functionとは APIとかを作成できるサービス サポートしているものはJavascript及びTypeScriptのようです。 準備 Nodejs(v6.11.5) 手順 firebaseツー…

【備忘】AWSのDyanmoDBのCLIコマンドについて

DynamodDBの学習を一部していて ちょっと簡単なコマンドの基本をメモ テーブル操作系 テーブルの作成 aws dynamodb create-table --table-name 'test1' \ --attribute-definitions '[{"AttributeName":"id","AttributeType": "S"}]' \ --key-schema '[{"Attr…

FaceApiを試す。(ローカルよりファイルをアップロードして結果を取得)

基本的にはURLを指定するサンプルしかない ので探していろいろやってみた。 実装 sample2.go package main import ( "log" "net/http" "bytes" "io/ioutil" ) func main() { key1 := "生成したキー" jpegData, _ := ioutil.ReadFile("face.jpg") // EndPoint…

AzureのFaceAPIをgo言語で試す

FaceAPIとは? Face API - 顔認識 | Microsoft Azure 画像より顔を認識してその情報を返すAPI 準備 AzureでFaceAPIのサービスを開始してキーを取得刷る必要があります。 手順 その他サービスより検索 Cognitiveサービスを開始する FaceAPIを検索して開始する…

go言語で画像を作成(編集)する【imagemagick】

ImageMagick 画像編集するライブラリで超優秀なやつ 文字列の設定なども可能 フォントは微妙 参考情報 https://qiita.com/arc279/items/5f277aa5cce3de5247e5 https://github.com/gographics/imagick インストール(Mac) brew install ruby brew install Im…

go言語で超シンプルな画像作成

画像を作成 短形の画像を作成する。 実装 sample1.go package main import ( "log" "image" "image/jpeg" "image/color" "os" ) var ( x = 0 y = 0 width = 400 height = 300 quality = 100 ) func main() { log.Println("start") // 短形を作成する img := …

go言語でflagを使用したパラメータ指定を行う

flagパッケージ ./sample1 -user hogehogeみたいな感じで項目名にあったパラメータを渡す処理 http://golang-jp.org/pkg/flag/ とにかく実装 sample1.go package main import ( "log" "flag" "os" ) // 引数取得エリア type ParamItem struct { Url string C…

go言語で設定ファイルを読み込み2(別パッケージにして扱う)

1つのファイルの場合 はメンテしづらいので分割する ファイル構成 . ├── config │ └── appconfig.go ├── config.json └── sample2.go こんな感じ 実装 config.json { "url": "http://hogehoge.com", "count": 100, "user": "hoge", "pass": "foo" } config/…

go言語でjson形式の設定ファイルを読み込む

実行する際の変数の外出 設定ファイルにして配置しておくとやりやすいので対応する。 前提 設定ファイルはjson 実装 config.json { "url": "http://hogehoge.com", "count": 100, "user": "hoge", "pass": "foo" } sample1.go package main import ( "log" "…

【C++】動的にデータを追加するvector、listを使う

CPP

配列などを定義して使用する際は 要素数を使用しますが、用意する要素数が不明瞭な場合は件数の指定が曖昧になります。 5件の場合もあれば10件の場合など その際に使用するのがvector 実装 サンプル //====================================================…

【C++】カレントディレクトリ配下のファイル一覧を抽出する

CPP

今回はC言語の勉強 いろんなところでお世話になるファイル検索 指定ディレクトリ配下の一覧を抽出することを行います。 やること 単純に指定ディレクトリ配下のディレクトリより「.txt」のファイルを検索してコンソールへ出力します。 実装 sample03.cpp //=…

pleiades(eclipse)のCDT(MinGW)でDLLを作成する

C DLL

会社とかでするときとかさあ VisualStudioないんですけど… なんで買っといてくんないの(´・ω・`) Community入れたくなるんですけど… というわけで フリーかどうか知らんがeclipseに入っていたMinGWを使ってDLLを作成してみる ダウンロード Eclipse 日本語化…

Azure Storage ServiceでBlobの読み書きをJavaで行う

PHPではなく Java pom.xml <dependencies> <dependency> <groupId>com.microsoft.azure</groupId> <artifactId>azure-storage</artifactId> <version>5.0.0</version> </dependency> </dependencies>

scoket.ioで下層パスごとに処理を記載する

パス別に処理を分割したいみたいな… ホスト名は実際のwebサイトみたいに扱って/hogehoge1、/hogehoge2とかでsocket通信したいみたいな感じですかね やったこと 下層パスを用意して、処理を記載。 クライアントもそれに合わせたURIを指定してアクセス 実装 サ…