restofwaterimpのぎじゅつMemo

SIerに所属。企画から運用まで幅広くやってます。C#中心に書いてます。

【C#】pythonのitertools.permutationsをC#で書いてみた。

python なら 簡単に順列の表現ができる・・・が、C#ではどうやってやるんだ?と 考えてもよくわからなかったので、python のitertools.permutationsの内容をC#で置き換えてみた。 pythonのコードはこちらに記載されている。 https://docs.python.org/3/libra…

【メモ】LINQを用いた計算について

C#以外の言語でMapやReduceなどを利用することが多いが、C#だとLINQでできてしまうので、便利なことが多い。 普段、仕事で使っている場合はLINQ to EntityかObjectを利用することが多く、ほとんどが 「Select」「Where」で利用することが多い。 Aggregateを…

【メモ】安全確保支援士の学習

2022年秋の安全確保支援士の受験をしました。 結果は・・まだわかりませんが、今回試した方法を記載します。 事前スペック 仕事ではあまりネットワークやセキュリティに関することはしていない(クラサバがメイン) 2022年春にネスペを受験したので、少しは知…

エリック・エヴァンスのドメイン駆動設計 輪読会 #2 に参加した(自分のメモ)

DDD

前回ひ引き続き、DDD輪読会に参加しました。 ddd-community-jp.connpass.com 今回は、聴きながら家のことでバタバタしており所々でしか聞けませんでした。 Discordeの参加者のみなさんのコメントを後追いして、ピックアップします。 前回の勉強会のメモ rest…

エリック・エヴァンスのドメイン駆動設計 輪読会 #1 に参加した(自分のメモ)

DDD

ドメイン駆動・・・。書籍持っているけど、一人で読み続けられず、挫折し、積読状態になっていたところ、 「オンライン」で開催しているじゃん、と見つけ、参加。 ddd-community-jp.connpass.com 昔に統計の書籍で輪読会には参加したことはあったが、「初学…

【メモ】MS Learn のsandboxの利用(Visual Studio2019を利用する場合)

勝手に自分がはまったのでメモ。 サーバレスアプリケーションのMS Learnの途中でVisual Studio で作成した function を azure functionにデプロイする という演習があり、途中でsandobxに接続するというのがあるのですが、 なかなかうまくいかず、てこずった…

【C#とpython】 リストとタプルと辞書と集合

リストとタプルと集合がよくごっちゃになるので整理 pythonではなくC#でいうと・・・ タイプ 使い方 C#だと pythonだと 特徴 リスト 添字 new List<T,T> をつける。t=["A","B","C"] add,removeで追加削除可能 pythonならappendなど 辞書 key-valueとして利用する </t,t>…

DevRelのトップランナーが語る「DevRelってなに?」【758Dev】に行ってきました

2/17(月)にNAGOYA INNOVATOR'S GARAGE で行われました、 DevRelのトップランナーが語る「DevRelってなに?」【758Dev】 を聞いてきました。 connpass.com DevRelって言葉は聞くのですが、エヴァンジェリストやアドボケイトと何が違うの? というのが自分の中…

明示的なインターフェイス

今読んでいる本で、「明示的なインターフェイス」という表現が出てきたが、馴染みがないので少し調べてみた。 C#実践開発手法 (マイクロソフト公式解説書)posted with amazlet at 19.07.17Gary McLean Hall 日経BP 売り上げランキング: 373,052Amazon.co.jp…

【C#】C#プログラミングのイディオム(12章)シリアル化、逆シリアル化(おまけ)

仕事で使いそうになったので、自身含めて、利用したことのないメンバーの為に整理する。 シリアル化、逆シリアル化の何を取るにしても、以下のSTEPで定義をすれば良さそう。 シリアライズ、逆シリアライズの為の入出力ファイルの指定(外部ファイル) シリアラ…

【C#】C#プログラミングのイディオム(12章)シリアル化、逆シリアル化(後半 JSON)

前回の続き 今回はJSON(JavaScript Object Notation)です。 データ転送時に利用される軽量なデータ記述言語の一つ。 JavaScript Object Notation - Wikipedia JSONでデータを転記する場合は DataConstractJsonSerializerを利用します。 シリアル化のガイドラ…

【C#】C#プログラミングのイディオム(12章)シリアル化、逆シリアル化(前半 XML)

前回の続き restofwaterimp.hatenablog.com 11章でXMLファイルの操作ということで、XDocumentやXElementを利用した 操作が中心であった。 この章ではファイルの操作ではなく、ファイルのやりとりが中心の説明となっている。 シリアル化、逆シリアル化って? …

【C#】C#プログラミングのイディオム(11章)XMLの操作

前回のつづき restofwaterimp.hatenablog.com XMLやJSONでデータ連係をすることもあるので、 その流れかなと。11章はXMLで12章はJSON プレーンテキストからXMLやJSONに変換し、他システムへ連係することがあるため イディオムに載っているのだろうと思われる…

【C#】C#プログラミングのイディオム(10章)正規表現

前回の続き restofwaterimp.hatenablog.com 10章は正規表現 Findメソッドでゴリゴリ書いてもいいけど、Regexを利用すれば簡単だし、わかりやすいよという章。 Macでコーディングだとエスケープシーケンスが ¥ではなく\なので、注意です。(バックスラッシュ) …

【C#】C#プログラミングのイディオム(9章)ファイル操作

