본문 바로가기

분류 전체보기575

[opinion] IT산업이 뭔데? 한국에 살면서 각 개인들은 주로 it산업이라는 말을 많이 듣는다 주로 통념에서는 소프트웨어 개발을 it라고 생각하는데, 그것은 빙산의 일각이다. 해석해보면 정보 기술 산업인데, 사실상 용어의 범위 자체가 방대하다 그래서 이해를 돕기 위해서는 세분화하는 작업이 필요하다 최근에는 ict 즉, 정보통신기술 산업이라고도 부른다. 그 이유는 데이터의 양이 과거에 비해 방대해지면서 트랜잭션의 중요성 역시 커졌기 때문이다. 1. 소프트웨어란? 소프트웨어는 사실상 하드웨어를 제외한 코드로 구성된 요소라고 보는 것이 잘 알려진 요소이다. 이러한 소프트웨어는 크게 두 가지로 나뉜다. 시스템 소프트웨어 하드웨어를 제어하기 위한, 하드웨어에 근접한 소프트웨어를 의미한다. 주로, 운영체제가 돌아가게 하는 커널 단의 제어 등 컴.. 2023. 4. 7.
[백엔드] 자바 11 -> 자바 17로 업데이트 스프링 3.0부터는 자바 17부터 지원이 된다고 한다. 자바 11을 사용하다가 어쩔 수 없이 자바 버젼을 업그레이드 하게 된 과정을 리뷰해 보고자 한다. 1. 오라클 홈페이지에서 설치 파일을 다운로드 https://www.oracle.com/java/technologies/downloads/#java17 Download the Latest Java LTS Free Subscribe to Java SE and get the most comprehensive Java support available, with 24/7 global access to the experts. www.oracle.com 여기서 두번째 링크를 클릭해서 설치를 받도록 했다 이번에 받은 자바 버젼은 17.0.6 ver이다 이렇게 설치하.. 2023. 3. 2.
[백엔드] 스프링 프레임워크와 설치 방법 스프링은? 백엔드 개발 부문을 공부하면 가장 먼저 자바를 언어로서 문법을 공부하고, 다음으로 스프링 프레임워크를 활용하는 방법을 배우는 것이 대부분의 사람들에게 해당된다. 스프링은 언어가 아니라 프레임워크, 즉 응용 소프트웨어라는 구조에서 일정 이상 뼈대를 맞춰 주는 것이라고 할 수 있다. 건축에 비유하면, 골조공사까지 된 상태에서 배관, 타일, 난방 공사를 상황에 따라 여러 가지 건축물에 맞춰서 진행하듯, 스프링도 그러한 골조 공사의 역할과 비슷하다고 할 수 있다. 설치 방법 우선, 스프링 프레임워크를 설치하기 위해서는, 아래의 링크로 들어가서 다운을 받으면 된다. https://start.spring.io/ 그러면 이런 화면이 나오게 된다. 여기서 snapshot, m1 등은 미정식 버젼이므로 최신 .. 2023. 3. 2.
[자바] version 확인하는 방법 Spring 프로젝트나 다른 어떤 작업을 할 때 먼저 자바의 version을 확인할 일이 많은데 이번에는 컴퓨터에 설치된 자바의 version을 확인하는 방법을 리뷰하고자 한다 그중에서도 이번엔 cmd로 자바 version을 확인하는 방법에 대해 소개하고자 한다 우선 명령 프롬포트를 켜서 java -version 을 입력해주면 된다 그러면 위와 같이 java version "11.0.16.1..." 이렇게 나오는 데 위의 사진 상으로 version은 java 11이라는 것을 알 수 있다 위와 같이 확인해보면 된다 2023. 3. 2.
[C언어] 14강 구조체 14강 구조체 구조체란 간단한 변수나 배열로는 나타내기 어려운 데이터들을 나타내는 방법 코드로 예를 들어 보면,#include struct Point{ int x; int y;}p1, p2, p3;int main(){ p1.x = 100; p1.y = 0; p2.x = 0; p2.y = 100; p3.x = 100; p3.y = 100; printf("%d %d\n", p1.x, p1.y); printf("%d %d\n", p2.x, p2.y); printf("%d %d\n", p3.x, p3.y); return 0;}이러한 구조체 멤버 변수 출력을 할 수 있을 것입니다.  아래는 구조체 포인터를 가지고 출력하는 방법입니다. 위와 같이 여러 변수와 배열.. 2023. 2. 26.
[C언어] 13강 파일 입출력 이진 모드는 0, 1로 구성된 파일 텍스트 모드는 문자로 구성된 파일 명령행 인자 int main(int argc, char *argv[]){...} 에서 argc, argv가 여기에 해당함 //argc는 두번째 인자인 argv의 크기를 의미 //argv[0]은 실행하는 프로그램의 패스를 의미하고 //argv[1], argv[2]... 순으로 첫째 인자, 둘째 인자 등을 나타낸다 int getc(FILE* stream); //getchar와 다른 점은 fp로 식별된 파일에서 문자를 추출 int putc(int character, FILE* stream); int putc(int character, FILE* stream); //putchar와 유사한 기능 가짐 //그러나 파일을 읽다가 끝에 도달하면 EO.. 2023. 2. 22.
[C언어]12강 기억 클래스, 연결, 메모리 관리 저장 클래스는 객체 지향 프로그래밍에서 객체를 생성할 때 그 객체가 어떤 메모리 영역에서 살아남을지를 결정하는 방식 스코프는 하나의 변환 단위(파일) 내에서 변수나 함수의 유효 범위를 나타내는 개념 연결은 다른 스코프에 속하는 변수들을 서로 연결하는 것을 의미한다 ㄱ. 무연결 : 지역 변수가 가지는 특징이다 함수 영역인 block scope 내에 선언되어 있음 ㄴ. 내부 연결 : 하나의 파일에서만 사용 가능함 ㄷ. 외부 연결 : 여러 파일에서 사용 가능함 자동 변수 블록 내에서 선언된 변수를 의미하며 블록의 실행이 끝나면 메모리에서 사라짐 레지스터 변수 CPU 레지스터에 저장되어 신속하게 접근 가능함 레지스터에 저장할 수 있는 조건이 매우 제한적이기 때문에 자동 변수로 보내는 경우 있음 정적 변수 프로그.. 2023. 2. 17.
[C언어] 11강 문자열과 문자 I/O 함수 문자열이란 보통 char var[size] = “abcde fgh”;이러한 방법으로 선언된다.char* gets(char* buffer);// 에러가 발생하면 NULL을 반환한다gets() 함수는 인자와 반환형 모두 char* 자료형이다.char* fgets(char* str, int num, FILE* stream);//1번 인자는 문자열을 저장할 char 배열을 가리키는 포인터//2번 인자는 읽어들일 최대 문자 수//3번 인자는 문자열을 읽어들일 스트림의 file 객체를 가리키는 포인터//리턴값은 str이다//결과를 "\n"이 나올 때까지 string에 저장하고, 스트링 끝에 "\0"을 추가한다//읽은 문자 수가 n - 1일때까지 문자를 읽는다char* gets_s(char* str);//1번 인자는.. 2023. 2. 17.
[C언어]10강 포인터와 배열 10강 포인터와 배열 배열이란 같은 타입의 변수들로 이루어진 유한 집합이며 인덱스는 0부터 시작한다포인터란 메모리의 주소값을 저장하는 변수이다 보통 포인터의 크기는 32비트 컴파일러에서는 4바이트, 64비트 컴파일러에서는 8바이트가 나온다.예시>메모리에서 일정 범위를 이동하며 위의 short 자료형은 2바이트로 구성되어 있으며 2바이트마다 pointer 역시 이동하면서 추가된다 주소값 => 해당 데이터가 저장된 메모리의 주소 의미32비트: 16진수 8자리0x00000000 ~ 0xFFFFFFFF예) 0x008AF7FC 64비트: 16진수 16자리0x0000000000000000 ~ 0xFFFFFFFFFFFFFFFF예) 0x00000000008AF7FC 16진수는 0부터 9까지, 그리고 A부터 F까지 16.. 2023. 2. 10.
[C언어] 9강 함수 함수 사용 이유: 반복작업에 들어가는 메모리와 시간을 절약하게 해줌 함수의 기본 구조 void func(void) { statement; } 여기서 앞부분의 void는 리턴할 값이 없음을, 괄호 안의 void는 인자가 없음을 의미함 재귀 자기 자신을 불러오는 것 주로 반복적인 실행에 사용이 됨 재귀의 동일한 레벨에는 동일한 주소가 할당됨 재귀의 장점 구조가 단순하다 재귀의 단점 컴퓨터 메모리를 급격하게 소모한다 헤더파일을 새로 만들어서 여러 소스 파일에서 사용하는 함수를 보관하는 것도 좋은 방법이다 포인터는 주소를 저장하는 변수이다 이런 식으로 변수의 속한 위치, 변수 그리고 값, 메모리 위치를 나타낸다 2023. 2. 10.