본문 바로가기

반응형

Programming/기초지식

(30)
홍정모 교수님 C++ 강의 후기 https://www.youtube.com/watch?v=UqCZda8DLGc 강의 시간은 3시간 남짓이다. 나의 경우 강의 시간의 2배에 가까운 시간이 흐른 후에 강의를 끝낼 수 있었다. 강의는 실습 위주이며 절대 강사가 먼저 답을 알려주지 않고 문제에 대한 답을 생각할 시간을 준다. 그래서 모르는 개념을 검색하고, 문제 풀이에 대한 디버깅에 시간이 많이 소요되었다. 만족스러운 강의였다. 이제껏 프로그래밍 관련 강의를 적지 않게 수강했는데, 강사와 강의의 질도 중요하지만 공부의 질이 절대적으로 중요하다는 사실을 이번 강의를 통해 알 수 있었다. 작은 문제라도 허투루 넘기지 않고 스스로 답을 찾기 위해 노력했다. 답답한 마음에 앞으로 감기를 눌러 강사가 제시한 답을 보고 다시 풀어보기도 했지만, 나름대..
[Mac] IntelliJ 자동완성 기능 활성화 하기 IntelliJ에서 Command + , 키를 누르면 Preferences 창이 활성화 됩니다. Keymap 탭에서 Completion 키워드로 검색하면 Code Completion 단축키 설정이 나오는데, 이것을 자신이 원하는 단축키로 변경하면 됩니다. 저는 한 손으로 사용하기 편하도록 Control + Space로 지정했습니다. IntelliJ에서 단축키를 설정해도 자동완성이 동작하지 않는다면 시스템 키보드 단축키 설정을 변경하면 됩니다 시스템 환경설정 > 키보드 > 입력 소스 탭으로 이동해서 이전 입력 소스 선택 체크를 해제하면 됩니다. 이제 IntelliJ로 다시 돌아가서 자동 완성 단축키를 사용할 수 있습니다. 잊어버리기 쉽고 별로 중요해 보이지 않지만, 필요할 때 찾을 수 없으면 짜증나고 시간..
폴더 구조를 출력하는 명령어 프로젝트 README 문서를 작성하다가 프로젝트 폴더 구조를 보여주고 싶었습니다. 먼저 윈도우 커맨드 창을 띄운다. 그리고 출력을 원하는 폴더 경로로 이동 후 아래 명령어를 입력합니다. cmd는 명령 프롬프트(cmd.exe)를 실행한다는 의미입니다. 그리고 //c는 뒤에 오는 문자열을 받아서 실행한다는 의미입니다. cmd //c tree 이렇게 입력하면 현재 자신이 위치한 경로 아래의 모든 폴더 경로가 출력됩니다. cmd //c tree 명령어를 입력하면 아래와 같이 출력됩니다. 뭔가 지저분해 보입니다. 좀 더 깔끔하게 출력하고 싶습니다. ▒▒src ▒▒ ▒▒▒▒main ▒▒ ▒▒ ▒▒▒▒asciidoc ▒▒ ▒▒ ▒▒ api-doc.adoc ▒▒ ▒▒ ▒▒ ▒▒ ▒▒ ▒▒▒▒java ▒▒ ▒▒ ▒▒ ▒..
Serialization 그리고 Deserialization Serialization이란 메모리에 객체를 저장하기 위해 전송 객체를 바이트 형태로 저장하는 것입니다. 이렇게 하면 객체의 상태를 다양한 형태로 저장할 수 있습니다. 저장된 객체를 다시 가져오려면 Deserialization 작업을 합니다. 동작 방식은 Serialization의 반대 입니다. Serialization과 Deserialization 작업은 플랫폼 독립적입니다. 즉 A라는 플랫폼에서 Serialization 작업을 한 객체를 B 플랫폼에서 Deserialization 할 수 있습니다. 각 플랫폼 형식에 맞는 Serialization, Deserialization 방식을 통해 객체에 대한 읽기/쓰기 작업을 할 수 있습니다. 참고 https://hazelcast.com/glossary/ser..
[Ajax] jQuery로 Ajax 구현 시 사용되는 설정값 모음 구현하는 '방법'에 대한 설명은 정말 많아서 입맞게 맞게 찾아서 볼 수 있다. 내가 이 글을 포스팅하는 이유는, Ajax 통신에 사용되는 설정값을 머릿속에 일목요연하게 정리하고 싶었기 때문이다. 정확히 알아야 "이렇게 하면 될 것 같은데.." 하는, '감'에 의존해서 구현하는 버릇을 없앨 수 있다고 생각한다. JQuery를 활용한 Ajax 통신 jQuery는 Ajax 통신을 위한 다양한 구현 방법을 제공한다. 그 중에서 Low-Level Interface 중의 하나인 jQuery.ajax() 형태로 구현하는 방법에 대해서 알아본다. 일반적으로 다음의 구조를 가진다. 설정에 사용되는 속성 이름 및 값은 XMLHttpRequest 객체를 통한 Ajax 통신에서 사용되는 속성 이름 및 값과 겹치는 부분이 많다..
[Ajax] JavaScript로 Ajax 구현 JavaScript / XMLHttpRequest 객체를 통한 Ajax 구현 Ajax를 통해 페이지 전체가 아닌 일부분만 로드하는 등의 비동기 처리를 구현할 수 있다. 구현은 JavaScript 또는 jQuery를 이용하는 두 가지 방식이 있다. JavaScript는 브라우저에 내장된 XMLHttpRequest 객체를 통해 Ajax 통신을 구현한다. XMLHttpRequest는 XML 형식을 포함한 다양한 종류의 데이터를 취급할 수 있다. 아래 이미지는 JavaScript 환경에서 Ajax 통신이 어떻게 진행되는지 설명한다. 1. 웹 페이지 내에서 이벤트 실행. 2. JavaScript에 의해 XMLHttpRequest 객체 생성. 3. XMLHttpRequest 객체가 웹 서버로 요청사항 전달. 4. ..
[REST] URI 네이밍 가이드 REST API에서는 URI를 통해 리소스를 표현합니다. 작성한 URI를 가지고 필요한 Resource를 호출합니다. 동사 대신 명사를 사용합니다. 그 이유는 명사를 사용하면 리소스의 속성을 표현할 수 있기 때문입니다. http://localhost:8080/member/getUser http://localhost:8080/member/deleteUser 계층 관계를 표현하려면 슬래시(/) 기호를 합니다. http://localhost:8080/member/id http://localhost:8080/member/info URI 주소 마지막에 슬래시(/) 기호를 사용하면 안됩니다. http://localhost:8080/member/id/ http://localhost:8080/member/info/ 길..
[REST] 리소스 REST의 네이밍은 개발자가 다루는 리소스(resource)를 기준으로 한다. 문서나 이미지 등과 같이 어떠한 데이터도 네이밍에 사용되는 리소스로 활용될 수 있다. 리소스 데이터는 싱글턴 또는 컬렉션으로 존재할 수 있다. 즉 단수 혹은 복수로 표현될 수 있다. users // is a collection resource user // is a singleton resource 싱글턴과 컬렉션 리소스의 표현 방식을 살펴보자. 리소스는 하위 컬렉션을 포함할 수 있다. 예를 들어 다양한 명품 브랜드가 입접된 온라인 명품 편집샵 서비스가 있다고 가정해보자. 특정 브랜드(brand)의 하위 컬렉션 리소스인 제품(products)은 URN로 다음과 같이 표현될 수 있다. /brands/{brandId}/produc..

반응형