강의

멘토링

로드맵

Inflearn brand logo image
BEST
Programming

/

Desktop Application

Windowsシステムプログラミング - 基本

Windows系のプログラマになる考えがある人なら誰でも聞かなければならない必須講義!

  • nullnull8537
저자 직강
win32api
C
vc++
system-programming

学習した受講者のレビュー

こんなことが学べます

  • Windowsシステムセキュリティシステムに関する理論

  • マルチスレッドプログラミングと同期技術

  • 同期/非同期ファイル入力/出力技術

  • 仮想メモリシステムとメモリ運用技術

  • プロセス管理と共有メモリベースのIPC技術

  • DLLライブラリの作成と活用

システムプログラミング基本の基本、
コアをしっかりと握ります!

C/C++ Windows開発者なら
必ず知っておくべきシステムプログラミング。

ジェフリー・リチャー『Windows Via C/C++』
あまりにも難しく感じられましたか?

システムプログラミングのバイブルと言われていますが、簡単に理解しにくい本『Windows Via C/C++ 5th edition』が理解できます!

ゲームサーバー開発者、Windowsアプリケーション開発者に注目!

ゲームをはじめ Windows分野のアプリケーション開発者を希望する方はC/C++、資料構造を学びますが、CS理論もある程度勉強します。判断をするようになります。

解決策は簡単です!高レベルの理解は、実際にはマイナーな暗記から始まるように、システムプログラミングの最も基本的なコア理論と例を完璧にすることです。

だから、こんな方におすすめです。

C / C ++ベースのWindowsアプリケーションを開発する必要があるすべての人

旧技術であるMFCやWin32 APIベースのアプリケーション開発者

ゲームサーバープログラマーを志望する方

オペレーティングシステムの理論をコードレベルで経験したいシステムプログラミング学習者


システムプログラミングの核心
わかりやすく説明します!

  • 1️⃣マルチスレッドプログラミング環境の理解と同期技術など、コア理論を理解することができます。
  • 2️⃣オペレーティングシステムを勉強し、触れた理論をコードレベルで再び経験し、CS知識の理解レベルがはるかに高くなります。
  • 3️⃣同期/非同期入出力をはじめ、オペレーティングシステムが提供するサービスを積極的に活用することで、高い性能を保証される実用型アプリケーションを開発できます。
  • 4️⃣高性能サーバーをはじめ、Windowsアプリケーションの開発に必要な各種理論や事例を自ら理解できます。

システムプログラミングに関する重要な理論を簡単に説明しました!


システムプログラミング学習に
必須必須理論。

学ぶべき理論を最大限に圧縮し、核心だけを入れました!

  • ✅ Windowsセキュリティシステム
  • ✅マルチスレッドプログラミング技術(生成と同期)
  • ✅ Win32 APIを使用した同期/非同期ファイル入出力技術
  • ✅仮想メモリシステム、ヒープ、メモリマップ
  • ✅共有メモリベースのIPC
  • ✅ DLLライブラリ作成手法

プロセスの実行と権限の継承

プロセスごとの独立した仮想メモリの確保とコミット

64KB割り当てサイズと4KBページメモリ構造

バイブル級の書籍で勉強するのは良い選択ですが、入門者にとっては決して簡単ではありません。


Q&A 💬

Q. Windowsアプリケーション開発者になるには、システムプログラミングを必ず学ぶ必要がありますか?

はい、必ず学ぶ必要がありますが、単にGUIだけを開発しても、最終的にシステムプログラミングで扱うほとんどの理論を正しく知っておけば問題解決が可能な場合が多いからです。

Q. ゲーム開発者を希望する就労生です。

ゲーム開発者であれば、システムプログラミングは必須ではありません。

Q. セキュリティソフトウェア開発者になるには、この講義を聞く必要がありますか?

V3のようなソフトウェアを開発したい場合は、システムプログラミングの理論は不可欠です。

Q. C言語、資料構造程度だけ勉強しましたが、それでもこの講義を聞くことはできますか?

