전체 글 22

[JAVA] 25306번 너의 평점은

간단하게 풀겠다~ 했는데 P를 계산에 포함하지 않게 하는걸 오래 고민했다.그냥 단순하게 빼고 계산하면 되는거인데..! import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.StringTokenizer;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); double sum = 0; double creditsu..

[OSI 7계층]네트워크 계층

네트워크에는 다양한 기기 간의 통신을 위해 약속되어진 구조가 있다.컴퓨터 네트워크를 한번이라도 찾아봤던 사람들은OSI 7계층이라는 것이 익숙할 것이다.이와 더불어 실제 인터넷 통신에 사용되는 TCP/IP 4계층도 있다. 이 개념을 이해하면 데이터의 송수신 과정을 이해하는 것에 도움이 된다. OSI 7계층(Open System Interconnection Reference Model 7 Layers)국제 표준화 기구(ISO, International Organization for Standardization)에서 네트워크 통신이 이루어지는 과정을 7단계로 나눈 네트워크 표준 모델이다. 이 모델에서 데이터의 송수신 과정은 데이터를 송신할때는 높은 계층에서 낮은 계층으로,데이터를 수신할 때는 낮은 계층에서 높..

데이터베이스

서버와 클라이언트인터넷 서비스는 보통 서버와 클라이언트가 관계를 맺는다.    클라이언트는 서버로 요청하는 프로그램 모두를 말한다.예를 들면 우리가 많이 사용하는 웹 브라우저가 있다.웹 브라우저로 우리는 검색을 한다.이 행위를 '서버에 요청한다' 고 표현한다. 이제 서버는 클라이언트의 요청을 받았고, 이 요청을 처리해야한다.클라이언트가 데이터를 요청했을 수도 있고, 단순히 서버 내에서 처리를 해달라는 것일 수도 있다. 위에서 예시를 든 웹 브라우저로 우리는 검색을 했다면서버는 이 요청을 새로운 화면으로 가기 위한 데이터를 달라는 요청이다. 그렇다면 이 데이터들은 가져오는 역할을 서버가 한다면,이 데이터들은 어디서 가져올까?  데이터베이스데이터베이스는 데이터를 한 군데에 모아놓고여러 사람이 사용할 목적으로..

[Kotlin] 코틀린 3강으로 끝내기 - 1편 기본 문법

강의에서는 안드로이드 스튜디오로 되어 있는데나는 인텔리제이를 사용하여 작업 환경을 세팅하였다. fun main() { val name = "Kotlin" println("Hello, " + name + "!") for (i in 1..5) { println("i = $i") }}fun hello() { println("hello")}fun add(a : Int , b : Int) : Int{ return a+b} 함수를 만들 때는 fun을 사용하여 생성한다.파라미터가 없다면 변수 타입을 설정하지 않아도 되지만있다면 함수 add() 와 같이 변수 설정을 해주어야 한다.자바와 다른 점은 int가 아닌 Int로 타입 첫 글자가 대문자이다.   val과 varval ..

Front-end Develop 2024.07.08

웹사이트 접속 과정

전 게시글에서 웹사이트의 구조를 알아보았다.이제 과정은 다음과 같다. 먼저, 사용자는 흔히 Chrome, Firefox, Safari 등을 가리키는웹 브라우저를 연다.  웹 브라우저가 하는 역할은 다음과 같다.HTML 렌더링CSS 처리JavaScript 실행 웹 페이지 간의 이동, 북마크 저장, 검색 등을 지원한다. 이제 사용자는 웹 브라우저에서 검색창 혹은 주소 표시줄에검색하고자 하는 웹사이트의 도메인 주소를 입력한다. www.example.com 웹 브라우저는 사용자가 입력한 도메인 주소를 DNS(Domain Name System) 서버에 요청하여 해당 도메인 주소에 대응하는 IP 주소를 찾는다. DNS는 도메인 이름을 IP 주소로 변환하여 웹 사이트에 접속할 수 있도록 해준다.이 과정에서는 DNS ..

웹사이트 구조

