Event : Visual Studio Users Community Japan #1
Date : 2019/09/14
ソフトウェア/サービス開発において最も後回しにされるものの代表が「パフォーマンスの向上」です。C#/.NET の最大の武器は開発生産性ですが、C# 7.0 以降はパフォーマンス向上のための機能追加が多数行われています。いくつかのポイントを押さえることで実装時からより高速なコードを書くことができるようになります。
このドキュメントでは、そんなポイントとなる箇所をふんだんにお届けします。
2019/10/16
初心者向けCTFのWeb分野の強化法
CTFのweb分野を勉強しているものの本番でなかなか解けないと悩んでいないでしょうか?そんな悩みを持った方を対象に、私の経験からweb分野の強化法を解説します。
How to strengthen the CTF Web field for beginners !!
Although you are studying the CTF web field, are you worried that you can't solve it in production?
For those who have such problems, I will explain how to strengthen the web field based on my experience.
(study group) https://yahoo-osaka.connpass.com/event/149524/
Event : Visual Studio Users Community Japan #1
Date : 2019/09/14
ソフトウェア/サービス開発において最も後回しにされるものの代表が「パフォーマンスの向上」です。C#/.NET の最大の武器は開発生産性ですが、C# 7.0 以降はパフォーマンス向上のための機能追加が多数行われています。いくつかのポイントを押さえることで実装時からより高速なコードを書くことができるようになります。
このドキュメントでは、そんなポイントとなる箇所をふんだんにお届けします。
2019/10/16
初心者向けCTFのWeb分野の強化法
CTFのweb分野を勉強しているものの本番でなかなか解けないと悩んでいないでしょうか?そんな悩みを持った方を対象に、私の経験からweb分野の強化法を解説します。
How to strengthen the CTF Web field for beginners !!
Although you are studying the CTF web field, are you worried that you can't solve it in production?
For those who have such problems, I will explain how to strengthen the web field based on my experience.
(study group) https://yahoo-osaka.connpass.com/event/149524/
15. 使ってみる
• とりあえずIOを書きます
std::ifstream ifs(name, std::ios::binary);
std::valarray<unsigned char> res;
res.resize(256 * 256);
for (auto& c : res)
ifs.read(reinterpret_cast<char*>(&c), 1);
std::ofstream ofs(name, std::ios::binary);
for (auto& c : data)
ofs.write(reinterpret_cast<const char*>(&c), 1);
16. 使ってみる
• とりあえずIOを書きます
std::ifstream ifs(name, std::ios::binary);
std::valarray<unsigned char> res;
res.resize(256 * 256);
for (auto& c : res)
ifs.read(reinterpret_cast<char*>(&c), 1);
std::ofstream ofs(name, std::ios::binary);
for (auto& c : data)
ofs.write(reinterpret_cast<const char*>(&c), 1);
可変長だけど可変長じゃない!
17. 使ってみる
• あとは処理を書くだけ
auto data = readimg("nico.bmp");
data = (unsigned char)(192) - data / (unsigned char)(2);
writeimg("result.bmp", data);
18. 使ってみる
• あとは処理を書くだけ
auto data = readimg("nico.bmp");
data = (unsigned char)(192) - data / (unsigned char)(2);
writeimg("result.bmp", data);
暗黙の変換はしてくれません
19. 使ってみる
• あとは処理を書くだけ
auto data = readimg("nico.bmp");
data = (unsigned char)(192) - data / (unsigned char)(2);
writeimg("result.bmp", data);
20. 使ってみる
• あとは処理を書くだけ
auto data = readimg("nico.bmp");
data = (unsigned char)(192) - data / (unsigned char)(2);
writeimg("result.bmp", data);