본문 바로가기
프로그래밍

프로그래밍 「 추천 편」초보 프로그래머는 좋은 직업을 빨리 찾기 위해 무엇을 배워야 합니까?

by grapedoukan 2023. 5. 29.
728x90

이 기사에서는 첫 번째 프로그래밍 언어 선택에 대한 생각, "프로그래밍 배우기"의 의미, 가능한 한 빨리 프로그래머가 되려면 배워야 할 사항을 공유합니다.

이 "프로그래밍 배우기"는 무엇을 의미합니까?

프로그래밍을 배우기 시작하는 것은 어렵고 동시에 쉽습니다. 이제 초보자를 위한 다양한 튜토리얼과 비디오를 찾을 수 있기 때문에 쉽습니다. 종종 그들은 무료입니다. 첫 번째 과제와 이론은 매우 간단하고 논리적으로 보일 수 있습니다.

또한 어렵습니다. 다양한 재료 중에서 선택하는 것이 매우 어려울 수 있기 때문입니다. 인터넷에는 너무 많은 리뷰가 있으며, 특히 초보자의 경우 독립적 인 리뷰와 사용자 정의 리뷰를 구별하기가 어렵습니다.

또한 대부분의 경우 무료 자습서는 처음에만 좋습니다. 방법 론적 관점에서 거의 고려되지 않습니다. 잘 선택된 코딩 작업이 거의 없으며 코드가 훌륭하고 올바른지 확인할 수 있는 방법이 거의 없습니다.

시작하는 것보다 계속하는 것이 훨씬 더 어렵다는 것이 밝혀졌습니다. 처음부터 많은 무료 자료가 있지만 더 멀리 갈수록 더 적습니다.

또한 초보자가 질문에 대답하기가 어렵고 프로그래밍을 배우는 것은 어떻습니까? 내가 그것에 대해 질문을 받으면 (또는 묻지 않더라도, meh), 나는 보통 학생들에게 다음과 같은 대답을합니다.

  1. 코드를 사용하여 특정 작업을 수행하는 방법(컴퓨터와 프로그래밍 언어 자체가 "생각"하는 방식)을 배웁니다.
  2. 향후 작업에 필요한 지식을 직접 얻을 수 있습니다.

첫 번째 요점은 매우 일반적입니다. 언어에 의존하지 않으며 (여전히 그렇지만 나중에 파이썬에 대해 쓸 때 작은 예를 들어 보겠습니다), 절대적으로 모든 잠재적 프로그래머가 필요합니다. 올바른 접근 방식과 좋은 멘토 (또는 사려 깊은 과정)를 통해 초보자는 첫 번째 작업부터 언어 구문과 함께 필요한 모든 기술을 습득 할 수 있습니다. 이러한 작업 중에는 두 개의 숫자 바꾸기, 최대값과 최소값 찾기, 숫자의 계승 계산 및 기타 간단한 알고리즘이 있습니다.

학습의 첫 단계에서 이러한 작업을 수행하는 것은 매우 중요합니다. 초보 피아니스트의 적절한 손 위치에 관한 것과 같습니다 : 오랫동안 손없이 연주 할 수 있지만 처음부터이 문제를 해결하는 것이 훨씬 쉽고 효과적입니다.

보편적인 문제 중 다음은 알고리즘과 데이터 구조입니다. 이 주제에 대해 많은 의견 차이가 있습니다. 사실 훈련 중에는 알고리즘에 많은 관심을 기울이지만 실제 작업에서는 표준 알고리즘이나 데이터 구조를 구현할 필요가 없습니다. 그들은 다소 인기 있는 모든 프로그래밍 언어에서 가능한 최선의 방법으로 오랫동안 구현되어 왔습니다.

따라서 대부분의 경우 잠재적 프로그래머는 학업 및 인터뷰 중에 만 발생합니다. 목록이나 배열의 요소를 정렬하고 검색하는 것과 같은 알고리즘 또는 스택, 큐, 트리, 집합, 목록 등과 같은 데이터 구조의 자체 구현을 의미합니다.

