2019/02/04Go言語

2019/02/04

Go言語 スライス 今回は「スライス」について説明します。 スライスとは、可変長配列を持たない代わりに実装された型。 配列全体のポインタ、配列の長さ(len)、配列の容量(cap)からなるデータ構造を保持している。 配列の部分列を簡単に取り出せる。 Go言語では、配列よりもスライスのほうが多く使われるようです。 スライスの宣言 とかせずに[]とする。要素数は書かない。 動作の確認 b := aやc ...

2019/02/03Go言語

2019/02/03

ゴルーチン ゴルーチンとは、マルチスレッドのことを指すようです。 別名では「go文」といわれるようです。 記述方法 出力結果は以下の通りになります。 ※マルチスレッドなので、必ずこのような表示とは限りませんが。 ああああああ いいいいいい ああああああ いいいいいい ああああああ ・ ・ ・ ゴルーチンを終了するには 次の3種類の方法があります。 1.関数が終わる 2.returnで抜ける 3.r ...

2019/02/02Go言語

2019/02/02

エラー処理 JavaやC++には、try, catch, throw といったエラーを処理する構文がありますが、go言語では、関数の戻り値を複数得ることができるので、errorの判定もその都度簡単に行うことができます。 例えばこんな感じ   エラーを無視するのも簡単です   panic ゼロ除算を行ったり、確保していない配列を参照した時等に起きる致命的なエラーが起きると強制終了 ...

2019/02/01Go言語

2019/02/01

Go言語 パッケージ 今回は「パッケージ 」について説明します。 Go言語では、名前空間を分けるための仕組みとして、「パッケージ」を使用します。 モジュール性、カプセル化、分離されたコンパイル、再利用をサポートするものです。 プログラムを分割することで機能を分離し、複雑な状態にしないようにしていきましょう。 パッケージの宣言 上記のコードでは、1行目でパッケージ名somepkgを宣言しています。 ...

2019/01/31Go言語

2019/01/31

配列の使い方 宣言方法 このように、配列の要素数は型の前に記載します。 使用方法 配列の要素数を取得するには、lenを使用します。 動的配列 Go言語では、動的配列のところ「slice」(スライス)とよぶ 要素数を記載しないだけです。 では、要素を追加するにはどうするか? 次のように記載します。 これで、どんどん追加できます。 連想配列 Go言語では、連想配列のところ「Map」(マップ)とよぶ 設 ...

2019/01/30Go言語

2019/01/30

関数・メソッド 関数の定義 func 関数名(引数名 型) 戻り値の型 { 処理 } 例:引数と戻り値を共に、カンマ区切りで複数指定した。 関数の呼出し・戻り値の取得 上で作った関数を呼び出してみます。 1つ目の戻り値は無視する例。 deferステートメント deferステートメントで記述した関数は、関数から復帰する直前(一番最後)に実行されます。 関数内で、複数のdeferステートメントを記載し ...

2019/01/29Go言語

2019/01/29

Go言語 構造体 今回は「構造体 (structure) 」について説明します。 Go言語の構造体は、基本的にはC言語の構造体と同じですが、このほかにも「メソッド (method) 」の定義や構造体の「埋め込み」といった機能があります。 Go言語の場合、クラスや継承といったオブジェクト指向機能はサポートされていません。 メソッドや埋め込み、インターフェースを使うと、Go 言語でもオブジェクト指向プ ...

2019/01/29ワードプレス

WordPressに関する記事

2019/01/29

WordPressでブログカードを作成するには自分でCSSを作成する必要があります。でもWordPressテーマがLuxeritasであれば簡単な操作でブログカードを表示させることが可能です。

2019/01/28Go言語

2019/01/28

Go言語の文法 main処理 func 関数名というかたちになり、戻り値はreturn で戻します。 ただし、下の例のmainは戻り値を戻しません。 一番初めに実行される初期化処理 初期化処理を行うには init の関数内で実施します。 コメント 一行のコメントは // です。 複数のコメントは /* ~ */ です。 パッケージ 簡単に言うとクラスと同じ考えです。 詳しくはパッケージの章で解説し ...

2019/01/27Go言語

2019/01/27

