일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- 홈서버
- 외부접속
- Mac
- git
- C
- cording
- php
- 개발
- windows
- 220821
- 정보처리기능사
- React
- 프로그래밍언어론
- 개발공부
- Developer
- knockon
- 방화벽
- html
- 프로그래밍 언어론
- CodeIgniter
- CSS
- plan
- 오답풀이
- study
- 매크로
- 개인서버
- bootcamp
- Java
- WPF
- 자격증
- Today
- Total
목록Study (13)
bunta의 보조기억장치
작년 6월쯤, 방송대 졸업 시즌이 다가오면서 앞으로 개발자로서 더 성장하려면 어떤 걸 해봐야 할지 고민이 생겼다.졸업 요건이었던 논문이나 정보처리기사 자격증은 이제 더 이상 필요 없었지만, 그래도 정보처리기능사보다는 정보처리기사 자격증이 낫지 않을까 하는 생각에 도전해 보기로 했다. 필기시험은 약 일주일 정도 준비했는데, CBT 문제를 3회 차 정도 풀어보고 바로 시험을 쳤다.난이도는 보통이었고, 문제 은행에서 나온 문제들이 꽤 많았던 걸로 기억한다. 필기를 생각보다 쉽게 붙어서였는지 실기 시험도 쉽게 붙을꺼라는 이상한 자신감이 생겼다.그러고 한참을 놀다가 시험을 딱 일주일 남기고서야 부랴부랴 실기 준비를 시작했다.다행히 필기와 겹치는 부분이 꽤 있어서 전체 내용을 대충이라도 훑을 수는 있었지만, 전부 ..
자격증 합격한 지 반년이 넘었지만 다시 블로그 활성화도 할 겸 기록해놓으려고 한다. 그리고 기능사 자격증이라 어디 자랑하기도 애매하고 개인 블로그에 작게나마 혼자 자랑해보려고 한다. 당시 개발자로 전직을 결심하고 어떤 것부터 시작해야 할지 고민했다. 아무래도 비전공이다 보니 남들에게 보여주기에 자격증이 빠르고 확실하다고 생각했다. 하지만 바로 정보처리기사를 따기에는 개발 경력과 지식이 많지 않아 기초를 다진다는 생각으로 기능사 자격증 취득을 하기로 했다. 2022년 9월에 치르는 필기시험에 합격한 후 2022년 10월부터 2023년 3월 말까지 코드 스테이츠에서 주관하는 백엔드 부트캠프를 수강하느라 까맣게 잊고 있었다. 2023년 5월에 개발자로 취업에 성공한 후 커리어와 실력을 더 쌓고 싶다는 생각이 ..
의미론 → 프로그램의 내용적인 효과를 정의 → 프로그램 실행 시 어떤 일이 일어나는지 그 의미를 기술 → 구문으로 표현하기 어려운 제약사항을 기술하기도 함 의미의 표현 → 일반적으로 자연어 문장으로 표현하나 명확성이 부족 → 의미의 엄밀한 표현을 위한 다양한 기법 개발(형식 의미론) 형식 의미론 정적 의미론 → 프로그램을 수행하기 전 의미가 맞는지 파악하는 방법 → 주로 타입 검사 수행에 활용 → 대표적인 방법: 속성 문법 동적 의미론 → 프로그램 수행 시 나타나게 될 의미를 표현하는 방법 → 대표적인 방법: 기능적 의미론, 표기적 의미론, 공리적 의미론 등 * 속성 문법 → 비단말 기호마다 타입 속성이 있다고 가정하고 이에 대한 규칙을 정의 기능적 의미론 → 추상기계의 상태를 바꾸는 것으로 수행 의미를..
구문론 → 프로그램의 표면적인 구조를 정의 → 정의된 구문을 통해 모든 정상적인 프로그램을 도출 → 작성된 프로그램이 정의된 구문에 맞는 프로그램인지 확인 구문의 표현 → 구문의 정의는 문법을 활용하여 명확하게 표현 → 일반적으로 프로그래밍 언어에서는 문맥 자유 문법을 이용 * 문맥 자유 문법: 문맥하고 상관이 없는 문법 예로 변수는 문법과 상관없이 아무 위치에서 정의되어도 됨 문맥 자유 문법(CFG: Context-Free Grammar) 구성 요소 → 비단말 기호: 정의될 대상 ex) ::= if then → 단말 기호: 언어에서 직접 사용되는 표현 ex) ::= if then → 시작 비단말 기호: 언어에서 독립적으로 사용될 수 있는 단위 ex) ::= if then 은 비단말 기호이면서 시작 비단..
언어의 형식적 정의 구문론과 의미론을 통해 언어를 엄밀하게 정의 구문론(syntax) → 문장이 구성되는 방식에 대해 연구 의미론(semantics) → 문장이 나타내는 의미에 대해 연구 ex) 나는 너를 사랑한다. → 구문: 주어 + 목적어 + 서술어 → 의미: 화자가 청자를 몹시 아끼고 귀중히 여김 ex) I love you → 구문: 주어 + 동사 + 목적어 → 의미: 화자가 청자를 몹시 아끼고 귀중히 여김 프로그래밍 언어의 형식적 정의 프로그래밍 언어의 명확한 구문과 의미를 정의 이를 통해 명확한 사용체계를 제공 ex) PRINT "GCD is"; A → 구문: PRINT "출력할 내용"; 변수 → 의미: 출력할 내용과 변수의 값을 순차적으로 출력 ex) printf("GDC is %d", a);..
프로그래밍 패러다임의 특징 객체지향 패러다임 → 객체 사이의 통신을 통해 계산을 표현 함수형 패러다임 → 함수의 적용을 통해 계산을 표현 논리 패러다임 → 논리식의 진위를 증명하는 과정을 통해 계산을 표현 한국방송통신대학 [프로그래밍 언어론] 강의 필기입니다.
명령형 프로그래밍 프로그램 → 일련의 명령어 나열 장점 → 처리 순서대로 나열되어 있어 프로그램을 쉽게 이해할 수 있음 단점 → 프로그램이 복잡한 경우 가독성이 나빠지므로 효과적으로 다루지 못함 절차형 프로그래밍 프로그램 → 서브루틴이라는 절차의 집합 장점 → 재귀호출을 사용하여 프로시저를 간단하게 정의 구조화 프로그래밍 → goto 없이 프로그램을 작성하는 방법 즉, 작업이 끝나면 호출이 발생했던 원래 자리로 돌아가는 것 → 블록과 서브루틴을 이용 → 구조화된 제어문을 이용 객체지향 프로그래밍 프로그램 → 서로 통신할 수 있는 객체(object)의 집합 → GUI 개발에 큰 획(Smalltalk) → 프로그램 재사용 편의로 S/W 생산성에 크게 기여 객체의 개념 → 상태를 유지하며 외부의 요청에 반응하..
프로그래밍 패러다임 VS 프로그래밍 언어 패러다임 프로그래밍 패러다임 → 프로그램을 작성하는 방식이나 스타일 프로그래밍 언어 패러다임 → 해당 프로그래밍 언어가 지원하는 프로그래밍 패러다임 → 일반적으로 프로그래밍 언어는 여러가지 프로그래밍 패러다임을 지원 프로그래밍 패러다임의 양립성 → 다양한 프로그래밍 패러다임은 서로 양립할 수 있음 → 새로운 패러다임의 등장으로 이전에 있던 패러다임이 더욱 공고히 완성 → 주류 프로그래밍 패러다임이 바뀜에 따라 이를 언어가 수용하는 형태로 변화 ex) Python 명령형 패러다임, 절차형 패러다임만 지원 → 함수형 패러다임, 객체지향 패러다임을 포함하여 지원 한국방송통신대학 [프로그래밍 언어론] 강의 필기입니다.