Java에서 Java Collections Framework에서 이러한 모든 데이터 구조를 찾을 수 있으며 그 방법 중에는 알고리즘의 최상의 구현이 있습니다. 다른 인기 있는 언어도 마찬가지입니다. 그러나 코더뿐만 아니라 정말 좋은 프로그래머가 되고 싶다면 알고리즘과 데이터 구조에 충분히 주의를 기울이는 것이 좋습니다.

이것은 컴퓨터의 "사고"와 그 안의 프로세스 구성을 이해하는 데 매우 유용합니다. 이러한 주제에 정통하고 실제로 신중하게 작업하면 그렇지 않은 사람들보다 큰 이점을 얻을 수 있습니다. 특정 언어나 프레임워크에 대한 특정 지식은 쓸모없게 되고 알고리즘 작업을 형성하는 사고 방식은 영원히 당신과 함께 할 것입니다. 그리고 직장과 면접에서 여러 번 유용 할 것입니다.

두 번째 요점 (미래의 일에 필요한 지식을 직접 얻는 것)은 미래에하고 싶은 일에 달려 있으며 공부하려는 분야와 언어에 더 밀접한 관련이 있습니다.

이제 프로그래밍 언어를 선택하는 방법을 살펴 보겠습니다.

어떤 언어를 먼저 배우는 것이 합리적입니까?

언어 선택은 일하고자 하는 지역에 따라 다릅니다. 물론 이미 환경 설정을 형성하지 않는 한. 어떤 사람이 프로그래밍하고 싶은지 물으면 많은 대답을 듣습니다. 가장 인기있는 것은 다음과 같습니다.

  • 웹 사이트
  • 웹 응용 프로그램
  • 모바일 응용 프로그램
  • 게임
  • 크고 흥미로운 프로젝트
  • 과학 프로젝트
  • 운영 체제, 드라이버, 다른 시스템을 관리하기위한 프로그램

다음은 만들고자 하는 것에 따라 어떤 언어를 사용해야 하는지에 대한 아이디어를 제공하는 짧은 답변입니다.

  • 웹사이트(프론트엔드) — JavaScript, TypeScript
  • 웹 사이트 (서버 측) — Python, PHP, JSNode, Ruby
  • 웹 응용 프로그램: Java, C#, Python
  • 모바일 앱: Java, Kotlin(Android용), Swift(iOS용)
  • 비디오 게임: C++, C#, 게임 엔진
  • Enterprise 프로젝트: Java, C #
  • 과학 프로젝트: Java, Python
  • 운영 체제, 드라이버: C, C++
  • 임베디드 시스템: Java

다음은 일반적인 권장 사항입니다. 그들은 보편적이지 않습니다. 예를 들어 브라우저의 게임은 JavaScript로 작성할 수 있으며 아무도 Java로 운영 체제를 만드는 것을 막지 않습니다.

다음으로 선택이 얼마나 유용한지 살펴 보겠습니다.

아직 결정하지 않았는데...

그러나 대부분의 경우 이 질문에 대해 매우 다른 답변을 듣습니다.

  • "아직 결정하지 않았어요."
  • "잘 모르겠습니다. 어쩌면..."그리고 위의 옵션 중 하나가 뒤따랐습니다. 대부분의 사람들은 자신이 원하는 것이 무엇인지 전혀 확신하지 못합니다.

그들은이 경우 언어가 특별한 역할을하지 않는다고 말했다. 때로는 프로그래밍 방법을 배우기 시작할 때 기본 알고리즘 원리를 배우고 특정 언어를 사용하지 않고 이해할 수 있는 체계와 일반화된 의사 코드에 집중하는 것이 좋습니다. 이 경우 학습은 언어에 의존하지 않습니다.