はい、聞くことができますが、オペレーティングシステムを勉強していない場合は、内容が少し難しいかもしれません。

  • 関数ポインタ
  • 記憶クラス指定子とメモリ管理
  • スタックフレーム指定原理
  • バイナリファイル入出力

💾受講前に確認してください。

  • この講義は「Windowsシステムプログラミング - 基本」編で、今後「Windowsシステムプログラミング - アプリケーション」編が公開される予定です。
  • レッスンでは Windows 11およびVisual Studio 2022 Communityのバージョンを使用しています。
  • レッスンで書かれたPDFと完全なサンプルソースコードを提供します。
  • この講義は、C言語の理解と接続リストなど、線形データ構造の実装経験ある方のために準備した講義です。
    • C言語と資料構造そしてちょっとしたC++言語文法(全く知らなくても受講可能)
    • 講義「広く浅く覚えてコムボール専攻者になる」
    • 講義「熊本で簡単に学ぶ最小限のオペレーティングシステム論」
    • 講義「毒にさらされるCプログラミング」(最も重要な選手の知識)

こんな方に
おすすめです

学習対象は
誰でしょう?

  • Windowsシステム制御ソフトウェアの開発をご希望の方

  • セキュリティソフトウェアやゲームサーバーの開発を希望する方

  • C / C ++ Windowsベースのアプリケーションを開発する必要があるすべての人

前提知識、
必要でしょうか?

  • 毒にさらされるCプログラミング

  • データ構造の理解

  • 仮想メモリに関するオペレーティングシステムの知識

  • Windows環境での開発ツールの使用経験(cf. VSCode)

こんにちは
です。

37,006

受講生

2,151

受講レビュー

1,098

回答

4.9

講座評価

24

講座

널널한 개발자 TV 채널 주인장이자
30년 넘게 IT기술의 바다를 항해하고 있는 개발자 입니다.  반갑습니다. ^^  

カリキュラム

全体

40件 ∙ (11時間 10分)

講座資料(こうぎしりょう):

授業資料
講座掲載日: 
最終更新日: 

受講レビュー

全体

34件

5.0

