ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 패스트캠퍼스 '한 번에 끝내는 Java/Spring 웹 개발 마스터' #1
    초보 개발자 성장 일지/FC교육 2023. 2. 20. 22:26

    패캠과의 인연 -

    과거에 다른 일을 하면서 개발자의 꿈을 키우기 시작했었다.

    당시에 하던 일이 따로 있었기에 일을 바로 그만 둘 수는 없었고,

    당시에는 흥미만 있던터라 나에게 이 분야에 대해 맛을 볼 기회가 필요했다.

    개발자 업이 나에게 맞는지 안맞는지도 잘 모르는 일이기 때문에, 단순한 호기심만으로는 판단하기 힘들었다.

     

    그러던 중 온라인강의를 기반으로 하는 패스트캠퍼스를 만나게 되었다.

    근무 중에도 부담감 없이 편하게 강의를 들을 수 있었고, 강사진들의 훌륭한 설명도 도움이 많이 되었다.

    실습도 많아서 간접적으로 개발자의 일들을 경험해 볼 수 있었다.

     

    패캠 강의를 통해 개발자가 적성에 맞고, 즐길 수 있다는 점을 알게 되었다.

     

    그 순간, 내가 지금까지 뭐하고 살았나 후회가 되었다 ㅠ... 하... 내 시간 돌려도....

    일찍이 이 분야를 알았으면.. 얼마나 좋았을까..

    그래도 지금이나마 내가 좋아하는 일을 찾았다는 것에 감사하다.

     

    그때 연으로 지금까지도 패캠과 인연을 맺고 있다.

    그리고 그때의 연으로 나는 원래 하던 일을 그만두고 퇴직금으로 버티며 현재는 취업 준비를 위한 공부에 박차를 가하고 있다.

     

     

    공부일지 작업을 오늘 처음 시작하게 되어 서론이 길었다.

    나의 성장을 위해 오늘부터 내가 패스트캠퍼스를 통해 공부한 것들을 차근차근 정리해 보려고한다!

    초보 개발자의 성장 일지! 시작!


     

    자바의 구조 -

     자바를 처음 접했을 때 신기했던 것은 패키지와 클래스의 대한 개념이었다. 자바스크립을 주로 했던 나에게 이 개념은 매우 생소했다.

    이클립스 사용함

    패키지는 클래스를 모아 놓은 묶음이라고 생각하면 된다.

    'ch1'이라고 되어 있는 것이 패키지. 아래 'Order.java'라고 되어 있는 것이 클래스이다.

    패키지는 소문자로, 클래스는 첫 시작을 대문자로 하고 카멜형식으로 써나가는 것이 약속이다.

    강사님을 따라 그 규칙을 지켜 위와 같이 패키지와 클래스를 생성하여 코드를 작성하고 있다.

     

    배운걸 토대로 이 부분에 대해 정리를 하면, 클래스와 클래스는 서로 연결이 되어 있다는 생각을 했다.

    자바스크립의 경우 하나의 .js파일에서 작성하는 것이 끝인데, 자바는 그런 파일들이 여러 개의 묶음으로 연결되어 있다.

    조금 풀어서 말을 해보면, a클래스에서 함수를 만들었다면, b클래스(클라이언트파트)에서 a클래스의 함수를 불러내 사용 할 수 있다.

    이렇게 거미줄 처럼 연결되어 있어서 잘 사용하는 함수를 만들어 놓고 필요에 따라 편하게 불러서 연산을 할 수 있다.

    또한 객체를 생성하기 위한 매서드나 생성자를 만들어 놓고, 다른 클래스에서 필요에 따라 불러내서 객체를 생성하는데 사용될 수도 있다.

    이 점이 자바에 대해 흥미를 가지게 하는 부분이었다!!!

    하나의 패키지 안에서는 모든 것이 거미줄 처럼 연결된 느낌!

    내가 했던 자바스크립트 보다 더 방대하고, 더 많은 덩어리들이 연결되어 있다는 느낌을 받았다.

    그리고 좀 더 정리가 잘되고, 보기에도 갈끔해 보이는 작업라인들이었다.

     


     

    객체지향 언어 -

    자바는 객체지향언어라는 특징이 있다.

    시간순으로 처리가 되는 절차 지향 언어의 대표가 C언어라고 하는 데, 이에 반해 자바는 절차 지향보다는 객체 지향형이다.

    ???

    (뭔 소리래)

    흑, 어렵다.

    필기 노트를 꺼내보면서 이 부분을 정리해 볼까 한다.

    강의를 들으면서 적은 내용들이다.

    글씨가... 좀 그래서 .. 하하.

    그래도 정리를 해보면, 시간 순 보다는 각자 자기 역할(기능)을 가지고 있는 객체들을 코딩하고, 그 객체들이 서로 협력하도록 하는 것이다. 여기서 앞서 말한 클래스가 연결되어 있다는 부분도 어느 정도 이해가 될 것이다!

    각 클래스가 객체라고 한다면, 각자 자기만의 정보나 기능들이 있고, 이를 필요에 의해 다른 클래스로 가져가거나 연결하거나 한다.

    각 클래스가 공유하고 협력하면서 데이터를 처리해 나가는 것이다!

     

    위 노트에 그린 그림처럼, 

    '학생' 이라는 객체가 있다.(Object)

    - 학생 안에는 '이름'이 있을 것이고,

    - '나이'가 있을 것이고,

    - '학번'도 있을 것이다.

     

    한 '학생'이라는 객체(Object) 안에는 여러 정보들이 있을 것이고, 이것을 클래스로 묶는 것이 하나의 객체를 생성하기 위한 코딩이다.

    그 예제는 내가 실습한 코딩을 통해 알 수 있다.

    이클립스

    나는 Student.java라는 클래스를 만들었고, 그 안에 '학생 이름', '학번', '학년' 등 하나의 객체가 가질 수 있는 정보를 넣었다.

    이건 어디에 필요할까?

     

    만약 내가 학생관리를 위한 시스템을 만든다면, Student.java라는 클래스는 매우 중요한 객체 생성자가 될 것이다.

    여기에는 각 학생들의 중요한 정보들을 항목별로 잘 정리했으며, 이 항목들에 각 학생들의 정보를 입력할 수 있다.

     

    여기서 더 나아가 보자!

     

    그럼 이 학생이 카페를 갔다고 해보자.

    카페를 가면 주문(order)을 해야한다. '주문'도 하나의 객체(Object)가 된다.

    '주문'(Object)을 하면,

    - '메뉴'를 정해야한다.

    - '수량'을 정해야한다.

    - 결제를 위해 '학생의 카드번호'를 알아야 한다.

    등등

     

    '주문'이란 행위도 하나의 객체로써, 코딩을 통해 주문이라는 행위에 대해서도 정보를 입력할 수 있게 만들 수 있다.

    이클립스

    위에 내가 실습한 Order.java가 바로 '주문'을 위한 객체를 구성한 것이다.

    오른쪽 변수를 선언한 것을 보면, '주문번호', '구매자ID', '판매자ID', '상품ID(메뉴)' 등 주문을 하는 행위에서 주고 받는 데이터들을 입력했다.

     

     

    이렇게 객체라는 개념은 매우 일상적인 개념이다.

    단어가 어려워서 그렇지, 막상 쉽게 생각해보면, 우리가 살아가는 일상에 비일비재한 행위들인 것이다.

     

    본 강의에서 객체지향에 대한 개념을 이렇게 배우게 되었고, 자바의 클래스를 이해하는데 도움이 되었다!

    일상에 적용하기 쉽게 강사님이 설명해주신 덕분에, 자바의 클래스들이 어떻게 연결되어 구동되는지 알게 되었다.

     

    열일하는 내 노트북

    오늘도 공부 완료!

     

    내일부턴 본격적인 함수와 매서드, 생성자 등 객체를 생성하는 코딩을 할 것 같다.

    자바를 막 시작하긴 했지만, 알면 알수록 매력적인 언어인거 같다!

    그리고 강사님도 이해가 쉽게 설명을 잘해주셔서 너무 좋다.

     

    무엇보다 온라인강의라 이해가 안되면 되돌려 볼 수 있어서 너무 너무 너무 좋다.!!

    디지털 시대의 공부법. 이해가 안되면 잠시 멈추어 생각할 수 있고, 돌려 볼 수 있으며, 이해가 되었다면 2배속으로 볼 수 있다!!!!

    나만의 페이스로 나만의 효율적인 공부가 가능하다는 것!

    이 점이 너무 좋다.

     

    패스트캠퍼스 홈페이지

    http://bit.ly/3Y34pE0

     

     

     

    본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.

     

     

     

     

     

    댓글

Designed by Tistory.