그러나 현대 프로그래밍 언어는 매우 명확하고 논리적입니다. 가능한 한 빨리 일자리를 찾는 것이 목표라면 유용한 지식과 업무에 적용할 수 있는 언어로 즉시 시작하는 것이 좋습니다. 따라서 언어의 구문을 동시에 연구하고 첫 번째 코딩 작업을 해결하고 언어의 기본 구성과 가장 간단한 알고리즘이 어떻게 작동하는지 암시적으로 배우는 것이 좋습니다.

과거에는 학교가 학습을 위해 특별히 고안된 언어인 파스칼로 시작하는 경우가 많았습니다. 절차적 프로그래밍의 기초를 이해하는 데 도움이 되는 명확한 구조를 가진 좋은 언어이며 약간 객체 지향적입니다. 그러나 실제로는 사용되지 않습니다(드문 예외 제외). 따라서 파스칼의 딥 러닝은 시간 낭비입니다.

오늘날 학생들은 종종 시각 언어 인 스크래치 (Scratch)로 프로그래밍을 소개합니다. 이것은 매우 훌륭한 도구이며, 매우 강력합니다. 그러나 교육 프로젝트를 연구하고 만드는 데 특별히 필요합니다. 작업에 필요할 것 같지 않습니다 (개발자 팀에 합류하고 싶지 않다면 ... 글쎄, 또는 아이들에게 프로그래밍을 가르친다).

프로그래머로서 정확히 무엇을 하고 싶은지 아직 모른다면 인기 있는 범용 프로그래밍 언어 중 하나를 선택하는 것이 좋습니다. "유니버설"은 다양한 분야와 유형의 프로그래밍에서 사용할 수 있음을 의미합니다. 이전 시점의 목록을 보면 여러 언어가 꽤 자주 반복되는 것을 볼 수 있습니다. Java, Python, C# 및 C++입니다. 아마도 C ++를 제외한 모든 언어는 초보자에게 적합합니다.

왜 C ++이 아닌가?

가장 먼저 배워야 할 것은 자주 사용되는 언어이며 너무 어렵지 않다고 말했습니다. 따라서 C++는 전문가가 거의 모든 것을 만들 수 있는 매우 강력하고 복잡한 언어이며 프로그램이 효과적일 것입니다. 그러나 부적절하게 사용하면 동일한 도구를 사용하여 "발에 총을 쏠 수 있습니다."

요컨대, 고성능 응용 프로그램이나 AAA 게임을 만들려면 C ++가 필요하지만 즉시 필요하지는 않습니다. 내가 쓴 다른 세 가지 언어 중 하나를 먼저 배우는 것이 가장 좋습니다.

파이썬?

오늘날 대학과 고등학교는 종종 초보자를 위해 Python 언어를 선택합니다. Python은 진입 장벽이 낮기 때문에 현명한 선택입니다. 구문이 간단하고 구조가 다른 언어로 프로그래밍하는 동안 제어해야 하는 몇 가지 사항에 주의를 기울일 필요가 없습니다.

파이썬에서는 모든 것이 괜찮을 것이지만 몇 가지 기능이 있습니다. 프로그래머가 되고 싶은지 모르겠지만 프로그래밍을 시도하고 싶은지(또는 배워야 하는지) 싶다면 Python을 추천합니다. 그러나 곧 프로그래머가 되고 싶다면(그리고 웹사이트나 과학 프로그래밍을 만드는 것에 대해 확신이 서지 않는다면) 방법론적인 이유로 Python을 권장하지 않습니다.

사실 파이썬에는 많은 구문 설탕, 즉 코드를 간결하게 만드는 구조가 있습니다. 이것이 좋은 것 같습니다. 그러나 나는 바로이 설탕이 때때로 초보 프로그래머가 처음부터 이해했어야 할 간단한 행동의 본질을 숨긴다는 것을 배웠습니다.

