목록전체 글 (279)
ecsimsw

2020.05.09 사랑니 빼고 누워있는 기념으로 간만에 생각 정리 + 나만의 로드맵. 요즘 재밌는 건, 자바랑 백엔드 공부, 알고리즘 문제 풀이. 자바의 정석을 읽는데 '뇌를 자극하는 c#'만큼 재밌어서 안좋아했던 자바에 입덕하고, 빨리 서비스를 만들어 보고 싶다는 생각에 백엔드 공부가 재밌고, 알고리즘은 수학 문제 푸는 느낌이라 풀렸을 때 쾌감이 좋아 매일 2,3문제씩 푸는 것 같다. 내년 3월에는 소집해제 > 칼복학해서 해커톤이랑 공모전 좀 많이 도전하고 경험할 수 있도록 올해 부지런히 기반 잡기. 앞으로 공부 방향은 JSP, Spring + JPA, 자바는 JVM을 공부하면서 더 단단히, 알고리즘은 매일 꾸준히하기. 서버 공부 좀 하고, 데이터 분석을 위해서 머신러닝도 잡고 갈 생각이고. 음 나보..
자바는 문자열의 끝을 표시하지 않는다. C나 C++은 문자열의 끝을 \0로 하여 끝을 표시하였지만, 자바는 길이를 따로 저장해 두는 방식으로 끝을 안다. 문자열 클래스 파일 따라가기 String.length()가 궁금해서 따라가보았다. 심심해서... String.java와 StringCoding.java을 그냥 궁금한 부분만 검색해가면서 의식의 흐름 기법으로 정리 char[] chars = new char[]{'d','e','s'}; String s2 = new String(chars); System.out.println(s2.length()); public int length() { return value.length >> coder(); } private final byte[] value; byte ..

자바의 접근 제한자 private : 같은 클래스 내에서만 접근 가능 default : 같은 패키지 내에서만 접근 가능 protected : 같은 패키지내 또는 자손 클래스일 경우 접근 가능 public : 제한 없음 캡슐화 접근 제한자는 객체지향의 캡슐화, 그리고 그를 통한 코드 은닉화를 위한 도구이다. 데이터를 외부로부터 숨기거나, 접근을 막고, 또는 접근에 처리를 강제화한다. 이전에 oop 캡슐화에 대해서 정리한 글이 있다. 객체지향을 공부하면서 캡슐화를 정확히 몰랐고, 은닉화와 구분하지 못해서 정리했던 기억이 난다. 그때 캡슐성을 아래 3개로 정리했다. Encapsulation 1) 유사한 기능이나 변수를 한 집합으로 하여 더 관리하기 쉽게하고 코드를 명확히 함. 2) 외부에서 멤버를 엑세스하는 ..

초기화 멤버 변수의 초기화는 선택적이지만, 지역 변수의 초기화는 필수적이다. 멤버 변수를 초기화 하는 방법에는 세가지가 있다. 0. 기본값 1. 명시적 초기화 2. 생성자를 통한 초기화 3. 초기화 블록 0. 기본값 초기화에 앞서, 멤버 변수는 초기화가 선택적이기 때문에 초기화가 안됐다면 자료형 마다 기본 값을 갖는다. boolean = false char = '\u000' byte,short,int = 0 long = 0L float = 0.0F double = 0.0 참조형 변수 = null 1. 명시적 초기화 가장 쉽게, 변수를 선언과 동시에 초기화하는 방식이다. class Person{ String name = "unkown"; int age=0; } 2. 생성자를 통한 초기화 생성자를 이용하여 ..
Int vs Short / Byte 작은 수를 저장할 변수의 타입은 4 바이트까지 과한거 아닌가?. Byte형은 혹시 모르고, 2 바이트 정도면 충분할 거 같은데 Short를 쓰는게 이득 아닐까?? JVM의 Operand stack은 피연산자를 4 바이트로 저장하기 때문에, 그 보다 작은 작료형은 오히려 4Byte로 변환하여 계산된다. => 성능을 고려한다면 int, 정말 공간을 효율적으로 사용해야한다면, 그땐 short나 byte 타입을 생각하자.

주식 사보기실질적인 경제 공부를 해보고 싶었다. 어떤 식으로 돈을 관리해야하는지. 저축 방법을 알아보고, 실질 금리가 마이너스로 가고 있다는 말에 무조건 통장에 쌓아두고 싶지 않았다. 재테크라고 하긴 과하고, 적어도 용어나 종류, 방법은 알아야 할 것 같아서, 고민하다가 코로나 문제로 하락장일 때 사보자고 증권 계좌를 개설하고 차트 보는척 좀 해주다가 애플 1주 매입했다. 애플을 고른 이유는 1) 안 망할거 같아서 2) 꾸준히 상승세라 3) 내가 좋아하는 기업이라. 단기간에 뭘 바라는 건 아니니까 조금씩 월급 모아서 한 주씩 사둘 생각! 20일날 산지 하루만에 3만원 손해보는거 보고, 이게 주식이구나~ 더 하지 말아야지 생각했는데, 26일 지금 다시 오르는 중! 9달 후 포스팅 이후에도 매달..

다중 분류 / Multinomial classification - 이전에 Logistic Regression으로 이진 분류를 처리하는 것을 공부하였다. 두 집합으로 나누는 것은 할 수 있는데, 여러 집합으로 분류해야하는 경우는 어떻게 처리해야할까. - 집합이 두개인 것과 똑같이, A와 A가 아닌 것, B와 B가 아닌 것, C와 C가 아닌 것으로 구분하여 이진 회귀로 처리하면 3개의 집합을 분류할 수 있다. - 이렇게 3개의 가설을 세울 수 있고, 그것을 학습하는 것으로 x가 각 집합에 속할 확률을 예측할 수 있다. 따라서 입력에 대한 3개의 함수 값을 비교하여, 가장 큰 값을 갖는 집합에 속하는 것으로 분류한다. Softmax - 위의 예제에서 가설 함수는 시그모이드 함수를 사용했으므로 0~1 사이의 값..

영화 추천 서비스공부한 자연어 처리를 연습 할 수 있는 간단한 서비스를 만들고 싶었습니다.영화를 입력하면 45000개의 영화 데이터 내에서 '제작 언어', '시리즈', '줄거리', '평점', '장르'를 바탕으로 가장 유사한 영화 n개를 추천합니다.웹 서버와 연산 서버로 구성되어, 연산 서버에서 유사한 영화 뽑는 연산을 처리하고, 웹 서버는 검색 영화, 추천 영화를 연산 서버와 주고 받고 페이지를 구성하여 브라우저에 응답합니다.연산 서버파이썬으로 제작한 연산 서버는 검색한 영화와 제작 언어 일치, 시리즈 존재 여부, 줄거리 유사도, 평점, 장르 유사 여부를 비교하여 가장 높은 점수의 n개 수의 추천 영화를 찾습니다. 소켓 통신으로 웹 서버로부터 검색 영화 정보를 받고, 연산 후 추천 영화 목록을 전송합니다..