강의

멘토링

로드맵

Inflearn brand logo image
BEST
Programming

/

Programming Language

C programming that is deeply reminiscent

This course covers topics for those who have completed basic studies of the C language, such as compiler theory, stack frame structure, multi-threading, virtual memory structure, security vulnerabilities, and secure coding. It is highly recommended for those who wish to become experts in the C/C++ field, or those who majored in CS or have similar skills!

(4.9) 79 reviews

1,703 learners

  • nullnull8537
c언어
C
kernel
secure-coding

Reviews from Early Learners

What you will learn!

  • Developers who want to go beyond the beginner level of the C language

  • C language structure in connection with compiler, computer architecture, and operating system

  • Memory debugging techniques and stack frame principles and structure

  • What is a security vulnerability and the core principles of secure coding

  • Multithreaded coding techniques

C Programming, Made More Powerful! 💥

I only know the coding language grammar
Can you develop 'well'?

😥 “I have a hard time understanding what a compiler is.”

🥲 “I want to be as good at C as a major, but something is lacking.”

🤔 “It’ll be hard to start studying CS again now...”

The coding craze has opened up a world where anyone can become a programmer. However, companies are complaining about a talent shortage, and many aspiring developers are worried about finding a job. Why? Because so few people have truly "properly" learned programming. Everyone learns programming languages and masters their grammar. However, few deeply consider or understand why they have become that way or how they operate .

For example, what about compilers ? Even working programmers, unless they majored in CS, often don't know much about compilers. This is because they've largely avoided them. However, one of the essential theories for developers to advance to the next level is compilers. However, it feels difficult to revisit CS studies now.

“Actually, it takes four years !”

Computer science majors dedicate four long years to becoming developers. We often overlook the fact that coding, which is often perceived as something anyone can do, actually requires over four years of study.

Therefore, in order for beginners to move on to the next step, they need to make an effort to learn the theories such as how compilers work, grammar relationships of languages, programming theories related to computer architecture (virtual memory, multi-threading) , security (remote code execution vulnerabilities) , and secure coding.

Therefore, the subject and core goal of this lecture is to learn such theories and principles and secure competitiveness .


I want to take a leap forward
If you are a C language developer!

The goal is one: to acquire C programming skills that surpass the level of a CS major !

✅ Those who have already studied the basic grammar of the C language but feel that something is lacking

✅ Prospective majors who want to study the department in advance before majoring in CS (but only those who know the C language and data structures)

✅ Developers who want to experience compiler theory and gain a deeper understanding of programming languages.

✅ Job seekers who want to be competitive as developers, not just learn coding that “anyone can do”

It's said that training a single C/C++ developer typically takes two to three times more time and effort than training a Java developer. However, even Java experts ultimately require the same level of effort (or more) as C/C++ experts to handle troubleshooting and advanced theories. Ultimately, while they may be starting from different fields, there's a point where all the theories converge.

The topic and core goal of this lecture is to understand the essential theories that correspond to that point of contact .


Must-know for practical developers
Covers the core content.

💡 For those who feel a lack of CS knowledge as a C language developer but feel burdened by the burden of actually learning, this book will help you briefly understand core CS theories, such as compiler theory and system theory. It provides appropriate direction for beginner developers who want to differentiate themselves or leap to the next level.

  1. Reorganizing the basics of the C language
  2. Compiler, computer architecture
  3. Functions including stack frame structure and principles
  4. Synchronous/asynchronous file input/output
  1. multithreading
  2. Advanced theory of variables and constants
  3. Intermediate theory of compiler optimization and functions
  4. Static/dynamic library development
  5. Security and Secure Coding

This course is divided into ten sections. It covers essential knowledge for all practicing developers, starting with an understanding of the C language and compilers, and progressing to systems programming theory and secure coding.

Compiler Components
Abstract Syntax Tree (AST) and IR

Please check your player knowledge !
A basic understanding of C language grammar and data structures
is required.

This course is not for beginners. It's an intermediate level course, assuming a basic understanding of C language grammar and theory (such as pointers) and data structures . It also assumes a basic understanding of the theories discussed in the lecture, " Become a Computer Science Major by Memorizing Broadly and Shallowly ."


Q&A 💭

Q. Aren't you going to cover C language grammar?

Yes, this course is for those who have already learned the C language and data structures. It does not cover introductory-level theory.

Q. Is it okay for Java programmers to listen?

