ROBOT PAYMENT Engineers Blog

株式会社ROBOT PAYMENTのテックブログです

決済システムにおける.NET(C#)事情

こんにちは。決済システムでエンジニアをやっております hoshino33 です。
今回は決済システムの.NET(C#)の歴史を紐解いていきたいと思います。

決済システムにおける開発

ざっくりですが主に以下を開発しております。

  • カスタマーサポート
    • 弊社で利用する管理画面
  • コントロールパネル
    • 利用店舗様で利用する管理画面
  • 決済フォーム
  • バッチ関連

決済システムにおける.NET(C#)の歴史

2015年頃

私が追えたのは2015年頃になりますが実際はもっと古くから稼働しているようです。

情報が少し曖昧なのですがおそらくこのあたりです。

  • Visual Studio 2013
  • C# 5
  • .NET Framework 4.5
  • ASP.NET Web Forms

2016~2018年頃

割愛しておりますが2016~2018年頃でも各種バージョンアップはされています。

2019年頃

私が入社した時期はこのあたりです。基本的には上記のサービスはこちらで開発されていました。

  • Visual Studio 2015
  • C# 6
  • .NET Framework 4.6
  • ASP.NET Web Forms

2020年頃

もともとバージョン上げたいという話は合ったのですが、正直なところ上げないといけない理由(サポートが切れる等)がないと、なかなか上げずらい状況でしたが、ちょうどインフラ環境をオンプレからAWSへの移行がありその際にバージョンを上げました。

余談ですがC#をやめJavaでリプレイスするという計画もありました。

  • Visual Studio 2019
  • C# 7
  • .NET Framework 4.8
  • ASP.NET Web Forms

2021年頃

決済フォームのリニューアルにつき一部のリンク方式の決済はこちらで開発しております。この時期なら、なんで.Net Coreじゃないの?と思われている方も多いと思いますが既存の処理を利用する都合上.NET Frameworkを切り離すことは難しいと判断し、大きな変更点としてはASP.NET MVCとなっております。

  • Visual Studio 2019
  • C# 7
  • .NET Framework 4.8
  • ASP.NET MVC

2022年頃

現在開発中なのであまり詳しくは書けませんがこちらで開発しております。こちらは決済フォームのリニューアルとは違い、切り離すことが可能なためせっかくなので最新でやってみようとなっております。現状はこちらもWindows環境ですが、今後Windows環境以外に乗せることもできますしね。

  • Visual Studio 2022
  • C# 10
  • .NET 6

決済システムの現在

現在は以下の状態になっております。

決済システム

決済システム

まとめ

主なサービスはまだまだ.NET Frameworkで動作していますが、現在の開発では.NET 6を取り入れております。もちろん運用にあたり.NET Frameworkを触る機会は多いですが今後少しずつ.NETに移行していければ.NET Frameworkから脱却し.NETになります。また、脱Windowsもできるようになります。現在、.NET 7 Preview 1も出ているので今後対応も必要になってきますので比較的に新しいものを触る機会もあると思います。

We are hiring!!

絶賛仲間募集中です。

hrmos.co