강의

멘토링

로드맵

Inflearn brand logo image
Programming

/

etc. (Programming)

7 Basic Principles of Software Development: How to Become a Great Programmer

Software quality is a habit! This course will teach you how to become the best programmer that companies want.

(5.0) 2 reviews

45 learners

  • drajin
개발원칙
요구사항분석
개발자취업
교수님 강의
Algorithm
C
software-design
Software Test
Coding Test

What you will learn!

  • How to become a great programmer

  • Principles for creating high-quality software

  • Basic qualities of programmers that companies want

A must-know for both job seekers and junior developers
7 Key Principles for Assessing Development Capabilities ✅

Software quality is a “habit.”

To become a great programmer, you need to have fundamental software development habits .

7 Principles of Software Development

  • Principle 1: Focus on the important requirements.
  • Principle 2: Find the best method.
  • Principle 3: Verify by design.
  • Rule 4: Read the code.
  • Rule 5: Write readable code.
  • Principle 6: Verify with unit tests.
  • Rule 7: Reduce system testing.

This lecture will cover these “basic software development habits.”
Every developer knows this, but not many put it into practice.
Explain the meaning of the principles through assignments . Ask questions like, "Why are these principles necessary?" and "How should they be implemented?"

Please be sure to watch the lecture introduction video📺.
I'll share the key takeaways based on my experience as a software architect.

This course explains the development capabilities required to develop high-quality software desired by companies, based on problems and educational materials designed to diagnose and train the SW development capabilities of overseas research institute personnel.

Many developers have the bad habit of relying on system tests. While system tests may be intuitive and clear, they are ineffective. Therefore, relying on system tests actually hinders the development of the fundamental skills required for software development.

To become a developer who can develop high-quality software that businesses need, you must understand and be able to implement the efforts that must be made before system testing .
I hope this course will help you take a step closer to becoming a software developer who sticks to the basics.


Learning content
Check it out.

This lecture explains the fundamental principles of software development by walking you through the process of developing a problem-solving Roman numeral calculator.

Section 1-1. Requirements Analysis

First, we analyze the requirements for the Roman numeral calculator problem. Specifying and analyzing requirements is the first step in software development. While it might be beneficial to understand and develop all requirements accurately, it's often a waste of time or a superficial understanding. Therefore, we must focus on the most important requirements.

Section 1-2. Design

This section describes the design phase activities for the Roman numeral calculator problem. The core of design is optimal design. Software has multiple solutions. Implementing and reviewing these solutions is inefficient. During the design phase, various solutions must be reviewed and the optimal method identified.

Section 1-3. Implementation

Implement the designed Roman numeral calculator. Read the code, imagine its operation, and implement it.

Section 1-4. Testing

We will verify the implemented Roman numeral calculator with tests. We will explain how to unit test it.

After taking this course, I recommend you try developing a Roman numeral calculator again. I also hope you become a software developer who adheres to the fundamental principles .

📢 Please check before taking the class.

  • Before attending this course, please be sure to solve the following problem : (Roman Numeral Calculator)
  • To take this course, you need programming skills sufficient to attempt Roman numeral calculator problems. Solving these problems and taking the course will allow you to experience and learn even more.
  • The course is taught in C, so familiarity with C is recommended. However, learning in other languages is also helpful.
  • The course uses Visual C++, but you are welcome to use other languages or IDEs.

Recommended for
these people

Who is this course right for?

  • People who want to become the best programmers

  • People who want to get better at software development

  • Anyone who wants to know how to develop high-quality software

  • Anyone who wants to know what kind of software developers companies want

Need to know before starting?

  • Programming skills to attempt Roman numeral calculator problems

Hello
This is

312

Learners

23

Reviews

10

Answers

5.0

Rating

3

Courses

소프트웨어 아키텍트 & 교육가

현) 보이는소프트웨어연구소 대표(2016~현재)
  - 삼성전자 소프트웨어 아키텍트 양성 및 인증
  - 소프트웨어 구조 설계 및 평가 교육 / 컨설팅

중앙대학교 소프트웨어 대학 겸임 교수(2018~2022)
  - 기초 컴퓨터 프로그래밍 - C/C++, JavaScript, Python

삼성전자(2003~2016)

Curriculum

All

7 lectures ∙ (1hr 30min)

Published: 
Last updated: 

Reviews

All

2 reviews

5.0

2 reviews

  • sunny75님의 프로필 이미지
    sunny75

    Reviews 95

    Average Rating 5.0

    5

    100% enrolled

    (25/07/23/수 20:28) 짧은 시간의 강의지만, token에 대해서 이해했고 강의 내용 좋았습니다. 좋은 강의 만들어 주셔서 감사합다.

    • 드라진
      Instructor

      고맙습니다. 좋은 소프트웨어 엔지니어가 되시길^^

  • 김정혁님의 프로필 이미지
    김정혁

    Reviews 1

    Average Rating 5.0

    5

    100% enrolled

    $17.60

    drajin's other courses

    Check out other courses by the instructor!

    Similar courses

    Explore other courses in the same field!