본문 바로가기

전체 글140

[WIL] Day 4 시리즈4편 NFT에 대하여, Non Fungible Token. Fungibility는 대체 가능하다는 의미. Non Fungibility는 대체 불가하다는 것, 예를 들면 땅, 한정판 신발, 한정판 카드, 전세 계약 같은 것들은 대체 불가하다고 한다. 토큰은, 블록체인의 안정성을 기반으로 화폐를 발행해서 사용이 가능하다. 어떻게 토큰을 발행? -> 2가지 기능을 갖고있는 스마트 컨트랙을 만듬. 1. 돈을 받으면 2. 토큰을 줌. 간단하지만 만약에 토큰의 발행을 제한한다면?딱 1개만 만든다면? 그리고 그 토큰에 이미지, 영상, 노래, 계약을 만들면? 이때 NFT가 탄생한다.그래서 앞선 예시로 그림을 산다고 할때 실제 그림을 사는 것이 아닌 토큰을 구매하는 셈이 된다. 그럼 그 돈을 주고 왜 이미지를 사는.. 2023. 5. 10.
[WIL] Day 3 클래스(static) 메소드 vs 인스턴스 메소드 필드: 클래스가 가지는 속성. 내가 알기로는 클래스 메소드는 레퍼런스 객체 생성하지 않고 바로 참조해서 사용가능. 반면에 인스턴스 메소드는 객체 참조를 해야하고 사용해야 함. (그게 맞음) 인스턴스 필드는 static이 안붙어있는 필드. 얘네들은 클래스 메소드에서 사용 불가. 또 클래스 필드는 static block에서 초기화가 가능하다. Static 블록은 main 메소드보다 먼저 실행한다. 꼼수 같은 작업이 가능하다. public class User { String name; // 인스턴스 필드 String address; boolean isVip; static int count ; // 클래스 필드 static{ // static 블록에서 초기화 가.. 2023. 5. 8.
[WIL] Day 2 WIL Day 2 -시리즈1편- 어떻게 블록체인에서 비디오 영상을 판매할 수 있는가? 펜케이크 스왑, 스시 스왑 왜 이더리움에서 바이낸스 체인으로 옮기는 거래소가 있는가? 블록체인==데이터베이스, append만 가능, 지우거나 변환은 안됨. “탈중앙화” 특정 개인이 DB를 관리할 수가 없음. 블록에는 데이터와 나의 해시 그리고 이전 블록의 해시가 필요하다. static이 붙은 메소드는 클래스 메소드라고 부를 것. 얘네는 인스턴스를 만들지 않아도 사용이 가능하다. JVM은 클래스를 어디서 찾을까요? -> CLASSPATH에서 찾는다, 그리고 읽은 클래스 파일을 PERM에 저장.그러면 static한 메소드를 알게된다.PERM은 스택이다. 자바 스택에 저장된 메소드 실행정보 하나를 스택 앤트리하고 한다. st.. 2023. 5. 8.
[WIL] Day 1 Spring 학습 단계: 김영한님 쉅들을 예정. 김영한님 쉅 듣기 전에 Java선수 필수. 스프링 완정정복 코스 스프링 입문부터 ~ 스프링 DB 2편까지 쭉 학습. 이후에 실습 코스 야생형으로 학습. 이후에 다시 스프링부스트와 스프링 고급형 듣기. 스프링 DB듣기 전에 기본 DB수업 선수 필요. Java 복습: 자바 파일은 컴파일을 하면 자바 class 파일이 생성이 된다. Class 파일을 생성하는 방법은 “javac 파일이름.java”이다. 그러면 해당 class파일이 생성이 되고 class파일을 실행시키기 위해서 “java 클래스파일이름”을 타입하면 해당 클래스파일을 실행시킨다. 자바는 클래스가 필요하고 클래스의 이름의 첫번째 알파벳은 대문자이다. 클래스안에는 필드 또는 메소드가 들어가 있다. 필드.. 2023. 5. 4.
알고리즘문제 시간 제한 알고리즘 문제를 풀다보면 시간제한이란 것이 항상 존재한다. 시간제한은 해당 문제의 풀수있는 알고리즘을 제한하기 위해서 존재한다. 이때 일반적으로 1초 = 1억번 계산한다라고 생각하면 될것. 이 시간과 주어진 문제의 입력조건의 최대값을 참고해서 알맞는 알고리즘을 도출해낼것. 예를 들어서 시간 제한: 2초, input값이 최대 10억일때. 무식하게 for문 2번 사용하는 짓은 절대로 문제가 안풀린다. (O(N^2)이기 때문에) 알고리즘의 복잡도는 O(N)도 부족하다, 적어도 O(NlogN)은 되어야지 해당 문제를 풀수가 있다. 요약) - 시간제한 1초는 대략 1억번이다. - 최대값 생각해서 알고리즘 잘 골라서 풀어라 2023. 5. 1.
[컴퓨터네트워크개론 master] 3. ip address(1) 아마 컴퓨터에 관심이 있으신 분들 ip에 대해서 들어보거나 알고 계실것이라고 생각이듭니다. 그렇지만 ip address가 어떻게 구성이 되어있고 어떻게 동작하는지애는 생소할 수 있습니다. 오늘은 그러한 부분을 알아보도록 하겠습니다. ip address는 계층으로 나누어져 있다 우리가 자주 사용하는 주소, 핸드폰번호, 학번 모두 계층으로 이루어져 있습니다. 이렇게 계층을 만드는 이유가 뭘까요? 그 얘기는 다 devide and conquer입니다. 내가 찾을 때 경기도 그러면 다른데는 신경 안쓰고 경기도만 찾을 수 있고 학번이 20학번이다 그럼 내가 다른 19학번이나 21학번 찾을 필요 없이 20학번에서 찾고 그럼 domain을 계속 줄여나가서 찾는데 조금 더 효과적인거죠. 그리고 이는 길을 찾는 것도 똑.. 2022. 11. 3.
[망상] 더블 포인팅! 예전에 1학년 1학기때, 한참 C언어를 배우고 있을 때였는데 그때 포인터와 배열의 개념에 대해서 잘 몰랐을 때 왜 포인터는 하나의 주소만 가르키지 라는 의문이 있었다. 사실 지금 생각해보면 그냥 잘 몰라서 하는 생각이라고 할 수가 있는데 또 재미있는 생각일 수도 있어서 일단 기록을 해본다. 포인터는 하나의 주소를 가리킨다, 밑 그림과 같이 대충 이런식으로 하나의 데이터를 포인팅하겠지요. 다만 그때 했던 망상으로는 포인터가 여러 주소를 가지게 되는 것이다. 물론 어떻게 객체를 새로 만들어서 하고 하면 당연히 만들 수가 있다. 하지만 왜 이런 기능의 포인터를 만들어야 하는지는 사실 기억이 나지 않는다. 근데 뭔가 있으면 좋을 것 같지 않나? 사실 그때 어떤 과제를 하면서 이런 생각을 한거긴 한데, 어떤 과제.. 2022. 10. 29.
야메 C언어 강좌: 12. 문자열 안녕하세요. 포인터 강좌 이후로 오랜만에 돌아왔습니다. 4학년이 되니까 이래저래 바쁘네요 ㅜㅜ 어쨌든 이번 시간에는 문자열에 대해서 알아보도록 하겠습니다. 우리는 이전 강의들을 통해서 배열과 포인터를 배워봤습니다. 이거 둘을 사용해서 저희는 문자열을 사용할 수가 있습니다. 문자열과 문자의 차이는 무엇인가요? 앞에서 우리는 문자를 char변수에 저장을 한다 라는 것을 배웠었고 char변수 같은 경우에는 딱 한 문자만 저장을 할 수 있었습니다. 반면 오늘 배울려는 문자열은 여러문자의 연속입니다. 둘의 차이를 정리하자면 아래와 같습니다. // 문자의 예시 'a', 'b', 'c' // 문자열의 예시 "abc", "hello", "string" // 문자는 ''로 감싸주고 문자열은 ""로 감싸주어야 합니다. 그.. 2022. 10. 24.
[컴퓨터네트워크개론 master] 2. Switched Network & Packet Switching 이번에 먼저 다룰 부분은 switched network입니다. switched network는 여러 개의 라우터, 이 길라잡이하는 라우터를 거쳐가야하는데 중간마다 길을 찾아서 길들이 중간에 스위치가 된다, 경로가 바뀐다는 뜻으로, 경로가 바뀌는게 아니라 길을 찾아갈 때 여기서 이쪽으로 가던 이쪽으로 가던 길이 스위치가 되죠(위 그림처럼 갈 수 있는 길이 많아서 그것을 결정해야 된다 라는 뜻입니다). 길이 스위치가 됩니다. 그래서 switched network이라고 하는 거고요. 스위치는 보통 라우터가 합니다. 그런데 스위치에다가 cisco라는 회사가 이런 기능을 추가해서 조금 더 복잡해졌습니다. (이 말은 그냥 흘러들으셔도 됩니다.) Switched communication network가 뭐냐하면 so.. 2022. 10. 23.