Go言語 – 15.JSONのパース/生成
JSONのパース/生成 JSON形式を扱うには、encoding/jsonパッケージを使用します。 パース処理 JSON形式の文字列をパースするには、JSONのデータ構造に合わせて構造体を定義し、Unmarshal関数を使用します。 タグについて 構造体のメンバ変数宣言の後ろに'json:“xxx”'という形式の文字列が付けられていますが、これはタグと呼ばれるものです。 タグは変数の性質には全く影 ...
Go言語 – 14.CSVのパース/生成
CSVのパース/生成 CSVを扱うには次のパッケージをインポートする必要があります。 import "encoding/csv" 1行づつ読み出す CSVの書込み 2次元配列を一気に出力 出力するitemをダブルクォートで囲みたい場合 と、出力したいデータをシングルでくくればOKです。 これがでれば、たいがいは処理できそうですね。
Go言語 – 13.文字列処理
Go言語 文字列処理 今回は「文字列処理」について説明します。 stringsパッケージは文字列操作を行う関数を提供します。 文字列の結合 文字列の検索 Contains関数は、文字列の中に別の文字列が存在するかどうかを返します。 ContainsAny関数は、文字列の中に別の文字列に含まれる文字のいずれかが存在するかどうかを返します。 HasPrefix関数は、文字列が別の文字列で開始しているか ...
Go言語 – 12.日時に関する処理
日時に関する処理 日付を扱うには次のパッケージをインポートする必要があります。 import "time" 現在日時の取得 これで、日付が取得できます。 年月日時分秒は次の指定で取得できます。 年:tm.Year() 月:tm.Month() 日:tm.Day() 時:tm.Hour() 分:tm.Minute() 秒:tm.Second() 日付を扱う場合、好きなフォーマットで表示させたいもので ...
Go言語 – 11.スライス
Go言語 スライス 今回は「スライス」について説明します。 スライスとは、可変長配列を持たない代わりに実装された型。 配列全体のポインタ、配列の長さ(len)、配列の容量(cap)からなるデータ構造を保持している。 配列の部分列を簡単に取り出せる。 Go言語では、配列よりもスライスのほうが多く使われるようです。 スライスの宣言 とかせずに[]とする。要素数は書かない。 動作の確認 b := aやc ...
Go言語 – 10.ゴルーチン
ゴルーチン ゴルーチンとは、マルチスレッドのことを指すようです。 別名では「go文」といわれるようです。 記述方法 出力結果は以下の通りになります。 ※マルチスレッドなので、必ずこのような表示とは限りませんが。 ああああああ いいいいいい ああああああ いいいいいい ああああああ ・ ・ ・ ゴルーチンを終了するには 次の3種類の方法があります。 1.関数が終わる 2.returnで抜ける 3.r ...
Go言語 – 9.エラーハンドリング
エラー処理 JavaやC++には、try, catch, throw といったエラーを処理する構文がありますが、go言語では、関数の戻り値を複数得ることができるので、errorの判定もその都度簡単に行うことができます。 例えばこんな感じ エラーを無視するのも簡単です panic ゼロ除算を行ったり、確保していない配列を参照した時等に起きる致命的なエラーが起きると強制終了 ...
Go言語 – 8.パッケージ
Go言語 パッケージ 今回は「パッケージ 」について説明します。 Go言語では、名前空間を分けるための仕組みとして、「パッケージ」を使用します。 モジュール性、カプセル化、分離されたコンパイル、再利用をサポートするものです。 プログラムを分割することで機能を分離し、複雑な状態にしないようにしていきましょう。 パッケージの宣言 上記のコードでは、1行目でパッケージ名somepkgを宣言しています。 ...
Go言語 – 7.配列
配列の使い方 宣言方法 このように、配列の要素数は型の前に記載します。 使用方法 配列の要素数を取得するには、lenを使用します。 動的配列 Go言語では、動的配列のところ「slice」(スライス)とよぶ 要素数を記載しないだけです。 では、要素を追加するにはどうするか? 次のように記載します。 これで、どんどん追加できます。 連想配列 Go言語では、連想配列のところ「Map」(マップ)とよぶ 設 ...
Go言語 – 6.関数・メソッド
関数・メソッド 関数の定義 func 関数名(引数名 型) 戻り値の型 { 処理 } 例:引数と戻り値を共に、カンマ区切りで複数指定した。 関数の呼出し・戻り値の取得 上で作った関数を呼び出してみます。 1つ目の戻り値は無視する例。 deferステートメント deferステートメントで記述した関数は、関数から復帰する直前(一番最後)に実行されます。 関数内で、複数のdeferステートメントを記載し ...
Go言語 – 5.構造体
Go言語 構造体 今回は「構造体 (structure) 」について説明します。 Go言語の構造体は、基本的にはC言語の構造体と同じですが、このほかにも「メソッド (method) 」の定義や構造体の「埋め込み」といった機能があります。 Go言語の場合、クラスや継承といったオブジェクト指向機能はサポートされていません。 メソッドや埋め込み、インターフェースを使うと、Go 言語でもオブジェクト指向プ ...
WordPressでブログカードの作り方
WordPressでブログカードを作成するには自分でCSSを作成する必要があります。でもWordPressテーマがLuxeritasであれば簡単な操作でブログカードを表示させることが可能です。
Go言語 – 4.基本的な文法
Go言語の文法 main処理 func 関数名というかたちになり、戻り値はreturn で戻します。 ただし、下の例のmainは戻り値を戻しません。 一番初めに実行される初期化処理 初期化処理を行うには init の関数内で実施します。 コメント 一行のコメントは // です。 複数のコメントは /* ~ */ です。 パッケージ 簡単に言うとクラスと同じ考えです。 詳しくはパッケージの章で解説し ...
Go言語 – 3.ビルド・実行
ビルド・実行 簡単なコードを記載します 文字コードは「UTF-8」にしないとエラーになります。 「abc.go」というファイル名にしました。 実行 コマンドプロンプトで、「abc.go」を配置したディレクトリーに移動して、「abc.go」を実行してみましょう。 ビルド 実行と同様です。 runの代わりに、buildを使います。 abc.exeが作成されますので実行してみて下さい。 3秒のスリープを ...
Go言語 – 2.開発環境
Go言語 開発環境構築 Go言語を試してみようと思いますので、まずは開発環境の構築から始めます。 対象のPCは、Windows10 64bitが前提です。 ダウンロード 下記のGo言語の公式サイトからWindows版のインストーラをダウンロードします。(2019年1月28日現在、最新バージョンは 1.11.5) アーカイブファイル(go1.11.5.windows-amd64.zip)もあります ...
Go言語 – 1.Goの歴史
Goの歴史 2009年11月にGoが初めて発表され、バージョン1.0が2012年3月28日にリリースされた。 GoはGoogleの本番システムの一部で使用されており、他の多数の企業やオープンソースプロジェクトでも使用されている。 主に次の2つの実装が存在する。 GoogleのGoツールチェイン。複数のプラットフォームをサポートとしており、Linux、BSD、macOS、Plan 9、Windows ...
Go言語 – Goとは何か
Goは2009年にGoogleによって作られたとても新しい言語です。 Go言語は、Linux、Mac、Native Clientで動作する開発言語で、Linux・Mac・WindowsやAndroidで動作します。 特徴としては ・シンプルな言語である。 ・コンパイル・実行速度が早い。 ・安全性が高い。 ・同期処理が容易に行える。 ・なにより楽しい。 ・オープンソースである。 Go言語は、作り上げ ...
Androidアプリケーションの開発 【04:Javamailメール送信アプリ】
Javamailを使ってメールを送信するアプリの作成 Javamailを使ってメールを送信するアプリを作成してみます。 ライブラリのダウンロード javamail-androidから下記のライブラリをダウンロードします。 additional.jar mail.jar activation.jar ライブラリのインポート ダウンロードした3つのライブラリをインポートします。 プロジェクト直下にli ...
SQLServerで文字列をカンマ区切りにする方法
SQLServerで指定された文字列をカンマ区切りにする方法です。 ※SQL Server 2016以降では「STRING_SPLIT」という関数が実装されています SQLServerで文字列をカンマ区切りにする方法 SQLServerで文字列をカンマ区切りにする方法は文字列内のカンマをCHARINDEX関数で探しながら「カンマからカンマまで」をSUBSTRING関数で切り出してテーブル関数の戻り ...
Javascriptで文字列の全置換処理を実装する方法
Javascriptのreplaceでは全置換処理は行ってくれません。今回は「split」と「join」メソッドを組み合わせた全置換処理を実装します。
