전체 글

전체 글

    [C#] 문자열 String & StringBuilder

    String 클래스 C#에서 문자열(string)은 큰 따옴표 ("")를 사용하여 표현하고, 단일 문자(char)는 작은따옴표(')를 사용하여 표현한다. 키워드 string은 .NET의 System.String 클래스의 별칭이므로, string 타입 데이터에서 System.String 클래스의 모든 메서드와 속성(Property)를 사용할 수 있다. ex) Substring() 메서드, Length 속성 using System; namespace CobookApplication { class Program { static void Main(string[] args) { // 문자열(string) 변수 string s1 = "Cheeze"; string s2 = "Ramyun"; // 문자(char) 변수..

    개발자로서의 마음가짐

    [임백준 칼럼] 실력은 고통의 총합이다 (지디넷코리아=임백준 IT칼럼니스트)평생 공부하는 건 개발자만이 아니다. 다른 직업을 가진 사람들도 쉼 없이 공부하고, 컨퍼런스와 세미나를 참가하고, 스터디를 한다. 공부없이 할 수 있는 일이 없기 때문이다. 언뜻 보기에 공부와 거리가 멀어 보이는 바텐더조차 공부할 것이 많다. 바텐더를 위한 컨퍼런스는 물론이고 전문적인 팟캐스트 방송까지 있다. 공부는 누구나 하는 것이므로 공부한다는 사실만으로 엄살을 떨 필요는 없다. 문제는 공부의 방향이다. 개발자의 경우는 평균적으로 보았을 때 3년 전에 학습한 지식이면 낡은 징후를 보이기 시작하고 5년이면 생명을 다한다. 더 오래가는 지식도 물론 있다. 프로그래밍의 본질에 가까운 지식은 수명이 오래가고 파편적인 지식일수록 수명이..

    [C#] 상수 const & readonly

    의미 상수는 값을 변경할 수 없는 메모리 공간이다. 상수와 변수의 차이 변수는 프로그램 중간에 값을 변경할 수 있지만, 상수는 초기에 정한 값을 중간에 변경할 수 없다. 선언 방식 C# 상수는 키워드 const 또는 readonly를 사용하여 정의한다. 변수와 비슷하게 선언하는데, 앞에 const 또는 readonly 키워드를 붙여 상수임을 나타낸다. 초기화 이후에 선언된 상수 값을 변경할 수 없다. const 선언과 동시에 값을 할당하여 초기화해야 한다. 상수만 선언하고 나중에 값을 넣을 수 없다. 내장 자료형 (정수형, 실수형, Enum, String)에 대해서만 사용할 수 있다. 메모리 할당 영역은 Stack Memory이다. Heap Memory에 저장하는 readonly 보다 더 빠르게 접근할 ..

    [C#] 네이밍 룰

    기본적으로 모든 C# 변수의 이름은 대소문자를 구별한다는 것을 알아야 한다. 하기의 규칙은 관례적으로 주로 사용하는 표준이지만 회사 혹은 팀마다 다른 방식으로 사용할 수 있다. 모듈 단위 및 팀 단위 개발을 진행할 때 가장 기초적이고 중요한 요소가 네이밍 룰이다. 1. 헝가리안 표기법 (Hungarian Case) 변수의 자료형을 변수명의 접두사로 붙이는 방식. 멤버 변수에는 m_을 접두사로 사용한다. 그러나 닷넷 코딩 표준에서 헝가리안 표기법은 추천하지 않는다. 모든 변수에는 카멜 표기법을 사용하고, 데이터 타입보다 변수가 담는 내용을 표현하는 것이 중요하다. int intNum; string strName; int m_Age; 2. 카멜 표기법 (Camel Case) 단어와 단어 사이를 대문자로 구분..

    [C#] 지역 변수, 전역 변수

    C# 변수는 지역 변수와 전역 변수 두 가지 방법으로 선언될 수 있다. 지역 변수 메서드 안에서 선언되고, 해당 메서드 내에서만 사용되며, 메서드 호출이 끝나면 소멸한다. 전역 변수보다 메모리 관리에 유용하다. 함수 밖에서는 불러올 수 없다. 각기 다른 함수 내에서 같은 이름의 지역 변수를 만들어도 무관하다. 기본 값을 할당받지 못하기 때문에 반드시 사용 전에 값을 할당해야 한다. 전역 변수 (Field, 필드) 클래스의 객체가 살아있는 한 존속한다. 다른 메서드들에서 필드를 참조할 수 있다. 만약 필드가 정적 필드(static field)라면 클래스 타입이 처음으로 런타임에 의해 로드될 때 해당 타입 객체에 생성되어 프로그램이 종료될 때까지 유지된다. 값을 할당하지 않으면, 해당 타입의 기본 값이 자동..

    [Chapter 8] Web Server vs. WAS(Web Application Server)

    웹 서버에 대해 공부하면서 웹 서버(Web Server)와 웹 애플리케이션 서버(WAS)에 대하여 알아봤는데, 머릿속에 정리가 잘 되지 않는 것 같아서 간략하게 조사하여 정리해 봤습니다. 1. Static Pages vs. Dynamic Pages 1-1. Static Pages 웹 서버에서 제공한다. 파일 경로 이름을 요청받아 경로와 일치하는 정적인 파일 컨탠츠(image, html, css, javascript 파일과 같이 컴퓨터에 저장되어 있는 파일)를 반환한다. 항상 동일한 페이지를 반환한다. 1-2. Dynamic Pages 웹 애플리케이션 서버에서 제공한다. 요청한 인자의 내용에 맞게 서버 내 로직이나 데이터베이스에서 처리한 동적인 컨탠츠를 반환한다. 정적 페이지보다 많은 유연성을 제공한다. ..

    [Chapter7] 웹 서버란 무엇인가?

    웹 서버란 무엇인지, 어떻게 작동하는지, 왜 중요한지 알아보자. Summary 웹 서버라는 용어는 함께 작동하는 하드웨어나 소프트웨어, 또는 둘 다를 가리킬 수 있다. 하드웨어 측면에서 웹 서버는 웹 사이트의 구성 요소 파일(예를 들어, HTML 문서, 이미지, CSS 스타일시트, 자바스크립트 파일)을 저장하는 컴퓨터이다. 웹 서버는 인터넷에 연결되어 웹에 연결된 다른 장치와의 물리적 데이터 교환을 지원한다. 소프트웨어 측면에서 웹 서버는 웹 사용자가 호스트된 파일에 접근하는 방법을 제어하는 여러 부분을 포함한다. 이것은 최소한 HTTP 서버를 말한다. HTTP 서버는 URL(웹 주소)와 HTTP(브라우저가 웹 페이지를 보는 데 사용하는 프로토콜)을 이해하는 소프트웨어이다. HTTP 서버는 웹 사이트의 ..

    [Chapter6] 도메인 네임

    도메인 네임이 무엇이고, 어떻게 동작하는지, 왜 그것들이 중요한지 배워보자. Summary 도메인 네임은 인터넷 인프라의 핵심 중 하나이다. 도메인 네임은 인터넷에서 사용할 수 있는 모든 웹 서버들에 대해 사람이 읽을 수 있는 주소를 제공한다. 인터넷에 연결된 모든 컴퓨터는 IPv4 주소 (예를 들어, 173.194.121.32) 또는 IPv6 주소 (예를 들어, 2027:0da8:8b73:0000:0000:8a2e:0370:1337)와 같은 공용 IP 주소를 통해 연결할 수 있다. 컴퓨터는 이러한 주소들을 쉽게 처리할 수 있지만, 사람들은 누가 서버를 실행하고 있는지, 웹 사이트가 제공하는 서비스가 무엇인지 알아내는 데 어려움을 겪는다. IP 주소는 기억하기 어렵고 시간이 지남에 따라 변경될 수도 있다..

    [Chapter5] URL은 무엇인가?

    URL은 무엇이고, 웹에서 어떻게 URL이 작동하는지 알아보자. Summary Hypertext 그리고 HTTP 처럼, URL은 웹에서 중요한 개념 중 하나이다. 이것은 웹 상에 게시된 어떤 리소스를 검색하고 찾기 위해서 브라우저에 의해 사용되는 메커니즘(목적을 달성하기 위한 방법)이다. URL은 Uniform Resource Locator의 약자이며, 인터넷에서 자원의 위치를 의미한다. URL은 웹 상에서 지정된 고유 리소스의 주소에 불과하다. 이론적으로, 유효한 각 URL은 고유 리소스를 가리킨다. 이러한 리소스는 HTML 페이지, CSS 문서, 이미지 등이 될 수 있다. 실제로는 몇 가지 예외가 있는데, 그중 가장 일반적인 것은 더 이상 존재하지 않거나 이동한 리소스를 가리키는 URL이다. URL로..

    [Chapter4] HTTP 정의

    HyperText Transfer Protocol (HTTP)는 브라우저와 서버 사이에서 사람들이 하이퍼미디어 문서를 읽을 수 있도록 웹 상에서 하이퍼미디어 문서의 전송을 가능하게 하는 기본 네트워크 프로토콜이다. 현재 버전의 HTTP 규격은 HTTP/2이다. ※ HyperText : 하이퍼텍스트는 다른 텍스트에 대한 링크를 포함하는 텍스트로, 이것은 소설과 같은 단일 선형 흐름과 반대이다. URI의 일부로서 , 예를 들어 "http://example.com/"의 "http"는 스키마(scheme)라고 부른다. "http" 스키마를 사용하는 리소스는 일반적으로 HTTP 프로토콜을 사용하여 암호화되지 않은 연결들을 전송한다. 그러나 "https"의 경우, 예를 들어 "https://developer.moz..