Coding History 214

국비 지원 IT(웹앱개발) 취업반 강의 13일차

스트림저번주 금요일에 냈던 문제를 스트림을 활용해서 풀어보라고 하셔서 스트림을 구글링 했는데 무슨소린지 하나도 모르겠다. 일단 스트림을 활용하지 않은 코드는import java.util.Arrays;import java.util.Scanner;class Main2 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String[] inputs = sc.nextLine().split(" "); long sum = 0; for (String inputData : inputs) { sum += Long.parseLong(inputData); ..

Coding History 2024.06.24

국비 지원 IT(웹앱개발) 취업반 강의 12일차

오늘은 개인적인 사정으로 인해서 출석을 하지 못했다. 9시에 레슨을 끝내고 밖에서 강사님이 올려주신 글과 영상을 보며 뭘 배웠는지 기록하려고 한다. 문제 풀이도 혼자서 진행하고 올리도록 해보겠다.문제 풀이 부터 시작했던 것 같다.인력사무소 문제class Main { public static void main(String[] args) { 사람인력관리소 a사람인력관리소 = new 사람인력관리소(); a사람인력관리소.add사람("홍길순", 33); // 나이가 33살인 1번째 사람(홍길순)이 추가되었습니다. a사람인력관리소.add사람("홍길동", 20); // 나이가 20살인 2번째 사람(홍길동)이 추가되었습니다. a사람인력관리..

Coding History 2024.06.21

국비 지원 IT(웹앱개발) 취업반 강의 11일차

ArrayList특징연속적인 데이터의 리스트 (데이터는 연속적으로 리스트에 들어있어야 하며 중간에 빈공간이 있으면 안된다)ArrayList 클래스는 내부적으로 Object[] 배열을 이용하여 요소를 저장배열을 이용하기 때문에 인덱스를 이용해 요소에 빠르게 접근할 수 있다.크기가 고정되어있는 배열과 달리 데이터 적재량에 따라 가변적으로 공간을 늘리거나 줄인다.그러나 배열 공간이 꽉 찰때 마다 배열을 copy하는 방식으로 늘리므로 이 과정에서 지연이 발생하게 된다.데이터를 리스트 중간에 삽입/삭제 할 경우, 중간에 빈 공간이 생기지 않도록 요소들의 위치를 앞뒤로 자동으로 이동시키기 때문에 삽입/삭제 동작은 느리다. 따라서 조회를 많이 하는 경우에 사용하는 것이 좋다import java.util.ArrayLi..

Coding History 2024.06.20

국비 지원 IT(웹앱개발) 취업반 강의 10일차

먼저 숙제 문제 풀이를 진행하면서 abstract에 대해서 배웠다. abstract는 부모 클래스의 메서드에 어떤 기능을 작성할 수 없게끔 강제하는 코드이다. 강사님은 부모 클래스에서 어떤 기능을 작성한다는 것은 의미가 없는 행동이라고 하셨는데 대게 자식 클래스에서 오버라이딩하기 때문에 그런 것 같다. abstract를 사용한 코드 예제를 보자.class 땡땡 { abstract void 땡땡 (); //abstract 사용.}interface 땡땡 { void 땡땡 (); // abstract는 생략됨}class 땅땅 implements 땡땡 { //interface에게 상속받으려면 extends가 아니고 implements로 상속함. //implements는 다중상속이 가능하다.(어차..

Coding History 2024.06.19

국비 지원 IT(웹앱개발) 취업반 강의 9일차

오늘은 상속에 대해서 배웠다. 상속에 대한 추상과 구상, 그리고 abstract와 함께.상속(extends)(자식)클래스를 품을 수 있는 추상적인(덜 구체적) (부모)클래스예제코드// 문제 : 아래와 같이 출력되도록 해주세요. // 조건 : `숨쉬다` 기능을 중복하지 말아주세요.``class Main { public static void main(String\[\] args) { 사람 a사람 = new 사람(); a사람.숨쉬다(); } } class 동물 { void 숨쉬다() { System.out.println("숨쉬다."); } } class 사람 extends 동물{ //동물 클래스 상속}예제 코드를 보면 ..

Coding History 2024.06.18

2024. 06. 17 문제 풀이

일단 바로 문제부터 보자.// 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다.// n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리턴하는 함수를 완성하세요.class Solution { public long solution(long n) { for (long i = 1; i 풀고 있던거 그대로 복사해서 위의 코드는 당연히 정답이 아니고 자바 루트 코드를 활용해 보려고 했는데 타입 미스매치가 나서 못하고 있다.class Solution { public long solution(long n) { long m = (long)Math.sqrt(n); //이렇게 하면 바로 lon..

Coding History 2024.06.18

국비 지원 IT(웹앱개발) 취업반 강의 8일차

오랜만의 수업이라 아침에 깨어나기 힘들었다. 여행 때문에 블로그 작성, 공부를 하지 못한 3일동안을 빼면 그래도 꾸준히 했던 탓에 적응은 되게 빨리 되는 것 같다. 수업의 시작은 여태껏 블로그 작성이나 깃 허브를 잘 업로드하고 있었는지 강사님의 확인부터 시작했다. 나는 여행 간 3일은 빼면 꾸준히 문제풀이와 유튜브 시청한 내용을 정리해서 올렸기 때문에 무난히 통과 했다(3일은 왜 안올렸냐고 물으셔서 여행다녀왔다고 말씀드렸다..) 난 항상 맨 앞자리에 앉기 때문에 뒤의 동료들의 상황은 잘 모르지만 강사님이 나오셔서 왜 이렇게 많이들 안했냐고 하셨다. 난 다들 나보다 훨씬 더 빡세게 할거라고 생각했었는데 그게 아니여서 의아하기도 했고 열심히 했다고 하기도 힘든 수준이지만 그래도 조금 뿌듯하기도 했다. 서론이..

Coding History 2024.06.17

2024. 06. 13 IP주소를 알아봅시다! (Feat. 공인/사설/고정/유동IP, 포트포워딩, DMZ, DDNS)

IP 주소는 '컴퓨터가 연결된 네트워크 끝단의 주소'를 가리킨다. 이는 '컴퓨터 자체의 식별번호'가 아니고, 각 컴퓨터가 '인터넷'에 연결된 위치를 식별하는 용도로 사용된다. IP 주소는 이동식 장치인 IT트레일러가 주소를 가지는 것과 같다. 컴퓨터를 집안에서 바깥으로 이동시켜도 IP 주소가 변경되지 않는다. 이는 마치 '도로명주소'처럼 고정된 위치를 가리킨다. 즉, IP 주소는 컴퓨터가 네트워크에 접속하여 통신하는 데 필수적인 역할을 한다.IP주소가 나올 수 있는 경우의 수를 더 늘리기위해서 공인 IP에 겹치지 않는 사설 IP를 부여한다. 한국의 도로명 주소로 예를 들면 서울시 땡땡구 땡땡로가 공인 IP이고 000동 000호가 사설 IP인 셈이다.사설 IP를 사용하는 컴퓨터는 해당 IP로는 서버에 접근..

Coding History 2024.06.13