본문 바로가기

전체 글

(55)
c#으로 근본 없는 웹서버 개발기 4 : HTTP 헤더정보 살피기 ⚠WARNING ASP.NET에 대한 포스팅이 아닙니다 나가실 문은 오른쪽 하단입니다 웹사이트에서 없어도 되는부분이지만. 북마크나 즐겨찾기로 추가 했을 때, 제목보다 눈에 빨리 들어오는 것이 favicon.ico 일것이다. 사람의 뇌는 글보다 이미지에 대한 기억을 오래 간직한다. 그러므로 본인의 웹사이트에 대한 애정이 있다면 favicon에 신경을 쓸것이다. 그리고 손님으로써 방문한 사이트에 favicon이 없다면 먼가 허전할 것이다. 그렇다. favicon은 하나의 단순한 이지미가 아니라 사이트의 얼굴마담, 마스코트, 그리고 IdenTT 인것이다. 그래서 favicon을 기준으로 어떻게 브러우저부터 요청이 되는지 헤더값을 살표보기로 했다 요청헤더 살펴보기 전 편에 이어서 알아야 할부분이, Connect..
c#으로 근본 없는 웹서버 개발기 3 : 브라우저 요청 값 확인 ⚠WARNING ASP.NET에 대한 포스팅이 아닙니다 나가실 문은 오른쪽 하단입니다 웹서버가 하는 일은 브라우저가 보낸 요청에 응답하는 것이다. 서버에서 먼저 브라우저쪽으로 요청하는 일은 없다. 그렇다. 브라우저가 먼저 다가와주지 않으면 소통하지 못하는 고독한 존재이다. 그래서 언제 있을지 모르는 브라우저의 요청에 만전을 기해야 한다. 우선 전전편의 소스에서 리퀘스트와 리스폰스로 구분을 지었다. static void Main(string[] args) { IPEndPoint ipep = new IPEndPoint(IPAddress.Any, 80); Socket server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType...
c#으로 근본 없는 웹서버 개발기 2 : 구름에 띄우기 ⚠WARNING ASP.NET에 대한 포스팅이 아닙니다 나가실 문은 오른쪽 하단입니다 국내에서도 코드샌드박스나 리플릿 같은 서비스가 존재한다 구름ide 라고 하는 건데, 타사에 비하면 먼가 답답하다...느리다 자꾸 컨테이너 하나 바꿀 때마다 생색을.. 동시에 여러개 못한다고 생색을 낸다(돈을 내면 해결 할 수 있다한다) 자동완성이나 문법검사 같은게 없어 구문 오류나면 빌드 전까지 모른다. 여튼 쓰다 보면 많이 비교급이 되긴하는 그런 안타까움이 있지만, 국내 서비스라고 하여 이용보려 한다. 그러나, 장점도 있다. 1. 국내 서비스라 국내에서 할 경우 핑이 빠르다. 2. 리플릿의 로봇에 밀리지 않을 만큼? 카와이이 한 마스코드가 있다. 3. 널널한 서버를 이용하는 듯한 천편일률적인 쾌적함?이 있다. 더 이상..
c#으로 근본 없는 웹서버 개발기 1 : 소켓통신 ⚠WARNING ASP.NET에 대한 포스팅이 아닙니다 나가실 문은 오른쪽 하단입니다 asp, jsp, php, node.js, flask 등, 합해서 꽤 많은 시간을 그들과 보냈지만 무었하나 제대로 알 수가 없다. 그것들은 작업을 너무 쉽게 해주므로 크리티컬 한 오류가 나면 해결하기가 너무힘들고 의존증이 생겨 사람을 멍청하게 만든다. 너무쉽게 다가오는 것은 중독되기도 쉽다. 최신 기술이라고 가져와 사용했는데, 자꾸 알 수 없는 이유로 서버가 뒤는지는 경우가 생겼던적이 있었다. 나는 그 날 본 오류가 아직 해결되었는지도 알 수 없는 상태로 그 떄의 웹프레임워크라는 것에 환멸을 느끼며 노브랜드워크로 웹을 끄적여볼까 한다. 가이드라인이 없으니 엄청난 삽질이 될거 같다. 그러나 어렵고 힘에 부치더라도 좁은 문..
JSX TO JS 변환 구현 서론 babel.js가 하는일 중에 하나가 설탕구문이 들어가는 내용을 브라우져가 알 수 있는 내용로 변경하는 것이다. 그럴려면 가장 먼저 설탕구문이 있을 수 있는 스크립트를 중단 시키고, 바꾸고, 다시 실행하는 것이 순서일 것이다. jsx는 설탕구문이기에 그러한 과정이 필요하다. 조사 스크립트 중단을 알아보기 위해 구글에 prevent tag script 라고 검색을 하니 첫페이지에 적당한 것이 나왔다. https://medium.com/snips-ai/how-to-block-third-party-scripts-with-a-few-lines-of-javascript-f0b08b9c4c0 위 소스를 HTML파일의 헤더부분에 삽입을 하니 그 이후로 나오는 태그들은 전부 소실 되었다 (body조차) 물론 만능..
React virutal-DOM 구조 및 구현해보기. 가상돔의 실체는 무엇인가 대해서 조사해보자. Virtual DOM은 무엇인가요? Virtual DOM (VDOM)은 UI의 이상적인 또는 “가상”적인 표현을 메모리에 저장하고 ReactDOM과 같은 라이브러리에 의해 “실제” DOM과 동기화하는 프로그래밍 개념입니다. 이 과정을 재조정이라고 합니다. "가상"적인 표현은 리엑트 객체내에 저장하든지, 아니면 DOM에 저장될지 둘중 하나일 것이다. React.render를 하기 전과 후를 Object.keys로 비교해본다. 결과: 언더바(_)로 시작하는 네가지가 $0의 새 구성원이 된것을 확인 할 수 있다. c98pj33.. 하는 부분은 첫 render를 할 때마다 랜덤하게 부여되고 재 호출시에는 유지되는 결과로 볼 때. 저들중 한놈, "가상"적인 표현을 저장..
useState 동작실험 및 구현 class 타입인 React.Component의 this.setState 와는 다르게, 동작원리를 초심자 입장에서는 직관적으로 유추하기가 힘들다. 일단 아래의 코드를 살펴보자. (공식문서의 내용) import React, { useState } from 'react'; function Example() { // 새로운 state 변수를 선언하고, count라 부르겠습니다. const [count, setCount] = useState(0); return ( You clicked {count} times setCount(count + 1)}> Click me ); } 공식문서를 살펴보면 useState(0)가 각각 count, setCount 에 변수와 함수를 할당한다고 하는데, useState가 어떻게 ..