34件の受講レビュー

  • wjdwlgns8096님의 프로필 이미지
    wjdwlgns8096

    受講レビュー 2

    平均評価 5.0

    5

    30% 受講後に作成

    • 널널한 개발자
      知識共有者

      좋은 평가 고맙습니다. :)

  • Sub님의 프로필 이미지
    Sub

    受講レビュー 3

    平均評価 5.0

    5

    30% 受講後に作成

  • sunny75님의 프로필 이미지
    sunny75

    受講レビュー 95

    平均評価 5.0

    5

    100% 受講後に作成

    (25/07/26/토 09:41) 강의의 많은 내용으로, 정말 많은 도움을 받고 있습니다. 동기화가 중요하다는 생각을 하게 되네요. 강의 중 주의사항에서 경험하신 내용을 말씀해 주시니, 좋은 것 같습니다. 좋은 강의 만들어 주셔서 감사합니다.

    • 널널한 개발자
      知識共有者

      정말 어마무시하게 달리시는 군요. 이제는 살짝 무서울 정돕니다. 아무튼 이 기세를 응원합니다. :)

  • 무무님의 프로필 이미지
    무무

    受講レビュー 6

    平均評価 5.0

    修正済み

    5

    100% 受講後に作成

    멀티스레드 환경에 대한 기초 공부 및 C언어에서의 입.출력 함수 및 함수포인터를 왜 배우는지 알게 해주는 과정이었습니다. ====== 이번에 시스템 프로그래밍을 공부하면서 및 C언어 입력,출력을 복습하게 될 계기가 생겼습니다. (2번 정도 봤지만 써야 될 상황이 없었어서 빠르게 넘겼었습니다.) 가장 어려운 파트는 WIN32 파일 입/출력 파트였습니다. 그 전엔 CS 기초지식 및 OS 운영체제 파트에서 눈에 익도록 봐서 적응에 어려움이 없었지만 해당 파트는 본 적도 없었어서 무슨 말인지 모르겠고... 예제를 어떻게 작성하라는지 모르겠다 하다가 3~4번 복습 하고 하루 휴식하고 보니 이상하게 내용이 간단하게 보이고 이해가 되었습니다. 물론 코파일럿과 GPT의 도움으로 자료형과 함수가 왜 호출되고 사용되는지 공부한 건 덤 입니다. === 위의 과정을 거치고 소켓 프로그래밍 - 네트워크 프로그래밍 학습을 가보려고 합니다. 마침 학원이라 컴퓨터가 많아서 컴퓨터 4대로 실습 할 수 있으면 좋다(?) 는 내용을 봤어서 공부하기 더할 나위 없다고 생각 합니다. === 마지막으로 현재 제가 겪는 상황들을 적는 것도 정신적으로 어려움을 겪으시는 분들께 도움되지 않을까해서 적어봅니다. (현재 자바 스프링 목표 백엔드 공부 기간 3개월째 (최소 1년 반 보는 중) 현재 저는 월~일 주 7일 근무를 돌리고 있습니다. (월-토는 새벽 6시 30분 - 10시 30분 / 일요일은 출퇴근시간 포함 아침 7시 - 저녁 10시) --- 저번 주부터 이번 주까지 돈에 관련되서 정말 많은 고민을 했습니다. 월요일부터 일요일까지 일을 해서 버는 돈은 160인데, 만약 공부를 포기하고 시간을 늘려서 일을 하면 260 ~ 430까지 받을 수 있는 상황인 것이죠. 그래서 차라리 일을 바짝 땡겨서 돈을 버는 것이 낫지 않나라는 충동적인 생각이 들었습니다. 그 충동의 원인은 현재 AI로 IT 업종 기준 자체가 상향평준화가 되고 제가 목표로 하고 있는 것이 서버 개발직군이 Google 개발자들의 코드리뷰로 학습하는 GPT 및 AI들이 그걸 못 따라올까? 앞 길을 모르겠는데, 돈을 미친듯이 바짝 땡기는게 낫지 않나.. 내가 과연 이 업계에 합격하고 경력이 쌓이면 AI보다 더 잘 할 수 있나? 등의 불안과 고민으로 우울증을 심하게 겪었습니다. 현재는 어제까지 3일 정도 푹 쉬고 마음을 정리했습니다. 정답은 없고 지금 하는 공부가 재밌기에 이대로 가자! 후에 상황이 어떻게 될지 모르니 돈은 최대한 모으자! 라는 방향으로 툴툴 넘기고 다시 공부를 하고 있습니다. 불안은 미래의 내가 더 잘 되기 위해 과잉 고민을 / 무기력은 정서적인 에너지를 충전하라고 신호를 보내는 것이라고 하더라고요. 다들 힘들시겠지만 화이팅 입니다!

    • 널널한 개발자
      知識共有者

      고민스러운 대전환의 시대를 살아가는 한 개인의 고민이 오롯이 드러나는 피드백 고맙습니다. 저 역시 비슷한 고민을 하고 있는 중년의 가장이라 더 마음이 가네요. 돈...정말 중요합니다. 어떤 연예인이 그런 말을 하더라고요. 사람은 가도 돈은 남더라는...자본주의 사회에서 자신의 이익을 추구하는 것은 매우 당연하지요. 학습도 경쟁력을 갖추는 좋은 수단 중 하나입니다. 그렇게 실력을 쌓아 돈도 많이 많이 버시기를 바라고 응원하겠습니다. 잘 되실 겁니다. 고맙습니다. :)

  • 시아님의 프로필 이미지
    시아

    受講レビュー 2

    平均評価 5.0

    5

    30% 受講後に作成

¥12,885

nullnull8537の他の講座

知識共有者の他の講座を見てみましょう!

似ている講座

同じ分野の他の講座を見てみましょう!