ビルド・実行 簡単なコードを記載します 文字コードは「UTF-8」にしないとエラーになります。 「abc.go」というファイル名にしました。 実行 コマンドプロンプトで、「abc.go」を配置したディレクトリーに移動して、「abc.go」を実行してみましょう。 ビルド 実行と同様です。 runの代わりに、buildを使います。 abc.exeが作成されますので実行してみて下さい。 3秒のスリープを ...

2019/01/26Go言語

2019/01/26

Go言語 開発環境構築 Go言語を試してみようと思いますので、まずは開発環境の構築から始めます。 対象のPCは、Windows10 64bitが前提です。  ダウンロード 下記のGo言語の公式サイトからWindows版のインストーラをダウンロードします。(2019年1月28日現在、最新バージョンは 1.11.5) アーカイブファイル(go1.11.5.windows-amd64.zip)もあります ...

2019/01/25Go言語

2019/01/25

Goの歴史 2009年11月にGoが初めて発表され、バージョン1.0が2012年3月28日にリリースされた。 GoはGoogleの本番システムの一部で使用されており、他の多数の企業やオープンソースプロジェクトでも使用されている。 主に次の2つの実装が存在する。 GoogleのGoツールチェイン。複数のプラットフォームをサポートとしており、Linux、BSD、macOS、Plan 9、Windows ...

2019/01/25Go言語

2019/01/25

Goは2009年にGoogleによって作られたとても新しい言語です。 Go言語は、Linux、Mac、Native Clientで動作する開発言語で、Linux・Mac・WindowsやAndroidで動作します。 特徴としては ・シンプルな言語である。 ・コンパイル・実行速度が早い。 ・安全性が高い。 ・同期処理が容易に行える。 ・なにより楽しい。 ・オープンソースである。 Go言語は、作り上げ ...

2019/01/25Androidアプリケーション

2019/01/25

Javamailを使ってメールを送信するアプリの作成 Javamailを使ってメールを送信するアプリを作成してみます。 ライブラリのダウンロード javamail-androidから下記のライブラリをダウンロードします。 additional.jar mail.jar activation.jar ライブラリのインポート ダウンロードした3つのライブラリをインポートします。 プロジェクト直下にli ...

2018/12/19SQLServer

SQLやデータベースに関する記事

2018/12/19

SQLServerで指定された文字列をカンマ区切りにする方法です。 ※SQL Server 2016以降では「STRING_SPLIT」という関数が実装されています SQLServerで文字列をカンマ区切りにする方法 SQLServerで文字列をカンマ区切りにする方法は文字列内のカンマをCHARINDEX関数で探しながら「カンマからカンマまで」をSUBSTRING関数で切り出してテーブル関数の戻り ...

2018/12/12JavaScript

プログラミングに関する記事

2018/12/12

Javascriptのreplaceでは全置換処理は行ってくれません。今回は「split」と「join」メソッドを組み合わせた全置換処理を実装します。

2018/12/11JavaScript

プログラミングに関する記事

2018/12/11

JavascriptでjQueryなどは利用せずにキーボードでキーを押した時に発生するKeyUpイベントを疑似的に発行させてみます。具体的にはdispatchEventメソッドにKeyboardEventオブジェクトを渡して発行させます。

2018/12/11JavaScript

プログラミングに関する記事

2018/12/11

Javascriptを使ってキーボードのCapsLockキーの状態を取得するにはKeyUpイベントでgetModifierStateメソッドを利用する方法が簡単です。今回はそのgetModifierStateの使い方を解説します。

2018/12/11JavaScript

プログラミングに関する記事

2018/12/11

Javascriptを使ってキーボードのNumLockキーの状態を取得するにはKeyUpイベントでgetModifierStateメソッドを利用する方法が簡単です。今回はそのgetModifierStateの使い方を解説します。

2018/12/03Androidアプリケーション

2018/12/03

GPSを利用した簡単な位置情報取得アプリの作成 GPSを起動して簡単に位置情報を取得するアプリを作成してみます。 Androidエミュレーターでのみ動作確認を前提に以下の条件で作成します。 詳細な権限(パーミッション)チェック処理は省略する。 位置情報のバックグランドでの記録保持は無し。 パーミッションの設定 位置情報関連の権限は、FineとCoarseの2種類です。 AndroidManifes ...

