안녕! 오늘 우리는 Java 개발자의 성장 경로와 수요가 있기 위해 알아야 할 사항에 대해 이야기할 것입니다. 인터뷰에서 모든 개발자는 구직자를 그릴 수 있습니다. 예를 들어, 현재 프로젝트에서 만난 특정 주제에 대해 질문하기 시작할 수 있습니다. 그러나 모든 것을 알지 못하는 것은 정상입니다. 일부 질문에 답할 수 없다는 사실도 정상입니다. 일반적으로 모든 Java 프로그래머는 소프트웨어 개발에 대한 기본적인 이해가 있어야 합니다. 이제 "기본"으로 간주되는 것을 살펴 보겠습니다.
스프링 컨테이너, 빈, DI, IoC 등에 관한 모든 것을 이해할 수 있도록 먼저 이것을 넣어야 합니다. 말하자면 Spring 사용의 철학을 이해하는 것입니다. Spring 프레임워크에 대한 추가 연구는 이 기반 위에 구축될 것입니다. 새로 배운 모든 기술을 점진적으로 통합할 수 있는 작은 응용 프로그램을 직접 만들어야 할 수도 있습니다.
앞서 우리는 JDBC를 데이터베이스 연결을 생성하는 기술로 언급했습니다. 일반적으로 이 기술의 "적나라한" 사용은 더 이상 프로젝트에서 찾을 수 없으므로 JDBC 학습이 필요하지 않다고 결론을 내릴 수 있습니다. 이것은 올바른 태도가 아닙니다. JDBC의 네이키드(직접) 사용을 탐색하면 낮은 수준에서 기술을 보고 문제와 단점을 이해할 수 있습니다. 그런 다음 Spring JDBC 학습을 시작하면 이 프레임워크가 정확히 무엇을 개선하고 최적화하고 숨기는지 알게 될 것입니다.
기본 JDBC의 상황과 유사하게 이 프레임워크는 기존 기술(이 경우 Hibernate)을 활용합니다. Spring 없이 Hibernate를 사용하는 것을 고려한다면 Spring Hibernate가 제공하는 이점을 분명히 깨닫게 될 것입니다.
이전에 우리는 JPA에 대해 이야기했고 다양한 구현이 있지만 사양일 뿐이라고 언급했습니다. 이러한 구현 중에서 Hibernate는 이상에 가장 가깝습니다. Spring은 내부적으로 Hibernate를 사용하는 이상적인 JPA 구현을 가지고 있습니다. JPA 사양의 이상에 가능한 한 가깝습니다. 스프링 JPA라고 합니다. 한마디로 데이터베이스 액세스를 크게 단순화합니다. JDBC, Hibernate, Spring JDBC 또는 Spring Hibernate를 배우지 않고 JPA만 배울 수 있습니다. 그러나 이 방법을 사용하면 데이터베이스에 연결하는 방법에 대한 지식이 매우 피상적일 것입니다.
이 기술을 사용하면 애플리케이션의 웹 인터페이스를 사용자에게 표시하고 인터페이스와 나머지 애플리케이션 간의 통신을 용이하게 할 수 있습니다. 이 기술은 디스플레이 처리를 담당하는 애플리케이션이 있고 RESTful 기술을 사용하여 애플리케이션과 상호 작용하는 경우 디스플레이 없이 사용할 수도 있습니다. Spring에 대한 정보를 더 잘 흡수하기 위해 기사 및 YouTube 강의 외에도 여러 책을 읽을 수 있습니다. 저는 Craig Walls의 "Spring in Action"이라는 책을 정말 좋아했습니다. 영어를 잘 아시는 분은 6판을 읽어보시길 권합니다. Spring에 관한 또 다른 훌륭한 책은 "전문가를 위한 Spring 5"입니다. 더 조밀합니다. 처음부터 끝까지 읽는 것보다 가까이에 두는 것이 더 가치 있는 참고 자료에 가깝습니다.
이 기술은 Spring 사용을 크게 단순화합니다. 나는 그것을 변덕스럽게 목록의 끝에 넣지 않았습니다. 사실, 그것은 후드 아래에 많은 것을 숨기고 있으며 바닐라 스프링에 익숙하지 않은 사람에게는 많은 점이 불분명하거나 이해하기 어려울 수 있습니다. 먼저 Spring 프레임워크의 작동 방식을 더 잘 이해하려면 일반 Spring을 사용한 다음 Spring Boot 사용의 더 높은 이점을 모두 선택해야 합니다. 또한 Spring Security 및 Spring AOP에 익숙해지는 것이 좋습니다. 그러나 위의 기술과 달리 이 두 가지에 대한 깊은 지식은 아직 필요하지 않습니다. 이 기술은 초보자를 위한 것이 아닙니다. 면접에서 신입 개발자들은 그들에 대해 묻지 않을 것입니다(아마도 하나의 피상적인 질문을 제외하고). 이러한 기술이 무엇인지, 그리고 그 작업의 원리에 대한 개요를 읽으십시오. 이 기사에서는 나는 책 읽기에 대해 여러 번 언급했습니다. 한편으로 이것은 의무 사항이 아닙니다. 책 한 권도 읽지 않고도 온라인 기사와 교육 비디오에서 필요한 모든 지식을 습득하여 프로그래머가 될 수 있습니다. 한편, 취업 시장에서는 현재 초보 개발자 간의 경쟁이 치열하여 초보 개발자가 알아야 할 사항에 대한 기준이 높아지고 있습니다. 따라서 더 많이 알수록 면접관에게 당신의 지식 수준을 보여줌으로써 첫 직장을 더 빨리 찾을 수 있습니다. 모두 감사합니다. Java가 함께하길 바랍니다. 초보자가 알아야 할 기준을 높입니다. 따라서 더 많이 알수록 면접관에게 당신의 지식 수준을 보여줌으로써 첫 직장을 더 빨리 찾을 수 있습니다. 모두 감사합니다. Java가 함께하길 바랍니다. 초보자가 알아야 할 기준을 높입니다. 따라서 더 많이 알수록 면접관에게 당신의 지식 수준을 보여줌으로써 첫 직장을 더 빨리 찾을 수 있습니다. 모두 감사합니다. Java가 함께하길 바랍니다.
1. 기본 알고리즘
Java뿐만 아니라 프로그래밍을 배우기 시작할 때 가장 먼저 다루어야 할 것은 기본 사항을 이해하는 것입니다. 예를 들어, 알고리즘. 무한한 수의 알고리즘이 있으며 가능한 한 많은 알고리즘을 배우려고 노력하면서 평생을 낭비해서는 안됩니다. 대부분은 유용하지 않을 것입니다. "Grokking Algorithms"라는 책에서 필요한 최소한의 지식을 얻을 수 있습니다. 이것은 시작하기에 충분하지만 원하는 경우 Robert Sedgewick과 Kevin Wayne이 저술한 "Structures and Algorithms" 또는 "Algorithms in Java" 책에서 배울 수 있습니다. 또한 컴퓨터 과학 기초에 대한 지식을 향상시키는 것이 좋습니다. 이것은 Harvard CS50 코스로 할 수 있습니다.2. 자바 구문
알고리즘의 기초를 배운 후에는 Java 구문을 배워야 합니다. 결국, 우리는 여기에서 모두 Java 프로그래머가 되기 위해 공부하고 있습니다. CodeGym 과정은 이에 완벽합니다. 수많은 작업을 수행하다 보면 Java 구문에 손을 대게 되고 큰 망설임 없이 Java 코드를 모국어처럼 쓰고 읽게 될 것입니다. CodeGym은 실습이지만 그 이상으로 무엇을 하고 있는지 이해하려면 이론도 살펴봐야 합니다. 이를 위해 책을 읽을 수 있습니다. 예를 들어 다음 중 하나입니다.- "헤드 퍼스트 자바",
- Barry Bird의 "Java for Dummies";
- Herbert Schildt의 "Java: A Beginner's Guide".
- "Java로 생각하기", Bruce Eckel;
- Joshua Bloch의 "Effective Java";
- Herbert Schildt의 "Java: The Complete Reference".
3. 디자인 패턴
디자인 패턴은 자주 발생하는 상황에서 문제를 해결하는 특정 반복 가능한 패턴입니다. 여기에는 자존심이 강한 모든 프로그래머가 알아야 할 기본적이고 간단한 패턴이 포함되어 있습니다. 이 주제를 이해하려면 "Head First Design Patterns"라는 책을 읽으십시오. 기본 디자인 패턴을 접근 가능한 방식으로 설명합니다. 하지만 이 책은 자바에 대해 많이 이야기하므로 이 책을 읽을 때 이 프로그래밍 언어에 대한 유창함도 필요합니다. 패턴에 대해 자세히 알아보려면 Gang of Four(편집자 주 : The Gang of Four는 Erich Gamma, Richard Helm, Ralph를 포함하는 저자 팀입니다. 존슨, 존 블리시데스.). 이 항목을 공부하고 나면 코드의 거의 모든 곳에서 패턴을 볼 수 있습니다. 이것은 인기 있는 인터뷰 질문이므로 특히 Spring에서 사용되는 패턴에 주의를 기울이십시오.4. 프로그래밍 패러다임. 코드 청결
표준 디자인 패턴 외에도 알아야 할 다양한 원칙과 패러다임( SOLID , GRASP )이 있습니다. 또한 코드를 깨끗하고 읽기 쉽게 유지해야 합니다. 모든 것을 보려면 이 주제에 대해 알아야 합니다. Robert Martin의 Clean Code를 참조하거나 Steve McConnell의 "Code Complete"를 확인하십시오.5. SQL
다음 단계는 관계형 데이터베이스용 언어인 SQL을 연구하는 것입니다 . 데이터베이스는 웹 애플리케이션에서 사용하는 정보(데이터)가 저장되는 곳입니다. 데이터베이스는 여러 개의 테이블로 구성됩니다(전화기의 주소록이 간단한 예임). Java 개발자는 Java 응용 프로그램뿐만 아니라 상호 작용하는 데이터베이스 및 해당 데이터를 저장하는 위치에 대해서도 책임이 있습니다. 관계형 데이터베이스(가장 일반적인 유형)에서 모든 상호 작용은 SQL(Structured Query Language)이라는 특수 언어를 통해 발생합니다. 이 주제를 이해하려면 다음 책 중 하나를 읽기만 하면 됩니다.- Alan Beaulieu의 "Learning SQL";
- Chris Fehily의 "SQL";
- Lynn Beighley의 "헤드 퍼스트 SQL".
GO TO FULL VERSION