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!
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~
5.0
재스기
20% enrolled
I'm listening carefully!
5.0
home
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!!!!
What you will gain after the course
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.
Reorganizing the basics of the C language
Compiler, computer architecture
Functions including stack frame structure and principles
Synchronous/asynchronous file input/output
multithreading
Advanced theory of variables and constants
Intermediate theory of compiler optimization and functions
Static/dynamic library development
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 📺
I am the owner of the "NullNull Developer TV" channel and a developer who has been navigating the sea of IT technology for over 30 years. Nice to meet you. ^^
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~
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.