전체 글
-
WWW의 동작 원리WEB 정리내용 2021. 3. 18. 00:32
위 포스팅은 CLASS 101 SNS서비스 개발로 배우는 자바 웹프로그래밍 입문의 강의 내용입니다. 강의 내용을 참고하였으나 더 자세한 내용 및 알고 싶은 내용들은 위 강의를 참고해주세요. (틀린 부분이 있을 수도 있습니다. 지적해 주시거나, 더 알려주실 내용이 있다면 알려주시면 감사하겠습니다) 이번 포스팅에서는 WWW에 동작 원리에 대해 알아 보겠습니다. WWW는 World Wide Web 의 줄임말으로써 그 동작 원리에 대해 알아봅시다! 클라이언트(우리의 핸드폰, 컴퓨터)는 자신이 원하는 정보를 서버에 요청합니다. 이때 request url/uri 로 표현이 됩니다. 그리고 이와 같은 클라이언트의 request를 처리할 수 있는 서버 소프트 웨어가 필요합니다. 자바 같은 경우 서블릿이라는 이용해 표현..
-
[JAVA] 객체지향(7) - IS A 상속, 오버라이드JAVA 2021. 3. 17. 17:46
안녕하세요~ www.youtube.com/watch?v=cZ4MDXz0ipU&list=PLq8wAnVUcTFX4E2NplMvJfqlcgAeF_BxK&index=15 이번 포스팅은 위의 강의를 바탕으로 정리한 내용입니다. IS A 상속이란 무엇일까요 복잡한 정의보다 위의 사진을 보면서 알아가 보도록 합시다! 왼쪽과 같은 로봇을 만든다고 했을 때, has a 상속은 로봇의 부품을 가져다 쓰는 것을 말합니다. 즉 has a 상속을 받아 머리 팔 다리 등을 가져올 수 있습니다. 하지만 is a 상속을 받은 몸통은 왼쪽의 몸통과 다르게 몸통의 틀만 존재합니다. 즉, is a 상속이란 어떤 일정한 틀을 불러오는 것이라고 말할 수 있습니다. is a 상속만 받고 끝나는 것이 아니라, 그 속에서 완성된 부품으로 될 수..
-
[JAVA] 객체지향(6) 코드 재사용JAVA 2021. 3. 17. 15:48
이번 포스팅은 www.youtube.com/watch?v=lMgqHYSyK28&list=PLq8wAnVUcTFX4E2NplMvJfqlcgAeF_BxK&index=13 의 내용을 바탕으로 정리한 내용입니다. 이번 포스팅에서는 코드 재사용에 대해 알아보겠습니다. 코드를 재사용 한다는게 어떤 뜻을 가질까? 라는 생각이 먼저 드는데요. 예를들어서 어떤 학원에서 성적관리 프로그램을 만든다고 합시다! 위와 같은 클래스와 함수들이 필요할 것입니다. 물론 이전에 이런 것 들을 만들어본적이 없으면 차근차근 하나씩 만들어 가면 될 것입니다. 하지만 우리는 성적관리프로그램을 만들어봤기 때문에, 겹치는 부분이 많이 있을 것으로 보입니다. 그럼 어떻게 코드를 재사용 할까요?? 1. 관련된 exam 파일 및 클래스를 복붙한다. ..
-
[JAVA] 객체지향(5) - UI코드의 분리JAVA 2021. 3. 17. 01:56
www.youtube.com/watch?v=efMRwQwxmJM&list=PLq8wAnVUcTFX4E2NplMvJfqlcgAeF_BxK&index=10 이번 포스팅도 위의 강의를 기반으로 작성하였습니다. 지금까지 우리는 완벽한 캡슐화를 이루기 위해 걸어왔습니다. 완벽할 줄 알 았던 캡슐화였지만 아쉽게도 나눌 부분이 또 한가지 발생합니다. 바로 ExamList클래스에서 input() 함수와 print()함수에서의 역할이 2개의 부분으로 나눠집니다. 즉 효율적이지 못한 코드라는 것이죠! 입/출력을 하는 플랫폼은 콘솔, 윈도우, 웹, 모바일이 있다고 합니다! 따라서 오늘은 최종적으로 아래와 같은 모습을 만들겠습니다 아래 코드에서 ------add---를 중심으로 윗 부분은 입력 부분입니다. 아래부분은 데이터를..
-
[JAVA] 객체지향(4) - GETTER, SETTERJAVA 2021. 3. 17. 00:33
안녕하세요 이번 포스팅은 www.youtube.com/watch?v=cStPUeKgSCU&list=PLq8wAnVUcTFX4E2NplMvJfqlcgAeF_BxK&index=8 을 정리한 내용입니다. 오늘은 GETTER와 SETTER에 대해 알아보도록 하겠습니다! 일단 첫번째로 지난 포스팅에서 캡슐화에 대해 배웠고, 캡슐화를 했습니다. 완벽한 캡슐화가 된것일까요? Exam 클래스에서 kor의 값을 바꾸고 저장을 하니 외부 클래스에 영향을 받아습니다. 분명 캡슐화를 했는데 말이죠.. 그럼 캡슐화를 진행하기 위해서 kor을 사용하고있는 함수를 옮겨야할까요? 아닙니다! PrintList가 있어야할 자리는 ExamList 가 맞습니다 그럼 어떻게 해야 외부 클래스의 내용변경에 변하지 않을까요? getter와 se..
-
[Servlet] 서블릿이란?SerVlet 2021. 3. 16. 20:08
위 자료는 boostcouce 의 강의를 바탕으로 쓰여졌습니다. 자바 웹 어플리케이션의 구성요소 중 동적인 처리를 하는 프로그램의 역할 서블릿을 정의해보면 1. 서블릿(Servlet)은 WAS에서 동작하는 Java클래스이다. 2. 서블릿은 HttpServlet 클래스를 상속받아야 한다. 3. 서블릿과 JSP로부터 최상의 결과를 얻으려면 웹 페이지를 개발할 때 JSP, SERVLET을 조화롭게 사용해야 한다. 예 : 웹 페이지를 구성하는 화면(HTML)은 JSP로 표현하고, 복잡한 프로그래밍은 서블릿으로 구현한다. 현재 프로젝트에서 웹을 개발할 때, 서블릿을 직접 써서 개발하지 않는다고 합니다. 조금 더 편하게 사용할 수 있게 도와주는 다양한 프레임워크를 사용해서 개발하는 경우가 더 많습니다. 하지만 그 ..
-
[JAVA] 객체지향(3) - 인스턴스 메소드JAVA 2021. 3. 14. 23:04
안녕하세요~ 이번 포스팅은 www.youtube.com/watch?v=E2FHXYr61IU&list=PLq8wAnVUcTFX4E2NplMvJfqlcgAeF_BxK&index=4 님의 강의를 기반으로 내용정리를 하겠습니다. 이번 강의의 주요한 내용은 1. 메소드와 함수를 구분할 수 있다 . 2. static 과 this의 사용 여부를 정확하게 설명할 수 있다. 위 2가지만 알면 성공한 강의입니다. 자그럼 가시죠! [그림1] 저희는 지금까지 static이란 함수를 나타날때 쓴다고 배웠습니다. 오늘에서야 static의 의미를 배우는데요! 기존 함수와 새로운 함수 모두 다 메소드라고 부르는데, 모양이 다르니 다른 말을 불러야 합니다 따라서 기존함수는 static이라는 것을 사용하기 때문에 static메소드, 아..
-
[JAVA] 객체지향(2)JAVA 2021. 3. 11. 14:15
안녕하세요~ 이번에도 뉴렉처님 객체지향 강의(2)를 기반으로 정리한 내용을 포스팅 합니다! www.youtube.com/watch?v=o9arF7ybRbg 바로 시작하겠습니다~ 지난 시간 내용 구조적인 프로그래밍이 효율적인줄 알았는데, 단위가 더 커지면 이것 역시 효율적인 면에서 떨어져 많은 함수들이 생겨나고, 그 함수들을 어떻게하면 효율적으로 관리할것인가? 라는 질문에 데이터를 한 CLASS에 넣어주는 것이 캡슐화 라는 것을 배웠습니다. 오늘은 코드를 통해 직접적으로 알아보겠습니다. 지난 구조적프로그래밍 예제를 복붙 합니다. 그 후, private를 지우고, 오른쪽 ExamList.java 파일에서 Exam[] exams1; 이라고 수정을 해봅시다! [그림2] 지난 시간에 설명한 바와 같이 함수가 외부..