분류 전체보기 67

C# 프로그램 기초 - 07

오늘의 주제는 IF 문 입니다. 앞서도 한번 언급한 적 있는 IF문을 이번에는 코드 수준에서 다뤄봅시다. 먼저 그 동안 연습해온 코드를 다시 봅니다. Console.WriteLine("안녕, 나는 컴퓨터야. 너는 이름이 뭐니?"); string msg = Console.ReadLine(); Console.WriteLine("안녕, " + msg + "아, 만나서 반가워."); 우리는 이와 같이 사용자로부터 값을 입력받아 인삿말을 건네는 콘솔앱을 만들었습니다. 하지만 사용자는 항상 우리의 의도대로 움직여주지 않습니다. 사용자가 값을 입력했는지 확인을 할 필요가 있습니다. 그래서 우리는 if문을 이용해 사용자가 값을 제대로 입력했는지 확인하고, 그에 따라 "분기"를 하고자 합니다. Console.WriteL..

C# 프로그램 기초 - 06

기본적으로 어떤 기능을 구현하고 그걸 다른 곳에서 가져다 쓰기 위해서는 Namespace라는 것으로 정의되어 있어야 원활합니다. 반드시 필요한 것은 아니지만, Namespace가 없으면, 중복된 이름으로 인한 호출 문제가 발생하게 됩니다. 하지만 그런 Namespace가 없이도, 언제든 바로 사용할 수 있는 명령어가 있습니다. 대표적으로 현재 콘솔 프로젝트에서는 Console이란 녀석을 아무런 조건없이 어디서든 호출해서 쓸 수 있습니다. 이렇게 미리 정해놓은 명령어, 또는 개체를 우리는 "예약어" 라고 부릅니다. 대표적인 예약어에는 if, for, while, do 등등의 명령어와, 프로젝트 템플릿에 따라 Console과 같은 클래스가 있습니다. 그리고 Console이라고 입력한 뒤, 점(.) 하나를 찍..

C# 프로그램 기초 - 05

프로그램도 하나의 언어이고, 언어를 배우기 위한 과정은 다양한 방법으로 존재합니다. 우리는 흔히 "교과서적인 방법"이란 표현을 사용하곤 하는데, 먼저 기반 지식에 대한 공부를 다 한 다음에 실질적인 학습에 들어가는 과정을 말합니다. 이는 대부분 과거의 학교들이 수행했던 방법으로, 이 방법은 언어를 습득하는데 있어서는 결코 좋지 않은 방법이란 것을 다들 알고 있습니다. 그럼에도 불구하고, 아직까지도 그저 "시험을 잘 보기 위한" 수단으로 언어를 교과서적인 방법으로 학습하고 있습니다. 하지만 프로그래밍 언어까지 그렇게 공부할 필요는 없습니다. 우리의 목표는 자격증이나 시험이 아니니깐요. 그렇기 때문에 모든 개념, 모든 요소를 하나하나 그게 뭔지 일일이 알고 접근할 필요는 없습니다. 그런 "절차"들은 오히려 ..

C# 프로그램 기초 - 04