우리는 네이버, 구글 등의 웹사이트에 접속할 때 도메인 주소라는 것을 검색하여 접속한다.도메인 주소는 인터넷에서 웹사이트를 찾기 위해 사용되는 사람이 읽기 쉬운 주소이다.도메인 주소는 사람이 이해할 수 있는 형식으로 작성되어 있어서, naver.comgoogle.com 과 같이 기억하기 쉬운 이름으로 되어 있다. 실제로 인터넷을 통해 통신할 때는이 도메인 주소가 해당 웹사이트의 IP 주소로 변환되어 서버와 통신이 이루어진다! 흔히 URL(Uniform Resource Locator) 이라고 쓰기도 하는데 이거는 도메인에 경로도 포함되어 있는 주소이다. https://www.naver.com/프로토콜/도메인/경로 웹사이트 구조1. 사용자 요청 사용자는 웹 브라우저나 모바일 앱을 통해 네이버를 접속하기 위해..

뉴런 네트워크

왜 뉴런 네트워크인가? binary classification로 예시를 들자면빨간색과 파란색을 구분을 하고자 하면 선형적으로는 깔끔하게 구분을 못한다.     그런데 Activation Function를 사용하게 되면3차원으로 바꿔준다.x1와 x2은 2차원이었는데 3차원으로 변환된다. 깔끔하게 이 두가지를 구분시켜준다. 이런 관점으로 히든 유닛을 만들어 사용하는 이유이다. Universal Approximation Theoremneural network can approximate any continuous function   뉴런네트워크를 쓰면 세상의 함수를 Approximation 할 수 있다.     왼쪽은 뉴런 네트워크를 사용하지 않은 것이다.오른쪽은 뉴런 네트워크를 사용한 것인데 공간을 새로운 ..

딥 러닝

딥러닝이라는게 사실 상용화된게 얼마 되지 않았다.딥러닝 이전은 머신러닝이 활발했을 당시에는 코드를 공유하는 경우가 별로 없었다.그러다보니 논문을 보고 재구현 하는 경우가 많았는데 이또한 쉽지 않았다. 딥러닝이 시작되면서 코드가 공유되면서 빠른 속도로 성장할 수 있었다. 요즘 딥러닝에서 가장 많이 쓰이는 라이브러리는 구글의 TensorFlow랑 Meta의 PyToch라는 것을 많이 쓰고 있다.이 라이브러리의 장점은 레고를 조합하며 사용할 수 있듯이 딥러닝을 쉽게 시작할 수 있다는 진입장벽이 낮다. 쉽지는 않지만 할 수 있다는 거!  “an algorithm that is able to learn from data”     학습(learning)이라는 것은?task?   분류하는 것, 예측하는 것, 수치를 ..

패킷 교환 방식과 IP address

패킷 교환 방식이란?컴퓨터 네트워크에는 이메일이나 파일과 같은 데이터를 패킷(packet)이라는 작은 단위로 분할한 후 주고 받는다.이런 패킷은 어디로 가야하는지 그 목적지라는 정보(address)를 가지고 있다.  데이터를 패킷 단위로 작게 잘라 네트워크에 흘려 보내는 개념이다.그러면 패킷은 부여된 어드레스 정보를 확인하면서 전달한다.  IP 어드레스인터넷에는 수많은 컴퓨터가 연결되어 있어서 수신지 컴퓨터를 찾아내기가 어렵다. 이를 위한 고유 식별자가 필요한데 이때 사용되는 고유식별자가 IP 어드레스이다. 흔히 우편번호나 전화번호로 비유되는데, 수신지의 정보를 표현하기 위해서는 일반적인 집주소와는 달리 위치에 상관없이 네트워크 단위로 할당이 된다. 그래서 IP 어드레스를 보면 컴퓨터가 어느 지역에 있는..

컴퓨터 네트워크

컴퓨터 네트워크는 연결 방식이나 연결되는 컴퓨터들의 규모에 따라 다음과 같이 몇 가지 유형으로 구분할 수 있다. 가정이나 사무실에서 사용하는 건 LAN(Local Area Network)회사 건물 밖처럼 먼 거리에 위치된 컴퓨터와 연결된 것은 WAN(Wide Area Network) 1. LAN (Local Area Network)LAN은 일반적으로 가정이나 사무실 같은 근거리에서 사용되는 네트워크. LAN은 한정된 지리적 영역 내에 있는 컴퓨터들을 연결하여 데이터와 자원을 공유할 수 있게 한다. 예를 들어, 가정 내의 데스크탑, 노트북, 프린터 등이 LAN을 통해 서로 연결되어 파일 공유, 인터넷 접속 등을 할 수 있다. 2. WAN (Wide Area Network)WAN은 LAN보다 광범위한 지역을..