If you have experience learning the C language and have some level of knowledge about pointers, it doesn't matter.

Q. Is it possible to practice on macOS and Linux environments?

While it's fine to listen to the theory, it's highly recommended to use the Windows 10 + Visual Studio 2022 development environment because it covers the specifics of how to use the tools.

💾 Training Environment & Learning Materials Guide

  • This course will be taught using Visual Studio 2022 Community Edition on Windows 10. While the theoretical portions of the course can be taken in other environments, we strongly recommend using this environment, as it covers specific tool usage.
  • This is an intermediate course that does not explain data structures and basic C language grammar and theory (pointers, etc.).
  • We provide class PPT materials and example files used in each class.

A collection of lectures that are even better when viewed together 📺

Recommended for
these people

Who is this course right for?

  • People who have already studied the C language but feel it is lacking

  • People who want to learn C language properly at a major level

  • Developers who want to learn background theory before studying reversing

Need to know before starting?

  • Theories mentioned in the course 'Becoming a Computer Science Major by Memorizing Broadly and Shallowly'

  • Understanding C language basic grammar and pointers

  • Understanding data structures

Hello
This is

37,006

Learners

2,150

Reviews

1,098

Answers

4.9

Rating

24

Courses

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

Curriculum

All

46 lectures ∙ (11hr 17min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

All

79 reviews

4.9

79 reviews

  • amsheep님의 프로필 이미지
    amsheep

    Reviews 3

    Average Rating 5.0

    5

    15% enrolled

    I learned and used it in college, and I learned and used it again. For me, it is the C language that makes me feel that I am still lacking every time I learn and look for it. It is not easy to find the lectures I need related to the C language, but I came to Inflearn after searching for them. I chose it without asking or questioning. I have grown a lot with the books of the developer who is easy to read for a long time, so I am excited to study hard with a new lecture. While listening to the lecture, I have organized the reference content such as the standard document related to threads and VS support well. Thank you. Starting with the introduction of "Section 0. Before Entering" First, I will listen to the lecture on multi-threading and security first and read the lecture from the beginning. Thank you. Happy New Year, developer who is easy to read~ And happy New Year to everyone who reads this article~

    • nullnull8537
      Instructor

      Wow~~! Thank you for your good evaluation and feedback. The good thing about the lecture is that I can listen to it in the order I want. I hope you use the method that is most efficient for you and get good results. I worry that my book and lectures may have had many shortcomings... I will continue to reflect on myself and continue to improve the areas that need improvement. If you have any suggestions for improvement, please let me know. I will actively consider additional filming. Thank you.

  • wooljs님의 프로필 이미지
    wooljs

    Reviews 1

    Average Rating 5.0

    5

    20% enrolled

    I'm listening carefully!

    • nullnull8537
      Instructor

      Thanks for the feedback. Feel free to ask questions anytime. ^^

  • devyilee2224님의 프로필 이미지
    devyilee2224

    Reviews 4

    Average Rating 5.0

    5

    43% enrolled

    I've always been interested in framework structures, and the part about "separating file processing and UI" was a great help to me!!! Thank you!!!!

    • nullnull8537
      Instructor

      Thank you for the good review. I was worried about how that part would be evaluated... I'm glad to receive good feedback. ^^

  • redlien님의 프로필 이미지
    redlien

    Reviews 5

    Average Rating 4.4

    Edited

    3

    100% enrolled

    It is indeed a great video, but from my perspective as someone who has completed the original "Studying C Language Viciously," there were many disappointing aspects. There was a lot of overlap with existing content rather than new material, and I wish there had been more demonstrations in an x64 environment rather than primarily in an x86 environment. Nevertheless, I appreciated the opportunity to learn more in-depth content. Thank you.

    • nullnull8537
      Instructor

      It seems you had many disappointments from a cost-effectiveness perspective. Regarding that, this lecture was designed for those who studied C a long time ago and need to study it again. I imagine that's why the disappointment might have been greater. Thank you. :)

  • basketcree1171님의 프로필 이미지
    basketcree1171

    Reviews 5

    Average Rating 5.0

    5

    100% enrolled

    This was a lecture you absolutely had to attend. It was so good.

    • nullnull8537
      Instructor

      Wow~~! Thank you for your good review. I will open the lectures that you can listen to next soon. ^^

$84.70

nullnull8537's other courses

Check out other courses by the instructor!

Similar courses

Explore other courses in the same field!