VB6用ステップカウンタを使い、移行見積もりする

実にベタなツールではあるけれど、VB6 用のステップカウンタを作ったので github moonmile/vb6check: VB6移行の規模見積もりツール に公開しておきます。 使い方 使い方は簡単で、.vbp ファイルか、フォルダを指定して VB6プロジェクトのファイル(.bas, *.frm)を拾ってきてステップカウントします。 こんな風に、全コード/コードのみ/空行抜きで取得できるので、Excel に出力してから、フィルターを掛けたり sum を使ってカウントすれば ok です。 全コードは、単なるファイルの行数 コードのみは、*.frm の先頭にあるデザイン部分を抜いた行数 空白抜きは、所謂コメントや空行を抜いたときの行数 これ自体で何ができるという訳ではないけれど、つまりは VB6 から C# へ移行するときのコード調査として使います。 使いどころ ここからが本格的な使い方で、 … 続きを読む

カテゴリー: 開発 | コメントする

Laravel で wordpress を読み込む(自前MVC)

ひとまず、Laravel に慣れるために MVC パターンを直接扱ってみる。先に InfyOm を使って自動作成してみたのだが、エラーが頻発してよくわからん。ので、そういうときは手作業でやってみるに限る。 目的としては、 wordpress のような既存のデータベースを読み込む マスター管理のような CRUD ベースのページを自動作成する 場合によっては、CRUD な Web API も自動生成する。 場合によっては、クライアントから呼び出すコード(C#, nodejsとか)も生成してしまう。 まずは、xampp で wordpress をインストールして、mysql 部分だけアクセス可能にしておく。 composer でインストール&動作確認 適当なフォルダーを作成して、Laravel をインストール composer create-project –prefer-dist larav … 続きを読む

カテゴリー: 開発, PHP | 1件のコメント

Azure Functionsで初めてのPython関数を作ったら躓くの話

なんとはなしに、Function AppをPythonで作ってみるテストで、いきなり躓いたのでメモ。 Azure で初めての Python 関数を作成する | Microsoft Docs https://docs.microsoft.com/ja-jp/azure/azure-functions/functions-create-first-function-python 基本的な手順は、上記に書いてあるので、素直にコマンドを打てばいいのだけど、どうやら一カ所だけ「書いてない」ので、そこで頓挫してしまう。 仮想環境をアクティブにする python3.6 -m venv .env source .env/bin/activate プロジェクトを作成する Pythonの仮想環境で動かしているので、”–worker-runtime python” は必要なし … 続きを読む

カテゴリー: 開発 | Azure Functionsで初めてのPython関数を作ったら躓くの話 はコメントを受け付けていません。

Access形式でバックアップしてSQL Serverに手軽に戻すC#な方法

SQL Server Management Studio の「データのエクスポート」を使うと、SQL Server から手軽にバックアップが取れる。バックアップというよりも、どこかに移動したいときに使うわけだが、Access 形式で取るのが一番手軽だと思う。 問題 顧客の SQL Server なデータを、開発用の SQL Server に吸い上げて、検証環境を作ることはよくやる。確実な方法は、SQL Server のバックアップをコピーするのがベストなのだけど、残念ながらバージョンが違うとこれがうまくいかない。バージョンが違うのだから、バージョンを揃えた環境を整えるのが筋なんだけど、古めのデータベース(SQL Server 7 とか)とか微妙な差異があって、いろいろなバージョンを揃えておくのも以外と面倒くさい。できれば、開発環境の SQL Server をそのまま使っておきたい。 SSM … 続きを読む

カテゴリー: 開発, C# | Access形式でバックアップしてSQL Serverに手軽に戻すC#な方法 はコメントを受け付けていません。

サブドメインでアクセスしてDockerコンテナの指定ポートに割り当てる

ほどよく、Azure Functions と Docker の組み合わせがうまくいくことが分かったので、実運用でのパターンを考えてみる。Docker は内部のポートを外部のポートへ -p オプションを使ってフォワードして、外部から http://servername.com:8000/ のようにアクセスできる。だが、こうすると Docker を動かして機能を増やすたびにポートを開放しないといけなくて、結構リスキーだったりする。 ならば、host://func.servername.com/ のようにサブドメイン名をしておいて、これを http://servername.com:8000/ にフォワードしてくれるように設定すれば、開放するポートは 80 番だけで済む。これを実現するのが「リバースプロキシ」なんだけど、Apache や Nginx でその機能がある。 Apacheでリバースプロ … 続きを読む

カテゴリー: Azure, Docker, NET Core | サブドメインでアクセスしてDockerコンテナの指定ポートに割り当てる はコメントを受け付けていません。

Docker Toolbox で Azure Functionsを動かす

Hyper-V が動かない環境の場合、Docker Toolbox を使えばよいので、使ってみる。内部で VirtualBox を動かしているので、仮想OSを VMWare で作っていると変わらないのだが、UI で操作できる「Kitematic」が意外と便利なので。 Docker Toolboxのインストール:Windows編 – Qiita https://qiita.com/maemori/items/52b1639fba4b1e68fccd ツールをインストールすると、3つのアイコンが作られる。Docker Quickstart Terminal は通常のコマンドライン、Kitematic (Alpha) が GUI ツールである。 Kitematic を起動して Docker Hub のユーザー名とパスワードを入力する。ここから Docker イメージをダウンロードする … 続きを読む

カテゴリー: Azure, NET Core | Docker Toolbox で Azure Functionsを動かす はコメントを受け付けていません。

Azure FunctionsのDocker版をローカルで起動する

Azure Functions で「なでしこ」が動くとか「COBOL」が動くとかという記事があったハズなのだが、これ難しいのでは?とは思っていたが、実は内部で Docker が動いているだけだった、という話。 Azure でサーバーレスなFunction Appを作るときに、現状ではWindows環境にすると「dotnet」と「node」、「java」が選べるようになっている。それぞれ VM 環境を Azure 側で用意してそれの上で動かすのだから、このあたりの環境は Azure = Microsoft 社が用意するんだろうなぁというのが想像できる。 もうひとつ、Linux 環境というのがあって、こっちは .NET と JavaScript と python が選べる。Windows のほうに python のがないのは何故?とか PHP は何処で動かすのか?と不思議に思っていたのだが、実 … 続きを読む

カテゴリー: 開発, Azure | Azure FunctionsのDocker版をローカルで起動する はコメントを受け付けていません。

開発環境を仮想OS上に保管する実験

最近の開発環境と言えば、Docker で構築しておいてビルド環境を配布、というのが主流なのだが、Visual Studio 絡みで開発環境を用意するとそうもいかない。.NET Core で作っておけば Docker のコマンドラインで済むのだけど、Visual Studio でビルドということになると(*.sln を呼び出して msbuild しても状況は変わらない?Windows の GUI が必要だから)、なんらかの形で OS ごとまるっと開発環境を残すことになる。 クライアントアプリの開発となると、GUI が必須になるので、 顧客の主たる OS(検証機込み) 開発環境としての Visual Studio 動作環境としての SQL Server 諸々 ということになって、OS/Visual Studio/SQL Server はそれぞれ当時のバージョン込みで用意しておくことになる。顧客 … 続きを読む

カテゴリー: 開発 | 開発環境を仮想OS上に保管する実験 はコメントを受け付けていません。

Azure Function から Redmine の API を呼び出す

サーバーレスな Azure Functions の練習がてら、Redmine の API を呼び出してみるテストを晒しておきます。Azure Functions の詳しい説明は、https://docs.microsoft.com/ja-jp/azure/azure-functions/ を参考にしてもらうとして、一番手軽なのは HttpTrigger である。普通の Web API と同じように URL アドレス経由で呼び出して、指定のファンクションを実行する。「ファンクション」とは言っても、F# とか Scala のような「関数型」のファンクションではないのだけど、ある意味「ステートレス」ということでは、AWS の Lambda もファンクションだし、Azure Functions もファンクションなので、「関数」って訳語が付けられているのだが。果たしてこれは、正しいのか?ってのは微妙 … 続きを読む

カテゴリー: 開発, Azure Functions, C# | Azure Function から Redmine の API を呼び出す はコメントを受け付けていません。

ClosedXMLとMVVMパターンを良好な関係にしてみる

MVVMパターンを考えるとき、ViewはXAMLとかGUIだろうという固定観点があるが、実はそうではない。と思うのだがどうだろうか?いわゆる、ASP.NET MVC の View にWeb APIを割り当てると View ってのは XML や JSON になる。クライアントから見れば XMLやJSON はデータだが、MVCパターンで作られたWebアプリにしてみれば、XMLやJSONをViewに見立てることができる。実際、Web APIを作るとき複雑なXMLを返す場合は、Viewの機能を使ったほうが楽だったりする。 ClosedXMLをViewに見立てる CloseXMLを使って、Excelに値を書き込もうとするとき Cell(row,column)あるはCell(“A1”)を使うわけだけど、ここの書き込み先をXAMLのバインドのように書けないだろうか?ってのを思いつ … 続きを読む

カテゴリー: 開発, C# | ClosedXMLとMVVMパターンを良好な関係にしてみる はコメントを受け付けていません。