자, 드디어 이제 실습을 해봅시다. 우리는 화면에 "Hello, World"를 출력하는 프로그램을 만들 것입니다. 이는 프로그램 업계에서 꽤나 유명한 작업으로, 일종에 밈처럼 사용되고 있습니다. VS를 실행하면 나오는 초기 메뉴 우측에 보면 [새 프로젝트 만들기]가 있습니다. 해당 메뉴를 클릭하면, 좌측에는 최근 사용한 템플릿이 오른쪽에는 템플릿 검색 화면이 나옵니다. 저의 화면과 여러분의 화면이 같지 않을 수 있습니다. 우측 창에서 [모든 언어] 에서 [C#]을 선택해 주세요. 그러면 좀 더 원하는 템플릿을 찾아보기 쉬울 겁니다. 여기서 템플릿이란, 만들고자 하는 유형의 프로그램의 초기 설정을 미리 어느정도 만들어 둔 것을 가져와 쓰는 것을 의미합니다. 물론 아무것도 없는 빈 프로젝트를 생성하는 것도 ..

C# 프로그램 기초 - 03

이제 실습을 하며 익히기 위해 우선 개발환경을 설정해 보겠습니다. C#을 실습하기 위해서는 먼저 비주얼스튜디오(Visual Studio)가 필요합니다. 흔히 브이에스(VS)라고 부르기도 하며, VS가 아니어도 C#을 개발할 수는 있지만, 가장 보편적으로 넓게 사용되는 툴입니다. 마이크로소프트의 비주얼스튜디오 웹사이트로 접속합니다. https://visualstudio.microsoft.com/ko/ Visual Studio: 소프트웨어 개발자 및 Teams용 IDE 및 코드 편집기 Visual Studio 개발 도구 및 서비스를 사용하면 모든 개발자가 모든 플랫폼 및 언어로 앱을 쉽게 개발할 수 있습니다. 무료로 어디서나 코드 편집기 또는 IDE를 사용하여 개발하세요. visualstudio.micros..

C# 프로그램 기초 - 02

C# 프로그램 기초 공부, 그 두번째를 시작하겠습니다. 모든 프로그램에는 개발자가 의도한대로 동작할 수 있도록 공통적으로 제공하는 기능이 있습니다. 대표적인 것이 IF 문이며, 이러한 명령어를 통해서 프로그램이 자신의 의도대로 동작하도록 구성하는 행위의 총칭이 곧 프로그램의 과정이라고 볼 수 있을 것입니다. 다음의 명령어를 살펴봅시다. IF ~ ELSE (이프 엘스) 만약 ~ 이라면, 아니라면~ 이라고 해석할 수 있는 이 명령어는 어떤 조건이 참이냐 거짓이냐에 따라 분기를 하는 명령어 입니다. 프로그램의 모든 흐름은 기본적으로 분기라고 보면 됩니다. 로그인을 했을 경우 하지 않았을 경우가 나뉘어져서, 로그인을 했으면 정보를 보여주고, 로그인을 하지 않았을 경우 정보를 보여주지 않는 식이죠. Example..

C# 프로그램 기초 - 01

안녕하세요, 로슬린입니다. C# 프로그램 공부를 시작하겠습니다. 이 글은 단순히 C# 이란 프로그램을 처음 하는 사람만을 대상으로 하는 것이 아니라, 아예 프로그램이라는 것 자체를 처음 접하는 이를 대상으로 합니다. 프로그래밍을 처음 시작할 때, 어떤 언어를 선택해야 할지 망설일 때가 있습니다. 그런데, 언어의 역사와 체계를 고려할 때, C#은 과거부터 현대까지의 다양한 언어적 영역을 아우르는 언어로 꼽힙니다. 따라서 프로그래밍을 처음 시작하는 분들이 C#을 선택하면, 프로그래밍의 기본 원리를 이해하면서 동시에 미래의 언어 발전 방향도 파악할 수 있을 것입니다. "C#이란 언어는 Microsoft 에서 만든 컴파일 언어입니다." 통상 프로그램을 공부하게 되면 대체로 이에 대해 구체적인 역사부터 시작하기 ..

웹브라우저 console.log 의 맹점

프론트엔드를 개발하는 사람이라면 웹브라우저에 찍히는 console.log를 활용하는 경우는 종종 있을 것이다. 하지만, console.log를 사용함에 있어 주의해야할 것이 있다. 다음의 예시 코드를 보자. let arr = [1, 2, 3, 4]; console.log('before : ', arr); let test = arr.shift(); console.log('after : ', arr); console.log(test); shift 는 배열의 첫번째 요소를 잘라내어 반환하므로 원본 배열에서 해당 요소가 사라진다. 그런데 저렇게 console.log를 출력해 보면 before 와 after가 동일한 배열이 반환된다. 즉 before이후에 배열이 변했지만, before에서 이미 변경된 배열이 출력..

개발이야기 2023.07.22

2023년도 스택오버플로우 설문조사

모든 통계는 "전문 개발자" 기준입니다. (1) 사용언어 순위 역시 1위는 javascript 네요. Typescript까지 포함시키면 점유율은 압도적인 것 같습니다. 글로벌 순위다 보니, 국내랑 다르게 Java와 C#의 점유율이 불과 1% 수준입니다. (2) 사용 데이터베이스 순위 PostgreSQL의 인기가 글로벌하네요. MySQL이 MariaDB와 합치면 1위자리를 놓고 경쟁하고 있는 셈인 것 같습니다. SQLite는 모바일앱때문에 점유율이 높은 것 같고 다음으로 MS-SQL 순이네요. (3) 클라우드 뭐 예상한대로 AWS가 압도적이네요. Azure와 GCP가 근소한 차이로 뒤따르고 있는데, 근래에 두 클라우드가 공짜를 열심히 뿌리고 있지만 별다른 진전을 못보고 있는 것 같네요. (4) 웹 프레임워..

개발이야기 2023.06.16

우분투 서버에 mariadb 설치하기

(1) 먼저 apt-get 을 업데이트 해줍니다. sudo apt-get update (2) mariadb를 설치합니다. sudo apt-get install mariadb-server (3) db에 접속합니다. mysql (4) 원하는 데이터베이스를 생성합니다. create database 데이터베이스이름 default character set UTF8; (5) db에 접속할 계정 정보를 생성합니다. create user 아이디@localhost identified by '비밀번호' (6) 생성한 db와 계정을 연결해 줍니다. grant all privileges on 데이터베이스이름.* to 아이디@localhost; ※ mysql도 동일하다.

개발이야기 2023.04.21
반응형