예를 들면 다음과 같습니다. 컴퓨터 메모리가 어떻게 작동하고 프로그래밍 논리가 원칙적으로 무엇인지 학생에게 설명하는 첫 번째 작업 중 하나는 장소에서 두 변수를 교환하는 것입니다.

a = 5b = 7

우리는 교환하고 . 일반적으로이 문제는 추가 변수를 사용하여 해결됩니다. 그 과정에서 유능한 튜터는 a와 b가 값 변수가 쓰여지는 메모리 영역을 나타내는 이름이라고 설명합니다 (또는 언어에 따라 약간 다릅니다).ab\u200b\u200bof

보통, 그것은 (어떤 언어로든) 다음과 같이 해결됩니다 : 당신의 값이 두 개의 컨테이너에 있다고 상상해보십시오. 솔루션의 경우 버퍼 변수, 즉 세 번째 임시 컨테이너가 만들어집니다.abtmp

첫 번째 단계에서 값 중 하나가 전송됩니다(예: ). 다음으로, , 즉, 의 값이 "해제된" 컨테이너에 입력된 다음 변수가 임시 컨테이너에서 컨테이너로 전송됩니다. 의사 코드의 모양은 다음과 같습니다. 기호는 같지 않고 할당 연산자입니다 (거의 모든 프로그래밍 언어에서 동일 함).5b7ab=

a = 5
b = 7
tmp = a
a = b
b = tmp

이제 변수가 작업을 완료했습니다. 변수에는 , 변수에는 . 이 간단한 작업은 프로그래머로서의 길의 시작부터 잘 이해하는 데 매우 중요합니다. 대략이 문제는 모든 프로그래밍 언어로 해결됩니다.tmpa7b5

이 문제는 두 개의 임시 변수를 사용하여 해결할 수도 있습니다.

a = 5
b = 7
tmp1 = b
tmp2 = a
a = tmp1
b = tmp2

아무도 파이썬에서 이와 같이 해결하는 것을 귀찮게하지 않습니다. 그러나 구문 설탕을 사용하면 다음과 같은 솔루션을 작성할 수 있습니다.

a, b = 5, 7
a, b = b, a

그게 다야, 과제가 해결되었습니다. 여기에도 교환이 있고 일시적인 변수 (대부분 두 개)가 있지만 이렇게 간단히 해결할 수 있다면 처음 두 가지 방법으로 문제를 해결할 사람은 누구입니까? 그리고 그것은 훌륭합니다. 그러나 그러한 결정으로 프로그래밍의 본질을 이해하는 데 중요한 많은 측면이 빠져 나갑니다. 그리고 파이썬에는 그러한 예가 많이 있습니다. 그렇기 때문에 독립적으로 학습하는 경우 Python을 첫 번째 프로그래밍 언어로 권장하지 않습니다.

유능한 교사와 함께 프로그래밍하는 법을 배우면 학생에게 첫 번째 방법으로 유사한 문제를 해결하도록 요청하고 나중에 이 Python 기능을 매우 매력적으로 보여줄 것입니다. 또한 Python 이후에는 덜 간결한 구문으로 다른 언어를 배우는 것이 매우 어려울 것입니다.

그러나 일반적으로 Python을 선택하는 것이 좋습니다. 다재다능하지만 가장 자주 사용되는 곳은 다음과 같습니다.

  • Python은 웹 개발에서 가장 일반적으로 사용됩니다. FastAPI, Flask, Tornado, Pyramid, TurboGears, CherryPy 및 가장 인기 있는 Django와 같은 많은 프레임워크가 이를 위해 작성되었습니다. 또한 웹 페이지에서 정보를 수집하기 위해 Python으로 파서를 작성합니다.
  • 데브옵스. Python은 그러한 전문가가 작성하는 모든 스크립트에 없어서는 안될 필수 요소입니다.
  • 과학 연구 및 기계 학습. 간결성, 간단한 구문 및 풍부한 도구 세트 덕분에 Python은 과학자들이 가장 좋아하는 언어가 되었습니다. 그래프를 작성하고, 연구를 수행하고, 계산을 수행할 수 있는 Python용 특수 라이브러리가 있습니다.
  • 테스트. Python의 또 다른 응용 분야는 테스트 자동화입니다. 많은 QA 자동화 전문가들은 단순성 때문에 Python을 선택합니다. 앱 개발 경험이 거의 없는 사람들에게 좋습니다. 개발된 커뮤니티, 논리적 구문 및 가독성은 학습 과정을 단순화합니다.

