본문 바로가기

전체 글37

야구게임 by Java 십대 이후로 안 해본 숫자 야구게임을 Java로 만들어 봄 랜덤 넘버 3개를 만드는 방법이야 쉽겠지 했는데 중복을 허용하지 않아야 하는군... - int[]로 만들면 되나? - 아니면 Set.add로 length가 3이 될때까지? - Strike/Ball 판정하려면 index가 필요하니까 LinkedHashSet인가? - 그냥 ArrayList는? - HashSet으로 만들어서 List로 형변환? (상속관계가 아닌듯..) Random random = new Random(); int num1 = random.nextInt(10); int num2, num3; while (true) { num2 = random.nextInt(10); num3 = random.nextInt(10); if (num1 == nu.. 2023. 10. 19.
Collection - Collection과 Map은 java.util의 interface로서 자료구조 구현을 위한 다양한 메서드를 제공함. - 구현 클래스는 다음과 같다. List : ArrayList (add, set, remove), LinkedList, Vector, Stack (push, peek, pop) Set : HashSet, LinkedHashSet, TreeSet (add, get, remove) Queue : LinkedList, PriorityQueue (add, peek, poll) Map : Hashtable, HashMap, LinkedHashMap, TreeMap (put, get, keySet, values, remove) - Type별 길이값 가져오는 메서드 비교 length : 배열의 길.. 2023. 10. 18.
Java 메모리 구조, Github 협업 프로세스 오늘 공부한 것 - JAVA 문법 기초 - github 협업 고민했던 문제 - Wrapper class로 박싱된 기본형 변수의 값은 어디에 저장되는가? -> 인스턴스 생성과 마찬가지이므로 참조형 변수처럼 heap에 저장 https://velog.io/@kimdy0915/기본형primitive-vs.-래퍼-클래스wrapper-class - sc.nextInt() 다음에 오는 sc.nextLine()이 공백으로 처리됨 -> 사용자가 입력한 Enter를 인식, sc.nextLine() 추가 또는 Integer.parseInt(sc.nextLine())으로 변경 알게 된 것 - Java에서 참조형 변수를 저장하는 방식 -> 원본 값은 Heap영역에, Heap영역의 주소를 Stack영역에 저장 (기본형 변수는 원.. 2023. 10. 16.
항해99 워밍업 11일차 오늘 공부한 것 - 자료구조 LinkedList, Stack, Queue, HashTable 구현 - 알고리즘 문제 풀이 고민했던 문제 - LinkedList Node의 parameter인 next는 어떤 타입이라고 할 수 있는가? -> value는 data field, next는 link field로 볼 수 있음 / 다음 노드의 포인터나 참조값을 저장함 // Java Node definition private static class Node { E item; Node next; Node prev; Node(Node prev, E element, Node next) { this.item = element; this.next = next; this.prev = prev; } }​ 알게 된 것 - 해시값 충.. 2023. 10. 16.
항해99 스타터 노트 보호되어 있는 글 입니다. 2023. 10. 15.
항해99 워밍업 10일차 오늘 공부한 것 - JAVA Collection, Generic, Lambda, Stream, Networking - Retrofit library 사용법 - Internet/Network 기초 알게 된 것 - Retrofit -> HTTP API를 Java interface로 변환하는 라이브러리 (OkHttp library 기반) https://square.github.io/retrofit/ - REST(Representational State Transfer) -> 분산 하이퍼미디어 시스템을 위한 소프트웨어 아키텍쳐의 한 형식 https://ko.wikipedia.org/wiki/REST https://restfulapi.net/ - URI(Uniform Resource Identifier), URL.. 2023. 10. 14.
항해99 워밍업 4일차 오늘 공부한 것 - JAVA Class 구현 실습 고민했던 문제 - Interface의 메서드를 여러 개의 상속 클래스에서 구현할 때 공통되는 코드를 줄일 수 있는 방법은? public interface Walkable { void walk(int x, int y); } public class Child extends Person implements Walkable, Runnable, Swimmable { @Override public void walk(int x, int y) { whoIs(); System.out.println("speed: " + speed); this.x = x; this.y = y; System.out.println("walked to: " + getLocation()); } }.. 2023. 10. 9.
항해99 워밍업 3일차 오늘 공부한 것 - JAVA 문법 기초 - Flask를 이용한 웹사이트 구현 - DB(SQLite) 활용 방법 - Flask 프로젝트 배포 - OG 태그 고민했던 문제 - Flask 등의 프레임워크의 기본 코드는 항상 복붙으로 하는 건지... - 필요한 라이브러리와 라이브러리 사용을 위한 기본 코드, 메서드들은 항상 구글링? -> 경험이 쌓이면 알게 될 듯 알게 된 것 - overloading vs overriding -> overloading : 메서드의 이름은 같지만 인자의 수나 형이 다름 -> overriding : 부모 클래스의 메서드를 재정의, @override 표기함 - 접근제어자의 종류와 용도 -> private(in class) > default(in package) > protected(.. 2023. 10. 7.
항해99 워밍업 2일차 오늘 공부한 것 - javascript 문법 기초 - jQuery 사용법 기초 - JS fetch 함수를 이용한 공개 데이터 가져오기 - 웹데이터의 태그 구조 파악 및 JS와 jQuery를 이용한 데이터 활용 방법 - Flask를 이용한 Python 서버 구축 - requests, beautifulsoup을 이용한 웹 스크래핑 고민했던 문제 - jQuery의 선택자로 사용하는 $()표기와 javascript 백틱안에 들어가서 동적할당을 위해 사용되는 ${}의 구분 -> 각각 jQuery와 javascript의 문법으로 괄호 표기가 다름 알게 된 것 - Flask 프레임워크 및 Django와의 차이점 -> Flask는 마이크로 프레임워크로서 가볍고 확장이 자유로움, ORM 지원 패키지(주로 SQLAlche.. 2023. 10. 6.