전체 글
-
2024년 11월 13일 프로그래밍 언어론 공부 6일차프로그래밍 공부 일지 2024. 11. 14. 00:54
오늘은 P. 149 ~ P. 164, 구문 분석 파트를 공부했다. 어제와 동일하게 적으면서 공부했다. 구문 분석에 앞서 프로그래밍 언어를 이루고 있는 단어들, 어휘 분석을 먼저 공부했다. 어휘 분석 부분에는 토큰이라는 것이 나오는데 어려울 것이라 예상했는데 생각보다 간단했다. 연산자, 구분자, 식별자, 예약어 등 일반적으로 쓰는 모든 것이 토큰인 것 같다. 연산자와 구분자는 연산 기호나 문장 부호 같은 것들이고, 식별자는 변수나 함수의 이름을 나타내는 것, 예약어는 프로그래밍 언어 자체에서 정의되어 포함된 것들을, 즉 if, for, int 같은 것들을 뜻한다. 구문 분석은 유도를 할 수 있냐 없냐에 따라서 오류가 있냐 없냐를 파악함으로 진행되는 것 같다. 유도라는 것은 구몬 규칙을 이용하려 주..
-
2024년 11월 12일 프로그래밍 언어론 공부 5일차프로그래밍 공부 일지 2024. 11. 13. 00:49
오늘 오랜만에 프로그래밍 언어론 공부를 해봤다. 오늘은 P.129 ~ P.148을 공부했다. 구문론과 의미론 파트였다. 원래는 공부를 이어서 계속 할 생각이었는데 이해도 안되고 어려워서 자꾸 멈추다가 텀이 많이 길어졌다. 오늘은 평소와 다르게 중요하다고 생각되는 것들을 적으면서 공부해봤는데 의외로 공부에 집중도 잘되고 재밌었다. 솔직히 구문론과 의미론이 뭔지 이해하는데 좀 걸렸다. 말로는 프로그램의 표면적인 구조를 나타내는 것과 프로그램의 내용적인 효과를 정의한다는데 실질적으로는 이해를 못 했었다. 오늘 공부를 다 하고나서는 어느 정도 감은 잡았지만 더 해야된다. 정의될 대상인 비단말 기호와 언어에서 직접 사용되는 표현인 단말 기호는 확실히 기억하고 넘어가야 되겠다. 뒤에 계속 나오는데 이해하..
-
2024년 10월 26일 프로그래밍 언어론 공부 4일차프로그래밍 공부 일지 2024. 10. 27. 02:54
교재 : 프로그래밍 언어론, (우균, 김진욱 공저), 방통대 교재공부 분량 : p. 99 ~ p. 128(제 3장 : 프로그래밍 언어 패러다임) 오늘은 프로그램 패러다임에 대해서, 그리고 프로그래밍 언어 패러다임에 대해서 공부를 했다. 프로그램 패러다임에는 명령형, 절차형, 함수형, 논리형, 선언적, 객체지향 이렇게 있다. 책에 소개되지 않은 프로그램 패러다임도 존재한다고 들었다. 프로그래밍 언어는 단 하나의 프로그램 패러다임을 지원하는 것이 아닌, 복수의 패러다임을 지원하고 있다. 그 뒤로는 명령형 프로그래밍, 절차형 프로그래밍, 구조화 프로그래밍, 객체지향 프로그래밍, 함수형 프로그래밍, 선언적 프로그래밍과 논리 언어의 프로그램 예를 보여주면서 상세하게 설명해 주었다. 오늘 여기서 논리형 프..
-
2024년 10월 25일 프로그래밍 언어론 공부 3일차프로그래밍 공부 일지 2024. 10. 26. 01:11
이 글을 작성하는 지금 사진을 찍어서 26일이긴 한데, 그래도 공부 다하고 찍고 싶었다. 오늘은 프로그래밍 언어론 p. 62 ~ p. 98을 공부했다. 어제 쓰던 프로그래밍 언어의 발전을 마저 써보자면1950년대 초기 프로그래밍 언어 : Fortran, Algol, LISP1960년대 프로그래밍 언어 : Cobol, PL/1, BASIC, Simula1970년대 프로그래밍 언어 : Pascal, C, Prolog, Smalltalk, Ada, ML, Scheme1980년대 프로그래밍 언어 : Common Lisp, Objective-C, C++, Perl1990년대 이후 프로그래밍 언어 : Java, JavaScript, Python, Haskell이렇게 정리가 된다. 공부하면서 GUI와 마우..
-
2024년 10월 24일 프로그래밍 언어론 공부 2일차프로그래밍 공부 일지 2024. 10. 25. 03:03
오늘 원래 계획은 제2장 프로그래밍 언어의 발전 및 동작원리를 다 보는 것이 목표였다. 41페이지부터 98페이지까지 볼 생각이었지만 62페이지까지 밖에 읽지 못했다. 컴퓨터 시스템과 운영체제의 발전, 그리고 프로그래밍 언어 반전의 역사를 보고 있었다. 아직 1970년대 프로그래밍 언어를 보고 있는데 너무 어렵다.... 1950년대, 60년대, 70년대의 언어들을 설명해주는데 솔직히 무슨 말인지 잘 모르겠다. 유일하게 조금이라도 아는 것이 1970년대 프로그래밍 언어인 C언어이다. 근데 보면서 신기했던건 LISP 언어였다. 전위 표기법(폴란드 표기법) 자체를 처음 봤다. s-식의 예로 (+ (* 3 2) 1)을 들었다. 이런 수식은 처음 봐서 신기했다. 초창기 LISP가 자언어 처리 분야와 자동 추..
-
2024년 10월 23일 프로그래밍 언어론 공부 1일차프로그래밍 공부 일지 2024. 10. 23. 22:00
프로그래밍 공부를 시작하기에 앞서 기초 지식을 좀 쌓고 싶은 마음에 공부를 시작했다. 2021년에 사놨다가 이제야 제대로 공부를 시작하게 됐다. 프로그래밍을 독학하려 할 때 가장 답답했던 것은 전반적인 구조를 알지 못하는 상태에서 개념도 모르는 상태에서 해야 했다는 것이다. 프로그래밍 언어가 무엇인지, 그리고 더 나아가 무엇을 더 공부해야 하는지, 프로그래밍 언어를 어떻게 어떤 시선으로 다가가야 하는지 알고 싶어서 공부를 시작한다. 이번 공부를 하면서 글로 남기고 싶은 것은 이 공부를 하면서 깨달은 것들을 좀 적어놓고 싶다. 책에 안나와있지만 기억하고 싶은 것들을 남기는 것 위주로 하고 싶다. 책에 나와있는 것 중에서 기억하고 싶은 것들을 남기고 싶기도 하다. 프로그래밍 언어론의 선수과목은 C..
-
프로그래밍 독학이 어렵다고 느껴지는 이유카테고리 없음 2023. 3. 21. 15:22
나는 프로그래밍을 독학하려고 노력해봤다. 하지만 번번히 어려워서, 힘들어서, 다른거 해야되서 시간이 없다고 멈추기를 반복했다. 이 이유가 뭘까? 명확한 길이 보이지 않았기 때문이다. 내가 가고싶은 곳은 명확했다. 어플 개발, 하지만 그걸 하기 위해서 어떻게 해야되는지 길이 안보였다. 나는 지금까지 여러 가지 프로그래밍 언어 책을 사서 공부하려고 하고 그랬다. 하지만 못했다. 내 의지 문제도 있었겠지만, 주변에 그걸 같이 공부하는 사람도, 물어볼 사람도 없었기에 번번히 내려놓게 되었다. 전에는 책들이 문제라고 생각했었다. 이걸 해서 어디에 어떻게 쓰이고, 전반적인 프로그래밍 과정을 봤으면 좋겠었고, 실질적으로 프로그래밍 과정 속에서 어느 부분, 어느 부분을 개발하기 위해서는 이런 것이 필요하다고 듣고싶었다..