자바? 자바!

Java는 특히 IT를 전문으로 하는 많은 대학에서 가르칩니다. 이 언어에 결함이 없는 것은 아닙니다. 그냥 말하자면, 그것은 매우 장황합니다. 특히 파이썬과 비교할 때. 그러나 그 논리는 이해하기 쉽고 복잡성이 중간 또는 단순한 언어에 더 가깝습니다. Python과 같은 간단한 언어와 C++와 같은 복잡한 언어를 쉽게 배울 수 있는 것이 중요합니다.

Java는 범용 언어이며 Java 시스템이 있는 모든 플랫폼에서 작동합니다. Java 머신은 실제 하드웨어와 프로그래머 코드 사이의 계층인 가상 컴퓨터입니다. 커피 그라인더에서 슈퍼컴퓨터에 이르기까지 거의 모든 플랫폼에서 Java 시스템을 만들고 Java로 프로그램을 작성할 수 있습니다.

그리고 일부 플랫폼에 Java 시스템이 없는 경우 이는 마케팅 및 계약 때문일 가능성이 높으며 생성할 수 없는 것이 아닙니다. 그건 그렇고, Java는 JVM뿐만 아니라 Kotlin과 같은 다른 인기 있는 언어에서도 작동합니다. 초보자가 Java보다 배우기가 더 어렵지만 Java 이후에는 매우 잘 어울립니다.

초보자에게는 Java를 추천합니다. 매우 인기 있고 잘 문서화되어 있으며 매우 간단하지만 주요 패러다임은 초보 프로그래머의 눈에 숨겨지지 않습니다.

Python과 마찬가지로 Java는 범용 언어입니다. 그러나 범용 언어의 경우에도 다음과 같은 전통적인 장점이 있습니다.

  • 우선 Java는 한 서버에서 데이터를 수신하고 처리하여 추가로 보내는 서버 응용 프로그램을 만드는 데 사용됩니다. 대부분의 경우 이러한 응용 프로그램은 개발 및 유지 관리에 많은 프로그래머가 필요한 대규모 분산 엔터프라이즈 수준 응용 프로그램입니다. 거래 및 금융 응용 프로그램의 서버 부분입니다. 이러한 영역에서는 전통적으로 안정성이 필요하므로 Java가 자주 관련됩니다.
  • 모바일 개발에는 많은 Java가 있습니다. 처음에 Android는 Java용으로 날카롭게 되었습니다. 이제 Kotlin도 추가되었습니다. 스마트폰 게임은 C# 언어를 지원하는 Unity 엔진을 사용하여 작성되는 경우가 많습니다.
  • 빅 데이터. Hadoop 및 기타 빅 데이터 기술은 Apache의 Hbase 및 Accumulo 또는 ElasticSearch와 같은 어떤 식으로든 Java를 사용합니다. Java가 이 영역을 지배하지는 않지만 MongoDB와 같은 일부 기술은 C++로 작성됩니다. Java는 Hadoop 또는 ElasticSearch가 확장될 경우 이 성장하는 영역에서 더 큰 비중을 차지할 가능성이 있습니다.
  • 임베디드 시스템. Java는 임베디드 시스템 분야에서도 광범위합니다. 플랫폼이 무엇을 할 수 있는지 확인할 수 있습니다. Java(스마트 카드 및 센서)를 사용하는 데는 130KB만 있으면 됩니다. Java는 원래 임베디드 시스템용으로 개발되었습니다. 이 영역은 Java의 초기 "한 번 쓰기, 어디서나 실행" 캠페인의 일부였으며 결실을 맺은 것 같습니다.
  • 과학 프로그래밍. 역사적으로 Python이 이 분야의 선두 주자였지만 Java의 비중이 상당히 높습니다.
  • 테스트 자동화. Java 테스터는 테스터가 되고자 하는 사람들에게 가장 적합한 옵션 중 하나입니다.
  • 소프트웨어 도구. Eclipse, IntelliJ Idea 및 Netbeans IDE와 같은 많은 유용한 소프트웨어 및 개발 도구가 Java로 작성 및 개발되었습니다.

