nprogram’s blog

気ままに、プログラミングのトピックについて書いていきます

Pythonでモジュールをインポートするときの構文

はじめに 関数の定義と関数を利用する処理を同じファイルに記述すると、コード行数が膨大になります。 また、関数を再利用しにくいです。 そこで、関数の定義を別ファイルに分けて、関数の定義(モジュール)を読み込む(インポート)方法をとります。 使用する…

Facadeパターン

はじめに Facadeパターンはこの記事が非常にわかりやすいと思います。 qiita.com

jupyterノートブックで、pandas_datareaderが見つからない問題の対処

エラーメッセージ --------------------------------------------------------------------------- ModuleNotFoundError Traceback (most recent call last) <ipython-input-1-86720d1c88cc> in <module>() 7 import matplotlib.pyplot as plt 8 import numpy as np ----> 9 import pandas_dataread</module></ipython-input-1-86720d1c88cc>…

C++17で便利そうな文法

C++

構造化束縛 #include <iostream> using namespace std; int main(void){ { int ar[] = {3, 1, 4}; // 配列を分解する。 // ar[0]がaに代入され、 // ar[1]がbに代入され、 // ar[2]がcに代入される。 // 分解する要素数は、配列の要素数と同じであること auto [a, b, c</iostream>…

Pythonでプライベートメンバ変数をクラスに定義する [Python]