2018/12/03Androidアプリケーション

2018/12/03

簡単なButtonアプリの作成 ボタンを押したら文字が変わるという簡単なアプリを作ってみます。 Android プロジェクトの作成 Buttonアプリを作るためにプロジェクトを作成します。 Android Studio から一番上の「Start a new Android Studio project」を選択します。 あるいは既にプロジェクトが表示されているのであれば、「ファイル」「新規」「新規プ ...

2018/12/03Androidアプリケーション

2018/12/03

Hello World アプリをAndroid Studioで作成 Android Studioの環境構築を確認するために、プロジェクトを作って簡単なHello Worldアプリが起動するか試してみます。 「Hello World!」の文字を表示させるアプリです。 プロジェクト作成 アプリを作るためにプロジェクトを作成します。 Android Studio から一番上の「Start a new A ...

2018/12/03PowerShell

プログラミングに関する記事

2018/12/03

UNIXのシェルやDOSコマンド PowerShellを使ってみようと考えた時、どうしても、DOSコマンドとは比較にならないほどのコマンド(コマンドレット)の数に戸惑いますが、既に知っているUNIXのシェルやDOSコマンドは使えないのでしょうか。 エイリアス PowerShellのコマンドレットは、DOSやUNIXのコマンドとしてエイリアス(別名定義)設定されています。 どのようなエイリアスが登録 ...

2018/11/29SEO対策

SEO対策

2018/11/29

SEOで重要なポイントを占める<head>に記述するメタタグです。 きちんと書かなければ「SEO的」には不利に働きます。 <head>に書くものは基本的にはユーザーに見えないので「おざなり」にしているサイトなども散見されますが、ここはきちんと書いておいた方が無難です。 <head>に記述するメタタグ <head>に書く必須なメタタグは以下のものがあり ...

2018/11/29JavaScript

プログラミングに関する記事

2018/11/29

Javascriptでは数多くの処理の実行時間を計測する方法がありますが、「デバッグコンソールに表示さえできればいい」というのであれば「console.time」と「console.timeEnd」メソッドを利用するのが簡単でおすすめです。 Javascriptで簡単に処理の実行時間を簡単に計測する方法 「console.time」と「console.timeEnd」メソッドは渡す引数の値を同じに ...

2018/11/28JavaScript

プログラミングに関する記事

2018/11/28

Javascriptで指定された生年月日から年齢を計算します。

2018/10/05PowerShell

プログラミングに関する記事

2018/10/05

Excel(VBA)からPowerShellを実行して、結果をセルに出力してみる 今回は、前回目障りだったPowerShellの実行画面は非表示にして、実行結果も取得できるように工夫した実装を、Runメソッドを使った方法で試してみます。 Runメソッドを使うと、PowerShellの実行結果をテンポラリーファイルに保存する必要があるため、少し実装が膨らみますが、 処理の完了を待つことができるため、 ...

2018/10/05PowerShell

プログラミングに関する記事

2018/10/05

Excel(VBA)からPowerShellを実行して、結果をセルに出力してみる VBAからPowerShellを実行するには、WshShellオブジェクトを使用しますが、Execメソッドを使って実行すると、PowerShellの実行画面が表示されてしまい、目障りです。 実行方法には、Execメソッド以外に、Runメソッドを使用する方法もあり、それぞれ下のような特徴があります。 Runメソッドは、 ...

2018/10/05Androidアプリケーション

2018/10/05

Androidアプリケーションの開発に際し、AndroidのバージョンとAPIレベルの対応関係について少し調べてみました。 AndroidのバージョンとAPIレベルの対応関係 プラットフォーム APIレベル コードネーム 公開日 Android 1.0 1 Base 2008/09/23 Android 1.1 2 Base 1_1 2009/02/09 Android 1.5 3 Cupcake ...

2018/09/10スタイルシート

プログラミングに関する記事

2018/09/10

CSSではみ出し部分を三点リーダー(…)で省略するのは「text-overflow: ellipsis;」を利用することで意外と簡単にできます。