C#은 어떻습니까?

나는 오랫동안 C #에 대해 이야기하지 않을 것이다. 이 언어는 Java와 매우 유사합니다. Java의 출현에 대한 Microsoft의 답변으로 만들어졌습니다. 그들은 거의 동일한 장점과 단점을 가지고 있으며 Java만이 다소 인기가 있습니다. 게임 개발에 참여하기로 결정했다면 C#을 배우는 것이 좋습니다.

이 언어는 가장 인기 있는 게임 엔진 중 하나인 Unity와 Godot의 성장하는 힘을 지원합니다. 이러한 엔진과 대규모 프로젝트에서 모바일 및 인디 프로젝트를 수행할 수 있습니다. 다른 모든 사람들에게는 Java를 고수하는 것이 좋습니다.

정확히 무엇을 배워야 합니까?

Java는 초보자를 위한 최고의 프로그래밍 언어라고 생각하기 때문에 그 예에서 내가 배워야 한다고 생각하는 것을 설명할 것입니다. Java 지식은 다음과 같이 구성됩니다.

코어 자바. 아시다시피, 이것은 언어, 주요 구조 및 라이브러리의 기초입니다. 다음은 Java 주니어 개발자 또는 연수생의 역할에 지원하려는 경우 오늘 잘 알아야 할 사항의 짧은 목록입니다.

  • 통사론
  • 컬렉션 프레임워크
  • 예외 처리
  • Java 입/출력 스트림
  • Java 멀티스레딩/동시성
  • 람다 표현식

핵심 Java 주제를 배울 수 있는 곳

CodeGym은 제가 가장 좋아하는 Core Java 온라인 과정 중 하나입니다. 매우 연습 지향적입니다. 학생이 과제를 해결하는 데 도움이 되는 코드 유효성 검사 및 팁이 포함된 1,200개 이상의 코딩 작업이 있습니다. 또한 모든 핵심 Java 주제 (현재 람다 제외)를 다루는 짧은 강의가 포함되어 있습니다.

jenkov.com 의 람다 식. 여기에서 람다에 대해 알아야 할 모든 것이 포함된 멋진 자습서를 찾을 수 있습니다.

CodeCademy의 Java. CodeCademy는 실용적인 학습을 위한 가장 유명한 플랫폼 중 하나입니다. 이 과정에서는 대부분의 핵심 Java 주제를 찾을 수 있습니다.

알고리즘 및 데이터 구조

위에서 말했듯이 알고리즘과 데이터 구조를 분해하고 자신의 예제를 작성하는 데 시간을 할애하는 것이 좋습니다. 이것은 많은 Java 주니어 지원자들 사이에서 눈에 띄는 데 크게 도움이 될 것입니다. 이 점은 종종 IT 대학 졸업생과 기술 교육을받지 않은 사람을 구별합니다.

