Lapis Lazuli

technical blog for web developer

【Go】スライスの仕組みを学ぶ

GO

普段何となく使っていたスライスですが、今回はその仕組みを詳しく勉強してみました。 スライスとは 簡単に言うと、いわゆる可変長配列です。他言語だとListが近いイメージでしょうか。 ここらへんは以前の記事を参照してもらえると幸いです。 スライスの挙…

【Go】配列を検索する

GO

GoではPHPのin_arrayみたいな一発で配列にあるかどうか判別する関数は存在しません。 なので普通に書いて実装していくことになります。 list := []int{0, 1, 2, 3} target := 1 for _, v := range list { if v == target { //一致したときの処理 } } 単純にf…

SAAに出てきたサービス・S3

AWS

前回に引き続きAWS。今回はS3について。他のサービスに比べて特に使う機会が多いと思われるS3。 シンプルストレージと銘打ってるものの、結構多機能だったりします。 S3のしくみ S3はオブジェクトストレージといい、ファイルをオブジェクト単位で保存してお…

SAAに出てきたサービス・VPC

今回はSAAの試験で結構重要だな・・・と思ったVPCについて。 VPCはVirtualPrivateCloudの名前の通り、自分だけのプライベートな仮想クラウドです。 VPCの中にEC2などのインスタンスを配置していくので、土台となる最も基本的なサービスです。 なのでSAAには…

AWS認定ソリューションアーキテクト・アソシエイトに合格したので勉強方法を記します

以前から勉強していたAWSソリューションアーキテクト・アソシエイト(以下SAA)ですが、この度、合格することが出来ました!合格できてひとまず安心です。勉強は少しずつしていたのですが、中々自信がつかなくて、本を買ってから3ヶ月経過してました・・・w…

【Go】Goで競技プログラミング(sortパッケージ)

今回はsortパッケージを使ったのでsortに関して。 ひたすらsliceをsortしたいときにおすすめ。 sliceのソート sortパッケージは主に型に応じたソート関数が用意されています。 sort.Ints sort.Strings sort.Float64s これを使うだけで昇順にソート完了。これ…

【Go】Goで競技プログラミング(bufio.Scannerを使って入力を取得)

bufioを使う理由 前回はScanを使って入力の取得を行いましたが、今回はbufioを使う方法を書きたいと思います。 bufioは一言で言うと、一行ずつ入力を取得する関数です。 Scanと似ていますが、こちらのほうが負荷が低いので早く実行出来ます。 少ない桁数なら…

Goで競技プログラミングを戦う

競技プログラミングで他の言語を使う 競プロをかじったことのある人には周知の通り、C++が主流になっていて、AtCoderも上位ランクはC++ばかりです。 では他の言語はダメなのかと言われると、少なくとも高位の、それこそ赤とかにならない限りは問題ないと考え…

【Go】Goで競技プログラミング(標準入力について)

競技プログラミングでのGo 前回に続き、Goで競技プログラミングを攻略しているので、競プロをやってる人にはおなじみの標準入力から文字列を取得する方法を書きます。 僕はGoで書いているのでGoのやり方になりますが、Goは他の言語に比べると文字列を扱う機…

競技プログラミングはじめました

唐突ですが最近、競技プログラミングにハマっています。 具体的にはAtCoderの問題を解いたり、コンテストに参加したり・・・(まだ1回ですが) 今はまだ茶色ですが、最初の目標は緑色を目指して頑張っています。と、競技プログラミングをやりはじめた訳です…

AWS認定SAAの模擬試験を受けました

AWS

最近やっと本腰を入れて勉強し始めたAWSのソリューションアーキテクト・アソシエイトの模擬試験を受験しました。 結果は以下の通り。 総合スコア: 80% トピックレベルスコア: 1.0 Design Resilient Architectures: 88% 2.0 Define Performant Architectures:…

【Go】正規表現の使い方

GO

今回はGoの正規表現の扱いについてです。 Goにも他の言語と同様、正規表現を扱うパッケージのregexpというものが標準で組み込まれています。 import "regexp" これで準備完了です。 文字列のマッチングを行う 正規表現を使うシーンで一番多いのがこれだと思…

【Go】jsonを扱う

GO

今回はJSONの扱いについて。大体どの言語にもJSONを扱う関数があるのですが、Goにもちゃんと標準パッケージ内にあります。 まずはパッケージをインポートしておきましょう。 import ( "encoding/json" ) デコード jsonのデコードは超簡単 json.Unmarshal([]b…

【PHP】laravelのディレクトリ構造を考えたい

前回、laravelのイントロダクションを書いた訳ですが、やっぱりディレクトリ構成が気になったので・・・laravelは他のフレームワークにあるような、MVCの各ファイルがそれぞれのディレクトリにあるという構造になっていません。 特にモデルに関してはModelと…

【Go】Go言語が2番目の言語に最適な理由

GO

Goの記事多い気がしますが、今回もGoです。 今回はGoが2番めに手を出すのにいいなーと思ったので記事を書きました。 なぜ2番目? ってこのタイトルで思ったのではないでしょうか。 何故かというと、Web初心者とかが最初に手を出す言語ではないからです。 私…

キャッシュレス決済が軒並み還元率を下げてるのか考えてみた

今回は生活感前回でいきます笑paypayが大々的な還元で去年話題になりましたが、他のペイも含め、ちょくちょくキャンペーンはやっています。 利用頻度が高い人が多いであろうコンビニでもこんな感じで。paypay.ne.jp還元やっていますね。 paypayはキャンペー…

はじめのプログラミング勉強方法

エンジニアを目指そうとしたとき、まず何から手をつけていいか分からないのが普通だと思います。 広告とかではよくプログラミングスクールの文字が出てきて、受講したほうがいいのか。それとも独学か・・・ まず手を動かす前に迷う要素が多い。それがエンジ…

【Vue.js】vue-routerでルーティング

今回はvue.jsのルーティングについて。vue.jsを使う目的は様々だと思いますが、その一つにSPAがあると思う。 そのSPA化にあたって必要なのがvue-routerという機能です。ぶっちゃけ簡単に言えばこれさえ使えばSPAになります。 vueは基本的にコンポーネントを…

【PHP】laravelことはじめ

はじめに CakePHP以外のフレームワークも触っておかないとなぁ・・・って思いlaravelを使ってみました。 今一番勢いがあるフレームワークですし、新規でPHPやる人ならlaravelから始めて間違いないと思います。 開発環境 PHP 7.1以上 とりあえずインストール…

【PHP】PHPにも戻り値の型を指定できる

今まで知らなかったけど、最近PHPもメソッドの戻り値を設定出来る事を知りました。 知ったのは偶然なんですけどね(サンプルコードを呼んでて気がついたというw)早速ですが書き方は以下になります。 function sample(): string { //何らかの処理 } functio…

Goは動的と静的言語両方の長所をもってると思う点

GO

Goの記事多めですが、今回もGoでいきます。 晴れて仕事で一通り開発が終わったので、今回はGoにに関して振り返ってみようと思います。 言語仕様がシンプル 一番印象に残ったのは、とにかく言語仕様がシンプルだなと。 クラスもないし、継承もないです。 行末…

エンジニアの勉強について、集中してやることの大切さを知った話。

どうもこんにちは、最近暑すぎてダウン気味のyusukeです。今回はエンジニアの勉強についてです。以前、このネタでちょこっと書いた事もあったと思いますが、やっぱり集中って大事だなと感じたエピソードがあるので記事にしました。 やり方の違い 普通の勉強…

【Vue.js】算出プロパティとメソッド

今回はvue.jsの算出プロパティについて書いていきます。 算出プロパティって小難しい名前だけど実はシンプル 算出プロパティ。スクリプトの中でcomputedで宣言するアレです。 テンプレート内で行う複雑な動作をスクリプトで肩代わりするやつです。ちょっと複…

【firebase】functionsのつかいかた

以前のfirebase記事の続編です。 今回はfunctionsに焦点を当ててみます。 functionsとはなんぞや functionsは、いわゆるサーバーレスでコードを実行するサービスです。 AWSのlambdaやGCPのGAEと似たようなサービスと言ったらわかりやすいでしょうか。違う所…

「エンジニアのためのマネジメントキャリアパス」を読んだら体系的にまとめられていてマネージャーじゃない人にも為になる本だった

エンジニアのためのマネジメントキャリアパス ―テックリードからCTOまでマネジメントスキル向上ガイド作者: Camille Fournier,及川卓也(まえがき),武舎広幸,武舎るみ出版社/メーカー: オライリージャパン発売日: 2018/09/26メディア: 単行本(ソフトカバー)…

【firebase】サービスについて

どうもこんばんは、プライベートではfirebaseを使いまくってるyusukeです。今回はgoogleが提供するfirebaseを、自分の中で整頓する意味も含めてまとめてみました。 そもそもfirebaseって・・・? 一言で言うと、mBaaSと言われるサービスです。 バックエンド…

【AWS】ソリューションアーキテクト・アソシエイト勉強法

今回は今、僕がやっているAWSソリューションアーキテクト・アソシエイト(以下、SAA)の勉強方法について書いていきたいと思います。 使っている参考書 基本的には参考書を見ながら覚えている感じです。 参考書はこれを買いました。AWS認定資格試験テキスト …

【SQL】大量のinsert処理DBに投げたときに時間を短縮する方法

それは突然起きた・・・ こんにちはユウスケです。 ちょっと前に、大きめのCSVをDBにインポートする処理を仕事で作りました。 処理自体はGoでCSVを1行ずつ読み取ってデータベースにinsertするというシンプルなものでしたが・・・とてつもなく遅いという問題…

【Unity】端末内のファイル扱う方法

主にスマホ向けアプリを開発していると使うことがないのが、ファイルを書き出す機能です。 プレイヤーデータなどは、ほぼサーバー側にありますからね。ぶっちゃけ僕も最近まで知りませんでした。今回、サークルのゲーム開発で端末内のセーブデータを保存する…

Amazonプライムデー2019とkindle本セール

お買い得品 プライムデーが直前に迫ってきました。 毎回お買い得感があるものって決まっているのと思うのですが、大体こんなところでしょうか。 amazonブランド製品(FireStickなど) 日用品 モバイルバッテリーやイヤホンなどのガジェット品 ここらへんはし…