Pythonのプロパティを使う方法 Pythonでは、クラスのカプセル化を実現する際は、プロパティを用いるほうがいいと思います。 getter, setterを作ったとしても、使用者側がそれを使ってくれる保証がありません。(´;ω;`) あまり良くない書き方 その3 getter/se…

クラスのメソッドのオーバーライドとsuperによる親メソッドの呼び出し [Python]

クラスのメソッドのオーバーライドとsuperによる親メソッドの呼び出し <コード> class Car(object): def __init__(self, model=None): self.model = model def run(self): print('run') class ToyotaCar(Car): def run(self): print('fast') class TeslaCar(…

業務で作成する設計ドキュメント

はじめに プロジェクトで作成する設計ドキュメントは、プロジェクトの計画や品質を守るためにも必須と考えています。 私が必要と考える設計ドキュメントを以下に記載しました。 設計ドキュメント 番号 項目 内容 備考 優先度 1 GQM 定量的にプロジェクトの目…

「Webプログラミングが面白いほどわかる本」を見て仮想環境を作成しました

はじめに 「Webプログラミングが面白いほどわかる本」を見て、仮想環境(Linux OS)の作成したので、その手順を記載します。 本は、こちらです。 https://www.kadokawa.co.jp/product/321712000860 本の通りに、Linux環境構築しようとする Linux 環境構築時に…

C++11, C++14, C++17を勉強したい

C++

はじめに C++11, C++14, C++17を勉強するときに役立つサイト、書籍を紹介します。 サイト C++11からC++17を駆け抜けるC++講座 https://qiita.com/yumetodo/items/68f58de43094519ae899 達人出版会 https://tatsu-zine.com/ ここで、書籍を購入すると、Amazon…

オブジェクト指向プログラミングの学習

はじめに オブジェクト指向型プログラミングを再学習します。 S.O.L.I.Dとは? オブジェクト指向プログラミングの5の原則のこと (1) S - 単一責任の原則 (Single Responsibility Principle) (2) O - 開放・閉鎖原則 (Open/closed principle) (3) L - リスコ…

Stateパターン [C#]

はじめに 状態を多く持ち、状態ごとの操作の動作が異なるプログラムで、恐ろしく長い条件分岐処理(if文, switch文)を見かけたことはありませんか? 私はよくあります。(^_^;) たとえば、簡単な電気ポットのプログラムがあるとします。このプログラムでは、以…

Compositeパターン [C#]

Compositeパターン Compositeパターンは、容器と中身を同一視して、再帰的な構造を作るパターンです。 利用者は容器と中身を意識せずに使用することができます。 Compositeパターンを使用しない場合は、容器と中身を意識する必要がある。 コード例では、Dire…

Abstract Factory パターン [C#]

Abstract Factory パターン [C#] Abstract Factory パターンを記載します。 Abstract Factoryパターンを使うことによって、クラスの使用者は、具象クラスを直接扱わずに、具職クラスのインスタンスを取得できる。 (Main関数で扱っているのは、抽象クラスのみ…

Factory Methodパターン [C#]

Factory Methodパターン インスタンス化したいオブジェクト(製品)を実行時の条件によって決めたい場合に利用します。 Factory Methodパターンはオブジェクト(製品)を生成する側と利用する側に分けて定義する必要があります。 分けておくことで、将来システム…

Simple Factory (C#)

Simple Factoryパターンについて 実際にはデザインパターンではありません。プログラミングのイディオムとなります。 クラス図 実行イメージ Cheeseピザの材料を準備します。 Cheeseピザを焼きます。 Cheeseピザをカットします。 Cheeseピザを箱に収納します…

Template Method パターン [C#]

TemplateMethodパターンとは Template Method パターンの目的は、ある処理のおおまかなアルゴリズムをあらかじめ決めておいて、 そのアルゴリズムの具体的な設計をサブクラスに任せることである。そのため、システムのフレームワークを構築するための手段と…

Python基礎学習 (クラスについて)

クラスについて Pythonでもクラスはあります。 クラスをインスタンス化して、オブジェクトを生成します。 クラスを生成したときに呼び出されるクラスのコンストラクタ処理(初期化処理)は、'''def init(self):'''の形式で呼び出されます。 __init__()にかかわ…

Pythonでシグモイド関数とシグモイド関数の微分をグラフで書く

はじめに 人工知能のアルゴリズムでは、シグモイド関数とシグモイド関数の微分が大切みたいです。 コードをメモっておきます。 なお、以下のコードで、でグラフの見出しを作成することが可能です。 複数のデータ例がある場合に、便利です。 plt.plot(x, y_si…

Pythonでファイルからデータを読み込んで、リストに格納する

Pythonでそのままリスト表示 csv形式のテキストファイルを読み込んで、リストに格納して表示するプログラムです。 テキストファイルは以下を用います。 データファイル Ichiro,100 Jiro,95 ただ単純にリスト表示すると以下のように、バックスラッシュが入っ…

株価データをプロットして、CSVファイルを出力する方法

はじめに jsmを使えば、日本の銘柄の株価を簡単に取得できます。 パッケージ・バージョン jsm : 0.19 コード import datetime as dt from pandas import DataFrame import jsm import pandas_datareader.data as web import matplotlib.pyplot as plt def jp…

Pythonで株価のスクレイピングをしてみました

はじめに Pythonで株価を取得してみました。 自分で、スクレイピングのコードを書かなくても、世の中には、その機能を提供するパッケージが複数あるようです。 Quandl pandas_datareader jsm ここでは、pandas_datareaderを用いて、株価を取得してみたいと思…

Pythonで簡単なグラフを書いてみました

はじめに matplotlibを使うことで、簡単にグラフを書くことができます。 環境 IDE : Visual Studio Code (Version 1.27.2) OS : Windows 10 (Version 1803) パッケージ・モジュールのバージョン Python 3.7.0 matplotlib 2.2.3 簡単グラフを書く コード1 imp…

整数値をアスキーコードに変換する方法 (_itoa_s関数使用)

C++

はじめに 例えば、124や0x2Fなどの整数値をアスキーコードに変換しようとする場合は、_itoa_sを使うと簡単に変換できます。 関数仕様については、MSDNのドキュメントをご確認ください。 errno_t _itoa_s( int value, char *buffer, size_t sizeInCharacters,…

WPF DataTemplateの学習

はじめに WPF DataTemplateの学習は、以下のMicrosoftのサンプル(DataTemplatingIntro)とドキュメントを合わせて確認するのがいいと思います。 github.com データ テンプレートの概要 https://docs.microsoft.com/ja-jp/dotnet/framework/wpf/data/data-temp…

Pythonの基礎を記載します

はじめに Pythonを学ぶため、Pythonの基礎を本ページに記載します。 関数 関数の引数は、型がないので、注意が必要です。attack関数の引数は、文字列なのです。 パラメーター(引数)が1つの場合 def add_sound(attack): for i in range(5): # 5回繰り返す pri…

WPFのよさそうなサンプル

https://msdn.microsoft.com/ja-jp/library/mt270964.aspx

Qiitaおすすめ記事

この記事はおすすめです。 qiita.com

MicrosoftのWPFのSampleの充実度が素晴らしい

はじめに WPFの学習はこれを見れば、把握できそう。 github.com

SQL基礎学習

SQL

はじめに データベースを扱うには、SQLを学ぶ必要があります。本記事では、学習のために、役立つリンクを記載します 内容 (1) Oracel Acpplication Express (APEX)を使用して、SQLを学習することについて記載された記事です。 インターネットで、Oracel Acpp…

Visual Studio 2017で、クラス図を自動生成しましょう

はじめに プロジェクトが大きくなればなるほど、コードを読んで、クラス図を作成する作業は大変になります。 Visual Studio 2017を使用すれば、プロジェクトからクラス図を自動生成することが可能です。 環境 Visual Studio Community 2017 (Version 15.7.4)…