이러한 알고리즘은 여러 번 논의되었기 때문에 책을 가이드로 사용할 수 있습니다. 예를 들어 Robert Sedgewick과 Kevin Wayne의 알고리즘이 있습니다. 이 저자는 또한 Coursera에 대한 온라인 과정을 가지고 있습니다. 이것은 내가 가장 좋아하는 것 중 하나이며 Java를 사용합니다.

Utility Libraries and Useful Components

이 점은 일반적인 프로그래밍에 관한 것이 아니라 라이브러리 및 구성 요소 인 작업 도구에 대한 좋은 지식입니다. Core Java와 알고리즘 이후에만 이 모든 것을 공부하거나 급한 경우 동시에 공부하는 것이 좋습니다.

  • 서블릿은 서버의 기능을 확장하는 Java 소프트웨어 구성 요소입니다.
  • JDBC는 Java 애플리케이션과 데이터베이스 간의 상호 작용을 위한 플랫폼 독립적인 표준입니다. JDBC는 Java SE(표준판)와 함께 제공되는 java.sql 패키지로 구현됩니다.
  • Log4j는 메시지 로깅을 위한 가장 유명한 라이브러리입니다. Java 코드로 라이브러리 호출을 작성한 다음 이미 작성된 코드를 변경하지 않고 유연하게 사용자 지정할 수 있습니다.
  • 잭슨/JSON. JSON(JavaScript Object Notation)은 매우 널리 사용되는 개방형 표준 파일 형식 및 데이터 교환 형식이며 Jackson은 Java용 고성능 JSON 프로세서입니다.

tutorialspoint의 log4j에 대한 텍스트 자습서

CodeGym의 핵심 Java 과정에는 JSON, log4j, JDBC 주제 및 연습 문제가 있습니다.

edureca의 Java 서블릿

봄/최대 절전 모드

이러한 도구를 스스로 배우는 것은 매우 어렵습니다. 그리고 얼마 전까지만 해도 아무도 첫 직장을 찾는 사람들에게 지식을 요구하지 않았습니다. 그러나 시대가 바뀌었고 요구 사항이 크게 증가했습니다.

가능하지만 스스로 그들과 함께 일하는 법을 배우는 것은 어렵습니다. 그러나 이 경우 코스를 찾아 멘토와 함께 하는 것이 좋습니다.

Spring과 Hibernate를 배우는 가장 좋은 방법은 소규모 팀과 튜터와 함께 코스를 찾는 것이지만 항상 가능한 것은 아닙니다. 나는 그들을 배우기위한 몇 가지 흥미로운 자료를 발견했다. 그들에게 기회를주십시오.

Baeldung에 대한 봄 튜토리얼

스프링 실무 과제

spring.io 에 대한 스프링 튜토리얼 및 스프링 부트 가이드

Udemy의 최대 절전 모드 및 봄

Udemy의 RESTful API

프로그래밍의 설계 및 아키텍처 패턴 및 원리

디자인 패턴은 몇 가지 특정 문제를 해결하기 위한 잘 정립된 솔루션입니다. 신입생이 알면 팀에 합류하여 일을 시작하는 것이 더 쉬울 것입니다. 그렇지 않으면 직장에서 빨리 공부해야 합니다.

따라서 이력서를 보내기 전에 시간을 내어 템플릿에 대해 읽고 실천하는 것이 좋습니다. MVC와 같은 아키텍처 패턴도 마찬가지입니다. 저는 항상 학생들에게 MVC를 사용하여 몇 가지 프로그램을 만들도록 요청합니다. 아주 간단한 작업조차도 MVC를 사용하면 복잡하지만 사용 방법을 알고 있습니다. 그리고 작은 작업의 경우 템플릿 사용이 골치 아픈 일이라면 대규모 프로젝트에서는 구원입니다.

KISS, DRY 및 SOLID의 원칙에 따라 간단하고 잘 읽힌 코드에 대해 읽는 것도 유용 할 것입니다. 솔직히 말해서 이해하기 쉽지만 실천에 옮기는 데는 시간이 걸립니다.

728x90