前回の続き restofwaterimp.hatenablog.com 今回からは実践編に。 最初はファイルの操作。 アプリを構築するには外部ファイルとのやりとりがほぼある。 結構、例外とまでは行かないが、段階を踏んでファイルの読み書きをしないといけないが、 旧来のようにtr…

【C#】C#プログラミングのイディオム(8章)日付、時刻の操作

前回の続き restofwaterimp.hatenablog.com 今回は日付、時刻。 よく使うのはDateTimeとstringの型変換と 差分を求めることかな。 私が使う時に、元号や曜日というのはあまり使わない。 もっぱら差分比較とか、n日前、n日後を使うことが多い。 var dt1 = new…

【C#】C#プログラミングのイディオム(7章)ディクショナリの操作

前回の話 restofwaterimp.hatenablog.com 基礎編もあと2章。次はディクショナリ。 業務アプリでは、データベースより取得した値や、内部でkey-valueで処理した方が良い時に利用しています。 ただ、あまり詳細なことを知らずに使っていた部分もあったので、書…

【C#】C#プログラミングのイディオム(6章)配列とList<T>の操作

前回の続き restofwaterimp.hatenablog.com 配列に対してはLINQを利用することが一番多いと思います。 LINQ以前はfor文やforeachで回しながら、該当の値を探したりしていたのですが、LINQを利用するとすっきり求めることができます。 利用の仕方を知った後に…

【C#】C#プログラミングのイディオム(5章) 文字列の操作

C#

restofwaterimp.hatenablog.com の続き 次は文字列の操作。 知っているか知っていないかでコーディングできるできないが結構別れる。 書籍に記載のように見やすくもかけるし、ゴリゴリもかけるので、できればすっきり見やすく書けるようになりたいです。 記…

【C#】C#プログラミングのイディオム(4章) 基本イディオム

C#

restofwaterimp.hatenablog.com の続きです。 3章までは準備編となっていて、4章からは基本イディオムの紹介 仕事で使っているのが、C# 5.0(Visual Studio 2013)なのと、今までC#のバージョンを折ったことなかったので、C# 6.0以降で利用できるイディオムを…

【C#】C#プログラミングのイディオム(3章) ラムダ式とLINQの基礎と1章(プログラミングの基礎)

C#

図書館で本を借りて、 3章はラムダ式とLINQについて。 何気に、LINQを使っていたが、言語の進化の歴史については知らなかったので、そうだったんだ!という感じです。 この章ではラムダ式以前と以後について説明されております。 経緯は知らなかったので、メ…

【振り返り】Redmineをソフトウェア開発に導入して2年使ってみて(初期の頃)

今のお客さんの開発に携わり、割とプロジェクト管理に関するルールなども自社ルールに縛られず、お客さんのルールにも縛られずに入れる環境であったので、Redmine入れて管理したいなと思い導入してから約2年。 やってみて、個人的に便利 or あと少し・・・と…

メモ:文字列の部分分割とeval(数学パズルQ2)

今回のお題を実施するのには数値もしくは文字列の間に四則演算を入れなければならなかった。 そのため、自分は「部分参照とか文字列分割だね」と思い、 Ruby hoge[n,m] ・・・ nには開始位置(0開始)、mには終了位置を指定する C# hoge.substring(n,m)・・・n…

メモ:進数の変換と文字列の反転(数学パズルQ1)

数学パズルをやり始めました。 仕事でソースをチェックすることはありますが、コーディングすることが少なくなってきているので、楽しみながら、パズルを解いてます。 最近扱っている言語が、RubyとC#なので、書きやすさってのが比較できないかなと。 Q1で利…

【メモ】アスペクト指向とオブジェクト指向

達人プログラマーの新装版の言葉で余り知らない言葉を調べてまとめてます。。。 AOP(Aspect Oriented Programming) OOPでうまく分解できないソフトウェアの「様相」や「側面」といったものが存在し、 このような「様相」「側面」は複数のオブジェクトにまた…

WPF開発をするために読んだ本

昨日、自社の上司と面談を行った。 「これまでCOBOL開発ばっかりだったけど、どうやって今の開発ができるように馴染んだの?」と と問われ、 「本を読んで、ちょっとコーディングしてみて」と軽く伝えたのですが、 何を購入してたのかな〜〜というのをちょっ…

【メモ】ITCAの研修を受けて

プロジェクトマネジメントの体系をしる講座を受けた。 PMI系のPMBOKの講座を受けていたが、やっぱり体系集のため、うまく現場に還元できないなと感じていた。 どうも、PMI以外にPM系の体系をまとめているものは他にもあり、イギリス系、ドイツ系などあるよう…

スクラム始めました-スプリント5実施【#3】

ずいぶん間が会いてしまいましたが・・・ 4月より進めてきたスプリントもすでに5サイクル目に。 スクラムっぽくは実施しているが、なかなかうまくいかないなということが 多く出てきているので、自分の整理を込めて今回は記載。 <遂行が難しい点> 1.新…

スクラム始めました-スプリント1実施【#2】

前回の続き スクラムを始めました【#1】 - restofwaterimpのぎじゅつMemo まずはやってみようということでスタート。試行錯誤の中、徐々に良くなればいいやという思いを持ち、進めることに。 ■どういうものを作るのか ・とあるビジネスアプリを完全に作り変…

スクラムを始めました【#1】

スクラムの研修やセミナーを受けたことはないですが、 書籍から得た知識を元にスクラムを導入しようと決意し、明日からスプリント1を 始めることになりました。 何もかも初めての経験なので、忘れないように一定のタイミングで経験したことを文書に起こそう…